TT#11444 Add boot option 'fallbackfssize', mount RO 'ngcp-fallback' and rename 'ngcp-data'

We need an ability to install all our products in a limited
HW environment and also be able to pack them into different boxes
(like Vagrant, VirtualBox, VmWare, Docker).
The new boot option 'fallbackfssize' gives us ability to manage
the virtual VMs 'fallback' partition size.

Also mount '/ngcp-fallback' in read-only mode by default,
it is very useful to have access to the old 'code' partition.

Rename '/ngcpdata' to '/ngcp-data' for better readability and
matching to 'ngcp-fallback' ('ngcpfallback' is hardly readable).

Change-Id: I512d65254d2f163482734d94cfc36190fb297d8e
changes/62/23662/2
Alexander Lutay 7 years ago
parent b8e18d7db4
commit b23d5f6925

@ -67,6 +67,7 @@ ADJUST_FOR_LOW_PERFORMANCE=false
ENABLE_VM_SERVICES=false
FILESYSTEM="ext4"
ROOTFS_SIZE="10G"
FALLBACKFS_SIZE="${ROOTFS_SIZE}"
SWRAID_DEVICE="/dev/md0"
GPG_KEY_SERVER="pool.sks-keyservers.net"
DEBIAN_REPO_HOST="debian.sipwise.com"
@ -564,6 +565,10 @@ if checkBootParam "rootfssize=" ; then
ROOTFS_SIZE=$(getBootParam rootfssize)
fi
if checkBootParam "fallbackfssize=" ; then
FALLBACKFS_SIZE=$(getBootParam fallbackfssize)
fi
if checkBootParam ngcphalt ; then
HALT=true
fi
@ -1099,12 +1104,20 @@ create_ngcp_partitions() {
echo "Creating ${FILESYSTEM} filesystem on /dev/${VG_NAME}/root"
mkfs."${FILESYSTEM}" -FF /dev/"${VG_NAME}"/root
# used later by installer
ROOT_FS="/dev/mapper/${VG_NAME}-root"
# fallback
echo "Creating LV 'fallback' with ${ROOTFS_SIZE}"
lvcreate --yes -n fallback -L "${ROOTFS_SIZE}" "${VG_NAME}"
if [[ "${FALLBACKFS_SIZE}" != "0" ]]; then
echo "Creating LV 'fallback' with ${FALLBACKFS_SIZE}"
lvcreate --yes -n fallback -L "${FALLBACKFS_SIZE}" "${VG_NAME}"
echo "Creating ${FILESYSTEM} filesystem on /dev/${VG_NAME}/fallback"
mkfs."${FILESYSTEM}" -FF /dev/"${VG_NAME}"/fallback
echo "Creating ${FILESYSTEM} filesystem on /dev/${VG_NAME}/fallback"
mkfs."${FILESYSTEM}" -FF /dev/"${VG_NAME}"/fallback
# used later by installer
FALLBACK_FS="/dev/mapper/${VG_NAME}-fallback"
fi
# data
local vg_free data_size unassigned
@ -1125,7 +1138,6 @@ create_ngcp_partitions() {
mkfs."${FILESYSTEM}" -FF /dev/"${VG_NAME}"/data
# used later by installer
ROOT_FS="/dev/mapper/${VG_NAME}-root"
DATA_PARTITION="/dev/mapper/${VG_NAME}-data"
}
@ -1294,7 +1306,11 @@ sync
mount "$ROOT_FS" "$TARGET"
if [ -n "${DATA_PARTITION}" ] ; then
mkdir -p "${TARGET}/ngcpdata"
mkdir -p "${TARGET}/ngcp-data"
fi
if [ -n "${FALLBACK_FS}" ] ; then
mkdir -p "${TARGET}/ngcp-fallback"
fi
# MT#7805
@ -1309,11 +1325,19 @@ fi
# TT#41500: Make sure the timezone setup is coherent
grml-chroot "$TARGET" dpkg-reconfigure --frontend=noninteractive tzdata
# provide useable /ngcpdata partition
# provide useable /ngcp-data partition
if [ -n "${DATA_PARTITION}" ] ; then
echo "Enabling ngcpdata partition ${DATA_PARTITION} via /etc/fstab"
echo "Enabling ngcp-data partition ${DATA_PARTITION} via /etc/fstab"
cat >> "${TARGET}/etc/fstab" << EOF
${DATA_PARTITION} /ngcp-data auto noatime 0 0
EOF
fi
# provide useable /ngcp-fallback read-only partition
if [ -n "${FALLBACK_FS}" ] ; then
echo "Enabling ngcp-fallback partition ${FALLBACK_FS} via /etc/fstab"
cat >> "${TARGET}/etc/fstab" << EOF
${DATA_PARTITION} /ngcpdata auto noatime 0 0
${FALLBACK_FS} /ngcp-fallback auto ro,noatime 0 0
EOF
fi

Loading…
Cancel
Save