flatcar.ipxe.j2 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #!ipxe
  2. # Flatcar Container Linux
  3. # https://flatcar-linux.org/
  4. # For further info on:
  5. # iPXE and flatcar Container Linux: https://www.flatcar.org/docs/latest/installing/bare-metal/booting-with-ipxe/
  6. # Setting up Ignition: https://www.flatcar.org/docs/latest/installing/bare-metal/installing-to-disk/
  7. # 64-bit only
  8. goto ${menu}
  9. :flatcar
  10. set os {{ releases.flatcar.name }}
  11. set os_arch ${arch}
  12. iseq ${os_arch} x86_64 && set os_arch amd64 ||
  13. iseq ${os_arch} arm64 && set os_arch arm64 ||
  14. menu ${os} - Current Arch [ ${os_arch} ]
  15. item --gap ${os}
  16. {% for item in releases.flatcar.versions %}
  17. item {{ item.code_name }} ${space} ${os} {{ item.name }}
  18. {% endfor %}
  19. item ignition_config ${space} Set ignition.config.url: ${ignition.config.url}
  20. choose --default ${menu} menu || goto flatcar_exit
  21. echo ${cls}
  22. goto ${menu} ||
  23. goto flatcar_exit
  24. :stable
  25. :beta
  26. :alpha
  27. :edge
  28. set release ${menu}
  29. set base-url http://${release}.release.flatcar-linux.net/${os_arch}-usr/current
  30. kernel ${base-url}/flatcar_production_pxe.vmlinuz ${flatcar_firstboot} ${flatcar_params} flatcar.autologin=tty1 flatcar.autologin=ttyS0 initrd=flatcar_production_pxe_image.cpio.gz ${cmdline}
  31. initrd ${base-url}/flatcar_production_pxe_image.cpio.gz
  32. boot
  33. goto flatcar_exit
  34. :ignition_config
  35. echo -n Please set Ignition URL: && read ignition.config.url
  36. set flatcar_params ignition.config.url=${ignition.config.url}
  37. set flatcar_firstboot flatcar.first_boot=1
  38. clear menu
  39. goto flatcar
  40. :flatcar_exit
  41. clear menu
  42. exit 0