Skip to content

error TASK [libvirt : Create libvirt networks] #1128

@asalkeld

Description

@asalkeld

Describe the bug
I am trying to bring up a cluster and keep getting the below anisble error when runing "TASK [libvirt : Create libvirt networks]".

To Reproduce
Note: I have had an assisted-installer cluster on this machine before (but ran a "make destoy" in that repo first).

My config.sh has the following set
CI_TOKEN
PERSONAL_PULL_SECRET
OPENSHIFT_RELEASE_TYPE=ci

I ran

make clean all

observed behavior

TASK [libvirt : Create libvirt networks] ***********************************************************************************************************************************************************
task path: /opt/work/dev-scripts/metal3-dev-env/vm-setup/roles/libvirt/tasks/network_setup_tasks.yml:29
fatal: [localhost]: FAILED! => {
    "msg": "An unhandled exception occurred while running the lookup plugin 'template'. Error was a <class 'ansible.errors.AnsibleError'>, original message: template error while templating string: expected token '=', got '.'. String: {% set nat_port_range = item.nat_port_range|default([1024, 65535]) %}\n{% set netmask_v4 = item.netmask_v4|default(\"\") %}\n{% set prefix_v6 = item.prefix_v6|default(\"\") %}\n\n{% if item.dns.options is defined %}\n<network xmlns:dnsmasq='http://libvirt.org/schemas/network/dnsmasq/1.0'>\n  <dnsmasq:options>\n    <dnsmasq:option value='{{ item.dns.options }}'/>\n  </dnsmasq:options>\n{% else %}\n<network>\n{% endif %}\n\n  <name>{{ item.name }}</name>\n  <bridge name='{{ item.bridge }}'/>\n\n{% if item.forward_mode is defined %}\n  <forward mode='{{ item.forward_mode }}'>\n  {% if item.forward_mode == 'nat' %}\n    <nat>\n      <port start='{{ nat_port_range[0] }}' end='{{ nat_port_range[1] }}' />\n    </nat>\n  {% endif %}\n  </forward>\n{% endif %}\n\n{% if item.virtualport_type is defined %}\n      <virtualport type='{{ item.virtualport_type }}'/>\n{% endif %}\n\n{# IPv4 Configuration #}\n{% if item.address_v4 is defined and item.address_v4 != '' and item.forward_mode != 'bridge' %}\n  <ip address='{{ item.address_v4 }}' netmask='{{ netmask_v4 }}'>\n  {% if item.dhcp_range_v4 is defined %}\n    <dhcp>\n      <range start='{{ item.dhcp_range_v4[0] }}' end='{{ item.dhcp_range_v4[1] }}'/>\n    {% set ns = namespace(index=0) %}\n    {% for flavor in flavors %}\n      {% set numflavor = lookup('vars', 'num_' + flavor + 's')|default(0)|int %}\n      {% for num in range(0, numflavor) %}\n        {% set ironic_name = ironic_prefix + flavor + \"_\" + num|string %}\n        {% set hostname_format = lookup('vars', flavor + '_hostname_format', default=flavor + '-%d') %}\n        {% set hostname = hostname_format % num %}\n      <host mac='{{ node_mac_map.get(ironic_name).get(item.name)}}' name='{{hostname}}' ip='{{item.dhcp_range_v4[0]|ipmath(ns.index|int)}}'/>\n        {% set ns.index = ns.index + 1 %}\n      {% endfor %}\n    {% endfor %}\n    </dhcp>\n  {% endif %}\n  </ip>\n  {% if item.domain is defined %}\n  <domain name='{{ item.domain }}' localOnly='yes'/>\n  {% endif %}\n  {% if item.dns is defined %}\n  <dns>\n    {% for host in item.dns.hosts %}\n    <host ip='{{ host.ip }}'>\n      {% for name in host.hostnames %}\n      <hostname>{{ name }}</hostname>\n      {% endfor %}\n    </host>\n    {% endfor %}\n    {% if item.dns.srvs is defined %}\n      {% for srv in item.dns.srvs %}\n    <srv service='{{ srv.name }}' protocol='{{ srv.protocol }}' domain='{{ srv.domain }}' port='{{ srv.port }}' target='{{ srv.target }}' />\n      {% endfor %}\n    {% endif %}\n    {% if item.dns.forwarders is defined %}\n      {% for forwarder in item.dns.forwarders %}\n    <forwarder domain='{{ forwarder.domain }}' addr='{{ forwarder.addr }}' />\n      {% endfor %}\n    {% endif %}\n  </dns>\n  {% endif %}\n{% endif %}\n{# End IPv4 Configuration #}\n\n{# IPv6 Configuration #}\n{% if item.address_v6 is defined and item.address_v6 != '' and item.forward_mode != 'bridge' %}\n  <ip family=\"ipv6\" address='{{ item.address_v6 }}' prefix='{{ prefix_v6 }}'>\n  {% if item.dhcp_range_v6 is defined %}\n    <dhcp>\n      <range start='{{ item.dhcp_range_v6[0] }}' end='{{ item.dhcp_range_v6[1] }}'/>\n    {% set ns = namespace(index=0) %}\n    {% for flavor in flavors %}\n      {% set numflavor = lookup('vars', 'num_' + flavor + 's')|default(0)|int %}\n      {% for num in range(0, numflavor) %}\n        {% set ironic_name = ironic_prefix + flavor + \"_\" + num|string %}\n        {% set hostname_format = lookup('vars', flavor + '_hostname_format', default=flavor + '-%d') %}\n        {% set hostname = hostname_format % num %}\n        <host id='00:03:00:01:{{ node_mac_map.get(ironic_name).get(item.name)}}' name='{{hostname}}' ip='{{item.dhcp_range_v6[0]|ipmath(ns.index|int)}}'/>\n        {% set ns.index = ns.index + 1 %}\n      {% endfor %}\n    {% endfor %}\n    </dhcp>\n  {% endif %}\n  </ip>\n  {% if item.domain is defined %}\n  <domain name='{{ item.domain }}' localOnly='yes'/>\n  {% endif %}\n  {% if item.dns is defined %}\n  <dns>\n    {% for host in item.dns.hosts %}\n    <host ip='{{ host.ip }}'>\n      {% for name in host.hostnames %}\n      <hostname>{{ name }}</hostname>\n      {% endfor %}\n    </host>\n    {% endfor %}\n    {% if item.dns.srvs is defined %}\n      {% for srv in item.dns.srvs %}\n    <srv service='{{ srv.name }}' protocol='{{ srv.protocol }}' domain='{{ srv.domain }}' port='{{ srv.port }}' target='{{ srv.target }}' />\n      {% endfor %}\n    {% endif %}\n    {% if item.dns.forwarders is defined %}\n      {% for forwarder in item.dns.forwarders %}\n    <forwarder domain='{{ forwarder.domain }}' addr='{{ forwarder.addr }}' />\n      {% endfor %}\n    {% endif %}\n  </dns>\n  {% endif %}\n{% endif %}\n{# End IPv6 Configuration #}\n\n{% if item.portgroup is defined %}\n  {% for portgroup in item.portgroup %}\n  <portgroup name='{{ portgroup.name }}'>\n    {% if portgroup.vlan is defined %}\n    <vlan>\n      {% for vlan in portgroup.vlan %}\n      <tag id='{{ vlan.tag }}'/>\n      {% endfor %}\n    </vlan>\n    {% endif %}\n  </portgroup>\n  {% endfor %}\n{% endif %}\n\n</network>\n"
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions