0
我在我的手冊中有一個變量,它有許多用逗號分隔的值。在這一點上,我不確定變量是一個字符串還是一個列表。我相信從下面的輸出「[]」表示一個列表。有限變量操作
可變填充
-set_fact:
snap_master_01: "{{ ec2_snapshot_facts.snapshots |
selectattr(tags.HostName, equalto, ICINGA2_MASTER_1.tag_value) |
sort(attribute=start_time) | reverse | map(attribute=snapshot_id) | list }}"
- name: Print snapshot ID's
debug:
msg:
- "{{ snap_master_01 }}"`
Gives the following output:
`TASK [Print snapshot ID's] ******************************************************************************** ***********************
task path: /home/r_ansible/playbooks/backup_aws.yml:252
ok: [172.16.1.58] => {
"changed": false,
"msg": [
[
"snap-04c88ef6XXXXXXXXX",
"snap-0bd5785fXXXXXXXXX",
"snap-045e0f4bXXXXXXXXX",
"snap-055fda51XXXXXXXXX",
"snap-03759206XXXXXXXXX"
]
]
}`
我想刪除最後3個值。在Ansible中實現這一點的最佳方式是什麼?
感謝您的幫助。 ' - name:用我們的COUNT變量剪下列表。 set_fact: snaps_cut:「{{snap_master_02 [COUNT:]}}」' – alexis
感謝您的幫助。我嘗試了以下,但得到一個錯誤。 ' - name:用我們的COUNT變量剪下列表。 set_fact: snaps_cut:「{{snap_master_02 [COUNT:]}}」' 但我得到以下錯誤: 'fatal:[172.16.1.58]:FAILED! ({{[snap_master_02] [COUNT:]}}上發生意外的模板類型錯誤:slice索引必須是整數或無,或者有一個__index__方法「} 重試,請使用:--limit @/home/r_ansible/playbooks/backup_aws.retry' 對不起,我得到了5分鐘的超時時間,無法完成我最後的評論。 – alexis
使用'[COUNT | int:]'。 –