10

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

/ +
  |
  +-module_1
  |  |
  |  +- cloudbuild.yaml 
  |  +- src/
  |  +-.git/
  | 
  +-module_2
  |  |
  |  +- cloudbuild.yaml 
  |  +- src/
  |  +-.git/
  | 
  +- .git/
  +- .gitmodules
  +- cloudbuild.yaml

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

  1. 引用/cloudbuild.yaml为构建配置
  2. 在 cloudbuild.yaml 中添加获取 gitmodules 的步骤
  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']

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

4

1 回答 1

3

我不认为你想要什么是可能的。我认为这部分不起作用:-名称:'某种运行 cloudbuild.yaml 的命令'

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

于 2018-08-21T17:59:52.453 回答