From fac8bb85a3b7668bf89d2409653484bc9f2e176d Mon Sep 17 00:00:00 2001 From: Bel LaPointe Date: Thu, 10 Feb 2022 06:29:03 -0700 Subject: [PATCH] fix gitlab parsing more --- app/crawler/gitlab.sh | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/app/crawler/gitlab.sh b/app/crawler/gitlab.sh index 9d4acb3..bcb6ef6 100644 --- a/app/crawler/gitlab.sh +++ b/app/crawler/gitlab.sh @@ -36,16 +36,21 @@ gitlab() ( _url_to_project_root() { local url="$1" local url_path="${url#http*://gitlab*.net/}" - local project="${url_path%%/-/*}" - local project="${project%%/tree/*}" - local root="${url_path#*$project}" - local root="${root#*/-}" - if [ "$root" != "${root#/tree}" ]; then - root="${root#/tree}" - root="/${root#/*/}" + local project="" + if [[ "$url_path" == *"/-/"* ]]; then + project="${url_path%%/-/*}" + elif [[ "$url_path" == *"/tree/"* ]]; then + project="${url_path%%/tree/*}" + else + project="$url_path" fi - local root="${root#/blob}" - local root="${root#/}" + local root="${url_path#*"$project"}" + root="${root#*/-/}" + root="${root#/}" + root="${root#blob/}" + root="${root#tree/}" + root="$(echo "$root" | sed 's/^[^\/]*//')" + root="${root#/}" log project=$project, root=$root, url=$url echo "$project" echo "$root"