]> git.pld-linux.org Git - projects/cleanbuild.git/blob - .gitlab-ci.yml
eef918fb7828715fb4cf65df96c74bd2c9e77663
[projects/cleanbuild.git] / .gitlab-ci.yml
1 variables:
2   CONTAINER_TEST_IMAGE: $CI_REGISTRY_IMAGE/test:$CI_PIPELINE_SOURCE-$CI_PIPELINE_ID-$CI_COMMIT_SHA
3
4 stages:
5   - build
6   - test
7   - release
8
9 .dind:
10   image: docker:latest
11   variables:
12     DOCKER_BUILDKIT: "1"
13   services:
14     - docker:dind
15   before_script:
16     - env | grep -E '^CONTAINER_' | sort
17     - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
18
19 build:
20   extends: .dind
21   stage: build
22   script: |
23     docker build --pull -t $CONTAINER_TEST_IMAGE docker
24     docker push $CONTAINER_TEST_IMAGE
25
26 .release:
27   extends: .dind
28   stage: release
29   script: |
30     docker pull $CONTAINER_TEST_IMAGE
31     docker tag $CONTAINER_TEST_IMAGE $CONTAINER_IMAGE
32     docker push $CONTAINER_IMAGE
33
34 release branch:
35   extends: .release
36   variables:
37     CONTAINER_IMAGE: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_NAME
38   except:
39     - master
40     - tags
41
42 release master:
43   extends: .release
44   variables:
45     CONTAINER_IMAGE: $CI_REGISTRY_IMAGE:latest
46   only:
47     - master
48
49 release tag:
50   extends: .release
51   variables:
52     CONTAINER_IMAGE: $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG
53   only:
54     - tags
55
56 # vim:ts=2:sw=2:et
This page took 0.034915 seconds and 3 git commands to generate.