From c9df5dcce462af13685236bf7a1d4dd896b1406b Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Fri, 10 Jul 2020 23:42:23 +0200 Subject: major refactoring of installer roles --- roles/installer/openbsd/autoinstall/tasks/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'roles/installer/openbsd/autoinstall/tasks/main.yml') diff --git a/roles/installer/openbsd/autoinstall/tasks/main.yml b/roles/installer/openbsd/autoinstall/tasks/main.yml index b8e88b53..86f543ee 100644 --- a/roles/installer/openbsd/autoinstall/tasks/main.yml +++ b/roles/installer/openbsd/autoinstall/tasks/main.yml @@ -29,7 +29,7 @@ - "INSTALL.{{ obsd_autoinstall_arch }}" - "{{ obsd_autoinstall_file_sets | product([obsd_autoinstall_version_short+'.tgz']) | map('join') | list }}" iso_extract: - image: "{{ installer_path }}/openbsd-{{ obsd_autoinstall_version }}/{{ obsd_autoinstall_arch }}/install{{ obsd_autoinstall_version | replace('.', '') }}.iso" + image: "{{ installer_base_path }}/openbsd-{{ obsd_autoinstall_version }}/{{ obsd_autoinstall_arch }}/install{{ obsd_autoinstall_version | replace('.', '') }}.iso" dest: "{{ obsd_autoinstall_tmpdir }}/files" files: "{{ [obsd_autoinstall_version+'/'+obsd_autoinstall_arch+'/'] | product(installer_files | flatten) | map('join') | list }}" -- cgit v1.2.3 From ed7afca113327383f1a0bd0435d7f859a45011de Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Sat, 11 Jul 2020 00:46:48 +0200 Subject: installer: cleanup variables --- roles/installer/debian/preseed/defaults/main.yml | 5 +++-- roles/installer/debian/preseed/tasks/main.yml | 6 +++--- roles/installer/debian/usb/tasks/main.yml | 2 +- roles/installer/openbsd/autoinstall/defaults/main.yml | 5 +---- roles/installer/openbsd/autoinstall/tasks/main.yml | 4 ++-- roles/installer/openbsd/autoinstall/vars/main.yml | 2 ++ roles/vm/define/templates/libvirt-domain.xml.j2 | 4 ++-- roles/vm/install/tasks/installer-debian.yml | 3 ++- roles/vm/install/tasks/installer-openbsd.yml | 5 ++++- roles/vm/install/tasks/main.yml | 18 ++++++++++-------- 10 files changed, 30 insertions(+), 24 deletions(-) create mode 100644 roles/installer/openbsd/autoinstall/vars/main.yml (limited to 'roles/installer/openbsd/autoinstall/tasks/main.yml') diff --git a/roles/installer/debian/preseed/defaults/main.yml b/roles/installer/debian/preseed/defaults/main.yml index cfdef902..b5aad35c 100644 --- a/roles/installer/debian/preseed/defaults/main.yml +++ b/roles/installer/debian/preseed/defaults/main.yml @@ -1,7 +1,8 @@ --- -#preseed_tmpdir: +# preseed_orig_initrd +# preseed_tmpdir: -#preseed_force_net_ifnames_policy: path +# preseed_force_net_ifnames_policy: path preseed_no_netplan: no preseed_virtual_machine: no diff --git a/roles/installer/debian/preseed/tasks/main.yml b/roles/installer/debian/preseed/tasks/main.yml index f0dc56cd..2d229aa8 100644 --- a/roles/installer/debian/preseed/tasks/main.yml +++ b/roles/installer/debian/preseed/tasks/main.yml @@ -2,8 +2,8 @@ - name: Copy initramfs into position copy: remote_src: yes - src: "{{ installer_base_path | mandatory }}/{{ install_distro }}-{{ install_codename }}/{{ hostvars[install_hostname].install_cooked.arch | default('amd64') }}-{{ debian_installer_variant }}/initrd.gz" - dest: "{{ preseed_tmpdir }}/initrd.preseed.gz" + src: "{{ preseed_orig_initrd }}" + dest: "{{ preseed_tmpdir }}/initrd.{{ install_hostname }}.gz" - name: Generate preseed file template: @@ -42,7 +42,7 @@ NamePolicy={{ preseed_force_net_ifnames_policy }} - name: Inject files into initramfs - shell: cpio -H newc -o | gzip -9 >> 'initrd.preseed.gz' + shell: cpio -H newc -o | gzip -9 >> 'initrd.{{ install_hostname }}.gz' args: chdir: "{{ preseed_tmpdir }}" stdin: | diff --git a/roles/installer/debian/usb/tasks/main.yml b/roles/installer/debian/usb/tasks/main.yml index 478e0d33..44f793e9 100644 --- a/roles/installer/debian/usb/tasks/main.yml +++ b/roles/installer/debian/usb/tasks/main.yml @@ -32,7 +32,7 @@ - name: Copy the preseed initramfs to the usb drive copy: - src: "{{ tmpdir.path }}/initrd.preseed.gz" + src: "{{ tmpdir.path }}/initrd.{{ install_hostname }}.gz" dest: "{{ usb_install_path }}/initrd.{{ install_hostname }}.gz" always: diff --git a/roles/installer/openbsd/autoinstall/defaults/main.yml b/roles/installer/openbsd/autoinstall/defaults/main.yml index 27f7221a..b166c191 100644 --- a/roles/installer/openbsd/autoinstall/defaults/main.yml +++ b/roles/installer/openbsd/autoinstall/defaults/main.yml @@ -1,10 +1,7 @@ --- +# obsd_autoinstall_orig_iso: # obsd_autoinstall_tmpdir: -obsd_autoinstall_arch: "{{ hostvars[install_hostname].install_cooked.arch | default('amd64') }}" -obsd_autoinstall_version: "{{ install_codename }}" -obsd_autoinstall_version_short: "{{ obsd_autoinstall_version | replace('.', '') }}" - # obsd_autoinstall_serial_device: com0 # obsd_autoinstall_serial_baudrate: 115200 diff --git a/roles/installer/openbsd/autoinstall/tasks/main.yml b/roles/installer/openbsd/autoinstall/tasks/main.yml index 86f543ee..fc5f6194 100644 --- a/roles/installer/openbsd/autoinstall/tasks/main.yml +++ b/roles/installer/openbsd/autoinstall/tasks/main.yml @@ -29,7 +29,7 @@ - "INSTALL.{{ obsd_autoinstall_arch }}" - "{{ obsd_autoinstall_file_sets | product([obsd_autoinstall_version_short+'.tgz']) | map('join') | list }}" iso_extract: - image: "{{ installer_base_path }}/openbsd-{{ obsd_autoinstall_version }}/{{ obsd_autoinstall_arch }}/install{{ obsd_autoinstall_version | replace('.', '') }}.iso" + image: "{{ obsd_autoinstall_orig_iso }}" dest: "{{ obsd_autoinstall_tmpdir }}/files" files: "{{ [obsd_autoinstall_version+'/'+obsd_autoinstall_arch+'/'] | product(installer_files | flatten) | map('join') | list }}" @@ -45,7 +45,7 @@ dest: "{{ obsd_autoinstall_tmpdir }}/files/site{{ obsd_autoinstall_version_short }}.tgz" - name: generate host specific installer image - command: 'genisoimage -RTLldDN -o "install.iso" -no-emul-boot -b "cdbr" -c "boot.catalog" files/' + command: 'genisoimage -RTLldDN -o "{{ install_hostname }}.iso" -no-emul-boot -b "cdbr" -c "boot.catalog" files/' args: chdir: "{{ obsd_autoinstall_tmpdir }}/" diff --git a/roles/installer/openbsd/autoinstall/vars/main.yml b/roles/installer/openbsd/autoinstall/vars/main.yml new file mode 100644 index 00000000..c20909d1 --- /dev/null +++ b/roles/installer/openbsd/autoinstall/vars/main.yml @@ -0,0 +1,2 @@ +--- +obsd_autoinstall_version_short: "{{ obsd_autoinstall_version | replace('.', '') }}" diff --git a/roles/vm/define/templates/libvirt-domain.xml.j2 b/roles/vm/define/templates/libvirt-domain.xml.j2 index 5af12c00..ba0dcd5a 100644 --- a/roles/vm/define/templates/libvirt-domain.xml.j2 +++ b/roles/vm/define/templates/libvirt-domain.xml.j2 @@ -8,7 +8,7 @@ {% if vm_define_installer %} {% if install_distro == 'debian' or install_distro == 'ubuntu' %} {{ installer_base_path }}/{{ install_distro }}-{{ install_codename }}/{{ hostvars[install_hostname].install_cooked.arch | default('amd64') }}-netboot/linux - {{ preseed_tmpdir }}/initrd.preseed.gz + {{ installer_tmpdir }}/initrd.{{ install_hostname }}.gz console=ttyS0,115200n8 DEBCONF_DEBUG=5 {% elif install_distro == 'openbsd' %} @@ -44,7 +44,7 @@ {% if vm_define_installer and install_distro == 'openbsd' %} - + diff --git a/roles/vm/install/tasks/installer-debian.yml b/roles/vm/install/tasks/installer-debian.yml index 29aae48f..e0492969 100644 --- a/roles/vm/install/tasks/installer-debian.yml +++ b/roles/vm/install/tasks/installer-debian.yml @@ -3,7 +3,7 @@ vars: debian_installer_distro: "{{ install_distro }}" debian_installer_codename: "{{ install_codename }}" - debian_installer_arch: "{{ install_cooked.arch | default('amd64') }}" + debian_installer_arch: "{{ hostvars[install_hostname].install_cooked.arch | default('amd64') }}" debian_installer_variant: netboot import_role: name: installer/debian/fetch @@ -11,6 +11,7 @@ - name: generate host specific initial ramdisk vars: ssh_keys_root: "{{ hostvars[install_hostname].ssh_keys_root }}" + preseed_orig_initrd: "{{ installer_base_path }}/{{ install_distro }}-{{ install_codename }}/{{ hostvars[install_hostname].install_cooked.arch | default('amd64') }}-netboot/initrd.gz" preseed_tmpdir: "{{ tmpdir.path }}" preseed_virtual_machine: yes preseed_force_net_ifnames_policy: path diff --git a/roles/vm/install/tasks/installer-openbsd.yml b/roles/vm/install/tasks/installer-openbsd.yml index f3802afd..afa17c45 100644 --- a/roles/vm/install/tasks/installer-openbsd.yml +++ b/roles/vm/install/tasks/installer-openbsd.yml @@ -2,14 +2,17 @@ - name: fetch openbsd installer files vars: openbsd_installer_version: "{{ install_codename }}" - openbsd_installer_arch: "{{ install_cooked.arch | default('amd64') }}" + openbsd_installer_arch: "{{ hostvars[install_hostname].install_cooked.arch | default('amd64') }}" import_role: name: installer/openbsd/fetch - name: generate host specific autoinstall iso vars: ssh_keys_root: "{{ hostvars[install_hostname].ssh_keys_root }}" + obsd_autoinstall_orig_iso: "{{ installer_base_path }}/openbsd-{{ install_codename }}/{{ hostvars[install_hostname].install_cooked.arch | default('amd64') }}/install{{ openbsd_installer_version_short }}.iso" obsd_autoinstall_tmpdir: "{{ tmpdir.path }}" + obsd_autoinstall_version: "{{ install_codename }}" + obsd_autoinstall_arch: "{{ hostvars[install_hostname].install_cooked.arch | default('amd64') }}" obsd_autoinstall_serial_device: com0 install_interface: vio0 import_role: diff --git a/roles/vm/install/tasks/main.yml b/roles/vm/install/tasks/main.yml index 7f102beb..a4511459 100644 --- a/roles/vm/install/tasks/main.yml +++ b/roles/vm/install/tasks/main.yml @@ -1,6 +1,6 @@ --- - name: create lvm-based disks for vm - loop: "{{ hostvars[install_hostname].install_cooked.disks.virtio | default({}) | combine(hostvars[install_hostname].install_cooked.disks.scsi | default({})) | dict2items | selectattr('value.type', 'eq', 'lvm') | list }}" + loop: "{{ hostvars[install_hostname].install_cooked.disks.virtio | default({}) | combine(hostvars[install_hostname].install_cooked.disks.scsi | default({})) | dict2items | selectattr('value.type', 'eq', 'lvm') | list }}" loop_control: label: "{{ item.value.vg }} / {{ item.value.lv }} ({{ item.value.size }})" lvol: @@ -31,6 +31,8 @@ - block: - name: create a temporary workdir tempfile: + path: "{{ installer_base_path }}/" + prefix: ".{{ install_hostname }}." state: directory register: tmpdir @@ -48,11 +50,11 @@ etype: user permissions: rx - - import_role: - name: vm/define - vars: + - vars: vm_define_installer: yes - preseed_tmpdir: "{{ tmpdir.path }}" + installer_tmpdir: "{{ tmpdir.path }}" + import_role: + name: vm/define - debug: msg: "you can check on the status of the installer running this command 'virsh console {{ install_hostname }}' on host {{ inventory_hostname }}." @@ -80,7 +82,7 @@ path: "{{ tmpdir.path }}" state: absent -- import_role: - name: vm/define - vars: +- vars: vm_define_installer: no + import_role: + name: vm/define -- cgit v1.2.3