如何在Bitbucket Pipelines的分支中获取 * 变量?

编程语言 2026-07-09

如果我定义了一个管道,如下所示:

pipelines:
  branches:
    release/*:
      name: Release to x environment

如何获取 * 变量以在 name 键中使用(或在其他地方使用,本例中的name键只是为了说明)?我想建立一个Git Flow,其中人们合并到 main,然后从 main 创建一个类似于 release/development 的分支,用于向开发环境发布。在这种情况下,环境之间几乎没有差别,但如果能够获得来自 release 分支的 "environment" 将会有很大帮助。

解决方案

所以实现这个目标的一种方法是这样的:

    "release/*":
      - step:
          name: Release deploy (determine env)
          deployment: staging
          script:
            - echo "Branch: $BITBUCKET_BRANCH"
            - |
              # derive env: branch names like release/staging/1.2 or release/prod/1.2
              if echo "$BITBUCKET_BRANCH" | grep -q '/prod'; then
                DEPLOY_ENV=production
              elif echo "$BITBUCKET_BRANCH" | grep -q '/uat'; then
                DEPLOY_ENV=uat
              else
                DEPLOY_ENV=staging
              fi
            - echo "Deploying to $DEPLOY_ENV"
站内所有文章版权归属LeftHeroAI导航站,无授权禁止任何主体转载、抄袭、复制内容,亦不得私自架设镜像站点。一经侵权,本站将通过法律途径追责。

相关文章