Fix bitbucket forge add repo (#1887)

The workspace is a required field for ivoking bitbucket's API. While
workspace is not available it must be fetched through the Repos func.

Fixes #1882
This commit is contained in:
Michalis Zampetakis 2023-06-27 00:55:21 +03:00 committed by GitHub
parent 1fa0212731
commit b1787f82dc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -157,6 +157,18 @@ func (c *config) Repo(ctx context.Context, u *model.User, remoteID model.ForgeRe
if remoteID.IsValid() { if remoteID.IsValid() {
name = string(remoteID) name = string(remoteID)
} }
repos, err := c.Repos(ctx, u)
if err != nil {
return nil, err
}
if len(owner) == 0 {
for _, repo := range repos {
if string(repo.ForgeRemoteID) == name {
owner = repo.Owner
break
}
}
}
client := c.newClient(ctx, u) client := c.newClient(ctx, u)
repo, err := client.FindRepo(owner, name) repo, err := client.FindRepo(owner, name)
if err != nil { if err != nil {