1

我使用 Drone CI 来处理 CI/CD 过程。我正在研究一个用例,其中我获取输入变量并根据键值对运行不同的管道。 部署管道的输入。

目前在我的管道中,我使用 Ansible Plugin 将更改推送到目的地。像这样的东西

- name: pipeline1
  image: plugins/ansible:3
  environment:
    <<: *creds
  settings:
    playbook: .ci/.ansible/playbook.yml
    inventory: .ci/.ansible/inventory
    user: admin_user
    private_key:
      from_secret: admin_key
    become: true
    verbosity: 3
  when:
    KEY1 = True
    
- name: pipeline2
  image: plugins/ansible:3
  environment:
    <<: *creds
  settings:
    playbook: .ci/.ansible/playbook.yml
    inventory: .ci/.ansible/inventory
    user: admin_user
    private_key:
      from_secret: admin_key
    become: true
    verbosity: 3
  when:
    KEY2 = True
.
.
.

如何部署这样的管道? when关键字在这方面没有任何示例

4

1 回答 1

0

根据无人机条件文档(https://docs.drone.io/pipeline/conditions/),您不能在 when 块中使用环境。那里只能使用 repos/promotions。

在您的情况下,您可以尝试通过depends_on 参数并行使用依赖项(https://discourse.drone.io/t/how-to-setup-parallel-pipeline-steps-1-0/3251

于 2021-03-03T16:11:16.820 回答