Enhance build-cloudinit-image.sh and deploy-to-proxmox.sh: add download cache directory support, implement checksum verification for downloaded images, and improve error handling for decompression failures. Update deploy script to ensure xz-utils installation and create necessary directories for cloud-init image management.
This commit is contained in:
@@ -251,9 +251,18 @@ EMMC_SIZE_BYTES=8589934592
|
||||
ENV
|
||||
[[ -n "$BACKUPS_HOST_PATH" ]] && echo "BACKUPS_DIR=$BACKUPS_HOST_PATH" >> /opt/cm4-provisioning/env
|
||||
touch /etc/cm4-provisioning/enabled
|
||||
mkdir -p /var/lib/cm4-provisioning/backups /var/lib/cm4-provisioning/cloudinit-images /var/lib/cm4-provisioning/portal-files
|
||||
mkdir -p /var/lib/cm4-provisioning/backups /var/lib/cm4-provisioning/cloudinit-images /var/lib/cm4-provisioning/portal-files /var/lib/cm4-provisioning/download-cache
|
||||
[[ -n "$BACKUPS_HOST_PATH" ]] && mkdir -p "$BACKUPS_HOST_PATH"
|
||||
grep -q "CLOUDINIT_IMAGES_DIR" /opt/cm4-provisioning/env || echo "CLOUDINIT_IMAGES_DIR=/var/lib/cm4-provisioning/cloudinit-images" >> /opt/cm4-provisioning/env
|
||||
grep -q "CM4_DOWNLOAD_CACHE_DIR" /opt/cm4-provisioning/env || echo "CM4_DOWNLOAD_CACHE_DIR=/var/lib/cm4-provisioning/download-cache" >> /opt/cm4-provisioning/env
|
||||
|
||||
# --- Host: ensure xz-utils (and file) for cloud-init image build (decompress .img.xz) ---
|
||||
if command -v xz >/dev/null 2>&1; then
|
||||
log "Host: xz-utils already present, skipping."
|
||||
else
|
||||
log "Host: installing xz-utils and file (required for cloud-init image decompress)..."
|
||||
apt-get update -qq && DEBIAN_FRONTEND=noninteractive apt-get install -y -qq xz-utils file 2>/dev/null || log "Warning: could not install xz-utils (no internet?). Cloud-init build will fail at decompress until you run: apt install -y xz-utils file"
|
||||
fi
|
||||
|
||||
# --- Host: install usbboot (rpiboot) only if not already present ---
|
||||
if [[ -x /opt/usbboot/rpiboot ]] || [[ -f /opt/usbboot/rpiboot ]]; then
|
||||
|
||||
Reference in New Issue
Block a user