From 31688061d7ce5538a9bf137180754fe62c46571f Mon Sep 17 00:00:00 2001 From: Vishwas Siravara Date: Wed, 8 Mar 2023 14:14:08 -0800 Subject: [PATCH] Add script for updating OS base image in Makefile Signed-off-by: Vishwas Siravara --- .github/bin/update-os-image.sh | 24 ++++++++++++++++++++++++ .github/workflows/sync-submodules.yaml | 1 + 2 files changed, 25 insertions(+) create mode 100755 .github/bin/update-os-image.sh diff --git a/.github/bin/update-os-image.sh b/.github/bin/update-os-image.sh new file mode 100755 index 000000000..5acc91567 --- /dev/null +++ b/.github/bin/update-os-image.sh @@ -0,0 +1,24 @@ +#!/bin/bash +set -x +# Set OS hash directory in finch-core as base directory for searching latest OS images. +OS_BASE_IMAGE_HASH_DIR="./deps/finch-core/hashes/" + +OS_AARCH64_FILENAME_PATTERN="Fedora-Cloud-Base-.*-.*.aarch64-.*.qcow2" + +OS_X86_64_FILENAME_PATTERN="Fedora-Cloud-Base-.*-.*.x86_64-.*.qcow2" + + +# Use wildcard patterns to search for the two files and assign their paths to variables +AARCH64_FILEPATH=$(find "$OS_BASE_IMAGE_HASH_DIR" -name "Fedora-Cloud-Base-*-*.aarch64-*.qcow2.sha512" -print -quit) +X86_64_FILEPATH=$(find "$OS_BASE_IMAGE_HASH_DIR" -name "Fedora-Cloud-Base-*-*.x86_64-*.qcow2.sha512" -print -quit) + +# Extract the file names without the path and remove the ".sha512" extension +AARCH64_OS_BASE_IMAGE=$(basename "$AARCH64_FILEPATH" .sha512) +X86_64_OS_BASE_IMAGE=$(basename "$X86_64_FILEPATH" .sha512) + +echo "AARCH64 base image: ${AARCH64_OS_BASE_IMAGE}" +echo "X86_64 base image: ${X86_64_OS_BASE_IMAGE}" + +# Replace occurrences of FINCH_OS_BASENAME in the Makefile with the file names +sed -E -i.bak 's|^([[:blank:]]*FINCH_OS_BASENAME[[:blank:]]*\?=[[:blank:]]*)('"${OS_AARCH64_FILENAME_PATTERN}"')|\1'"$AARCH64_OS_BASE_IMAGE"'|' Makefile +sed -E -i.bak 's|^([[:blank:]]*FINCH_OS_BASENAME[[:blank:]]*\?=[[:blank:]]*)('"${OS_X86_64_FILENAME_PATTERN}"')|\1'"$X86_64_OS_BASE_IMAGE"'|' Makefile diff --git a/.github/workflows/sync-submodules.yaml b/.github/workflows/sync-submodules.yaml index a7f41d992..219162bf5 100644 --- a/.github/workflows/sync-submodules.yaml +++ b/.github/workflows/sync-submodules.yaml @@ -18,6 +18,7 @@ jobs: - name: Update sub modules run: | git submodule update --remote + ./.github/bin/update-os-image.sh - name: Create PR uses: peter-evans/create-pull-request@v4