This commit is contained in:
28
check.sh
28
check.sh
@@ -56,12 +56,12 @@ if [ -z "${REGISTRY_URL}" ]; then
|
||||
# repositories
|
||||
fi
|
||||
|
||||
if [ -z "${BASE_REPO_URL}" ]; then
|
||||
BASE_REGISTRY_URL="${REPO_URL}"
|
||||
if [ -z "${BASE_REGISTRY_URL}" ]; then
|
||||
BASE_REGISTRY_URL="${REGISTRY_URL}"
|
||||
fi
|
||||
|
||||
if [ -z "${TARGET_REPO_URL}" ]; then
|
||||
TARGET_REGISTRY_URL="${REPO_URL}"
|
||||
if [ -z "${TARGET_REGISTRY_URL}" ]; then
|
||||
TARGET_REGISTRY_URL="${REGISTRY_URL}"
|
||||
fi
|
||||
|
||||
# remove trailing /
|
||||
@@ -77,13 +77,13 @@ echo "${BASE}" | grep -q ":" || BASE="${BASE}:latest"
|
||||
echo "${TARGET}" | grep -q ":" || TARGET="${TARGET}:latest"
|
||||
|
||||
# split repo into user reponame and tag
|
||||
BASE_REPO_USER=$(echo "$BASE_REPO" | cut -d'/' -f1)
|
||||
BASE_REPO_NAME=$(echo "$BASE_REPO" | cut -d'/' -f2 | cut -d':' -f1)
|
||||
BASE_REPO_TAG=$(echo "$BASE_REPO" | cut -d':' -f2)
|
||||
BASE_REPO_USER=$(echo "$BASE" | cut -d'/' -f1)
|
||||
BASE_REPO_NAME=$(echo "$BASE" | cut -d'/' -f2 | cut -d':' -f1)
|
||||
BASE_REPO_TAG=$(echo "$BASE" | cut -d':' -f2)
|
||||
|
||||
TARGET_REPO_USER=$(echo "$TARGET_REPO" | cut -d'/' -f1)
|
||||
TARGET_REPO_NAME=$(echo "$TARGET_REPO" | cut -d'/' -f2 | cut -d':' -f1)
|
||||
TARGET_REPO_TAG=$(echo "$TARGET_REPO" | cut -d':' -f2)
|
||||
TARGET_REPO_USER=$(echo "$TARGET" | cut -d'/' -f1)
|
||||
TARGET_REPO_NAME=$(echo "$TARGET" | cut -d'/' -f2 | cut -d':' -f1)
|
||||
TARGET_REPO_TAG=$(echo "$TARGET" | cut -d':' -f2)
|
||||
|
||||
BASE_HEADER=""
|
||||
if [ "${BASE_REGISTRY_API}" = 'docker' ];then
|
||||
@@ -91,13 +91,13 @@ if [ "${BASE_REGISTRY_API}" = 'docker' ];then
|
||||
TOKEN=$(curl -s -H "Content-Type: application/json" -X POST -d "{\"username\": \"${BASE_REGISTRY_USERNAME}\", \"password\": \"${BASE_REGISTRY_PASSWORD}\"}" "${BASE_REGISTRY_URL}/users/login/" | jq -r .token)
|
||||
BASE_HEADER="Authorization: JWT ${TOKEN}"
|
||||
fi
|
||||
BASE_URL="${BASE_REPO_URL}/${BASE_REPO_USER}/${BASE_REPO_NAME}/tags/${BASE_REPO_TAG}"
|
||||
BASE_URL="${BASE_REGISTRY_URL}/${BASE_REPO_USER}/${BASE_REPO_NAME}/tags/${BASE_REPO_TAG}"
|
||||
|
||||
elif [ "${BASE_REGISTRY_API}" = 'gitea' ];then
|
||||
if [ -n "${BASE_REGISTRY_PASSWORD}" ]; then
|
||||
BASE_HEADER="Authorization: token ${BASE_REGISTRY_PASSWORD}"
|
||||
fi
|
||||
BASE_URL="${BASE_REPO_URL}/api/v1/packages/${BASE_REPO_USER}/container/${BASE_REPO_NAME}/${BASE_REPO_TAG}"
|
||||
BASE_URL="${BASE_REGISTRY_URL}/api/v1/packages/${BASE_REPO_USER}/container/${BASE_REPO_NAME}/${BASE_REPO_TAG}"
|
||||
fi
|
||||
|
||||
|
||||
@@ -107,13 +107,13 @@ if [ "${TARGET_REGISTRY_API}" = 'docker' ];then
|
||||
TOKEN=$(curl -s -H "Content-Type: application/json" -X POST -d "{\"username\": \"${TARGET_REGISTRY_USERNAME}\", \"password\": \"${TARGET_REGISTRY_PASSWORD}\"}" "${TARGET_REGISTRY_URL}/users/login/" | jq -r .token)
|
||||
TARGET_HEADER="Authorization: JWT ${TOKEN}"
|
||||
fi
|
||||
TARGET_URL="${TARGET_REPO_URL}/${TARGET_REPO_USER}/${TARGET_REPO_NAME}/tags/${TARGET_REPO_TAG}"
|
||||
TARGET_URL="${TARGET_REGISTRY_URL}/${TARGET_REPO_USER}/${TARGET_REPO_NAME}/tags/${TARGET_REPO_TAG}"
|
||||
|
||||
elif [ "${TARGET_REGISTRY_API}" = 'gitea' ];then
|
||||
if [ -n "${TARGET_REGISTRY_PASSWORD}" ]; then
|
||||
TARGET_HEADER="Authorization: token ${TARGET_REGISTRY_PASSWORD}"
|
||||
fi
|
||||
TARGET_URL="${TARGET_REPO_URL}/api/v1/packages/${TARGET_REPO_USER}/container/${TARGET_REPO_NAME}/${TARGET_REPO_TAG}"
|
||||
TARGET_URL="${TARGET_REGISTRY_URL}/api/v1/packages/${TARGET_REPO_USER}/container/${TARGET_REPO_NAME}/${TARGET_REPO_TAG}"
|
||||
fi
|
||||
|
||||
# compare the update time of the BASE and TARGET images
|
||||
|
||||
Reference in New Issue
Block a user