Skip to content

Commit

Permalink
add fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
krishjainx committed Jun 15, 2023
1 parent f65a056 commit aa1a662
Showing 1 changed file with 41 additions and 14 deletions.
55 changes: 41 additions & 14 deletions build_sysext
Original file line number Diff line number Diff line change
Expand Up @@ -55,22 +55,49 @@ eval set -- "${FLAGS_ARGV}"

BUILD_DIR="${DEFAULT_BUILD_ROOT}/images/${BOARD}/${IMAGE_SUBDIR}"


cleanup() {
# Unmount the directory here
umount "${BUILD_DIR}/fs-root" "${BUILD_DIR}/install-root" "${BUILD_DIR}/workdir" || exit 1
}


# export SYSEXTNAME=$2

ARCH=[[ "$BUILD_DIR" == *arm64-usr* ]] && ARCH=arm64 || [[ "$BUILD_DIR" == *amd64-usr* ]] && ARCH=x86-64

source /etc/os-release


unmount "${BUILD_DIR}/fs-root" "${BUILD_DIR}/install-root" "${BUILD_DIR}/workdir" || exit 1


# # with my 1 line patch before the rms in build_library/prod_image_util.sh (mksquashfs "${root_fs_dir}" "${BUILD_DIR}/configroot" "${BUILD_DIR}"/flatcar_production_image_sysext.sqsh)
sudo mkdir ${BUILD_DIR}/fs-root
sudo mount -rt squashfs -o loop,nodev,noexec ${BUILD_DIR}/flatcar_production_image_sysext.sqsh ${BUILD_DIR}/fs-root
sudo mkdir ${BUILD_DIR}/install-root
sudo mkdir ${BUILD_DIR}/workdir
sudo mount -t overlay overlay -o lowerdir=${BUILD_DIR}/fs-root,upperdir=${BUILD_DIR}/install-root,workdir=${BUILD_DIR}/workdir ${BUILD_DIR}/install-root
sudo emerge-amd64-usr --getbinpkg ${SYSEXTNAME}
sudo -E ROOT="/home/sdk/trunk/src/scripts/${BUILD_DIR}/install-root" PORTAGE_CONFIGROOT="/build/${BOARD}" FEATURES="-ebuild-locks" emerge --root-deps=rdeps --usepkgonly --verbose ${SYSEXTNAME}
sudo umount ${BUILD_DIR}/install-root
sudo umount ${BUILD_DIR}/fs-root
sudo rm -rf install-root/{dev, etc, var}
sudo mkdir -p install-root/usr/lib/extension-release.d
sudo printf "ID=flatcar-releaseinfo\nSYSEXT_LEVEL=1.0\nARCHITECTURE=${board}" >${BUILD_DIR}/install-root/usr/lib/extension-release.d/extension-release.${SYSEXTNAME}
sudo mksquashfs install-root "${BUILD_DIR}/${SYSEXTNAME}.raw" --all-root
sudo rm -rf ${BUILD_DIR}/{fs-root, install-root, workdir}

VERSION_BOARD=$(awk -F= '$1=="FLATCAR_VERSION_ID" { print $2 ;}' "${BUILD_DIR}/version.txt")

if [ "$VERSION_BOARD" == "$VERSION_ID" ]; then
sudo mkdir "${BUILD_DIR}/fs-root"
sudo mount -rt squashfs -o loop,nodev,noexec "${BUILD_DIR}/flatcar_production_image_sysext.sqsh" "${BUILD_DIR}/fs-root"
sudo mkdir "${BUILD_DIR}/install-root"
sudo mkdir "${BUILD_DIR}/workdir"
sudo mount -t overlay overlay -o lowerdir="${BUILD_DIR}/fs-root",upperdir="${BUILD_DIR}/install-root",workdir="${BUILD_DIR}/workdir" "${BUILD_DIR}/install-root"
sudo emerge-amd64-usr --getbinpkg "${SYSEXTNAME}"
sudo -E ROOT="/home/sdk/trunk/src/scripts/${BUILD_DIR}/install-root" PORTAGE_CONFIGROOT="/build/${BOARD}" FEATURES="-ebuild-locks" emerge --root-deps=rdeps --usepkgonly --verbose "${SYSEXTNAME}"
sudo umount "${BUILD_DIR}/install-root"
sudo umount "${BUILD_DIR}/fs-root"
sudo rm -rf install-root/{dev, etc, var}
sudo mkdir -p install-root/usr/lib/extension-release.d
sudo printf "ID=flatcar-releaseinfo\nVERSION_ID=${VERSION_ID}\nARCHITECTURE=${ARCH}" > "${BUILD_DIR}/install-root/usr/lib/extension-release.d/extension-release.${SYSEXTNAME}"
sudo mksquashfs install-root "${BUILD_DIR}/${SYSEXTNAME}.raw" --all-root

sudo rm -rf "${BUILD_DIR}/{fs-root, install-root, workdir}"

upload_image "${BUILD_DIR}/${SYSEXTNAME}.raw"

else
echo "Version mismatch"
fi

# Set up trap to execute cleanup() on script exit
trap cleanup EXIT

0 comments on commit aa1a662

Please sign in to comment.