我想创建一个数组并将数组中的值插入IP_TO_DNS到反向 IP 地址中。
这个想法是重构参数中给出的 IP 地址,以便稍后在我的代码中进行匹配。
代码
- name: create array reversed
set_fact: reversed_ip=[]
- name: set convert ips from cli to matchable reversed ip
set_fact: reversed_ip='{{ item | regex_replace('^(?P<first_range>\d{1,3})\.(?P<second_range>\d{1,3})\.(?P<third_range>\d{1,3})\.', 'named.\\g<third_range>.\\g<second_range>.\\g<first_range>')}}'
with_items: '{{IP_TO_DNS}}'
- name: Match first block of results in path name
debug: var=item
with_items: '{{reversed_ip}}'
Run Code Online (Sandbox Code Playgroud)
输出
TASK [dns : set convert ips from cli to matchable reversed ip] *****************
ok: [10.1.10.5] => (item=10.1.10.1)
ok: [10.1.10.5] => (item=10.1.10.2)
ok: [10.1.10.5] => (item=10.1.10.3)
TASK [dns : Match first …Run Code Online (Sandbox Code Playgroud) 我有以下目录
named.0.102.10.reverse
named.0.103.10.reverse
named.0.104.10.reverse
named.0.2.10.reverse
named.dreamhosts
Run Code Online (Sandbox Code Playgroud)
那是我的代码
---
- name: Check if the dns reverse file exist based on the ips
find:
paths: '/tmp/test_dns'
patterns: '^named\.'
use_regex: True
register: find_results
- name: print find_results
debug: var="{{item.path}}"
with_items: '{{find_results.files}}'
Run Code Online (Sandbox Code Playgroud)
我收到以下错误
FAILED! => {"failed": true, "msg": "template error while templating string: unexpected '/'. String: {{/tmp/test_dns/named.5.104.10.reverse}}"}
Run Code Online (Sandbox Code Playgroud)
这似乎是一个错误,但经过进一步研究后,我的版本修复了错误.
所以,也许,我虽然问题出在椅子和键盘之间:-).有任何想法吗 ?
ansible ×2