#!/bin/bash
set -euo pipefail

path=/growroot
udevadm settle

disk=$(lsblk -ln -o NAME,TYPE | grep disk | awk '{print $1}')
if [[ -z ${disk} ]]; then
    exit 1
fi
growpart /dev/${disk} 4

crypt=$(lsblk -ln -o NAME,TYPE | grep crypt | awk '{print $1}')
if [[ -z ${crypt} ]]; then
    exit 1
fi
cryptsetup resize ${crypt}
lvm pvresize /dev/mapper/${crypt}

lvm vgchange -ay rootvg

if [[ ! -e /dev/disk/by-label/root ]]; then
    dm=$(blkid --label root)
    if [[ -z ${dm} ]]; then
        exit 1
    fi
    ln -s ${dm} /dev/disk/by-label/root
fi

mkdir -p ${path}
mount -t xfs /dev/disk/by-label/root ${path}
