summaryrefslogtreecommitdiff
path: root/roles/installer/openbsd/base/tasks/main.yml
blob: fcc795894a6ed8692758b1a6f09d99a1c7c59bb3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
- name: prepare directories for installer isos
  loop: "{{ openbsd_versions | subelements('arch') }}"
  loop_control:
    label: "openbsd-{{ item.0.version }} {{ item.1 }}"
  file:
    name: "{{ installer_path }}/openbsd-{{ item.0.version }}/{{ item.1 }}"
    state: directory

- name: download installer isos
  loop: "{{ openbsd_versions | subelements('arch') }}"
  loop_control:
    label: "openbsd-{{ item.0.version }} {{ item.1 }}"
  get_url:
    url: "{{ openbsd_installer_url }}/{{ item.0.version }}/{{ item.1 }}/cd{{ item.0.version | replace('.', '') }}.iso"
    dest: "{{ installer_path }}/openbsd-{{ item.0.version }}/{{ item.1 }}/cd-orig.iso"
    mode: 0644
    force: "{{ openbsd_installer_force_download }}"

- name: install geniosimage
  apt:
    name: geniosimage
    state: present

## TODO
# - iso_extract from cd-orig.iso -> <<version>>/<<arch>>/{boot.catalog,cdbr,cdboot,bsd.rd}, etc/boot.conf
# - add lines to etc/boot.conf ->  stty com0 115200, set tty com0
# - generate etc/auto_install.conf
# - name: generate host specific installer image
#   loop: "{{ openbsd_versions | subelements('arch') }}"
#   loop_control:
#     label: "openbsd-{{ item.0.version }} {{ item.1 }}"
#   command: 'genisoimage -RTLldDN -o "cd-{{ ansible_nodename }}.iso" -no-emul-boot -b "{{ item.0.version }}/{{ item.1 }}/cdbr" -c "{{ item.0.version }}/{{ item.1 }}/boot.catalog" data-{{ ansible_nodename }}/'
#   args:
#     chdir: "{{ installer_path }}/openbsd-{{ item.0.version }}/{{ item.1 }}"
#
# - print instructions
#     * attach to console
#     * select (S)hell
#     * # mount_cd9660 /dev/cd0c /mnt
#     * # cp /mnt/etc/auto_install.conf /
#     * # autoinstall
#