#!/usr/bin/env bash ############################ function docker_create_config() { ############################ mkdir -p /kaniko/.docker/ echo "###############" echo "Logging into GitLab Container Registry with CI credentials for kaniko..." echo "###############" echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json echo "" } ############################ function docker_build_image() { ############################ if [[ -f Dockerfile ]]; then echo "###############" echo "Building Dockerfile-based application..." echo "###############" /kaniko/executor \ --cache=true \ --context ${CI_PROJECT_DIR} \ --dockerfile ${CI_PROJECT_DIR}/Dockerfile \ --destination ${CI_REGISTRY_IMAGE}:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} \ --destination ${CI_REGISTRY_IMAGE}:${CI_COMMIT_REF_SLUG}-latest \ \ "$@" else echo "No Dockerfile found." return 1 fi }