+42
.tangled/workflows/release-arm64.yml
+42
.tangled/workflows/release-arm64.yml
···
1
+
when:
2
+
- event: ["push"]
3
+
branch: ["main"]
4
+
tag: ["v*"]
5
+
6
+
engine: kubernetes
7
+
image: quay.io/buildah/stable:latest
8
+
architecture: arm64
9
+
10
+
environment:
11
+
IMAGE_REGISTRY: atcr.io
12
+
13
+
steps:
14
+
- name: Login to registry
15
+
command: |
16
+
echo "${IMAGE_NAME}"
17
+
printenv
18
+
echo "${APP_PASSWORD}" | buildah login \
19
+
-u "${TANGLED_REPO_HANDLE}" \
20
+
--password-stdin \
21
+
${IMAGE_REGISTRY}
22
+
23
+
- name: Build arm64 image
24
+
command: |
25
+
buildah bud \
26
+
--arch arm64 \
27
+
--build-arg TARGETARCH=arm64 \
28
+
--label org.opencontainers.image.version="${TANGLED_REF_NAME}" \
29
+
--label org.opencontainers.image.created="$(date -u +%Y-%m-%dT%H:%M:%SZ)" \
30
+
--label org.opencontainers.image.revision="${TANGLED_COMMIT_SHA}" \
31
+
--tag ${IMAGE_REGISTRY}/${TANGLED_REPO_HANDLE}/${TANGLED_REPO_NAME}:${TANGLED_REF_NAME}-arm64 \
32
+
--file ./Dockerfile \
33
+
.
34
+
35
+
- name: Create and push manifest
36
+
command: |
37
+
IMAGE_NAME=${IMAGE_REGISTRY}/${TANGLED_REPO_HANDLE}/${TANGLED_REPO_NAME}
38
+
# buildah manifest create ${IMAGE_NAME}:${TANGLED_REF_NAME}
39
+
# buildah manifest add ${IMAGE_NAME}:${TANGLED_REF_NAME} ${IMAGE_NAME}:${TANGLED_REF_NAME}-amd64
40
+
# buildah manifest add ${IMAGE_NAME}:${TANGLED_REF_NAME} ${IMAGE_NAME}:${TANGLED_REF_NAME}-arm64
41
+
buildah manifest push --all ${IMAGE_NAME}:${TANGLED_REF_NAME} docker://${IMAGE_NAME}:${TANGLED_REF_NAME}
42
+
buildah manifest push --all ${IMAGE_NAME}:${TANGLED_REF_NAME} docker://${IMAGE_NAME}:latest
+3
-15
.tangled/workflows/release.yml
.tangled/workflows/release-amd64.yml
+3
-15
.tangled/workflows/release.yml
.tangled/workflows/release-amd64.yml
···
32
32
--file ./Dockerfile \
33
33
.
34
34
35
-
- name: Build arm64 image
36
-
command: |
37
-
buildah bud \
38
-
--arch arm64 \
39
-
--build-arg TARGETARCH=arm64 \
40
-
--label org.opencontainers.image.version="${TANGLED_REF_NAME}" \
41
-
--label org.opencontainers.image.created="$(date -u +%Y-%m-%dT%H:%M:%SZ)" \
42
-
--label org.opencontainers.image.revision="${TANGLED_COMMIT_SHA}" \
43
-
--tag ${IMAGE_REGISTRY}/${TANGLED_REPO_HANDLE}/${TANGLED_REPO_NAME}:${TANGLED_REF_NAME}-arm64 \
44
-
--file ./Dockerfile \
45
-
.
46
-
47
35
- name: Create and push manifest
48
36
command: |
49
37
IMAGE_NAME=${IMAGE_REGISTRY}/${TANGLED_REPO_HANDLE}/${TANGLED_REPO_NAME}
50
-
buildah manifest create ${IMAGE_NAME}:${TANGLED_REF_NAME}
51
-
buildah manifest add ${IMAGE_NAME}:${TANGLED_REF_NAME} ${IMAGE_NAME}:${TANGLED_REF_NAME}-amd64
52
-
buildah manifest add ${IMAGE_NAME}:${TANGLED_REF_NAME} ${IMAGE_NAME}:${TANGLED_REF_NAME}-arm64
38
+
# buildah manifest create ${IMAGE_NAME}:${TANGLED_REF_NAME}
39
+
# buildah manifest add ${IMAGE_NAME}:${TANGLED_REF_NAME} ${IMAGE_NAME}:${TANGLED_REF_NAME}-amd64
40
+
# buildah manifest add ${IMAGE_NAME}:${TANGLED_REF_NAME} ${IMAGE_NAME}:${TANGLED_REF_NAME}-arm64
53
41
buildah manifest push --all ${IMAGE_NAME}:${TANGLED_REF_NAME} docker://${IMAGE_NAME}:${TANGLED_REF_NAME}
54
42
buildah manifest push --all ${IMAGE_NAME}:${TANGLED_REF_NAME} docker://${IMAGE_NAME}:latest