Newer
Older
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
variables:
DOCKER_HOST: "tcp://docker-dind.gitlab-suma:2375"
DOCKER_BUILD_IMAGE: docker:20.10.15
DOCKER_IMAGE_NAME: suggestible
DOCKER_TAG_NAME: $CI_COMMIT_SHA
HELM_RELEASE_NAME: $CI_COMMIT_BRANCH
KUBERNETES_NAMESPACE: suggestible
KUBERNETES_DEPLOY_IMAGE: alpine/k8s:1.24.4
stages:
- build
- deploy
build:
stage: build
image: ${DOCKER_BUILD_IMAGE}
before_script:
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
script:
- docker build --network=host -t ${CI_REGISTRY_IMAGE}/${DOCKER_IMAGE_NAME}:${DOCKER_TAG_NAME} -f ./Dockerfile .
- docker push ${CI_REGISTRY_IMAGE}/${DOCKER_IMAGE_NAME}:${DOCKER_TAG_NAME}
after_script:
- docker logout $CI_REGISTRY
only:
- main
deploy:
stage: deploy
image: ${KUBERNETES_DEPLOY_IMAGE}
before_script:
- kubectl config use-context open-source/metager-keymanager:gitlab-agent
script: |
helm -n ${KUBERNETES_NAMESPACE} upgrade --install ${HELM_RELEASE_NAME} chart/ \
--set image.repository=${CI_REGISTRY_IMAGE}/${DOCKER_IMAGE_NAME} \
--set image.tag=${DOCKER_TAG_NAME} \
--set namespace=${KUBERNETES_NAMESPACE}
only:
- main