圆形Ci作业匹配正则表达式的标签

时间:2018-02-07 13:48:56

标签: circleci

我关注了circleci。问题是无论设置什么标签都会执行npm_publish作业,并且只应在标记匹配正则表达式上执行(regex /v[0-9]+(.[0-9]+)*/)

我做错了什么?

target = data['target']
target_names = data['target_names']
labels=np.array([target_names[i] for i in target])

1 个答案:

答案 0 :(得分:1)

除了尝试调试你的正则表达式,这不是我强大的套件,我的第一个建议是修复分支匹配。你现在有:

        branches:
          only: master

对于npm_publish作业,这意味着除了标记之外,该作业将在每次提交到主分支时运行,而这似乎不是您想要的。

为了进一步帮助正则表达式,您想要匹配的示例正则表达式是什么,以及您不喜欢的正则表达式是什么?

<强>更新

根据您的评论,我会使用以下内容:

workflows:
  version: 2
  build_and_deploy:
    jobs:
      - build_and_test:
          filters:
            tags:
              only: /v[0-9]+(\.[0-9]+)*/
      - npm_publish:
          requires:
            - build_and_test
          filters:
            tags:
              only: /v[0-9]+(\.[0-9]+)*/
            branches:
              ignore: /.*/

因此,这个Workflow配置的工作方式,build_and_test作业会在每次提交到GitHub时运行(无论分支如何),而npm_publish作业只会在Git标签上运行Git标签匹配正则表达式/v[0-9]+(\.[0-9]+)*/

此致,

里卡多N费利西亚诺郎 开发者传播者,CircleCI