1
0

generate_disks_rpi.yml 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. ---
  2. - name: Install required packages
  3. ansible.builtin.package:
  4. name: "{{ item }}"
  5. state: present
  6. with_items: "{{ pipxe_packages }}"
  7. - name: Check out latest pipxe sources
  8. ansible.builtin.git:
  9. repo: "{{ pipxe_repo }}"
  10. dest: "{{ pipxe_source_dir }}"
  11. version: "{{ pipxe_branch }}"
  12. force: true
  13. recursive: true
  14. register: pipxe_git_checkout
  15. - name: Copy iPXE Bootloader template to iPXE source directory
  16. ansible.builtin.template:
  17. src: "disks/{{ bootloader_filename }}.j2"
  18. dest: "{{ pipxe_source_dir }}/ipxe/src/{{ bootloader_filename }}"
  19. - name: Copy netboot.xyz local EFI iPXE configs
  20. ansible.builtin.copy:
  21. src: "ipxe/local/{{ item }}"
  22. dest: "{{ pipxe_source_dir }}/ipxe/src/config/local/{{ item }}"
  23. with_items:
  24. - colour.h
  25. - console.h
  26. - crypto.h
  27. - name: Copy netboot.xyz general.h.efi iPXE config
  28. ansible.builtin.copy:
  29. src: "ipxe/local/general.h.efi"
  30. dest: "{{ pipxe_source_dir }}/ipxe/src/config/local/general.h"
  31. - name: Set trust file to ipxe ca
  32. ansible.builtin.set_fact:
  33. trust_files: "{{ cert_dir }}/{{ ipxe_ca_filename }}"
  34. when: not generate_signatures
  35. - name: Combine trust files if set
  36. ansible.builtin.set_fact:
  37. trust_files: "{{ cert_dir }}/{{ ipxe_ca_filename }},{{ cert_dir }}/{{ cert_file_filename }}"
  38. when: generate_signatures | bool
  39. - name: Copy Makefile template into pipxe
  40. ansible.builtin.template:
  41. src: pipxe/Makefile-rpi4.j2
  42. dest: "{{ pipxe_source_dir }}/Makefile"
  43. - name: Compile iPXE bootloader for RPI build
  44. ansible.builtin.shell: |
  45. make -j{{ make_num_jobs }}
  46. args:
  47. chdir: "{{ pipxe_source_dir }}"
  48. - name: Copy iPXE RPI builds to http directory
  49. ansible.builtin.copy:
  50. src: "{{ pipxe_source_dir }}/{{ item.src }}"
  51. dest: "{{ netbootxyz_root }}/ipxe/{{ item.dest }}"
  52. remote_src: true
  53. with_items:
  54. - {src: "sdcard.img", dest: "{{ bootloader_filename }}-rpi4-sdcard.img"}
  55. - {src: "ipxe/src/bin-arm64-efi/snp.efi", dest: "{{ bootloader_filename }}-rpi4-snp.efi"}