From 0dbb0afd947abdf83ab7f7b5a6cb735bd13ad3db Mon Sep 17 00:00:00 2001 From: Antony Messerli Date: Wed, 11 Dec 2019 12:48:22 +0000 Subject: [PATCH] Various Fixes * Bumps Arch and Black Arch to latest * Drops sigs from Arch * Drops Debian Jessie and Wheezy - EOL * Changes Fedora Core OS syntax, disabled as not working currently * Corrects checksum file name * Changes AlpineLinux kernel names for edge * Fixes CentOS url * Fixes Arch url * Adds netboot.xyz overrides file * Disables Devuan as mirror cert is expired * Drops Fedora Workstation and Atomic --- roles/netbootxyz/defaults/main.yml | 20 ++++++++----------- roles/netbootxyz/tasks/generate_checksums.yml | 2 +- roles/netbootxyz/tasks/generate_disks | 0 roles/netbootxyz/tasks/generate_disks.yml | 2 +- .../templates/menu/alpinelinux.ipxe.j2 | 10 ++++++++++ .../templates/menu/archlinux.ipxe.j2 | 13 ++---------- .../netbootxyz/templates/menu/centos.ipxe.j2 | 2 +- .../netbootxyz/templates/menu/coreos.ipxe.j2 | 16 +++++++-------- .../netbootxyz/templates/menu/fedora.ipxe.j2 | 3 --- script/netbootxyz-overrides.yml | 9 +++++++++ 10 files changed, 39 insertions(+), 38 deletions(-) create mode 100644 roles/netbootxyz/tasks/generate_disks create mode 100644 script/netbootxyz-overrides.yml diff --git a/roles/netbootxyz/defaults/main.yml b/roles/netbootxyz/defaults/main.yml index 538d3388..52570bfa 100644 --- a/roles/netbootxyz/defaults/main.yml +++ b/roles/netbootxyz/defaults/main.yml @@ -84,15 +84,15 @@ releases: enabled: true menu: "linux" versions: - - name: "2019.10.01" - code_name: "2019.10.01" + - name: "2019.12.01" + code_name: "2019.12.01" blackarch: name: "BlackArch" enabled: true menu: "security" versions: - - name: "2019.06.01" - code_name: "2019.06.01" + - name: "2019.09.01" + code_name: "2019.09.01" centos: name: "CentOS" mirror: "http://mirror.centos.org" @@ -110,11 +110,11 @@ releases: name: "Fedora CoreOS" mirror: "https://builds.coreos.fedoraproject.org" base_dir: "prod/streams/testing/builds" - enabled: true + enabled: false menu: "linux" versions: - - name: "30" - code_name: "beta" + - name: "31" + code_name: "31.20191127.1" debian: name: "Debian" mirror: "http://deb.debian.org" @@ -128,10 +128,6 @@ releases: code_name: "buster" - name: "9.0 (stretch)" code_name: "stretch" - - name: "8.0 (jessie)" - code_name: "jessie" - - name: "7.0 (jessie)" - code_name: "wheezy" testing: - name: "bullseye (testing)" code_name: "bullseye" @@ -141,7 +137,7 @@ releases: name: "Devuan" mirror: "http://auto.mirror.devuan.org" base_dir: "devuan" - enabled: true + enabled: false menu: "linux" versions: stable: diff --git a/roles/netbootxyz/tasks/generate_checksums.yml b/roles/netbootxyz/tasks/generate_checksums.yml index 35600bb3..abfd5f21 100644 --- a/roles/netbootxyz/tasks/generate_checksums.yml +++ b/roles/netbootxyz/tasks/generate_checksums.yml @@ -24,7 +24,7 @@ - name: Generate ipxe disk checksums template: src: checksums.txt.j2 - dest: "{{ netbootxyz_root }}/ipxe/checksums.txt" + dest: "{{ netbootxyz_root }}/ipxe/{{ site_name }}-sha256-checksums.txt" - name: Generate netboot.xyz index template template: diff --git a/roles/netbootxyz/tasks/generate_disks b/roles/netbootxyz/tasks/generate_disks new file mode 100644 index 00000000..e69de29b diff --git a/roles/netbootxyz/tasks/generate_disks.yml b/roles/netbootxyz/tasks/generate_disks.yml index d5cbbdd1..44736b3a 100644 --- a/roles/netbootxyz/tasks/generate_disks.yml +++ b/roles/netbootxyz/tasks/generate_disks.yml @@ -8,4 +8,4 @@ - include: generate_disks_efi.yml when: - - generate_disks_efi | default(true) | bool \ No newline at end of file + - generate_disks_efi | default(true) | bool diff --git a/roles/netbootxyz/templates/menu/alpinelinux.ipxe.j2 b/roles/netbootxyz/templates/menu/alpinelinux.ipxe.j2 index a79c317d..07159dcc 100644 --- a/roles/netbootxyz/templates/menu/alpinelinux.ipxe.j2 +++ b/roles/netbootxyz/templates/menu/alpinelinux.ipxe.j2 @@ -24,6 +24,7 @@ set base-url ${alpinelinux_mirror} set dir ${alpinelinux_base_dir}/${alpine_version}/releases/${bootarch}/netboot set repo-url ${alpinelinux_mirror}/${alpinelinux_base_dir}/${alpine_version}/main imgfree +iseq ${alpine_version} edge && goto edge_boot || kernel ${base-url}/${dir}/vmlinuz-vanilla ${ipparam} alpine_repo=${repo-url} modules=loop,squashfs modloop=${base-url}/${dir}/modloop-vanilla quiet nomodeset initrd ${base-url}/${dir}/initramfs-vanilla echo @@ -39,6 +40,15 @@ echo Signatures verified! echo :skip_sigs boot + +:edge_boot +kernel ${base-url}/${dir}/vmlinuz-lts ${ipparam} alpine_repo=${repo-url} modules=loop,squashfs modloop=${base-url}/${dir}/modloop-lts quiet nomodeset +initrd ${base-url}/${dir}/initramfs-lts +echo +echo MD5sums: +md5sum vmlinuz-lts initramfs-lts +boot + goto alpine_exit :alpine_exit diff --git a/roles/netbootxyz/templates/menu/archlinux.ipxe.j2 b/roles/netbootxyz/templates/menu/archlinux.ipxe.j2 index 5f8b28c1..d62c7651 100644 --- a/roles/netbootxyz/templates/menu/archlinux.ipxe.j2 +++ b/roles/netbootxyz/templates/menu/archlinux.ipxe.j2 @@ -5,7 +5,7 @@ isset ${dhcp-server} || goto static_ip set ipparam BOOTIF=${netX/mac} ip=dhcp -set real_archlinux_mirror http://${archlinux_mirror} +set real_archlinux_mirror ${archlinux_mirror} goto goto_menu :static_ip @@ -21,7 +21,7 @@ goto ${menu} || :archlinux set os {{ releases.archlinux.name }} clear arch_version -menu ${os} - ${arch} - Image Sig Checks: [${img_sigs_enabled}] +menu ${os} - ${arch} item --gap Latest Releases {% for item in releases.archlinux.versions %} item {{ item.code_name }} ${space} ${os} {{ item.name }} @@ -38,15 +38,6 @@ initrd http://${archlinux_mirror}/${dir}/x86_64/archiso.img echo echo MD5sums: md5sum vmlinuz archiso.img -iseq ${img_sigs_enabled} true && goto verify_sigs || goto skip_sigs -:verify_sigs -echo -echo Checking signatures... -imgverify vmlinuz ${sigs}${dir}/x86_64/vmlinuz.sig || goto error -imgverify archiso.img ${sigs}${dir}/x86_64/archiso.img.sig || goto error -echo Signatures verified! -echo -:skip_sigs boot goto archlinux_exit diff --git a/roles/netbootxyz/templates/menu/centos.ipxe.j2 b/roles/netbootxyz/templates/menu/centos.ipxe.j2 index f30d4de0..9f7ab4c3 100644 --- a/roles/netbootxyz/templates/menu/centos.ipxe.j2 +++ b/roles/netbootxyz/templates/menu/centos.ipxe.j2 @@ -19,7 +19,7 @@ isset ${osversion} || choose osversion || goto linux_menu echo ${cls} set dir ${centos_base_dir}/${osversion}/BaseOS/${arch}/os iseq ${osversion} 7.7.1908 && set dir ${centos_base_dir}/${osversion}/os/${arch} || -set repo ${centos_mirror}/${centos_base_dir} +set repo ${centos_mirror}/${dir} goto boottype :boottype diff --git a/roles/netbootxyz/templates/menu/coreos.ipxe.j2 b/roles/netbootxyz/templates/menu/coreos.ipxe.j2 index 247e4634..f723b2ce 100644 --- a/roles/netbootxyz/templates/menu/coreos.ipxe.j2 +++ b/roles/netbootxyz/templates/menu/coreos.ipxe.j2 @@ -2,6 +2,7 @@ # Fedora CoreOS (Preview) # https://getfedora.org/coreos/ +# https://github.com/coreos/coreos-installer/blob/master/README.md#installing-from-pxe goto ${menu} @@ -16,19 +17,16 @@ item {{ item.code_name }} ${space} ${os} {{ item.name }} {% endfor %} item install_dev ${space} Set install device: ${install_device} item ignition_config ${space} Set ignition config url: ${ignition_url} -choose --default ${menu} menu || goto coreos_exit +choose --default ${core_version} core_version || goto coreos_exit echo ${cls} -goto ${menu} || +goto core_boot || goto coreos_exit -:stable -:beta -:alpha -set release ${menu} +:core_boot set base_url ${coreos_mirror}/${coreos_base_dir} -set build_version 30.20191014.0 -kernel ${base_url}/${build_version}/x86_64/fedora-coreos-${build_version}-installer-kernel nomodeset rd.neednet=1 coreos.inst=yes coreos.inst.install_dev=${install_device} coreos.inst.ignition_url=${ignition_url} ${console} coreos.inst.image_url=${base_url}/${build_version}/x86_64/fedora-coreos-${build_version}-metal.raw.xz initrd=fedora-coreos-${build_version}-installer-initramfs.img -initrd ${base_url}/${build_version}/x86_64/fedora-coreos-${build_version}-installer-initramfs.img +set build_version ${core_version} +kernel ${base_url}/${build_version}/x86_64/fedora-coreos-${build_version}-installer-kernel-x86_64 nomodeset rd.neednet=1 coreos.inst.install_dev=${install_device} coreos.inst.ignition_url=${ignition_url} ${console} coreos.inst.stream=testing initrd=fedora-coreos-${build_version}-installer-initramfs.x86_64.img +initrd ${base_url}/${build_version}/x86_64/fedora-coreos-${build_version}-installer-initramfs.x86_64.img boot goto coreos_exit diff --git a/roles/netbootxyz/templates/menu/fedora.ipxe.j2 b/roles/netbootxyz/templates/menu/fedora.ipxe.j2 index e125b23b..79935f57 100644 --- a/roles/netbootxyz/templates/menu/fedora.ipxe.j2 +++ b/roles/netbootxyz/templates/menu/fedora.ipxe.j2 @@ -27,13 +27,10 @@ goto product_sku menu ${os} ${arch} sku type item Everything ${ova} Everything item Server ${ova} Server -item Workstation ${ova} Workstation -item Atomic ${ova} Atomic iseq ${arch} x86_64 && item Silverblue ${ova} Silverblue || isset ${sku_type} || choose sku_type || goto fedora set dir ${fedora_base_dir}/releases/${osversion}/${sku_type}/${arch}/os iseq ${osversion} rawhide && set dir ${fedora_base_dir}/development/${osversion}/${sku_type}/${arch}/os || -iseq ${sku_type} Atomic && iseq ${osversion} 29 && set dir fedora-alt/atomic/stable/Fedora-Atomic-29-20181025.1/AtomicHost/x86_64/os || set ova ${ova} ${sku_type} echo ${cls} goto boottype diff --git a/script/netbootxyz-overrides.yml b/script/netbootxyz-overrides.yml new file mode 100644 index 00000000..7c5c231f --- /dev/null +++ b/script/netbootxyz-overrides.yml @@ -0,0 +1,9 @@ +--- +sigs_menu: true +sigs_enabled: true +img_sigs_enabled: false +bootloader_multiple: true +bootloader_disks: + - "netboot.xyz" + - "netboot.xyz-packet" +generate_signatures: true \ No newline at end of file