drone/ContainerImageKaniko: support building multiple registries

This commit is contained in:
David Hiendl 2022-10-24 18:55:40 +02:00
parent 45a2543b0c
commit 8686dacc0f

View File

@ -19,7 +19,8 @@
ADDITIONAL_REGISTRIES: "" ADDITIONAL_REGISTRIES: ""
ADD_CI_REGISTRY_AUTH: "true" ADD_CI_REGISTRY_AUTH: "true"
ADD_CI_REGISTRY_TARGET: "true" ADD_CI_REGISTRY_TARGET: "true"
ADDTIONAL_REGISTRY_AUTH_JSON: "" REGISTRY_AUTH_JSON: ""
MERGE_REGISTRY_JSON: "true"
commands: commands:
- &ContainerImageKanikoCommands | - &ContainerImageKanikoCommands |
@ -50,20 +51,18 @@
# add gitlab registry auth # add gitlab registry auth
if [[ "$ADD_CI_REGISTRY_AUTH" == "true" ]]; then if [[ "$ADD_CI_REGISTRY_AUTH" == "true" ]]; then
GITEA_REGISTRY_AUTH_JSON="{\"auths\":{\"$CI_REGISTRY\":{\"auth\":\"$(echo -n token:$CI_REGISTRY_PASSWORD | base64)\"}}}" REGISTRY_AUTH_JSON="$REGISTRY_AUTH_JSON {\"auths\":{\"$CI_REGISTRY\":{\"auth\":\"$(echo -n token:$CI_REGISTRY_PASSWORD | base64)\"}}}"
fi fi
# merge registry auth # merge registry auth
if [[ ! -z "$ADDITIONAL_REGISTRY_AUTH_JSON" ]] || [[ ! -z "$GITEA_REGISTRY_AUTH_JSON" ]]; then if [[ "$MERGE_REGISTRY_JSON" == "true" ]] && [[ ! -z "$REGISTRY_AUTH_JSON" ]] then
ADDITIONAL_REGISTRY_AUTH_JSON=$(echo "$ADDITIONAL_REGISTRY_AUTH_JSON $GITEA_REGISTRY_AUTH_JSON" | \ REGISTRY_AUTH_JSON=$(echo "$REGISTRY_AUTH_JSON" | jq --slurp 'reduce .[] as $item ({}; . * $item)')
jq --slurp 'reduce .[] as $item ({}; . * $item)'
)
fi fi
# create registry auth file # create registry auth file
if [[ ! -z "$ADDITIONAL_REGISTRY_AUTH_JSON" ]]; then if [[ ! -z "$REGISTRY_AUTH_JSON" ]]; then
mkdir -p /kaniko/.docker mkdir -p /kaniko/.docker
echo "$ADDITIONAL_REGISTRY_AUTH_JSON" > /kaniko/.docker/config.json echo "$REGISTRY_AUTH_JSON" > /kaniko/.docker/config.json
]] ]]
IMAGE_TAGS="" IMAGE_TAGS=""