Tuning iPXE disk builds

* Switch to using xenial for iPXE builds
* Add workaround for arm64 builds on xenial
* Tune EFI ISO images so that they work on other platforms
  (https://github.com/antonym/netboot.xyz/pull/341)
* Disable OSCP checks as they can cause latency or connectivity
  issues
This commit is contained in:
Antony Messerli 2019-07-17 21:54:29 -05:00
parent 0e14952652
commit bccccd9d78
3 changed files with 15 additions and 6 deletions

View file

@ -1,12 +1,12 @@
sudo: true
dist: trusty
dist: xenial
language: c
before_install:
- openssl aes-256-cbc -K $encrypted_7d306b01dc1f_key -iv $encrypted_7d306b01dc1f_iv -in script/secrets.tar.enc -out script/secrets.tar -d
- tar xvf script/secrets.tar -C script/
- sudo apt-get update -qq
- sudo apt-get install -qq binutils-dev binutils-aarch64-linux-gnu gcc-aarch64-linux-gnu genisoimage liblzma-dev syslinux
- sudo pip install awscli tornado==4.5.3
- sudo apt-get install -qq binutils-dev binutils-aarch64-linux-gnu gcc-aarch64-linux-gnu genisoimage liblzma-dev syslinux isolinux
- sudo pip install awscli tornado
script:
- "./script/prep-release.sh"
deploy:

1
ipxe/local/crypto.h Normal file
View file

@ -0,0 +1 @@
#undef OCSP_CHECK

View file

@ -48,12 +48,20 @@ cp config/local/general.h.efi config/local/general.h
make clean
make bin-x86_64-efi/ipxe.efi \
EMBED=../../ipxe/disks/netboot.xyz TRUST=ca-ipxe-org.crt,ca-netboot-xyz.crt
mkdir -p efi_tmp/EFI/BOOT/
cp bin-x86_64-efi/ipxe.efi efi_tmp/EFI/BOOT/bootx64.efi
genisoimage -o ipxe.eiso efi_tmp
mkdir -p efi_tmp
dd if=/dev/zero of=efi_tmp/ipxe.img count=2880
mformat -i efi_tmp/ipxe.img -m 0xf8 -f 2880
mmd -i efi_tmp/ipxe.img ::efi ::efi/boot
mcopy -i efi_tmp/ipxe.img bin-x86_64-efi/ipxe.efi ::efi/boot/bootx64.efi
genisoimage -o ipxe.eiso -eltorito-alt-boot -e ipxe.img -no-emul-boot efi_tmp
mv bin-x86_64-efi/ipxe.efi ../../build/ipxe/netboot.xyz.efi
mv ipxe.eiso ../../build/ipxe/netboot.xyz-efi.iso
# iPXE workaround
# http://lists.ipxe.org/pipermail/ipxe-devel/2018-August/006254.html
# apply patch to fix arm64 builds on amd64 builds
sed -i '/WORKAROUND_CFLAGS/d' arch/arm64/Makefile
# generate EFI arm64 iPXE disk
make clean
make CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 \