From 603ba5dec7a419d0a1c0367d9aa015e3fbabd699 Mon Sep 17 00:00:00 2001 From: "Pietsch, Martin" <martin.pietsch@tu-dresden.de> Date: Fri, 4 Oct 2019 19:00:04 +0200 Subject: [PATCH] added answerfile tasks --- tasks/answerfile.yml | 5 +++++ templates/answerfile.j2 | 22 ++++++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 tasks/answerfile.yml create mode 100644 templates/answerfile.j2 diff --git a/tasks/answerfile.yml b/tasks/answerfile.yml new file mode 100644 index 0000000..1f4361c --- /dev/null +++ b/tasks/answerfile.yml @@ -0,0 +1,5 @@ + +- name: create answerfile for "{{ inventory_hostname }}" + template: + src: answerfile.j2 + dest: "{{ system_answerfile_path }}" diff --git a/templates/answerfile.j2 b/templates/answerfile.j2 new file mode 100644 index 0000000..a2c9c72 --- /dev/null +++ b/templates/answerfile.j2 @@ -0,0 +1,22 @@ +{% set hostobj = hostvars[hostname] %} +export DISTRIBUTION="{{ hostobj.os.distribution }}" +export RELEASE="{{ hostobj.os.release }}" +export ARCH="{{ hostobj.os.architecture }}" +export MIRROR="{{ system_local_mirror | default(system_home_mirror | default("")) }}" + +{% set disks = [] %} +{% for disk in hostobj.disks %} +{% do disks.append('"%s"' | format(disk.device)) %} +{{ 'export DISK_%s_SCHEME="%s"' | format(disk.device | upper, disk.scheme | upper) }} +{% if 'partitions' in disk %} +{{ 'declare -a DISK_%s_PARTITIONS = ()' | format(disk.device | upper) }} +{% for part in disk.partitions %} +{{ 'DISK_%s_PARTITIONS += ("%s:%s:%s:%s:%s:%s:%s")' | format(disk.device | upper, part.size, part.fs, part.mountpoint | default(""), part.mountoptions | default("defaults"), part.dump | default("0"), part.pass | default("0"), part.format | default("true")) }} +{% endfor %} +{{ 'export DISK_%s_PARTITIONS' | format(disk.device | upper) }} +{% endif %} +{% endfor %} + +declare -a DISK_DEVICES = ({{ disks | join(" ") }}) +export DISK_DEVICES + -- GitLab