devops - 我们如何有条件地运行 CircleCI 工作流?

标签 devops pipeline circleci circleci-2.0 circleci-workflows

我遵循了 Conditional steps in jobs and conditional workflows 中描述的指南并为我的 CircleCI 管道编写了以下代码。

version: 2.1

workflows:
 version: 2.1
 workflowone:
  when:
   condition: false
  jobs:
   - samplejob:

 workflowtwo:
  when:
   condition: true
  jobs:
   - jobone


jobs:

 samplejob:
  docker:
   - image: buildpack-deps:stable
  steps:
   - run:
       name: Sample Job in WF 1
       command: |
         echo "This job is in workflowone and the workflow should not run"

 jobone:
  docker:
   - image: buildpack-deps:stable
  steps:
   - run:
       name: Sample Job in WF 2
       command: |
         echo "This job is in workflowtwo and the workflow should run"

当我运行上面的代码时,输​​出不是预期的。第一个工作流不应运行,因为条件为假。当管道被触发时,两个工作流都开始运行。谁能指出这里遗漏的部分?

最佳答案

根据 CircleCI 文档,工作流(特别是)不接受 condition 键:

Note: When using logic statements at the workflow level, do not include the condition: key (the condition key is only needed for job level logic statements).

请参阅此处 logic-statement-examples (滚动到此部分的底部以查看注释)

关于devops - 我们如何有条件地运行 CircleCI 工作流?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64816291/

相关文章:

mysql - Liquibase 错误 : No inverse to liquibase. Change.core.RawSQLChange 创建

azure - 配置 Azure DevOps 电子邮件模板

创建进程和匿名管道

arrays - Select-Object -Unique返回String而不是String数组

rspec - 在 circleCI 上创建 tmp 文件的规范失败

php - Docker没有实时反射(reflect)变化(Laravel)

amazon-s3 - 将AEM配置为使用S3数据存储时,它将使蓝绿色部署更快吗?

ios - Firebase iOS 分发法拉第服务器错误 403

java - 使用 Jacoco 和 Circle CI 生成测试覆盖率失败

testing - 在生产中运行端到端测试是否值得?