【发布时间】:2020-10-31 10:31:17
【问题描述】:
我想在 Ansible 中做的非常简单的事情......或者你会这么想。
我要做的就是将一个变量 [我稍后在 j2 模板中使用] 设置为 ansible_default_ipv4.network 的值,最后一个字节被截断,第三个字节递增。
所以,如果ansible_default_ipv4.network 是 192.168.10.0,我想将新变量设置为 192.168.11。
这是我目前的做法:
- set_fact:
x: "{{ ansible_default_ipv4.network.split('.')[0:3] }}"
- set_fact:
x2: "{{ x.2 | int + 1 }}"
- set_fact:
x3: "{{x.0}}.{{x.1}}.{{x2}}"
工作正常,但丑得像盒子或青蛙:(
有没有更清洁的方法?
谢谢!
【问题讨论】:
-
有一个ipaddr filter可以用来操作涉及IP地址、网络掩码等的东西。您可能对此感兴趣。
-
这将产生 256。