From 249b2aea74ce09a76b7099a513dd197365f544a6 Mon Sep 17 00:00:00 2001 From: Tobias Stein Date: Tue, 13 Dec 2022 19:33:21 +0100 Subject: [PATCH] Add kamikaze script to install snaps --- roles/fai/defaults/main.yml | 7 +++++++ roles/fai/tasks/fai-config-dir.yml | 4 ++++ .../templates/srv/fai/config/files/etc/cron.d/kamikaze.j2 | 5 +++++ 3 files changed, 16 insertions(+) create mode 100644 roles/fai/templates/srv/fai/config/files/etc/cron.d/kamikaze.j2 diff --git a/roles/fai/defaults/main.yml b/roles/fai/defaults/main.yml index e8f12a7..1dcbe8c 100644 --- a/roles/fai/defaults/main.yml +++ b/roles/fai/defaults/main.yml @@ -109,3 +109,10 @@ package_set: pv, pwgen, python3-apt, rsync, screen, sqlite3, ssl-cert, strace, sudo, sysstat, tcpdump, tmux, unattended-upgrades, vim, wget, zsh ] extra: [ btrfs-progs ] + +crond_kamikaze: "/etc/cron.d/kamikaze.sh" +ubuntu: + snaps: + - name: firefox + channel: stable + classic: false diff --git a/roles/fai/tasks/fai-config-dir.yml b/roles/fai/tasks/fai-config-dir.yml index b36d5bc..c89bdda 100644 --- a/roles/fai/tasks/fai-config-dir.yml +++ b/roles/fai/tasks/fai-config-dir.yml @@ -55,6 +55,7 @@ become: true vars: paths: + - "files/etc/cron.d/kamikaze" - "scripts/HW4F_DESKTOP" - "scripts/HW4F_DESKTOP_LAST" ansible.builtin.file: @@ -79,6 +80,9 @@ - src: "scripts/02-remove-proxy.j2" dest: "scripts/HW4F_DESKTOP_LAST/02-remove-proxy" mode: "0755" + - src: "files/etc/cron.d/kamikaze.j2" + dest: "files/etc/cron.d/kamikaze/HW4F_DESKTOP_LAST" + mode: "0755" ansible.builtin.template: src: "srv/fai/config/{{ item.src }}" dest: "{{ fai_dir_config + '/' + item.dest }}" diff --git a/roles/fai/templates/srv/fai/config/files/etc/cron.d/kamikaze.j2 b/roles/fai/templates/srv/fai/config/files/etc/cron.d/kamikaze.j2 new file mode 100644 index 0000000..b49f975 --- /dev/null +++ b/roles/fai/templates/srv/fai/config/files/etc/cron.d/kamikaze.j2 @@ -0,0 +1,5 @@ +SHELL=/bin/sh +PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin +@reboot root sleep 30 && snap install {{ + ubuntu.snaps|map(attribute="name") |join(' ') + }} && [ -f "{{ crond_kamikaze }}" ] && rm "{{ crond_kamikaze }}"