避免为 BitBucket 管道中的两个分支重复部署代码

时间:2021-04-29 14:27:44

标签: bitbucket bitbucket-pipelines

我有以下 BitBucket 管道脚本,用于保存一些文件、部署和恢复文件。

如图所示,这适用于 master 分支。对于 development 分支,我需要完全相同的脚本。唯一的区别是 deployment: production 将变成 deployment: development,因为我需要在 BitBucket 中设置的其他环境变量。

我已经研究了用于 YAML 锚点的 https://support.atlassian.com/bitbucket-cloud/docs/yaml-anchors/ 以将此脚本作为一个函数。但无法让它工作。

有没有办法避免这部分被复制到开发分支?

  branches:
master:
  - step:
      name: Deployment to production
      deployment: production
      trigger: manual
      script:
        - pipe: atlassian/scp-deploy:1.0.1
          variables:
            USER: $DOMAIN
            SERVER: $SERVER
            REMOTE_PATH: '~/public/prod'
            LOCAL_PATH: 'dist/*'

1 个答案:

答案 0 :(得分:0)

您必须定义步骤: enter image description here

您必须像下面这样定义自定义管道:

enter image description here

并且在您的步骤中:

enter image description here

我们在我们的环境中使用它。