From b1787f82dc7306f41e3b48ca4b6ed996d907900d Mon Sep 17 00:00:00 2001 From: Michalis Zampetakis Date: Tue, 27 Jun 2023 00:55:21 +0300 Subject: [PATCH] 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 --- server/forge/bitbucket/bitbucket.go | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/server/forge/bitbucket/bitbucket.go b/server/forge/bitbucket/bitbucket.go index d824b1bfe..b81ffbcf4 100644 --- a/server/forge/bitbucket/bitbucket.go +++ b/server/forge/bitbucket/bitbucket.go @@ -157,6 +157,18 @@ func (c *config) Repo(ctx context.Context, u *model.User, remoteID model.ForgeRe if remoteID.IsValid() { 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) repo, err := client.FindRepo(owner, name) if err != nil {