ansible-role-debianunattended/tasks/main.yml

129 lines
3.7 KiB
YAML
Raw Normal View History

---
- name: install stuff
apt:
name:
- xorriso
- unzip
- genisoimage
update_cache: yes
delegate_to: localhost
- name: create project directory
file:
dest: /opt/ansiblepackages/debianunattended
state: directory
delegate_to: localhost
- name: Download ISO Image
get_url:
url: "https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-11.2.0-amd64-netinst.iso"
dest: "/opt/ansiblepackages/debianunattended/debian-11.2.0-amd64-netinst.iso"
delegate_to: localhost
- name: delete old stuff
file:
path: /opt/ansiblepackages/debianunattended/isofiles/
state: absent
delegate_to: localhost
- name: extract ISO Image
command: xorriso -osirrox on -indev /opt/ansiblepackages/debianunattended/debian-11.2.0-amd64-netinst.iso -extract / /opt/ansiblepackages/debianunattended/isofiles/
args:
creates: /opt/ansiblepackages/debianunattended/isofiles/install.amd/initrd.gz
delegate_to: localhost
- name: generate /opt/ansiblepackages/debianunattended/preseed.cfg
template:
src: preseed.cfg.j2
dest: /opt/ansiblepackages/debianunattended/preseed.cfg
delegate_to: localhost
- name: generate /opt/ansiblepackages/debianunattended/md5sum.sh
template:
src: md5sum.sh.j2
mode: "0755"
dest: /opt/ansiblepackages/debianunattended/md5sum.sh
delegate_to: localhost
- name: generate /opt/ansiblepackages/debianunattended/mergepreseed.sh
template:
src: mergepreseed.sh.j2
mode: "0755"
dest: /opt/ansiblepackages/debianunattended/mergepreseed.sh
delegate_to: localhost
- name: set permissions
file:
dest: /opt/ansiblepackages/debianunattended/isofiles/install.amd/
mode: +w
recurse: yes
delegate_to: localhost
- name: Extract isofiles/install.amd/initrd.gz
command: gunzip isofiles/install.amd/initrd.gz
args:
chdir: /opt/ansiblepackages/debianunattended/
delegate_to: localhost
- name: merge preseed.cfg
command: /opt/ansiblepackages/debianunattended/mergepreseed.sh
delegate_to: localhost
- name: generate /opt/ansiblepackages/debianunattended/isofiles/late_command.sh
template:
src: late_command.sh.j2
mode: "0755"
dest: /opt/ansiblepackages/debianunattended/isofiles/late_command.sh
delegate_to: localhost
- name: copy authorized_keys file
copy:
src: files/authorized_keys
dest: /opt/ansiblepackages/debianunattended/isofiles/authorized_keys
delegate_to: localhost
- name: copy sudoers file
copy:
src: files/sudoers
dest: /opt/ansiblepackages/debianunattended/isofiles/sudoers
delegate_to: localhost
- name: compress isofiles/install.amd/initrd
command: gzip isofiles/install.amd/initrd
args:
chdir: /opt/ansiblepackages/debianunattended/
delegate_to: localhost
- name: set permissions
file:
dest: /opt/ansiblepackages/debianunattended/isofiles/install.amd/
mode: -w
recurse: yes
delegate_to: localhost
- name: set permissions
file:
dest: /opt/ansiblepackages/debianunattended/isofiles/md5sum.txt
mode: +w
delegate_to: localhost
- name: generate md5sums
command: /opt/ansiblepackages/debianunattended/md5sum.sh
delegate_to: localhost
- name: set permissions
file:
dest: /opt/ansiblepackages/debianunattended/isofiles/md5sum.txt
mode: -w
delegate_to: localhost
- name: set permissions
file:
dest: /opt/ansiblepackages/debianunattended/isofiles/isolinux/isolinux.bin
mode: +w
delegate_to: localhost
- name: genisoimage
command: "genisoimage -r -J -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o {{ playbook_dir }}/debian-11.2.0-amd64-netinst-unattended-{{ inventory_hostname }}.iso /opt/ansiblepackages/debianunattended/isofiles"
delegate_to: localhost