Skip to content

Commit aa15274

Browse files
committed
ci: move manifest generation to just
1 parent 20ffc9c commit aa15274

2 files changed

Lines changed: 24 additions & 12 deletions

File tree

.github/workflows/build-images-manifests.yml

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -60,13 +60,9 @@ jobs:
6060
- name: Set up Docker Buildx
6161
uses: docker/setup-buildx-action@v3
6262

63+
- uses: ./.github/actions/setup-nix
64+
6365
- name: Create all multi-platform manifests
6466
run: |
65-
IMAGES=("presidio-anonymizer" "presidio-analyzer")
66-
67-
for image in "${IMAGES[@]}"; do
68-
echo "Creating manifest for $image"
69-
docker buildx imagetools create \
70-
--tag ${{ env.REGISTRY_NAME }}/${{ env.USERNAME }}/${image}:${{ env.TAG }} \
71-
${{ env.REGISTRY_NAME }}/${{ env.USERNAME }}/${image}:${{ env.TAG }}-linux-amd64
72-
done
67+
nix develop --no-pure-eval --accept-flake-config "./tools/nix#ci" --command \
68+
just image::create-manifests ${{ env.TAG }}

tools/just/image.just

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ set positional-arguments
33
set shell := ["bash", "-cue"]
44
ctr := "docker"
55
registry := "ghcr.io/sdsc-ordes/deid-module"
6+
platforms := "linux/amd64"
7+
images := "presidio-anonymizer presidio-analyzer"
68

79
# Default recipe to list all recipes.
810
[private]
@@ -13,11 +15,9 @@ default:
1315
build tag="latest" *args:
1416
#!/usr/bin/env bash
1517

16-
PLATFORMS=("linux/amd64")
17-
IMAGES=("presidio-anonymizer" "presidio-analyzer")
1818
cd {{root_dir}}/external/repos/presidio
19-
for image in ${IMAGES[@]}; do
20-
for platform in ${PLATFORMS[@]}; do
19+
for image in {{images}}; do
20+
for platform in {{platforms}}; do
2121

2222
# Create platform-specific tag
2323
PLATFORM_TAG=$(echo "${platform}" | sed 's/\//-/g')
@@ -29,3 +29,19 @@ build tag="latest" *args:
2929

3030
done
3131
done
32+
33+
34+
# Create multi-platform manifests
35+
create-manifests: tag=latest
36+
#!/usr/bin/env bash
37+
38+
cd {{root_dir}}/external/repos/presidio
39+
for image in {{images}}; do
40+
for platform in {{platforms}}; do
41+
42+
echo "Creating manifest for $image"
43+
PLATFORM_TAG=$(echo "${platform}" | sed 's/\//-/g')
44+
docker buildx imagetools create \
45+
--tag "{{registry}}/${image}:${{tag}}" \
46+
"{{registry}}/${image}:{{tag}}-${PLATFORM_TAG}"
47+
done

0 commit comments

Comments
 (0)