CircleCI筛选拉取请求

5
我有一个类似于Gitflow的分支结构:
master(默认)
develop feature/header 我正在使用启用了“仅构建拉取请求”功能的CircleCI。启用此功能后,它将构建所有拉取请求并始终构建默认分支。所以会发生以下情况:
从feature/header创建PR进入develop,运行CircleCI测试
合并后,从develop到master的PR也会运行CircleCI测试
合并后,因为master是默认分支,所以触发完整的CircleCI构建和部署。
我的问题是,我希望develop成为我的默认分支,因为Gitflow中99%的PR都进入develop。是否有一种方法可以在CircleCI config.yml文件中禁用“仅构建拉取请求”并过滤工作流以在拉取请求上运行?
我的其中一个工作流程看起来像这样(已通过分支筛选):
deploy_qa:
    jobs:
        - checkout:
            filters:
                branches:
                    only: master
        - dependencies_production:
            requires:
                - checkout
        - build_production:
            requires:
                - dependencies_production
        - deploy_qa:
            requires:
                - build_production
        - restart_qa:
            requires:
                - deploy_qa
1个回答

1
没有。
如果你想让“develop”成为默认分支,那么需要在GitHub上进行更改,因为默认分支是存储在那里的。
否则,只需构建分支即可。总是构建分支并不会有害,这样做会增加测试,这是好事。如果你想的话,可以在构建开始时检查它是否是PR,如果不是,就退出构建。

3
看起来 CircleCI 没有适配最常见的分支模型之一,这很遗憾。你如何测试构建是 PR 还是其他分支? - CaribouCode

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接