Skip to content
Snippets Groups Projects
prepare_squashfs.sh 1.55 KiB
Newer Older
set -o nounset

source ${CI_PROJECT_DIR}/ci/stack_env.sh

Nicolas Richart's avatar
Nicolas Richart committed
if [ ! -d /squashfs-cache ]
Nicolas Richart's avatar
Nicolas Richart committed
    mkdir -p /squashfs-cache
Nicolas Richart's avatar
Nicolas Richart committed
sqfs_image=$(ls -t1 /squashfs-cache/${stack}-${environment}-${squash_id}*.sqfs 2> /dev/null | head -1)
if [ $? -ne 0 ]
then
    echo "No MR ($squash_id) squashfs found"
    # Check if MR default branch as squashfs
Nicolas Richart's avatar
Nicolas Richart committed
    sqfs_base_image=$(ls -t1 /squashfs-cache/${stack}-${environment}-${squash_base}*.sqfs 2> /dev/null | head -1)
    if [ $? -ne 0 ]
    then
        echo "No default branch ($squash_base) squashfs found"
        echo "Creating an empty one"
Nicolas Richart's avatar
Nicolas Richart committed
        empty=$(mktemp -d)
Nicolas Richart's avatar
Nicolas Richart committed
        sqfs_base_image=/squashfs-cache/${stack}-${environment}-${squash_base}-initial.sqfs
Nicolas Richart's avatar
Nicolas Richart committed
        mksquashfs ${empty} ${sqfs_base_image}
    else
        echo "Found ${sqfs_base_image}"
    fi

    # Link MR sqaushfs to the one of default branch
Nicolas Richart's avatar
Nicolas Richart committed
    sqfs_image=/squashfs-cache/${stack}-${environment}-${squash_id}.sqfs
Nicolas Richart's avatar
Nicolas Richart committed
    cd /squashfs-cache
    ln -sf $(basename ${sqfs_base_image}) $(basename ${sqfs_image})
    cd -

    echo "Linking ${sqfs_image} -> ${sqfs_base_image}"
Nicolas Richart's avatar
Nicolas Richart committed
    if [ ${sqfs_image} != /squashfs-cache/${stack}-${environment}-${squash_id}.sqfs ];
    then
        cd /squashfs-cache
        ln -sf $(basname ${sqfs_image}) ${stack}-${environment}-${squash_id}.sqfs
        cd
    fi
Nicolas Richart's avatar
Nicolas Richart committed
if [ ! -d /overlayfs ]
Nicolas Richart's avatar
Nicolas Richart committed
if [ ! -d /overlayfs/upper ]
    mkdir -p /overlayfs/lower
    mkdir -p /overlayfs/upper
    mkdir -p /overlayfs/wd
fi