如何解决在Google Cloud build中,为什么我的构建历史记录中还有一个额外的构建
由于某种原因,由代码存储库的更改触发的每个成功构建都有另一个“关联”构建。 (失败的构建不会“引起” /触发这个额外的构建。)请参见附件图像。
第二个构建没有源,引用,提交或触发器。查看构建日志,它由以下步骤组成(也许可以提示其功能):
Step #0 - "fetcher"
Step #1 - "prep"
Step #2 - "detector"
Step #3 - "analyzer"
Step #4 - "restorer"
Step #5 - "builder"
Step #6 - "exporter"
Step #7 - "deployment-tag"
你知道是什么原因造成的吗?
云构建
steps:
- name: node:12.18.1
id: 'install root packages'
entrypoint: npm
args: ['install']
- name: node:12.18.1
id: 'install packages for specific project'
entrypoint: npm
args: ['install']
dir: packages/${_SERVICE_NAME}
- name: node:12.18.1
id: 'getting environment variables'
entrypoint: npm
args: ['run-script','getenv:${_STAGE}']
env:
- 'AWS_ACCESS_KEY_ID=${_AWS_ACCESS_KEY_ID}'
- 'AWS_SECRET_ACCESS_KEY=${_AWS_SECRET_ACCESS_KEY}'
dir: packages/${_SERVICE_NAME}
- name: node:12.18.1
id: 'build'
entrypoint: npm
args: ['run-script','build']
dir: packages/${_SERVICE_NAME}
- name: 'gcr.io/google.com/cloudsdktool/cloud-sdk:slim'
id: 'deploy'
entrypoint: 'gcloud'
args: ['app','deploy','app.yaml']
dir: packages/${_SERVICE_NAME}
timeout: '3600s'
触发器 每个程序包都有两个触发器,除了一些自定义变量外,它们都相同。
解决方法
是不是其中任何一个构建步骤都会触发随后进行构建(例如步骤builder
)?
常识可能表明,如果它没有提交ID,则可能不是由存储库更改触发的。通过从最后一步开始逐一注释掉构建步骤,可以轻松地测试这一点。到达builder
为止(或可能执行其他步骤)时,它应该再没有提交ID的情况下也不触发构建。
取决于后续构建的工作,您可能可以使用--cache-from
。
当输出每次更改时,这显然是没有用的。
但如果没有,可能会导致大约缩短1:30
的构建时间。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。