我有项目A和项目B。
我在项目A上使用GCP Cloud Source Repository作为我的“origin”远程仓库。
我使用Cloud Build,并配置了一个触发器,以便在该代码库的“develop”分支上进行更改时触发构建。作为构建的一部分,我使用gcloud builder将某些东西部署到项目A。
现在,我想在项目B上运行相同的构建流程。也许是相同的分支,也可能是不同的分支(即“release-*”)。最终,希望使用gcloud builder将某些内容部署到项目B。
问题是,当我在项目B中(Google Cloud Console中),我甚至看不到项目A中的代码库。它要求我“连接代码库”,但我只能选择GitHub或Bitbucket镜像的代码库。选项“Cloud Source Repositories”已被禁用,告诉我它们“已经连接”。很显然,这两个项目没有连在一起。
我可以在项目B上设置一个新的代码库,并将代码推送到两个代码库,但这似乎效率低下(而且长期来看可能无法持续)。有趣的是,使用外部的Bitbucket/GitHub作为origin并在两个项目中镜像,可以轻松地实现这样的设置。
在Google Cloud Platform中,是否有可能不使用外部依赖项实现此类操作?
我也尝试将所有的项目A都运行并设置一个单独的触发器来部署到项目B(我使用替换来管理),但由于权限问题失败了。Cloud Builds似乎始终会以Cloud Build服务帐户运行,您可以管理该帐户的角色,但我无法看到如何使其访问其他项目。此外,在这种情况下,两个构建将在单个构建历史记录中难以区分,这不是理想的。