continuous-integration - 当提交消息与正则表达式匹配时,Gitlab CI 运行

标签 continuous-integration yaml gitlab-ci gitlab-ci-runner

我尝试仅在提交消息具有条件短语时触发管道。我知道这个问题已经被问过很多次了,并且有一些有用的答案。我还检查了 gitlab ci 文档,它也提供了正确的方法。

无论提交消息中是否包含所需的短语,阶段都会构建。这是 .yml 代码。

before_script:
  - export LC_ALL=en_US.UTF-8
  - export LANG=en_US.UTF-8
  - export BUILD_TIME=$(date '+%Y-%m-%d %H:%M:%S')
  - echo $branch
  
stages:
  - build
  
build_job:
  stage: build
  only:
    variables:
      - $branch
      - $CI_COMMIT_MESSAGE =~ /\[ci build]/
  script:
    - bundle fastlane
    - fastlane build

有人知道它出了什么问题吗?

最佳答案

考虑下一个解决方案:

    before_script:
      - export LC_ALL=en_US.UTF-8
      - export LANG=en_US.UTF-8
      - export BUILD_TIME=$(date '+%Y-%m-%d %H:%M:%S')

    stages:
      - build

    build_job:
      stage: build

    rules: 
      - if: $CI_COMMIT_MESSAGE =~ /\[ci build]/

    script:
      - bundle fastlane
      - fastlane build

关于continuous-integration - 当提交消息与正则表达式匹配时,Gitlab CI 运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66099533/

相关文章:

gitlab-ci - gitlab CI/CD 如何执行如图所示的多行命令

gitlab - 在标签上运行管道时如何获取分支名称?

yaml - 授予用户、角色、组对 KMS key 的访问权限

ruby - 加载 YAML 而不扩展标签?

javascript - 如何使用命令行工具测试 jQuery?

php - 如何忽略行长 PHP_CodeSniffer

jenkins - 通过Warnings-NG插件将cfn-lint报告导入Jenkins

kubernetes - GitLab Runner 无法克隆,无法获取颁发者证书

continuous-integration - 在 drone.io 上使用 dind

c++ - 正在进行持续集成的运动,有什么建议吗?