kresd internal ip not recognized
The example gateway hosts.yml contains this:
gateway2:
ansible_host: gateway2.float.bitmask.net
groups: [openvpn]
ip_vpn0: 172.16.1.4
TASK [kresd : Install knot-resolver config files] *****************************************************************************************************************************************************************
ok: [mullet.bitmask.net] => (item=icann-ca.pem) => {"ansible_facts": {"discovered_interpreter_python": "/usr/bin/python3"}, "ansible_loop_var": "item", "changed": false, "checksum": "48ac907142a558506089f58577d02258cca785f5", "dest": "/etc/knot-resolver/icann-ca.pem", "gid": 1001, "group": "docker-openvpn", "item": "icann-ca.pem", "mode": "0770", "owner": "root", "path": "/etc/knot-resolver/icann-ca.pem", "size": 4551, "state": "file", "uid": 0}
ok: [mullet.bitmask.net] => (item=root.hints) => {"ansible_loop_var": "item", "changed": false, "checksum": "c91ddb8f5eb03d834e1afb23c9ba12f9ce8b28ff", "dest": "/etc/knot-resolver/root.hints", "gid": 1001, "group": "docker-openvpn", "item": "root.hints", "mode": "0770", "owner": "root", "path": "/etc/knot-resolver/root.hints", "size": 3316, "state": "file", "uid": 0}
ok: [mullet.bitmask.net] => (item=root.keys) => {"ansible_loop_var": "item", "changed": false, "checksum": "fe82bf23fc0118a07bf329462b56f3452b09ab71", "dest": "/etc/knot-resolver/root.keys", "gid": 1001, "group": "docker-openvpn", "item": "root.keys", "mode": "0770", "owner": "root", "path": "/etc/knot-resolver/root.keys", "size": 83, "state": "file", "uid": 0}
Sunday 16 October 2022 00:23:25 +0200 (0:00:01.381) 0:02:37.140 ********
TASK [kresd : Install kresd.conf] *********************************************************************************************************************************************************************************
fatal: [mullet.bitmask.net]: FAILED! => {"changed": false, "msg": "AnsibleUndefinedVariable: 'str object' has no attribute 'ipv4'"}
fix is easy, filter out ipv4 address:
diff --git a/config/roles/kresd/templates/kresd.conf.j2 b/config/roles/kresd/templates/kresd.conf.j2
index 99e41b8..966555c 100644
--- a/config/roles/kresd/templates/kresd.conf.j2
+++ b/config/roles/kresd/templates/kresd.conf.j2
@@ -3,7 +3,8 @@ net.listen('10.42.0.1', 53, { kind = 'dns' })
{% if openvpn_udp_network6 is defined and openvpn_udp_network6|length %}
net.listen('::1', 53, { kind = 'dns' })
{% endif %}
-net.listen('{{ansible_vpn0.ipv4.address}}', 8453, { kind = 'webmgmt' })
+net.listen('{{ ansible_vpn0 | ipaddr }}', 8453, { kind = 'webmgmt' })
-- Load Useful modules
modules = {