Improve Git provider error messages

pull/58/head
Hidde Beydals 5 years ago
parent 39b00797d6
commit 98cf176c81

@ -77,7 +77,7 @@ func (p *GithubProvider) CreateRepository(ctx context.Context, r *Repository) (b
})
if err != nil {
if !strings.Contains(err.Error(), "name already exists on this account") {
return false, fmt.Errorf("create repository error: %w", err)
return false, fmt.Errorf("failed to create repository, error: %w", err)
}
} else {
return true, nil
@ -95,13 +95,13 @@ func (p *GithubProvider) AddTeam(ctx context.Context, r *Repository, name, permi
// check team exists
_, _, err = gh.Teams.GetTeamBySlug(ctx, r.Owner, name)
if err != nil {
return false, fmt.Errorf("get team %s error: %w", name, err)
return false, fmt.Errorf("failed to retrieve team '%s', error: %w", name, err)
}
// check if team is assigned to the repo
_, resp, err := gh.Teams.IsTeamRepoBySlug(ctx, r.Owner, name, r.Owner, r.Name)
if resp == nil && err != nil {
return false, fmt.Errorf("is team %s error: %w", name, err)
return false, fmt.Errorf("failed to determine if team '%s' is assigned to the repository, error: %w", name, err)
}
// add team to the repo
@ -110,7 +110,7 @@ func (p *GithubProvider) AddTeam(ctx context.Context, r *Repository, name, permi
Permission: permission,
})
if err != nil {
return false, fmt.Errorf("add team %s error: %w", name, err)
return false, fmt.Errorf("failed to add team '%s' to the repository, error: %w", name, err)
}
return true, nil
}
@ -128,10 +128,10 @@ func (p *GithubProvider) AddDeployKey(ctx context.Context, r *Repository, key, k
// list deploy keys
keys, resp, err := gh.Repositories.ListKeys(ctx, r.Owner, r.Name, nil)
if err != nil {
return false, fmt.Errorf("list deploy keys error: %w", err)
return false, fmt.Errorf("failed to list deploy keys, error: %w", err)
}
if resp.StatusCode >= 300 {
return false, fmt.Errorf("list deploy keys failed with status code: %s", resp.Status)
return false, fmt.Errorf("failed to list deploy keys (status code: %s)", resp.Status)
}
// check if the key exists
@ -152,10 +152,10 @@ func (p *GithubProvider) AddDeployKey(ctx context.Context, r *Repository, key, k
if existingKey != nil {
resp, err := gh.Repositories.DeleteKey(ctx, r.Owner, r.Name, *existingKey.ID)
if err != nil {
return false, fmt.Errorf("delete deploy key error: %w", err)
return false, fmt.Errorf("failed to delete deploy key '%s', error: %w", keyName, err)
}
if resp.StatusCode >= 300 {
return false, fmt.Errorf("delete deploy key failed with status code: %s", resp.Status)
return false, fmt.Errorf("failed to delete deploy key '%s' (status code: %s)", keyName, resp.Status)
}
}
@ -168,7 +168,7 @@ func (p *GithubProvider) AddDeployKey(ctx context.Context, r *Repository, key, k
ReadOnly: &isReadOnly,
})
if err != nil {
return false, fmt.Errorf("create deploy key error: %w", err)
return false, fmt.Errorf("failed to create deploy key '%s', error: %w", keyName, err)
}
return true, nil
}

@ -59,7 +59,7 @@ func (p *GitLabProvider) CreateRepository(ctx context.Context, r *Repository) (b
if !p.IsPersonal {
groups, _, err := gl.Groups.ListGroups(&gitlab.ListGroupsOptions{Search: gitlab.String(r.Owner)}, gitlab.WithContext(ctx))
if err != nil {
return false, fmt.Errorf("list groups error: %w", err)
return false, fmt.Errorf("failed to list groups, error: %w", err)
}
if len(groups) > 0 {
@ -74,7 +74,7 @@ func (p *GitLabProvider) CreateRepository(ctx context.Context, r *Repository) (b
projects, _, err := gl.Projects.ListProjects(&gitlab.ListProjectsOptions{Search: gitlab.String(r.Name)}, gitlab.WithContext(ctx))
if err != nil {
return false, fmt.Errorf("list projects error: %w", err)
return false, fmt.Errorf("failed to list projects, error: %w", err)
}
if len(projects) == 0 {
@ -87,7 +87,7 @@ func (p *GitLabProvider) CreateRepository(ctx context.Context, r *Repository) (b
_, _, err := gl.Projects.CreateProject(p)
if err != nil {
return false, fmt.Errorf("create project error: %w", err)
return false, fmt.Errorf("failed to create project, error: %w", err)
}
return true, nil
}
@ -111,7 +111,7 @@ func (p *GitLabProvider) AddDeployKey(ctx context.Context, r *Repository, key, k
var projId int
projects, _, err := gl.Projects.ListProjects(&gitlab.ListProjectsOptions{Search: gitlab.String(r.Name)}, gitlab.WithContext(ctx))
if err != nil {
return false, fmt.Errorf("list projects error: %w", err)
return false, fmt.Errorf("failed to list projects, error: %w", err)
}
if len(projects) > 0 {
projId = projects[0].ID
@ -122,7 +122,7 @@ func (p *GitLabProvider) AddDeployKey(ctx context.Context, r *Repository, key, k
// check if the key exists
keys, _, err := gl.DeployKeys.ListProjectDeployKeys(projId, &gitlab.ListProjectDeployKeysOptions{})
if err != nil {
return false, fmt.Errorf("list keys error: %w", err)
return false, fmt.Errorf("failed to list deploy keys, error: %w", err)
}
shouldCreateKey := true
@ -142,7 +142,7 @@ func (p *GitLabProvider) AddDeployKey(ctx context.Context, r *Repository, key, k
if existingKey != nil {
_, err := gl.DeployKeys.DeleteDeployKey(projId, existingKey.ID, gitlab.WithContext(ctx))
if err != nil {
return false, fmt.Errorf("delete key error: %w", err)
return false, fmt.Errorf("failed to delete deploy key '%s', error: %w", keyName, err)
}
}
@ -154,7 +154,7 @@ func (p *GitLabProvider) AddDeployKey(ctx context.Context, r *Repository, key, k
CanPush: gitlab.Bool(false),
}, gitlab.WithContext(ctx))
if err != nil {
return false, fmt.Errorf("add key error: %w", err)
return false, fmt.Errorf("failed to create deploy key '%s', error: %w", keyName, err)
}
return true, nil
}

Loading…
Cancel
Save