--- - name: Install required packages ansible.builtin.package: name: "{{ item }}" state: present with_items: "{{ pipxe_packages }}" - name: Check out latest pipxe sources ansible.builtin.git: repo: "{{ pipxe_repo }}" dest: "{{ pipxe_source_dir }}" version: "{{ pipxe_branch }}" force: true recursive: true register: pipxe_git_checkout - name: Copy iPXE Bootloader template to iPXE source directory ansible.builtin.template: src: "disks/{{ bootloader_filename }}.j2" dest: "{{ pipxe_source_dir }}/ipxe/src/{{ bootloader_filename }}" - name: Copy netboot.xyz local EFI iPXE configs ansible.builtin.copy: src: "ipxe/local/{{ item }}" dest: "{{ pipxe_source_dir }}/ipxe/src/config/local/{{ item }}" with_items: - colour.h - console.h - crypto.h - name: Copy netboot.xyz general.h.efi iPXE config ansible.builtin.copy: src: "ipxe/local/general.h.efi" dest: "{{ pipxe_source_dir }}/ipxe/src/config/local/general.h" - name: Set trust file to ipxe ca ansible.builtin.set_fact: trust_files: "{{ cert_dir }}/{{ ipxe_ca_filename }}" when: not generate_signatures - name: Combine trust files if set ansible.builtin.set_fact: trust_files: "{{ cert_dir }}/{{ ipxe_ca_filename }},{{ cert_dir }}/{{ cert_file_filename }}" when: generate_signatures | bool - name: Copy Makefile template into pipxe ansible.builtin.template: src: pipxe/Makefile-rpi4.j2 dest: "{{ pipxe_source_dir }}/Makefile" - name: Compile iPXE bootloader for RPI build ansible.builtin.shell: | make -j{{ make_num_jobs }} args: chdir: "{{ pipxe_source_dir }}" - name: Copy iPXE RPI builds to http directory ansible.builtin.copy: src: "{{ pipxe_source_dir }}/{{ item.src }}" dest: "{{ netbootxyz_root }}/ipxe/{{ item.dest }}" remote_src: true with_items: - {src: "sdcard.img", dest: "{{ bootloader_filename }}-rpi4-sdcard.img"} - {src: "ipxe/src/bin-arm64-efi/snp.efi", dest: "{{ bootloader_filename }}-rpi4-snp.efi"}