如何限制Heroku CI仅在主分支运行测试?
如何限制Heroku CI/CD仅在主分支运行测试
有两种简单的方法可以实现只让main/master分支触发测试,避免不必要的CPU资源消耗:
方法一:通过heroku.yml配置文件控制
在项目根目录创建或编辑heroku.yml,添加CI分支过滤规则:
# 如果你用buildpack部署(比如Node.js、Python等常规项目) build: buildpacks: - heroku/nodejs # 替换成你的项目对应的官方buildpack别名,比如heroku/python、heroku/ruby等 ci: only: - main - master # 如果你用Docker部署 build: docker: web: Dockerfile ci: only: - main - master
提交这个文件到Git仓库并推送到Heroku,之后只有main和master分支的提交才会触发CI测试。
方法二:用Heroku CLI直接设置流水线规则
打开终端,执行以下命令(替换成你的流水线名称):
heroku pipelines:update --ci-branches main,master <你的流水线名称>
这个命令会直接修改流水线的CI触发规则,指定仅main和master分支触发测试。
设置完成后,其他分支的Git提交不会再触发Heroku CI的测试任务;而main/master分支的测试通过后,会按照你之前配置的规则自动部署到生产环境。
内容的提问来源于stack exchange,提问作者alilland
相关产品推荐
相关产品推荐

