| #!/bin/bash -e | |
| TMPDIR="$(mktemp -d)" | |
| function cleanup() { | |
| rm -rf "$TMPDIR" | |
| } | |
| trap cleanup EXIT | |
| server=${1:-localhost} | |
| PXE_CFG_URL="tftp://$server/pxelinux.cfg/default-amd64-generic" | |
| curl -s "$PXE_CFG_URL" > "$TMPDIR/pxe-config" | |
| echo "" | |
| echo "===== BEGIN PXE CONFIG =====" | |
| cat "$TMPDIR/pxe-config" | |
| echo "===== END PXE CONFIG =====" | |
| GRUB_CFG_URL="tftp://$server/grub/grub.cfg-default-amd64-generic" | |
| curl -s "$GRUB_CFG_URL" > "$TMPDIR/grub-config" | |
| echo "" | |
| echo "===== BEGIN GRUB CONFIG =====" | |
| cat "$TMPDIR/grub-config" | |
| echo "===== END GRUB CONFIG =====" | |
| CONFIG_URL=$(cat "$TMPDIR/pxe-config" \ | |
| | grep ' APPEND.*cloud-config-url' \ | |
| | tr ' ' '\n' \ | |
| | grep cloud-config-url \ | |
| | cut -f2- -d=) | |
| echo "" | |
| echo "Found cloud-config-url: $CONFIG_URL" | |
| curl -s "$CONFIG_URL" > "$TMPDIR/enlist-config" | |
| echo "" | |
| echo "===== BEGIN ENLISTMENT CLOUD-CONFIG =====" | |
| cat "$TMPDIR/enlist-config" | |
| echo "===== END ENLISTMENT CLOUD-CONFIG =====" | |
| METADATA_URL=$(cat "$TMPDIR/enlist-config" \ | |
| | grep 'metadata_url: ' \ | |
| | awk '{ print $2 }') | |
| echo "" | |
| echo "Found metadata URL: $METADATA_URL" | |
| LOADERS=" | |
| tftp://$server/pxelinux.0 | |
| tftp://$server/chain.c32 | |
| tftp://$server/ifcpu64.c32 | |
| tftp://$server/ldlinux.c32 | |
| tftp://$server/libcom32.c32 | |
| tftp://$server/libutil.c32 | |
| tftp://$server/bootx64.efi | |
| tftp://$server/grubx64.efi | |
| tftp://$server/grubaa64.efi | |
| tftp://$server/bootppc64.bin | |
| " | |
| set -o pipefail | |
| echo "" | |
| echo "===== BEGIN BOOT LOADER SHA256 SUMS =====" | |
| for loader in $LOADERS; do | |
| loader_sha256=$(curl -sqf "$loader" | sha256sum | awk '{ print $1 }' || touch $TMPDIR/not-found) | |
| if [ -f $TMPDIR/not-found ]; then | |
| loader_sha256="[WARNING: file not found]" | |
| rm $TMPDIR/not-found | |
| fi | |
| printf "%40s\n%10s%s\n\n" "$loader" "" "$loader_sha256" | |
| done | |
| echo "===== END BOOT LOADER SHA256 SUMS =====" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment