避免对 BitBucket 管道使用主分支

Avoid Using Master Branch for BitBucket Pipeline

我正在基于 docker 在 BitBucket 存储库上设置 CI 管道。基本上,我是 运行 构建命令然后启动然后测试。到目前为止这一切都有效,但我遇到的问题是 BitBucket only 提交或让我编辑对 bitbucket-pipelines.yaml[=22= 的更改] 主分支上的文件。

我不是该项目的唯一开发人员,现在我们的 master 是我们的 staging/ready for prod 分支,我们都同意使用其他分支来处理事情并让我们中的一个人管理掌握并合并到其中。

我的问题是,我可以使用另一个不同于 master 的分支来 "manage" 我的管道文件,比如我们的活动开发分支吗?出于某种原因,我找不到将管道添加到另一个分支的方法,并且在开发分支上推送一个 bitbucket-pipelines.yaml 文件不会触发构建。

作为参考,我的管道 yaml:

image: atlassian/default-image:2

pipelines:
  # pull-requests:
  #   'feature/*':
  #     - step:
  #       services:
  #         - docker
  branches:
    develop:
      # each step starts a new Docker container with a clone of your repository
      - step:
        services:
          - docker
        script:
          - (cd app/laravel/ ; npm install)
          - (cd app/laravel/ ; npm run production)
          - docker build -t myApp -f app/Dockerfile app/
          - docker stack up -c docker/docker-compose.yaml myApp

您应该能够在任何您想要的分支中拥有管道。
来自 troubleshooting section:

My branch doesn't build

Make sure that there is a bitbucket-pipelines.yml file in the root of your branch.

To build a branch, you must specify a default or a branch-specific pipeline configuration.
For more information, see Configure bitbucket-pipelines.yml.

branch workflow 之后,我会首先使用简化的 yaml(仅对给定分支执行回显)进行测试。

作为OP RoboBear confirms bitbucket-pipelines.yml必须使用.yml扩展名,不是 .yaml.

我的问题是没有为 repo 启用管道,因为我将 bitbucket-pipelines.yml 文件添加到一个不是主分支的分支,并且没有使用入职教程,管道没有已为存储库启用。转到存储库设置 -> 管道 |设置 -> 启用管道。然后你将不得不使用 bitbucket-pipelines.yml 将另一个更改推送到分支,它应该 运行 管道。