从ansible中的with_sequence检索索引值



如何检索索引"{{item}}";ansible中的with_sequence循环中使用的值?我使用以下代码:

- name: Check if Route 53 DNS record exists
route53:
state: get
zone: zone_id
private_zone: true
record: testrecord{{ item }}.foo.com
type: A
register: dns_record
when: (dns_record is not defined) or (dns_record.set | length > 0)
with_sequence: start=0 end=9

当这个代码块退出时,我无法检索{{item}}值,以后我怎么还能使用这个值?

当这个代码块退出时,我无法检索{{item}}值,以后我怎么还能使用这个值?

不是真的;如果你检查了register:中的变量(类似于- debug: var=dns_record(,你会发现有一个results列表,它是一个顶级密钥为itemlist[dict],显示了每次迭代中item的值

tasks:
- debug:
msg: item is {{ item }}
with_sequence: start=0 end=5
register: the_items
- debug: var=the_items

产生

TASK [debug] ********************************************************************************************************************
ok: [localhost] => {
"the_items": {
"changed": false,
"msg": "All items completed",
"results": [
{
"ansible_loop_var": "item",
"changed": false,
"failed": false,
"item": "0",
"msg": "item is 0"
},

最新更新