@@ -2,68 +2,93 @@ agents:
2
2
queue : private
3
3
4
4
env :
5
- BUILDKIT_INLINE_CACHE : 1
5
+ AWS_REGISTRY : 997601596833.dkr.ecr.us-east-1.amazonaws.com
6
+ GCP_REGISTRY : us-docker.pkg.dev/planetscale-registry
7
+ IMAGE_NAME : mysql-server
6
8
BUILDKIT_PROGRESS : plain
7
- COMPOSE_DOCKER_CLI_BUILD : 1
8
- DOCKER_BUILDKIT : 1
9
- IMAGE_NAME : " mysql-server"
10
- REGISTRY : " 997601596833.dkr.ecr.us-east-1.amazonaws.com"
11
9
12
10
steps :
13
- - name : " Build mysql-server"
14
- key : " build"
11
+ - name : Build mysql-server
12
+ key : build
15
13
label : " :docker: Build and package"
16
14
command : bash build.sh
17
15
artifact_paths :
18
- - " dist/mysql-*.tar.gz"
16
+ - dist/mysql-*.tar.gz
19
17
plugins :
20
- - docker-compose#v3.10.0:
18
+ - docker-compose#v4.12.0:
19
+ cli-version : " 2" # Use 'docker compose' and BuildKit
21
20
run : builder
22
21
env :
23
22
DISTRO : " {{matrix}}"
24
23
matrix :
25
- - " debian:bullseye-slim"
26
- - " ubuntu:focal"
27
- - " ubuntu:jammy"
24
+ - debian:bullseye-slim
25
+ - ubuntu:focal
26
+ - ubuntu:jammy
28
27
29
- - name : " Integration tests on debug build"
28
+ - name : Integration tests on debug build
30
29
label : " :docker: Build a debug binary and run integration tests"
31
30
command : bash integration-tests.sh
32
31
agents :
33
32
queue : whopper
34
33
plugins :
35
- - docker-compose#v3.10.0:
34
+ - docker-compose#v4.12.0:
35
+ cli-version : " 2" # Use 'docker compose' and BuildKit
36
36
run : builder
37
37
env :
38
- DISTRO : " debian:bullseye-slim"
38
+ DISTRO : debian:bullseye-slim
39
39
40
- - name : " Build runtime mysql-server container for branch"
41
- depends_on : " build"
40
+ - name : Build runtime mysql-server container for branch
41
+ depends_on : build
42
42
label : " :docker: Build runtime branch container"
43
- command : " /usr/sbin/mysqld -V"
43
+ command : /usr/sbin/mysqld -V
44
44
branches : " !${MAIN_BRANCH}"
45
45
plugins :
46
- - ecr#v2.3.0:
46
+ - planetscale/vault-oidc-auth#v1.0.0:
47
+ vault_addr : https://vault.silversurfer.planetscale.net
48
+ - planetscale/vault-aws-creds#v1.0.0:
49
+ vault_addr : https://vault.silversurfer.planetscale.net
50
+ - planetscale/vault-gcp-creds#v1.0.0:
51
+ vault_addr : https://vault.silversurfer.planetscale.net
52
+ - ecr#v2.7.0:
47
53
login : true
54
+ - docker-login#v2.1.0:
55
+ username : oauth2accesstoken
56
+ password-env : CLOUDSDK_AUTH_ACCESS_TOKEN
57
+ server : https://us-docker.pkg.dev
48
58
- artifacts#v1.5.0:
49
- download : " dist/mysql-*.tar.gz"
50
- - docker-compose#v3.10.0:
59
+ download : dist/mysql-*.tar.gz
60
+ - docker-compose#v4.12.0:
61
+ cli-version : " 2" # Use 'docker compose' and BuildKit
51
62
run : release
52
63
push :
53
- - " release:${REGISTRY}/branch/${IMAGE_NAME}:${CONTAINER_SEMVER}-ps-${CONTAINER_SHORT_SHA}-${CONTAINER_BRANCH_NAME}"
64
+ - release:${AWS_REGISTRY}/branch/${IMAGE_NAME}:${CONTAINER_SEMVER}-ps-${CONTAINER_SHORT_SHA}-${CONTAINER_BRANCH_NAME}
65
+ - release:${GCP_REGISTRY}/dev/${IMAGE_NAME}:${CONTAINER_SEMVER}-ps-${CONTAINER_SHORT_SHA}-${CONTAINER_BRANCH_NAME}
54
66
55
- - name : " Build runtime mysql-server container for main"
56
- depends_on : " build"
67
+ - name : Build runtime mysql-server container for main
68
+ depends_on : build
57
69
label : " :docker: Build runtime main container"
58
- command : " /usr/sbin/mysqld -V"
70
+ command : /usr/sbin/mysqld -V
59
71
branches : " ${MAIN_BRANCH}"
60
72
plugins :
61
- - ecr#v2.3.0:
73
+ - planetscale/vault-oidc-auth#v1.0.0:
74
+ vault_addr : https://vault.silversurfer.planetscale.net
75
+ - planetscale/vault-aws-creds#v1.0.0:
76
+ vault_addr : https://vault.silversurfer.planetscale.net
77
+ - planetscale/vault-gcp-creds#v1.0.0:
78
+ vault_addr : https://vault.silversurfer.planetscale.net
79
+ - ecr#v2.7.0:
62
80
login : true
81
+ - docker-login#v2.1.0:
82
+ username : oauth2accesstoken
83
+ password-env : CLOUDSDK_AUTH_ACCESS_TOKEN
84
+ server : https://us-docker.pkg.dev
63
85
- artifacts#v1.5.0:
64
- download : " dist/mysql-*.tar.gz"
65
- - docker-compose#v3.10.0:
86
+ download : dist/mysql-*.tar.gz
87
+ - docker-compose#v4.12.0:
88
+ cli-version : " 2" # Use 'docker compose' and BuildKit
66
89
run : release
67
90
push :
68
- - " release:${REGISTRY}/main/${IMAGE_NAME}:${CONTAINER_SEMVER}-ps-${CONTAINER_SHORT_SHA}"
69
- - " release:${REGISTRY}/main/${IMAGE_NAME}:${MAIN_BRANCH}-latest"
91
+ - release:${AWS_REGISTRY}/main/${IMAGE_NAME}:${CONTAINER_SEMVER}-ps-${CONTAINER_SHORT_SHA}
92
+ - release:${GCP_REGISTRY}/prod/${IMAGE_NAME}:${CONTAINER_SEMVER}-ps-${CONTAINER_SHORT_SHA}
93
+ - release:${AWS_REGISTRY}/main/${IMAGE_NAME}:${MAIN_BRANCH}-latest
94
+ - release:${GCP_REGISTRY}/prod/${IMAGE_NAME}:${MAIN_BRANCH}-latest
0 commit comments