cloudbuild.yaml包含不同的云构建器配置

Ben*_*Ben 9 git google-app-engine git-submodules google-cloud-platform google-cloud-build

我的项目分为gitmodules,如下所示:

/ +
  |
  +-module_1
  |  |
  |  +- cloudbuild.yaml 
  |  +- src/
  |  +-.git/
  | 
  +-module_2
  |  |
  |  +- cloudbuild.yaml 
  |  +- src/
  |  +-.git/
  | 
  +- .git/
  +- .gitmodules
  +- cloudbuild.yaml
Run Code Online (Sandbox Code Playgroud)

我正在尝试从父存储库构建子模块,但cloudbuild有一个问题,因为它不会自己获取gitmodules.因此,当我module_1/cloudbuild.yaml作为cloudbuild配置引用时,构建失败,因为该文件不存在.我正在考虑可能的解决方法,我想问下列是否可行:

  1. 引用/cloudbuild.yaml为构建配置
  2. 添加一个步骤来获取cloudbuild.yaml中的gitmodule
  3. 运行不同的cloudbuild文件

结果应该类似于:

steps:
  - name: 'gcr.io/$PROJECT_ID/git'
    args: ['submodule', 'update', '--init']
  - name: 'some kind of command that runs cloudbuild.yaml`
    args: ['module_1/cloudbuild.yaml']
Run Code Online (Sandbox Code Playgroud)

免责声明 我知道我可以将所有cloudbuild配置放在根存储库中,但我希望这些模块尽可能地自我管理

Yin*_* Li 3

我认为你想要的不可能。我认为这部分不起作用: - name: 'some kind of command that running cloudbuild.yaml'

最好的办法可能是简单地向我们的问题跟踪器提交功能请求,这样您就可以直接引用“module_1/cloudbuild.yaml”作为配置。