This commit is contained in:
43
entrypoint.sh
Normal file
43
entrypoint.sh
Normal file
@@ -0,0 +1,43 @@
|
||||
#!/busybox/sh
|
||||
set -e pipefail
|
||||
|
||||
OLDIFS=$IFS
|
||||
|
||||
REGISTRY="${INPUT_PUSH_REGISTRY}"
|
||||
REGISTRY_CERTIFICATE="${INPUT_REGISTRY_CERTIFICATE}"
|
||||
USERNAME="${INPUT_USERNAME:-$GITHUB_ACTOR}"
|
||||
PASSWORD="${INPUT_PASSWORD:-$GITHUB_TOKEN}"
|
||||
crane auth login "$REGISTRY" -u "$USERNAME" -p "$PASSWORD"
|
||||
|
||||
IMAGE="$(echo "${INPUT_TAGS}" | cut -f1 -d':')"
|
||||
TAGS="${INPUT_TAGS:-$REGISTRY/$GITEA_REPO/$GITEA_REF_NAME}"
|
||||
|
||||
DOCKERFILE="${INPUT_FILE}"
|
||||
CONTEXT="${INPUT_CONTEXT}"
|
||||
|
||||
LABELS="--label org.opencontainers.image.created=$(date -u +"%Y-%m-%dT%H:%M:%S.%3NZ")"
|
||||
for label in $INPUT_LABELS; do
|
||||
LABELS="$LABELS --label $label"
|
||||
done
|
||||
ARGS="$LABELS --context $CONTEXT --dockerfile $DOCKERFILE"
|
||||
|
||||
if [ -n "$REGISTRY_CERTIFICATE" ]; then
|
||||
ARGS="$ARGS --registry-certificate ${REGISTRY}:${REGISTRY_CERTIFICATE}"
|
||||
fi
|
||||
|
||||
runKaniko() {
|
||||
IFS=''
|
||||
EXECUTOR="executor ${1} --reproducible --force --cleanup"
|
||||
echo "Build with: ${EXECUTOR}"
|
||||
eval "${EXECUTOR}"
|
||||
IFS=$OLDIFS
|
||||
}
|
||||
|
||||
echo "Building image $IMAGE"
|
||||
|
||||
DESTINATION="--destination $IMAGE:latest --destination $TAGS"
|
||||
runKaniko "${ARGS} $DESTINATION $DIGEST"
|
||||
|
||||
DIGEST=$(head -n 1 '/kaniko/build/image-tag-digest' | cut -f2 -d '@')
|
||||
echo "Image $IMAGE pushed"
|
||||
echo "Digest: $DIGEST"
|
||||
Reference in New Issue
Block a user