--- - 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.3.0-amd64-netinst.iso" dest: "/opt/ansiblepackages/debianunattended/debian-11.3.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.3.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.3.0-amd64-netinst-unattended-{{ inventory_hostname }}.iso /opt/ansiblepackages/debianunattended/isofiles" delegate_to: localhost