我的项目被分成gitmodules像这样:

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

我正在尝试从父存储库构建子模块,但是cloudbuild对此存在问题,因为它无法自行获取gitmodules。因此,当我将module_1/cloudbuild.yaml引用为cloudbuild配置时,构建失败,因为该文件不存在。我正在考虑possilbe的解决方法,我想问一下以下情况是否可能:
  • /cloudbuild.yaml引用为构建配置
  • 添加了在cloudbuild.yaml中获取gitmodules的步骤
  • 运行其他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配置都放在根存储库中,但是我希望这些模块尽可能地自我管理

    最佳答案

    我认为您想要的是不可能的。我认为这部分无效:
    -名称:“运行cloudbuild.yaml的某种命令”

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

    关于git - cloudbuild.yaml包含不同的云构建器配置,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51803363/

    10-10 17:26