mirror of
https://github.com/zitadel/zitadel.git
synced 2025-08-11 23:47:33 +00:00
cache compose tests
This commit is contained in:
@@ -3,7 +3,7 @@
|
|||||||
# Usage: ./run_or_skip.sh <Make target> <images>
|
# Usage: ./run_or_skip.sh <Make target> <images>
|
||||||
# Example: ./run_or_skip.sh lint-force "img1;img2"
|
# Example: ./run_or_skip.sh lint-force "img1;img2"
|
||||||
|
|
||||||
set -euox pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
if [ -z "$CACHE_DIR" ]; then
|
if [ -z "$CACHE_DIR" ]; then
|
||||||
echo "CACHE_DIR is not set. Please set it to a valid directory."
|
echo "CACHE_DIR is not set. Please set it to a valid directory."
|
||||||
@@ -23,10 +23,10 @@ get_image_ids() {
|
|||||||
local id=$(docker image inspect "$img" --format='{{.Id}}' 2>/dev/null || true)
|
local id=$(docker image inspect "$img" --format='{{.Id}}' 2>/dev/null || true)
|
||||||
if [[ -z $id ]]; then
|
if [[ -z $id ]]; then
|
||||||
docker pull "$img" >/dev/null 2>&1 || true
|
docker pull "$img" >/dev/null 2>&1 || true
|
||||||
id="$(docker image inspect "$img" --format='{{.Id}}' 2>/dev/null || true)"
|
id=$(docker image inspect "$img" --format='{{.Id}}' 2>/dev/null || true)
|
||||||
fi
|
fi
|
||||||
if [[ -z $id ]]; then
|
if [[ -z $id ]]; then
|
||||||
id="$(docker image inspect "$img" --format='{{.Id}}' 2>/dev/null || true)"
|
id=$(docker image inspect "$img" --format='{{.Id}}' 2>/dev/null || true)
|
||||||
fi
|
fi
|
||||||
id=${id:-new-and-not-pullable-or-failed-to-build}
|
id=${id:-new-and-not-pullable-or-failed-to-build}
|
||||||
id="${img}@${id}"
|
id="${img}@${id}"
|
||||||
@@ -36,20 +36,28 @@ get_image_ids() {
|
|||||||
echo "$ids"
|
echo "$ids"
|
||||||
}
|
}
|
||||||
|
|
||||||
OLD_DIGEST=$(cat "$DIGEST_FILE" 2>/dev/null || echo "")
|
PREVIOUS_DIGEST=$(cat "$DIGEST_FILE" 2>/dev/null || echo "")
|
||||||
OLD_STATUS=$(echo "$OLD_DIGEST" | cut -d ';' -f1)
|
PREVIOUS_STATUS=$(echo "$PREVIOUS_DIGEST" | cut -d ';' -f1)
|
||||||
OLD_IDS=$(echo "$OLD_DIGEST" | cut -d ';' -f2-99)
|
PREVIOUS_IMAGE_IDS=$(echo "$PREVIOUS_DIGEST" | cut -d ';' -f2-99)
|
||||||
CURRENT_IMAGE_IDS=$(get_image_ids)
|
CURRENT_IMAGE_IDS="$(get_image_ids)"
|
||||||
docker images
|
if [[ "$PREVIOUS_IMAGE_IDS" == "$CURRENT_IMAGE_IDS" ]]; then
|
||||||
echo $CURRENT_IMAGE_IDS
|
|
||||||
if [[ "$OLD_IDS" == "$CURRENT_IMAGE_IDS" ]]; then
|
|
||||||
if [[ "$FORCE" == "true" ]]; then
|
if [[ "$FORCE" == "true" ]]; then
|
||||||
echo "\$FORCE=$FORCE - Running $MAKE_TARGET despite unchanged images."
|
echo "\$FORCE=$FORCE - Running $MAKE_TARGET despite unchanged images."
|
||||||
else
|
else
|
||||||
echo "Skipping $MAKE_TARGET – all images unchanged, returning cached status $OLD_STATUS"
|
echo "Skipping $MAKE_TARGET – all images unchanged, returning cached status $PREVIOUS_STATUS"
|
||||||
exit $OLD_STATUS
|
exit $PREVIOUS_STATUS
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
echo "Images have changed"
|
||||||
|
echo
|
||||||
|
echo "PREVIOUS_IMAGE_IDS does not match CURRENT_IMAGE_IDS"
|
||||||
|
echo
|
||||||
|
echo "$PREVIOUS_IMAGE_IDS"
|
||||||
|
echo
|
||||||
|
echo "$CURRENT_IMAGE_IDS"
|
||||||
|
echo
|
||||||
|
docker images
|
||||||
|
echo
|
||||||
echo "Running $MAKE_TARGET..."
|
echo "Running $MAKE_TARGET..."
|
||||||
set +e
|
set +e
|
||||||
make -j $MAKE_TARGET
|
make -j $MAKE_TARGET
|
||||||
|
Reference in New Issue
Block a user