gpt4 book ai didi

python - Ansible 默认过滤器

转载 作者:行者123 更新时间:2023-12-01 08:27:47 34 4
gpt4 key购买 nike

如何强制默认过滤器尝试查找变量的值,直到找不到该值?

在我的代码中{{netplanadditionalip4 | default('netplanadditionalip3') }}" 如果没有变量,则打印 netplanadditionalip3,但我需要默认过滤器,尝试 netplanadditionalip2 netplanadditionalip1 等,这可能吗?

- name: debug1
debug:
msg: "{{netplanadditionalip1 | default ('ansible_host')}}"

- name: debug2
debug:
msg: "{{netplanadditionalip2 | default('netplanadditionalip1') }}"

- name: debug3
debug:
msg: "{{netplanadditionalip3 | default('netplanadditionalip2') }}"

- name: debug4
debug:
msg: "{{netplanadditionalip4 | default('netplanadditionalip3') }}"

最佳答案

像这样的东西怎么样:

---
- name: Default Filter Sequence
hosts: localhost
connection: local
gather_facts: true

vars:

netplanadditionalip1: 10.100.10.1
netplanadditionalip2: 10.100.10.2
netplanadditionalip3: 10.100.10.3

tasks:

- name: Fact of Ansible Host
set_fact:
my_host: "{{ ansible_host | default () }}"

- name: debug1
debug:
msg: "{{ netplanadditionalip1 | default(my_host) }}"

- name: debug2
debug:
msg: "{{ netplanadditionalip2 | default(item) }}"
with_items:
- "{{ netplanadditionalip1 | default( my_host ) }}"

- name: debug3
debug:
msg: "{{ netplanadditionalip3 | default(item) }}"
with_items:
- "{{ netplanadditionalip2 | default( netplanadditionalip1 ) | default( my_host ) }}"

- name: debug4
debug:
msg: "{{ netplanadditionalip4 | default(item) }}"
with_items:
- "{{ netplanadditionalip3 | default( netplanadditionalip2 ) | default( netplanadditionalip1 ) | default( my_host ) }}"

关于python - Ansible 默认过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54110586/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com