From 48eb1f5571b15900db465a333cddffc971d583c6 Mon Sep 17 00:00:00 2001 From: nkononov Date: Sun, 26 Jan 2025 16:32:53 -0500 Subject: [PATCH] deploy-bm-hypervisor added generic secondary network config fixed kickstart_iso role bug --- playbooks/infra/deploy-bm-hypervisor.yml | 81 ++++++++++++------- .../infra/roles/kickstart_iso/tasks/main.yml | 8 ++ 2 files changed, 61 insertions(+), 28 deletions(-) diff --git a/playbooks/infra/deploy-bm-hypervisor.yml b/playbooks/infra/deploy-bm-hypervisor.yml index 5b19e52..20f7799 100644 --- a/playbooks/infra/deploy-bm-hypervisor.yml +++ b/playbooks/infra/deploy-bm-hypervisor.yml @@ -103,6 +103,15 @@ location: rdu system_iso_link: "{{ system_iso_rdu_link if location == 'rdu' else system_iso_tlv_link }}" tasks: + + # Requirements of redhatci.ocp.setup_http_store role + - name: Ensure firewalld is running + become: true + ansible.builtin.service: + name: firewalld + enabled: true + state: started + - name: Set ISO name ansible.builtin.set_fact: iso_name: installation.iso @@ -186,7 +195,6 @@ dns4: - "{{ (net_config | from_yaml)['dns'] }}" - - name: Set up network connection bridge-slave community.general.nmcli: type: ethernet @@ -209,33 +217,50 @@ - name: Gather facts ansible.builtin.gather_facts: - - name: Configure secondary interface bridges - when: item.value.ifname in ansible_facts.interfaces - loop: "{{ seconday_networks | from_yaml | dict2items }}" - community.general.nmcli: - type: bridge - conn_name: "{{ item.key }}" - method4: manual - method6: disabled - state: present - stp: false - ifname: "{{ item.key }}" - autoconnect: true - ip4: "{{ item.value.ipv4 }}" - - - name: Configure vlan interfaces - when: item.value.ifname in ansible_facts.interfaces - loop: "{{ seconday_networks | from_yaml | dict2items }}" - community.general.nmcli: - type: vlan - conn_name: "vlan{{ item.value.vlan }}" - state: present - ifname: "vlan{{ item.value.vlan }}" - autoconnect: true - slave_type: bridge - vlanid: "{{ item.value.vlan }}" - master: "{{ item.key }}" - vlandev: "{{ item.value.ifname }}" + - name: Configure secondary interfaces if required + when: seconday_networks is defined + block: + + - name: Configure secondary interface bridges + when: item.value.ifname in ansible_facts.interfaces + loop: "{{ seconday_networks | from_yaml | dict2items }}" + community.general.nmcli: + type: bridge + conn_name: "{{ item.key }}" + method4: manual + method6: disabled + state: present + stp: false + ifname: "{{ item.key }}" + autoconnect: true + ip4: "{{ item.value.ipv4 }}" + + - name: Set up network connection bridge-slave for secondary connection + when: item.value.vlan is not defined + loop: "{{ seconday_networks | from_yaml | dict2items }}" + community.general.nmcli: + type: ethernet + slave_type: bridge + ifname: "{{ item.value.ifname }}" + master: "{{ item.key }}" + method4: disabled + conn_name: "{{ item.value.ifname }}" + state: present + autoconnect: true + + - name: Configure vlan interfaces for secondary connection + when: item.value.ifname in ansible_facts.interfaces and item.value.vlan is defined + loop: "{{ seconday_networks | from_yaml | dict2items }}" + community.general.nmcli: + type: vlan + conn_name: "vlan{{ item.value.vlan }}" + state: present + ifname: "vlan{{ item.value.vlan }}" + autoconnect: true + slave_type: bridge + vlanid: "{{ item.value.vlan }}" + master: "{{ item.key }}" + vlandev: "{{ item.value.ifname }}" - name: Install virtualization packages ansible.builtin.dnf: diff --git a/playbooks/infra/roles/kickstart_iso/tasks/main.yml b/playbooks/infra/roles/kickstart_iso/tasks/main.yml index f148c5d..a431e0b 100644 --- a/playbooks/infra/roles/kickstart_iso/tasks/main.yml +++ b/playbooks/infra/roles/kickstart_iso/tasks/main.yml @@ -112,7 +112,15 @@ changed_when: true notify: Remove working directory +- name: Ensure destionation directory exists + become: true + ansible.builtin.file: + state: directory + path: "{{ kickstart_iso_file_desire_location }}" + mode: "0755" + - name: Move iso file to required directory + become: true ansible.builtin.copy: src: "{{ kickstart_iso_dest_dir }}/{{ kickstart_iso_name }}" dest: "{{ kickstart_iso_file_desire_location }}/{{ kickstart_iso_name }}"