From 0cfffbf8be6320811182ff08462f28cb57dfde1a Mon Sep 17 00:00:00 2001 From: David Mehren Date: Sun, 30 May 2021 10:59:04 +0200 Subject: [PATCH] Build with kaniko --- .gitlab-ci.yml | 67 +++++++++++++------------------------------------- 1 file changed, 17 insertions(+), 50 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 176ec28..b563a5a 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,70 +1,37 @@ -# Official docker image. -image: docker:latest - -variables: - DOCKER_DRIVER: overlay2 - DOCKER_BUILDKIT: 1 - TEXLIVE_IMAGE_UPSTREAM: texlive/texlive:latest - TEXLIVE_IMAGE: ${CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX}/${TEXLIVE_IMAGE_UPSTREAM} - -# Docker in Docker Service -services: - - name: docker:dind - command: ["--experimental"] +image: + name: gcr.io/kaniko-project/executor:debug + entrypoint: [""] before_script: - - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY - - docker login -u "$CI_DEPENDENCY_PROXY_USER" -p "$CI_DEPENDENCY_PROXY_PASSWORD" $CI_DEPENDENCY_PROXY_SERVER + - mkdir -p /kaniko/.docker + - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json - source environment build-main: script: - - docker build - --build-arg BUILDKIT_INLINE_CACHE=1 - --build-arg LDAP_PLUGIN_URL="${LDAP_PLUGIN_URL}" - --cache-from $CI_REGISTRY_IMAGE:stage-src - --target src - -t "$CI_REGISTRY_IMAGE:stage-src" - -t "$CI_REGISTRY_IMAGE:stage-src-branch-$CI_COMMIT_REF_SLUG" . - - docker push "$CI_REGISTRY_IMAGE:stage-src" - - docker push "$CI_REGISTRY_IMAGE:stage-src-branch-$CI_COMMIT_REF_SLUG" - - docker build - --build-arg BUILDKIT_INLINE_CACHE=1 - --build-arg LDAP_PLUGIN_URL="${LDAP_PLUGIN_URL}" - --pull - --cache-from $CI_REGISTRY_IMAGE:stage-texlive-update - --target texlive-update - -t "$CI_REGISTRY_IMAGE:stage-texlive-update" - -t "$CI_REGISTRY_IMAGE:stage-texlive-update-branch-$CI_COMMIT_REF_SLUG" . - - docker push "$CI_REGISTRY_IMAGE:stage-texlive-update" - - docker push "$CI_REGISTRY_IMAGE:stage-texlive-update-branch-$CI_COMMIT_REF_SLUG" - - docker build - --build-arg BUILDKIT_INLINE_CACHE=1 + - /kaniko/executor + --cache=true --build-arg LDAP_PLUGIN_URL="${LDAP_PLUGIN_URL}" + --build-arg TEXLIVE_IMAGE="${TEXLIVE_IMAGE}" --build-arg login_text="${LOGIN_TEXT}" --build-arg collab_text="${COLLAB_TEXT}" - --pull - --cache-from $CI_REGISTRY_IMAGE - --target app --squash - -t "$CI_REGISTRY_IMAGE" - -t "$CI_REGISTRY_IMAGE:branch-$CI_COMMIT_REF_SLUG" . - - docker push "$CI_REGISTRY_IMAGE" - - docker push "$CI_REGISTRY_IMAGE:branch-$CI_COMMIT_REF_SLUG" + --context $CI_PROJECT_DIR + --dockerfile $CI_PROJECT_DIR/Dockerfile + --destination "$CI_REGISTRY_IMAGE" + --destination "$CI_REGISTRY_IMAGE:branch-$CI_COMMIT_REF_SLUG" only: - main build: script: - - docker build - --build-arg BUILDKIT_INLINE_CACHE=1 + - /kaniko/executor + --cache=true --build-arg LDAP_PLUGIN_URL="${LDAP_PLUGIN_URL}" --build-arg TEXLIVE_IMAGE="${TEXLIVE_IMAGE}" --build-arg login_text="${LOGIN_TEXT}" --build-arg collab_text="${COLLAB_TEXT}" - --pull - --cache-from "$CI_REGISTRY_IMAGE:branch-$CI_COMMIT_REF_SLUG" - --cache-from "$CI_REGISTRY_IMAGE" - -t "$CI_REGISTRY_IMAGE:branch-$CI_COMMIT_REF_SLUG" . - - docker push "$CI_REGISTRY_IMAGE:branch-$CI_COMMIT_REF_SLUG" + --context $CI_PROJECT_DIR + --dockerfile $CI_PROJECT_DIR/Dockerfile + --destination "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" except: - main