finaly fix gitlab migration with subdir (#13629)
* finaly fix #13535 * add logging
This commit is contained in:
		
							parent
							
								
									6626a048df
								
							
						
					
					
						commit
						ad2a288622
					
				
					 1 changed files with 9 additions and 2 deletions
				
			
		|  | @ -90,12 +90,17 @@ func NewGitlabDownloader(ctx context.Context, baseURL, repoPath, username, passw | |||
| 
 | ||||
| 	// split namespace and subdirectory
 | ||||
| 	pathParts := strings.Split(strings.Trim(repoPath, "/"), "/") | ||||
| 	var resp *gitlab.Response | ||||
| 	u, _ := url.Parse(baseURL) | ||||
| 	for len(pathParts) > 2 { | ||||
| 		if _, _, err = gitlabClient.Version.GetVersion(); err == nil { | ||||
| 		_, resp, err = gitlabClient.Version.GetVersion() | ||||
| 		if err == nil || resp != nil && resp.StatusCode == 401 { | ||||
| 			err = nil // if no authentication given, this still should work
 | ||||
| 			break | ||||
| 		} | ||||
| 
 | ||||
| 		baseURL = path.Join(baseURL, pathParts[0]) | ||||
| 		u.Path = path.Join(u.Path, pathParts[0]) | ||||
| 		baseURL = u.String() | ||||
| 		pathParts = pathParts[1:] | ||||
| 		_ = gitlab.WithBaseURL(baseURL)(gitlabClient) | ||||
| 		repoPath = strings.Join(pathParts, "/") | ||||
|  | @ -105,6 +110,8 @@ func NewGitlabDownloader(ctx context.Context, baseURL, repoPath, username, passw | |||
| 		return nil, err | ||||
| 	} | ||||
| 
 | ||||
| 	log.Trace("gitlab downloader: use BaseURL: '%s' and RepoPath: '%s'", baseURL, repoPath) | ||||
| 
 | ||||
| 	// Grab and store project/repo ID here, due to issues using the URL escaped path
 | ||||
| 	gr, _, err := gitlabClient.Projects.GetProject(repoPath, nil, nil, gitlab.WithContext(ctx)) | ||||
| 	if err != nil { | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue