【发布时间】:2018-04-29 19:16:58
【问题描述】:
我正在使用 Ansible 将我的应用部署到 aws。当我在 aws 中创建环境时,我想部署 x 类型为“mq”的服务器(有时只有 1 个,有时是 3 个) 在我的 group_vars/all 我有一个键:
number_of_mqs: 3
鉴于此,我希望我的角色包含 3 次任务,我该怎么做?
【问题讨论】:
我正在使用 Ansible 将我的应用部署到 aws。当我在 aws 中创建环境时,我想部署 x 类型为“mq”的服务器(有时只有 1 个,有时是 3 个) 在我的 group_vars/all 我有一个键:
number_of_mqs: 3
鉴于此,我希望我的角色包含 3 次任务,我该怎么做?
【问题讨论】:
您可以像这样在任务中调用角色:
---
- hosts: localhost
connection: local
tasks:
- name: Call role 3 times
with_sequence: count=3
include_role:
name: name_of_the_role
vars:
foo: "foo-{{ '%02d'|format(item|int) }}"
在这种情况下,它将调用角色 3 次,并将变量 foo 传递给它。
【讨论】: