@@ -5,12 +5,12 @@ variables:
5
5
QUAY_REGISTRY_URL : " quay.io"
6
6
PACKAGE_REGISTRY_URL : " ${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/rockpass/${CI_COMMIT_TAG}"
7
7
ARTIFACTS_AMD64_GLIBC : rockpass-${CI_COMMIT_REF_NAME}-${CI_COMMIT_SHA}-linux-amd64-glibc
8
- ARTIFACTS_AMD64_MUSL : rockpass-${CI_COMMIT_REF_NAME}-${CI_COMMIT_SHA}-linux-amd64-musl
8
+ ARTIFACTS_AMD64_STATIC : rockpass-${CI_COMMIT_REF_NAME}-${CI_COMMIT_SHA}-linux-amd64-static
9
9
ARTIFACTS_ARM64 : rockpass-${CI_COMMIT_REF_NAME}-${CI_COMMIT_SHA}-linux-arm64
10
10
PACKAGE_NAME_AMD64_GLIBC : rockpass-${CI_COMMIT_TAG}-linux-amd64-glibc.tar.xz
11
11
PACKAGE_PATH_AMD64_GLIBC : rockpass-${CI_COMMIT_TAG}-linux-amd64-glibc
12
- PACKAGE_NAME_AMD64_MUSL : rockpass-${CI_COMMIT_TAG}-linux-amd64-musl .tar.xz
13
- PACKAGE_PATH_AMD64_MUSL : rockpass-${CI_COMMIT_TAG}-linux-amd64-musl
12
+ PACKAGE_NAME_AMD64_STATIC : rockpass-${CI_COMMIT_TAG}-linux-amd64-static .tar.xz
13
+ PACKAGE_PATH_AMD64_STATIC : rockpass-${CI_COMMIT_TAG}-linux-amd64-static
14
14
PACKAGE_NAME_ARM64 : rockpass-${CI_COMMIT_TAG}-linux-arm64.tar.xz
15
15
PACKAGE_PATH_ARM64 : rockpass-${CI_COMMIT_TAG}-linux-arm64
16
16
@@ -25,7 +25,7 @@ stages:
25
25
26
26
Test AMD64 glibc :
27
27
stage : Test
28
- image : rust:buster
28
+ image : rust:bookworm
29
29
script :
30
30
- cargo test
31
31
cache :
@@ -35,7 +35,7 @@ Test AMD64 glibc:
35
35
36
36
Build AMD64 glibc :
37
37
stage : Build
38
- image : rust:buster
38
+ image : rust:bookworm
39
39
script :
40
40
- cargo build --release --locked
41
41
artifacts :
@@ -47,20 +47,18 @@ Build AMD64 glibc:
47
47
paths :
48
48
- target
49
49
50
- Build AMD64 musl :
50
+ Build AMD64 static :
51
51
stage : Build
52
52
image : rust:alpine
53
- variables :
54
- RUSTFLAGS : -Ctarget-feature=-crt-static
55
53
script :
56
- - apk -U --no-progress add libc -dev sqlite-dev
54
+ - apk -U --no-progress add musl -dev sqlite-dev sqlite-static
57
55
- cargo build --release --locked
58
56
artifacts :
59
- name : ${ARTIFACTS_AMD64_MUSL }
57
+ name : ${ARTIFACTS_AMD64_STATIC }
60
58
paths :
61
59
- target/release/rockpass
62
60
cache :
63
- key : ${CI_COMMIT_REF_SLUG}-amd64-musl
61
+ key : ${CI_COMMIT_REF_SLUG}-amd64-static
64
62
paths :
65
63
- target
66
64
@@ -99,19 +97,19 @@ Archive AMD64 glibc:
99
97
rules :
100
98
- if : $CI_COMMIT_TAG == null && $CI_PIPELINE_SOURCE != "merge_request_event"
101
99
102
- Archive AMD64 musl :
100
+ Archive AMD64 static :
103
101
stage : Archive
104
102
script :
105
- - install -Dm755 "target/release/rockpass" "${ARTIFACTS_AMD64_MUSL }/rockpass"
106
- - install -Dm644 "rockpass.toml.example" "${ARTIFACTS_AMD64_MUSL }/rockpass.toml.example"
107
- - install -Dm644 "README.md" "${ARTIFACTS_AMD64_MUSL }/README.md"
108
- - install -Dm644 "LICENSE" "${ARTIFACTS_AMD64_MUSL }/LICENSE"
103
+ - install -Dm755 "target/release/rockpass" "${ARTIFACTS_AMD64_STATIC }/rockpass"
104
+ - install -Dm644 "rockpass.toml.example" "${ARTIFACTS_AMD64_STATIC }/rockpass.toml.example"
105
+ - install -Dm644 "README.md" "${ARTIFACTS_AMD64_STATIC }/README.md"
106
+ - install -Dm644 "LICENSE" "${ARTIFACTS_AMD64_STATIC }/LICENSE"
109
107
artifacts :
110
- name : ${ARTIFACTS_AMD64_MUSL }
108
+ name : ${ARTIFACTS_AMD64_STATIC }
111
109
paths :
112
- - ${ARTIFACTS_AMD64_MUSL }/
110
+ - ${ARTIFACTS_AMD64_STATIC }/
113
111
needs :
114
- - Build AMD64 musl
112
+ - Build AMD64 static
115
113
rules :
116
114
- if : $CI_COMMIT_TAG == null && $CI_PIPELINE_SOURCE != "merge_request_event"
117
115
@@ -149,21 +147,21 @@ Package AMD64 glibc:
149
147
rules :
150
148
- if : $CI_COMMIT_TAG && $CI_PROJECT_ID == "43241571"
151
149
152
- Package AMD64 musl :
150
+ Package AMD64 static :
153
151
stage : Package
154
152
script :
155
153
- apk -U --no-progress add xz
156
- - install -Dm755 "target/release/rockpass" "${PACKAGE_PATH_AMD64_MUSL }/rockpass"
157
- - install -Dm644 "rockpass.toml.example" "${PACKAGE_PATH_AMD64_MUSL }/rockpass.toml.example"
158
- - install -Dm644 "README.md" "${PACKAGE_PATH_AMD64_MUSL }/README.md"
159
- - install -Dm644 "LICENSE" "${PACKAGE_PATH_AMD64_MUSL }/LICENSE"
160
- - tar cvJf "${PACKAGE_NAME_AMD64_MUSL }" "${PACKAGE_PATH_AMD64_MUSL }"
154
+ - install -Dm755 "target/release/rockpass" "${PACKAGE_PATH_AMD64_STATIC }/rockpass"
155
+ - install -Dm644 "rockpass.toml.example" "${PACKAGE_PATH_AMD64_STATIC }/rockpass.toml.example"
156
+ - install -Dm644 "README.md" "${PACKAGE_PATH_AMD64_STATIC }/README.md"
157
+ - install -Dm644 "LICENSE" "${PACKAGE_PATH_AMD64_STATIC }/LICENSE"
158
+ - tar cvJf "${PACKAGE_NAME_AMD64_STATIC }" "${PACKAGE_PATH_AMD64_STATIC }"
161
159
artifacts :
162
- name : ${ARTIFACTS_AMD64_MUSL }
160
+ name : ${ARTIFACTS_AMD64_STATIC }
163
161
paths :
164
- - ${PACKAGE_NAME_AMD64_MUSL }
162
+ - ${PACKAGE_NAME_AMD64_STATIC }
165
163
needs :
166
- - Build AMD64 musl
164
+ - Build AMD64 static
167
165
rules :
168
166
- if : $CI_COMMIT_TAG && $CI_PROJECT_ID == "43241571"
169
167
@@ -203,7 +201,7 @@ Build and publish branch Docker image:
203
201
rules :
204
202
- if : $CI_COMMIT_TAG == null && $CI_PROJECT_ID == "43241571" && $CI_PIPELINE_SOURCE != "merge_request_event" && $CI_COMMIT_REF_PROTECTED == "true"
205
203
needs :
206
- - Build AMD64 musl
204
+ - Build AMD64 static
207
205
208
206
Build and publish release Docker image :
209
207
stage : Docker
@@ -248,7 +246,7 @@ Build and publish release Docker image:
248
246
rules :
249
247
- if : $CI_COMMIT_TAG && $CI_PROJECT_ID == "43241571"
250
248
needs :
251
- - Build AMD64 musl
249
+ - Build AMD64 static
252
250
253
251
Publish release :
254
252
stage : Publish
@@ -257,7 +255,7 @@ Publish release:
257
255
- |
258
256
curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file ${PACKAGE_NAME_AMD64_GLIBC} "${PACKAGE_REGISTRY_URL}/${PACKAGE_NAME_AMD64_GLIBC}"
259
257
- |
260
- curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file ${PACKAGE_NAME_AMD64_MUSL } "${PACKAGE_REGISTRY_URL}/${PACKAGE_NAME_AMD64_MUSL }"
258
+ curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file ${PACKAGE_NAME_AMD64_STATIC } "${PACKAGE_REGISTRY_URL}/${PACKAGE_NAME_AMD64_STATIC }"
261
259
- |
262
260
curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" --upload-file ${PACKAGE_NAME_ARM64} "${PACKAGE_REGISTRY_URL}/${PACKAGE_NAME_ARM64}"
263
261
rules :
@@ -269,7 +267,7 @@ Release:
269
267
script : |
270
268
release-cli create --name "Release ${CI_COMMIT_TAG}" --tag-name ${CI_COMMIT_TAG} \
271
269
--assets-link "{\"name\":\"${PACKAGE_NAME_AMD64_GLIBC}\",\"url\":\"${PACKAGE_REGISTRY_URL}/${PACKAGE_NAME_AMD64_GLIBC}\"}" \
272
- --assets-link "{\"name\":\"${PACKAGE_NAME_AMD64_MUSL }\",\"url\":\"${PACKAGE_REGISTRY_URL}/${PACKAGE_NAME_AMD64_MUSL }\"}" \
270
+ --assets-link "{\"name\":\"${PACKAGE_NAME_AMD64_STATIC }\",\"url\":\"${PACKAGE_REGISTRY_URL}/${PACKAGE_NAME_AMD64_STATIC }\"}" \
273
271
--assets-link "{\"name\":\"${PACKAGE_NAME_ARM64}\",\"url\":\"${PACKAGE_REGISTRY_URL}/${PACKAGE_NAME_ARM64}\"}"
274
272
rules :
275
273
- if : $CI_COMMIT_TAG && $CI_PROJECT_ID == "43241571"
0 commit comments