You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
livecd-rootfs/live-build/ubuntu-server/hooks/031-maas-squashfs.binary

73 lines
1.7 KiB

#!/bin/bash -ex
# vi: ts=4 noexpandtab
#
# Generate a squashfs root and manifest
set -x
echo "031-maas-squashfs.binary"
case $IMAGE_TARGETS in
""|*squashfs*)
;;
*)
echo "Skipping squashfs build"
exit 0
;;
esac
if [ -n "$SUBARCH" ]; then
echo "Skipping rootfs build for subarch flavor build"
exit 0
fi
. config/functions
. config/common
SQUASH_ROOT=binary/boot/squashfs.dir
RACK_ROOT=binary/boot/squashfs-rack.dir
REGION_ROOT=binary/boot/squashfs-region.dir
OVERLAY_RACK_ROOT=binary/overlay-maas-rack
OVERLAY_REGION_ROOT=binary/overlay-maas-region
mkdir -p "$RACK_ROOT"
mkdir -p "$REGION_ROOT"
mkdir -p "$OVERLAY_RACK_ROOT"
mkdir -p "$OVERLAY_REGION_ROOT"
# RACK is on top of the regular squashfs
mount_overlay "$SQUASH_ROOT/" "$OVERLAY_RACK_ROOT/" "$RACK_ROOT/" "RACK"
setup_mountpoint $RACK_ROOT
env DEBIAN_FRONTEND=noninteractive chroot $RACK_ROOT apt-get -y install maas-rack-controller
teardown_mountpoint $RACK_ROOT
umount "$RACK_ROOT"
# Full MAAS (Region) is on top of the rack
# in overlayfs lowerdir are mounted right to left, colon separated
mount_overlay "$OVERLAY_RACK_ROOT/:$SQUASH_ROOT/" "$OVERLAY_REGION_ROOT/" "$REGION_ROOT/" "REGION"
setup_mountpoint $REGION_ROOT
env DEBIAN_FRONTEND=noninteractive chroot $REGION_ROOT apt-get -y install maas
chroot $REGION_ROOT pg_ctlcluster 10 main stop
teardown_mountpoint "$REGION_ROOT"
umount "$REGION_ROOT"
squashfs_rack_f="${PWD}/livecd.${PROJECT}.maas-rack.squashfs"
(cd "$OVERLAY_RACK_ROOT/" &&
mksquashfs . ${squashfs_rack_f} \
-no-progress -xattrs -comp xz )
squashfs_region_f="${PWD}/livecd.${PROJECT}.maas-region.squashfs"
(cd "$OVERLAY_REGION_ROOT/" &&
mksquashfs . ${squashfs_region_f} \
-no-progress -xattrs -comp xz )