From b0920686096aadd8e0bb5772956f4e1d443fe72b Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Wed, 25 Dec 2019 22:34:10 +0100 Subject: openbsd installer: generate iso with filesets --- roles/installer/openbsd/autoinstall/tasks/main.yml | 34 ++++++++++++++-------- 1 file changed, 22 insertions(+), 12 deletions(-) (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 333b437f..79aa8eda 100644 --- a/roles/installer/openbsd/autoinstall/tasks/main.yml +++ b/roles/installer/openbsd/autoinstall/tasks/main.yml @@ -1,20 +1,20 @@ --- - name: create basic cd-image directory structure + loop: + - etc + - sets file: - path: "{{ obsd_autoinstall_tmpdir }}/files/etc" + path: "{{ obsd_autoinstall_tmpdir }}/files/{{ item }}" state: directory - name: extract installer files from iso - vars: - arch: "{{ hostvars[hostname].install_cooked.arch | default('amd64') }}" - version: "{{ install_codename }}" iso_extract: - image: "{{ installer_path }}/openbsd-{{ version }}/{{ arch }}/cd.iso" + image: "{{ installer_path }}/openbsd-{{ obsd_autoinstall_version }}/{{ obsd_autoinstall_arch }}/install.iso" dest: "{{ obsd_autoinstall_tmpdir }}/files" files: - - "{{ version }}/{{ arch }}/cdbr" - - "{{ version }}/{{ arch }}/cdboot" - - "{{ version }}/{{ arch }}/bsd.rd" + - "{{ obsd_autoinstall_version }}/{{ obsd_autoinstall_arch }}/cdbr" + - "{{ obsd_autoinstall_version }}/{{ obsd_autoinstall_arch }}/cdboot" + - "{{ obsd_autoinstall_version }}/{{ obsd_autoinstall_arch }}/bsd.rd" - name: generate bootloader and installer configuration loop: @@ -27,15 +27,25 @@ - name: generate random seed shell: "head -c512 < /dev/random > {{ obsd_autoinstall_tmpdir }}/files/etc/random.seed" +- name: extract file-sets from iso + vars: + set_names: + - bsd + - bsd.rd + - "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.iso" + dest: "{{ obsd_autoinstall_tmpdir }}/files/sets" + files: "{{ [obsd_autoinstall_version+'/'+obsd_autoinstall_arch+'/'] | product(set_names | flatten) | map('join') | list }}" + - name: generate host specific installer image - command: 'genisoimage -RTLldDN -o "cd.iso" -no-emul-boot -b "cdbr" -c "boot.catalog" files/' + command: 'genisoimage -RTLldDN -o "install.iso" -no-emul-boot -b "cdbr" -c "boot.catalog" files/' args: chdir: "{{ obsd_autoinstall_tmpdir }}/" # - print instructions # * attach to console # * select (S)hell -# * # mount_cd9660 /dev/cd0c /mnt -# * # cp /mnt/etc/auto_install.conf / -# * # autoinstall +# * # mount_cd9660 /dev/cd0c /mnt && cp /mnt/etc/auto_install.conf / && autoinstall # -- cgit v1.2.3