revert from two images to only a single image (GPT)

This commit is contained in:
Pratham Patel 2023-10-16 08:08:05 +05:30
parent ed721f8d7f
commit cbbee2dbbe
No known key found for this signature in database
5 changed files with 32 additions and 51 deletions

View File

@ -1,2 +0,0 @@
clearpart --drives=sda --disklabel=gpt --all
%include includes/distros/rocky-base.ksi

View File

@ -1,2 +0,0 @@
clearpart --drives=sda --all
%include includes/distros/rocky-base.ksi

6
Rocky.ks Normal file
View File

@ -0,0 +1,6 @@
# Note to self with OCD: this can be alphabetically sorted
%include includes/base-configuration.ksi
%include includes/disk-layout.ksi
%include includes/package-list.ksi
%include includes/post/post-install.ksi
%include includes/repos/repos-master.ksi

View File

@ -3,53 +3,38 @@
set -x
KICKSTART_BASE="Rocky"
TODAY="$(TZ='UTC' date +%Y.%m.%d)"
APPLIANCE_BASE="${KICKSTART_BASE}-$(dnf config-manager --dump-variables | grep releasever | awk '{print $3}')-$(uname -m)-minimal-${TODAY}"
PARTITION_TYPES=('GPT' 'MBR')
KICKSTART_FILE="${KICKSTART_BASE}.ks"
APPLIANCE_NAME="${KICKSTART_BASE}-$(dnf config-manager --dump-variables | grep releasever | awk '{print $3}')-$(uname -m)-minimal-${TODAY}"
IMAGE_NAME="${APPLIANCE_NAME}.raw"
COMMANDS_TO_CHECK=('appliance-creator' 'shasum' 'zstd')
for P_LAYOUT in "${PARTITION_TYPES[@]}"; do
KICKSTART_FILE="${KICKSTART_BASE}-${P_LAYOUT}.ks"
APPLIANCE_NAME="${APPLIANCE_BASE}-${P_LAYOUT}"
IMAGE_NAME="${APPLIANCE_NAME}.raw"
COMMANDS_TO_CHECK=('appliance-creator' 'shasum' 'zstd')
for COMMAND in "${COMMANDS_TO_CHECK[@]}"; do
if ! command -v "${COMMAND}" > /dev/null; then
>&2 echo "$0: ERROR: unable to find command '${COMMAND}' in PATH"
exit 1
fi
done
appliance-creator \
--config "${KICKSTART_FILE}" \
--name "${APPLIANCE_NAME}" \
--format raw \
--outdir "${PWD}" \
--no-compress \
--debug \
--cache /root/cache \
--verbose 2>&1 | tee "${APPLIANCE_NAME}.log" || exit 1
if [[ -d "${APPLIANCE_NAME}" ]]; then
pushd "${APPLIANCE_NAME}" || exit 1
mv "${APPLIANCE_NAME}-sda.raw" "${IMAGE_NAME}"
zstd --compress -9 "${IMAGE_NAME}"
popd || exit 0
else
>&2 echo "$0: ERROR: unable to find the appliance output directory"
>&2 echo "$0: ${APPLIANCE_NAME}"
for COMMAND in "${COMMANDS_TO_CHECK[@]}"; do
if ! command -v "${COMMAND}" > /dev/null; then
>&2 echo "$0: ERROR: unable to find command '${COMMAND}' in PATH"
exit 1
fi
done
rm -rf "${APPLIANCE_BASE}" && mkdir "${APPLIANCE_BASE}"
find . -type f \( -name "*.log" -o -name "*.raw*" \) -exec mv {} "${APPLIANCE_BASE}/" \;
rm -rf "${APPLIANCE_BASE}"-{GPT,MBR}
appliance-creator \
--config "${KICKSTART_FILE}" \
--name "${APPLIANCE_NAME}" \
--format raw \
--outdir "${PWD}" \
--no-compress \
--debug \
--cache /root/cache \
--verbose 2>&1 | tee "${APPLIANCE_NAME}.log" || exit 1
pushd "${APPLIANCE_BASE}" || exit 1
sha512sum -- *.raw* > SHA512SUMS
sha256sum -- *.raw* > SHA256SUMS
popd || exit 1
if [[ -d "${APPLIANCE_NAME}" ]]; then
pushd "${APPLIANCE_NAME}" || exit 1
mv "${APPLIANCE_NAME}-sda.raw" "${IMAGE_NAME}"
popd || exit 0
else
>&2 echo "$0: ERROR: unable to find the appliance output directory"
>&2 echo "$0: ${APPLIANCE_NAME}"
exit 1
fi
if [[ -n "$1" ]]; then
chown "$1":"$1" -vR "${APPLIANCE_BASE}"
chown "$1":"$1" -vR "${APPLIANCE_NAME}"
fi

View File

@ -1,6 +0,0 @@
# Note to self with OCD: this can be alphabetically sorted
%include ../base-configuration.ksi
%include ../disk-layout.ksi
%include ../package-list.ksi
%include ../post/post-install.ksi
%include ../repos/repos-master.ksi