我正在使用Cloud Build作为CI / CD解决方案。我的分支策略遵循这种模式:dev
,stage
和prod
分支恰好反映了我在每个环境中的能力。任何其他分支都只是常规的开发分支。
按照这种模式,我需要在除主分支之外的任何分支中进行构建/测试,并且仅在push位于dev / stage / prod中时进行部署。
由于Cloud Build不支持在单个YAML文件中表示,因此我有两个:build.yaml
和deploy.yaml
。
然后我创建了两个构建触发器,如下所示:
第一个效果很好,如果将任何内容推送到deploy.yaml
,它会触发dev/stage/prod
中描述的步骤。但是第二个,尽管它接受RegExp并评估分支的预览(注意您没有看到主要的分支):
触发构建后(是的,它会自动触发!),它将失败:
谷歌搜索告诉我Go-lang(据说是这里正在评估此regexp的后端)不支持RegExp中的Lookahead。
我该如何解决这个问题?