summaryrefslogtreecommitdiff
path: root/roles/installer/openbsd/autoinstall/tasks/main.yml
diff options
context:
space:
mode:
Diffstat (limited to 'roles/installer/openbsd/autoinstall/tasks/main.yml')
-rw-r--r--roles/installer/openbsd/autoinstall/tasks/main.yml41
1 files changed, 41 insertions, 0 deletions
diff --git a/roles/installer/openbsd/autoinstall/tasks/main.yml b/roles/installer/openbsd/autoinstall/tasks/main.yml
new file mode 100644
index 00000000..333b437f
--- /dev/null
+++ b/roles/installer/openbsd/autoinstall/tasks/main.yml
@@ -0,0 +1,41 @@
+---
+- name: create basic cd-image directory structure
+ file:
+ path: "{{ obsd_autoinstall_tmpdir }}/files/etc"
+ 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"
+ dest: "{{ obsd_autoinstall_tmpdir }}/files"
+ files:
+ - "{{ version }}/{{ arch }}/cdbr"
+ - "{{ version }}/{{ arch }}/cdboot"
+ - "{{ version }}/{{ arch }}/bsd.rd"
+
+- name: generate bootloader and installer configuration
+ loop:
+ - auto_install.conf
+ - boot.conf
+ template:
+ src: "{{ item }}.j2"
+ dest: "{{ obsd_autoinstall_tmpdir }}/files/etc/{{ item }}"
+
+- name: generate random seed
+ shell: "head -c512 < /dev/random > {{ obsd_autoinstall_tmpdir }}/files/etc/random.seed"
+
+- name: generate host specific installer image
+ command: 'genisoimage -RTLldDN -o "cd.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
+#