-
Notifications
You must be signed in to change notification settings - Fork 0
/
.gitlab-ci.yml
71 lines (60 loc) · 1.99 KB
/
.gitlab-ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
default:
image: ghcr.io/zazuko/deploy-image:v1.4
stages:
- build
# PROD: build Docker image
build-prod:
stage: build
script:
# import all credentials
- mkdir -p credentials
- cp "${FILE_SCOPE_VIRTUAL_PROPERTIES}" credentials/scope-virtual.properties
- cp "${FILE_NETRC}" credentials/netrc
- cp "${FILE_ENVIRONMENT}" credentials/environment
- cp "${FILE_CRONTAB}" cron/crontab-docker
# login to the registry
- crane auth login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" "$CI_REGISTRY"
# build Docker image
- |
executor \
--context="$CI_PROJECT_DIR" \
--dockerfile=Dockerfile \
--destination="$CI_REGISTRY_IMAGE" \
--build-arg="BUILD_DATE=$(date -u +'%Y-%m-%dT%H:%M:%SZ')" \
--build-arg="COMMIT=$CI_COMMIT_SHA" \
--build-arg="VERSION=$CI_COMMIT_REF_SLUG" \
--no-push \
--tarPath="$CI_PROJECT_DIR/image.tar"
# push Docker image
- gitlab-docker-push image.tar "$CI_REGISTRY_IMAGE"
environment: prod
only:
- master
# DEV: build Docker image
build-dev:
stage: build
script:
# import all credentials
- mkdir -p credentials
- cp "${FILE_SCOPE_VIRTUAL_PROPERTIES}" credentials/scope-virtual.properties
- cp "${FILE_NETRC}" credentials/netrc
- cp "${FILE_ENVIRONMENT}" credentials/environment
- cp "${FILE_CRONTAB}" cron/crontab-docker
# login to the registry
- crane auth login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" "$CI_REGISTRY"
# build Docker image
- |
executor \
--context="$CI_PROJECT_DIR" \
--dockerfile=Dockerfile \
--destination="$CI_REGISTRY_IMAGE" \
--build-arg="BUILD_DATE=$(date -u +'%Y-%m-%dT%H:%M:%SZ')" \
--build-arg="COMMIT=$CI_COMMIT_SHA" \
--build-arg="VERSION=$CI_COMMIT_REF_SLUG" \
--no-push \
--tarPath="$CI_PROJECT_DIR/image.tar"
# push Docker image
- gitlab-docker-push image.tar "$CI_REGISTRY_IMAGE"
environment: dev
only:
- develop