summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--inventory/host_vars/ch-testvm-hcloud.yml2
-rw-r--r--roles/cloud/install/defaults/main.yml1
-rw-r--r--roles/cloud/install/filter_plugins/hetzner.py9
-rw-r--r--roles/cloud/install/tasks/hetzner_installimage.yml2
-rw-r--r--roles/cloud/install/templates/hetzner_installimage.conf.j25
5 files changed, 8 insertions, 11 deletions
diff --git a/inventory/host_vars/ch-testvm-hcloud.yml b/inventory/host_vars/ch-testvm-hcloud.yml
index ffd5117e..f9e59624 100644
--- a/inventory/host_vars/ch-testvm-hcloud.yml
+++ b/inventory/host_vars/ch-testvm-hcloud.yml
@@ -1,5 +1,7 @@
---
install:
+ efi: yes
+ arch: arm64
cloud:
credentials:
token: "{{ vault_hcloud_api_token }}"
diff --git a/roles/cloud/install/defaults/main.yml b/roles/cloud/install/defaults/main.yml
index 195b6bd0..5330a83e 100644
--- a/roles/cloud/install/defaults/main.yml
+++ b/roles/cloud/install/defaults/main.yml
@@ -1,5 +1,6 @@
---
hetzner_boot_size: 512M
+hetzner_efi_esp_size: 256M
hetzner_system_lvm_size_default: all
hetzner_system_lvm_volumes_default:
diff --git a/roles/cloud/install/filter_plugins/hetzner.py b/roles/cloud/install/filter_plugins/hetzner.py
index 0aa19c17..d01be0ba 100644
--- a/roles/cloud/install/filter_plugins/hetzner.py
+++ b/roles/cloud/install/filter_plugins/hetzner.py
@@ -5,15 +5,6 @@ __metaclass__ = type
from ansible import errors
-def hetzner_install_image_name_glob(data):
- try:
- if data[0] == 'debian' and data[1] != 'buster':
- return "debian-*-%s-amd64-base.tar.gz" % (data[1])
- return "%s-*-%s-64-minimal.tar.gz" % (data[0], data[1])
- except Exception as e:
- raise errors.AnsibleFilterError("hetzner_install_image_name(): %s" % str(e))
-
-
def hroot_extract_ssh_key_fingerprints(data):
try:
return [k['key']['fingerprint'] for k in data]
diff --git a/roles/cloud/install/tasks/hetzner_installimage.yml b/roles/cloud/install/tasks/hetzner_installimage.yml
index 57397998..c8bca1c0 100644
--- a/roles/cloud/install/tasks/hetzner_installimage.yml
+++ b/roles/cloud/install/tasks/hetzner_installimage.yml
@@ -6,7 +6,7 @@
shell: |
set -o pipefail
shopt -s nocaseglob
- ls /root/images/{{ (install_distro, install_codename) | hetzner_install_image_name_glob }} | sort -r | head -n 1
+ ls /root/images/{{ install_distro }}-*-{{ install_codename }}-{{ install.arch | default('amd64') }}-base.tar.gz | sort -r | head -n 1
changed_when: false
register: latest_image
diff --git a/roles/cloud/install/templates/hetzner_installimage.conf.j2 b/roles/cloud/install/templates/hetzner_installimage.conf.j2
index acdf42c4..5e16000d 100644
--- a/roles/cloud/install/templates/hetzner_installimage.conf.j2
+++ b/roles/cloud/install/templates/hetzner_installimage.conf.j2
@@ -13,7 +13,10 @@ DRIVE1 {{ install.disks.primary }}
DRIVE1 /dev/sda
{% endif %}
BOOTLOADER grub
-PART /boot ext4 {{ hetzner_boot_size }}
+{% if (install.efi | default(false)) %}
+PART /boot/efi esp {{ hetzner_efi_esp_size }}
+{% endif %}
+PART /boot ext4 {{ hetzner_boot_size }}
{% set system_lvm_size = install.system_lvm.size | default(hetzner_system_lvm_size_default) %}
PART lvm {{ host_name }} {{ system_lvm_size }}
{% if system_lvm_size != "all" %}