overleaf-sso/.gitlab-ci.yml

44 lines
1.4 KiB
YAML

# Official docker image.
image: docker:latest
variables:
DOCKER_DRIVER: overlay2
DOCKER_BUILDKIT: 1
# Docker in Docker Service
services:
- docker:dind
before_script:
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
- source environment
build-main:
script:
- docker build --cache-from $CI_REGISTRY_IMAGE:stage-src
--target src
--build-arg BUILDKIT_INLINE_CACHE=1 --pull
-t "$CI_REGISTRY_IMAGE:stage-src"
-t "$CI_REGISTRY_IMAGE:stage-src-branch-$CI_COMMIT_REF_SLUG" .
- docker build --cache-from $CI_REGISTRY_IMAGE:stage-texlive-update
--target texlive-update
--build-arg BUILDKIT_INLINE_CACHE=1 --pull
-t "$CI_REGISTRY_IMAGE:stage-texlive-update"
-t "$CI_REGISTRY_IMAGE:stage-texlive-update-branch-$CI_COMMIT_REF_SLUG" .
- docker build --cache-from $CI_REGISTRY_IMAGE
--target app --squash
--build-arg BUILDKIT_INLINE_CACHE=1 --pull
-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"
only:
- main
build:
script:
- docker build --cache-from $CI_REGISTRY_IMAGE --build-arg BUILDKIT_INLINE_CACHE=1 --pull -t "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" .
- docker push "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG"
except:
- main