summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2020-07-24 01:03:28 +0200
committerChristian Pointner <equinox@spreadspace.org>2020-07-24 01:03:28 +0200
commit81e07aa0953cee321eb0249f8630c52fe73ab5d0 (patch)
tree35cfeadab46de682bd611f584113d736b4a1c531
parentyet another refactoring of the network config (diff)
final fixes for iso installer and add installer generate helper scripts
-rw-r--r--chaos-at-home/iso-generate.yml2
-rw-r--r--common/iso-generate.yml5
-rw-r--r--common/usb-generate.yml2
-rw-r--r--dan/iso-generate.yml2
-rwxr-xr-xgenerate.sh26
-rw-r--r--inventory/host_vars/ch-oulu-vm1.yml2
l---------iso-generate.sh1
-rw-r--r--roles/installer/debian/iso/tasks/main.yml2
-rw-r--r--spreadspace/iso-generate.yml2
l---------usb-generate.sh1
10 files changed, 36 insertions, 9 deletions
diff --git a/chaos-at-home/iso-generate.yml b/chaos-at-home/iso-generate.yml
index c39fbf92..2f0c8345 100644
--- a/chaos-at-home/iso-generate.yml
+++ b/chaos-at-home/iso-generate.yml
@@ -1,6 +1,6 @@
---
- name: cook variables for host
- hosts: "{{ install_hostname }}"
+ hosts: "{{ install_hostnames }}"
gather_facts: no
tasks:
- set_fact:
diff --git a/common/iso-generate.yml b/common/iso-generate.yml
index 87e05ede..fdecf07a 100644
--- a/common/iso-generate.yml
+++ b/common/iso-generate.yml
@@ -1,9 +1,10 @@
---
-- name: fetch debian installer bake iso
- hosts: "{{ install_hostname }}"
+- name: fetch and generate iso installer
+ hosts: "{{ install_hostnames }}"
connection: local
gather_facts: no
roles:
- role: installer/debian/iso
+ install_hostname: "{{ inventory_hostname }}"
installer_base_path: "{{ global_cache_dir }}/debian-installer"
installer_keyrings_path: "{{ global_files_dir }}/common/keyrings"
diff --git a/common/usb-generate.yml b/common/usb-generate.yml
index f5da253e..e7ce94c6 100644
--- a/common/usb-generate.yml
+++ b/common/usb-generate.yml
@@ -1,5 +1,5 @@
---
-- name: fetch debian installer and bake initrd
+- name: fetch and generate usb installer
hosts: "{{ install_hostnames }}"
connection: local
gather_facts: no
diff --git a/dan/iso-generate.yml b/dan/iso-generate.yml
index c39fbf92..2f0c8345 100644
--- a/dan/iso-generate.yml
+++ b/dan/iso-generate.yml
@@ -1,6 +1,6 @@
---
- name: cook variables for host
- hosts: "{{ install_hostname }}"
+ hosts: "{{ install_hostnames }}"
gather_facts: no
tasks:
- set_fact:
diff --git a/generate.sh b/generate.sh
new file mode 100755
index 00000000..b08482f3
--- /dev/null
+++ b/generate.sh
@@ -0,0 +1,26 @@
+#!/bin/bash
+
+if [ -z "$1" ] || [ -z "$2" ] || [ -z "$3" ]; then
+ echo "$0 <hostnames> <distro> <codename>"
+ exit 1
+fi
+names=$1
+distro=$2
+codename=$3
+shift 3
+
+cd "${BASH_SOURCE%/*}"
+source common/utils.sh
+ansible_variable__get env_group "$names" || exit 1
+vault_environment__set "$env_group" || exit 1
+
+echo "generating installer for $distro/$codename in environment '$env_group'"
+echo ""
+
+echo "######## running the installer generator ########"
+declare -a extra_vars
+extra_vars+=(-e "install_hostnames=$names")
+extra_vars+=(-e "install_distro=$distro")
+extra_vars+=(-e "install_codename=$codename")
+extra_vars+=(-e "install_environment=$env_group")
+exec ansible-playbook ${extra_vars[@]} $@ "$env_group/$(basename "$0" .sh).yml"
diff --git a/inventory/host_vars/ch-oulu-vm1.yml b/inventory/host_vars/ch-oulu-vm1.yml
index b12f0034..0f4b8492 100644
--- a/inventory/host_vars/ch-oulu-vm1.yml
+++ b/inventory/host_vars/ch-oulu-vm1.yml
@@ -3,7 +3,7 @@ install:
vm:
memory: 16G
numcpus: 12
- autostart: False
+ autostart: True
disks:
primary: /dev/sda
scsi:
diff --git a/iso-generate.sh b/iso-generate.sh
new file mode 120000
index 00000000..dd859571
--- /dev/null
+++ b/iso-generate.sh
@@ -0,0 +1 @@
+generate.sh \ No newline at end of file
diff --git a/roles/installer/debian/iso/tasks/main.yml b/roles/installer/debian/iso/tasks/main.yml
index 70cb2a7b..fd2f941d 100644
--- a/roles/installer/debian/iso/tasks/main.yml
+++ b/roles/installer/debian/iso/tasks/main.yml
@@ -34,13 +34,11 @@
name: installer/debian/preseed
- name: generate isolinux configuration for BIOS boot
- run_once: true
template:
src: isolinux.cfg.j2
dest: "{{ tmpdir.path }}/isolinux.cfg"
- name: generate grub configuration for UEFI boot
- run_once: true
template:
src: grub.cfg.j2
dest: "{{ tmpdir.path }}/grub.cfg"
diff --git a/spreadspace/iso-generate.yml b/spreadspace/iso-generate.yml
index c39fbf92..2f0c8345 100644
--- a/spreadspace/iso-generate.yml
+++ b/spreadspace/iso-generate.yml
@@ -1,6 +1,6 @@
---
- name: cook variables for host
- hosts: "{{ install_hostname }}"
+ hosts: "{{ install_hostnames }}"
gather_facts: no
tasks:
- set_fact:
diff --git a/usb-generate.sh b/usb-generate.sh
new file mode 120000
index 00000000..dd859571
--- /dev/null
+++ b/usb-generate.sh
@@ -0,0 +1 @@
+generate.sh \ No newline at end of file