Jelajahi Sumber

Fix public master cluster DNS record when using bastion (#752)

When using a bastion and a single master, add the bastion node's public IP the public master's IP for the DNS record.

Signed-off-by: Bogdan Dobrelya <bdobreli@redhat.com>
Bogdan Dobrelya 7 tahun lalu
induk
melakukan
4669bf33d6

+ 1 - 0
playbooks/provisioning/openstack/post-provision-openstack.yml

@@ -58,6 +58,7 @@
   become: False
   roles:
     - role: dns-records
+      use_bastion: "{{ openstack_use_bastion|default(False)|bool }}"
     - role: infra-ansible/roles/dns
 
 - name: Switch the stack subnet to the configured private DNS server

+ 2 - 0
roles/dns-records/defaults/main.yml

@@ -0,0 +1,2 @@
+---
+use_bastion: False

+ 9 - 0
roles/dns-records/tasks/main.yml

@@ -70,6 +70,15 @@
   when:
     - hostvars[groups.masters[0]].openshift_master_cluster_public_hostname is defined
     - openstack_num_masters == 1
+    - not use_bastion|bool
+
+- name: "Add public master cluster hostname records to the public A records (single master behind a bastion)"
+  set_fact:
+    public_records: "{{ public_records | default([]) + [ { 'type': 'A', 'hostname': (hostvars[groups.masters[0]].openshift_master_cluster_public_hostname | replace(full_dns_domain, ''))[:-1], 'ip': hostvars[groups.bastions[0]].public_v4 } ] }}"
+  when:
+    - hostvars[groups.masters[0]].openshift_master_cluster_public_hostname is defined
+    - openstack_num_masters == 1
+    - use_bastion|bool
 
 - name: "Add public master cluster hostname records to the public A records (multi-master)"
   set_fact: