-
Notifications
You must be signed in to change notification settings - Fork 676
Expand file tree
/
Copy path.gitlab-ci.yml
More file actions
57 lines (53 loc) · 2.2 KB
/
.gitlab-ci.yml
File metadata and controls
57 lines (53 loc) · 2.2 KB
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
image: python:3.14
stages:
- build
- deploy
- promote
build-images:
stage: build
image:
name: gcr.io/kaniko-project/executor:debug
entrypoint: [""]
script:
- executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/Dockerfile --destination $CI_REGISTRY_IMAGE/$OS_ARCH:$CI_COMMIT_TAG-alpine
- executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/Dockerfile --destination $CI_REGISTRY_IMAGE/$OS_ARCH:$CI_COMMIT_TAG-slim-bullseye --build-arg PYTHON_FLAVOR=slim-bullseye
rules:
- if: $CI_COMMIT_TAG
tags:
- $RUNNER_TAG
parallel:
matrix:
# See tags in https://docs.gitlab.com/ee/ci/runners/hosted_runners/linux.html
- RUNNER_TAG: saas-linux-medium-amd64
OS_ARCH: linux/amd64
- RUNNER_TAG: saas-linux-medium-arm64
OS_ARCH: linux/arm64
deploy-images:
stage: deploy
image:
name: mplatform/manifest-tool:alpine-v2.0.4@sha256:38b399ff66f9df247af59facceb7b60e2cd01c2d649aae318da7587efb4bbf87
entrypoint: [""]
script:
- manifest-tool --username $CI_REGISTRY_USER --password $CI_REGISTRY_PASSWORD push from-args
--platforms linux/amd64,linux/arm64
--template $CI_REGISTRY_IMAGE/OS/ARCH:$CI_COMMIT_TAG-alpine
--target $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG-alpine
- manifest-tool --username $CI_REGISTRY_USER --password $CI_REGISTRY_PASSWORD push from-args
--platforms linux/amd64,linux/arm64
--template $CI_REGISTRY_IMAGE/OS/ARCH:$CI_COMMIT_TAG-slim-bullseye
--target $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG-slim-bullseye
rules:
- if: $CI_COMMIT_TAG
tag-latest:
stage: promote
image:
name: gcr.io/go-containerregistry/crane:debug
entrypoint: [""]
script:
- crane auth login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
- crane tag $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG-alpine ${CI_COMMIT_TAG} # /python-gitlab:v1.2.3
- crane tag $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG-alpine latest # /python-gitlab:latest
- crane tag $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG-alpine alpine # /python-gitlab:alpine
- crane tag $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG-slim-bullseye slim-bullseye # /python-gitlab:slim-bullseye
rules:
- if: $CI_COMMIT_TAG