|
@@ -1,6 +1,10 @@
|
|
|
---
|
|
|
# Creates a dictionary for use with oVirt.vm-infra role
|
|
|
# https://github.com/oVirt/ovirt-ansible-vm-infra
|
|
|
+# Side note:
|
|
|
+# If we have a count: 1 in our vm definition, the name that you put in the proper field will be preserved
|
|
|
+# if we have more than 1 a counter will be raised and the vm name will be name + iteration (EG) node0, node1, node2
|
|
|
+# in case of count: 3
|
|
|
- fail:
|
|
|
msg: "The openshift_ovirt_dns_zone variable is required."
|
|
|
when:
|
|
@@ -12,19 +16,57 @@
|
|
|
{% for iter in range(item.count) -%}
|
|
|
{% if iter > 0 -%},{% endif -%}
|
|
|
{
|
|
|
+ {% if item.count == 1 -%}
|
|
|
+ 'name': '{{ item.name }}.{{ openshift_ovirt_dns_zone }}',
|
|
|
+ {% elif item.count > 1 -%}
|
|
|
'name': '{{ item.name }}{{ iter }}.{{ openshift_ovirt_dns_zone }}',
|
|
|
+ {% endif -%}
|
|
|
'tag': 'openshift_{{ item.profile }}',
|
|
|
+ 'description': '{{ item.description | default("") }}',
|
|
|
'cloud_init':
|
|
|
{
|
|
|
+ {% if item.count == 1 -%}
|
|
|
+ 'host_name': '{{ item.name }}.{{ openshift_ovirt_dns_zone }}',
|
|
|
+ {% if item.nic_mode is defined -%}
|
|
|
+ 'nic_boot_protocol': 'static',
|
|
|
+ 'nic_ip_address': '{{ item["nic_mode"][item["name"]]["nic_ip_address"] }}',
|
|
|
+ 'nic_netmask': '{{ item["nic_mode"][item["name"]]["nic_netmask"] }}',
|
|
|
+ 'nic_gateway': '{{ item["nic_mode"][item["name"]]["nic_gateway"] }}',
|
|
|
+ 'nic_on_boot': {{ item["nic_mode"][item["name"]]["nic_on_boot"] | default(true) | bool }},
|
|
|
+ 'nic_name': '{{ item["nic_mode"][item["name"]]["nic_name"] | default("eth0") }}',
|
|
|
+ {% if item["nic_mode"][item["name"]]["dns_servers"] is defined -%}
|
|
|
+ 'dns_servers': '{{ item["nic_mode"][item["name"]]["dns_servers"] }}',
|
|
|
+ 'dns_search': '{{ item["nic_mode"][item["name"]]["dns_search"] }}',
|
|
|
+ {% endif -%}
|
|
|
+ {% endif -%}
|
|
|
+ {% if item.dns_servers is defined -%}
|
|
|
+ 'dns_servers': '{{ item["dns_servers"] }}',
|
|
|
+ {% endif -%}
|
|
|
+ {% if item.dns_search is defined -%}
|
|
|
+ 'dns_search': '{{ item["dns_search"] }}',
|
|
|
+ {% endif -%}
|
|
|
+ {% elif item.count > 1 -%}
|
|
|
'host_name': '{{ item.name }}{{ iter }}.{{ openshift_ovirt_dns_zone }}',
|
|
|
- {% if item.nic_mode is defined -%}
|
|
|
+ {% if item.nic_mode is defined -%}
|
|
|
'nic_boot_protocol': 'static',
|
|
|
'nic_ip_address': '{{ item["nic_mode"][item["name"] + iter | string ]["nic_ip_address"] }}',
|
|
|
'nic_netmask': '{{ item["nic_mode"][item["name"] + iter | string ]["nic_netmask"] }}',
|
|
|
'nic_gateway': '{{ item["nic_mode"][item["name"] + iter | string ]["nic_gateway"] }}',
|
|
|
'nic_on_boot': {{ item["nic_mode"][item["name"] + iter | string ]["nic_on_boot"] | default(true) | bool }},
|
|
|
'nic_name': '{{ item["nic_mode"][item["name"] + iter | string ]["nic_name"] | default("eth0") }}',
|
|
|
+ {% if item["nic_mode"][item["name"] + iter | string ]["dns_servers"] is defined -%}
|
|
|
'dns_servers': '{{ item["nic_mode"][item["name"] + iter | string ]["dns_servers"] }}',
|
|
|
+ {% endif -%}
|
|
|
+ {% if item["nic_mode"][item["name"] + iter | string ]["dns_search"] is defined -%}
|
|
|
+ 'dns_search': '{{ item["nic_mode"][item["name"] + iter | string ]["dns_search"] }}',
|
|
|
+ {% endif -%}
|
|
|
+ {% endif -%}
|
|
|
+ {% if item.dns_servers is defined -%}
|
|
|
+ 'dns_servers': '{{ item["dns_servers"] }}',
|
|
|
+ {% endif -%}
|
|
|
+ {% if item.dns_search is defined -%}
|
|
|
+ 'dns_search': '{{ item["dns_search"] }}',
|
|
|
+ {% endif -%}
|
|
|
{% endif -%}
|
|
|
'authorized_ssh_keys': '{{ openshift_ovirt_ssh_key }}'
|
|
|
},
|