diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b6f682bbffb931a9fcde587b9a6bae2514534331..69fdc8efe6e3b33820133c6cc9759619007e2643 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -32,11 +32,22 @@ build: stage: build needs: [] image: - name: gcr.io/kaniko-project/executor:debug + name: ${CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX}/moby/buildkit:rootless entrypoint: [""] + variables: + BUILDKITD_FLAGS: --oci-worker-no-process-sandbox + before_script: + - mkdir ~/.docker + - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > ~/.docker/config.json script: - - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json - - /kaniko/executor --cache=true --context "$CI_PROJECT_DIR" --dockerfile "$CI_PROJECT_DIR/docker/Dockerfile" --destination "$CI_REGISTRY_IMAGE/$CI_COMMIT_REF_SLUG:$CI_COMMIT_SHA" --destination "$CI_REGISTRY_IMAGE/$CI_COMMIT_REF_SLUG:latest" + - | + buildctl-daemonless.sh build \ + --frontend=dockerfile.v0 \ + --local context=. \ + --local dockerfile=docker \ + --output type=image,\"name=$CI_REGISTRY_IMAGE/$CI_COMMIT_REF_SLUG:$CI_COMMIT_SHA,$CI_REGISTRY_IMAGE/$CI_COMMIT_REF_SLUG:latest\",push=true \ + --import-cache type=registry,ref=$CI_REGISTRY_IMAGE/$CI_COMMIT_REF_SLUG:buildcache \ + --export-cache type=registry,ref=$CI_REGISTRY_IMAGE/$CI_COMMIT_REF_SLUG:buildcache,mode=max prospector: stage: qa @@ -50,13 +61,13 @@ prospector: reports: junit: prospector-output.xml script: - - prospector --profile ci | sed 's|<\(\/\?\)error\(.*\)>|<\1failure\2>|' > prospector-output.xml + - prospector --profile ci > prospector-output.xml black: stage: qa needs: [] image: - name: registry.cri.epita.fr/cri/docker/black:3-slim + name: registry.cri.epita.fr/cri/docker/black/master:3.9-buster entrypoint: [""] allow_failure: true artifacts: