#!/usr/bin/env bash set -aeou pipefail BASE_IMAGE="registry.opensuse.org/opensuse/tumbleweed" TARGET_REPO="git.rre.nu/jonas/" PACKAGE_NAME="restic" git pull echo "Pulling latest tumbleweed" podman pull "${BASE_IMAGE}:latest" CURRENT_TUMBLEWEED_TAG="$(sed -n 's/.*VERSION=\([0-9]\)/\1/p' Makefile)" LATEST_TUMBLEWEED_TAG="$(podman image inspect --format "{{.Labels}}" registry.opensuse.org/opensuse/tumbleweed:latest | sed -n 's/.*org\.opencontainers\.image\.version:\([0-9]\{8\}\).*/\1/p')" if [[ "$CURRENT_TUMBLEWEED_TAG" == "$LATEST_TUMBLEWEED_TAG" ]]; then echo "Already running latest tumbleweed version" exit 0 fi echo "New tumbleweed image exists" if [[ "x" == "x$(podman run --rm -it ${TARGET_REPO}${PACKAGE_NAME}:latest /usr/bin/bash -c "zypper list-updates | grep $PACKAGE_NAME")" ]]; then echo "No updates for $PACKAGE_NAME" exit 0 fi LATEST_VERSION="$(podman run --rm -it ${BASE_IMAGE}:latest /usr/bin/bash -c "zypper ref > /dev/null && zypper info $PACKAGE_NAME | sed -n 's/.*Version : \(.*\)$/\1/p'")" echo "updates found : $LATEST_VERSION" #Updateing Makefile with latest image tag sed -i 's/VERSION='"$CURRENT_TUMBLEWEED_TAG"'/VERSION='"$LATEST_TUMBLEWEED_TAG"'/' Makefile git add Makefile git commit -m "Updated tumpleweed image to $LATEST_TUMBLEWEED_TAG, $PACKAGE_NAME to $LATEST_VERSION" git push echo "build and push new image" make release