fix annotations

This commit is contained in:
Jason Swank
2026-01-10 13:58:30 +00:00
parent c7ebf79dc3
commit ea2cb2a7ae
3 changed files with 12 additions and 28 deletions

View File

@@ -1,11 +1,5 @@
FROM docker.io/library/alpine:3 FROM docker.io/library/alpine:3
LABEL org.opencontainers.image.title=jswank/alpine-cli \
org.opencontainers.image.description="A minimal image for running Linux CLI utilities" \
org.opencontainers.image.url=https://git.sr.ht/~jswank/alpine-cli \
org.opencontainers.image.authors="Jason Swank" \
org.opencontainers.image.licenses=MIT
RUN apk --no-cache update RUN apk --no-cache update
RUN apk -U --no-cache add \ RUN apk -U --no-cache add \

View File

@@ -18,7 +18,18 @@ tasks:
- (podman manifest exists {{.IMAGE}}:{{.TAG}} && podman manifest rm {{.IMAGE}}:{{.TAG}}) || true - (podman manifest exists {{.IMAGE}}:{{.TAG}} && podman manifest rm {{.IMAGE}}:{{.TAG}}) || true
- podman manifest create {{.IMAGE}}:{{.TAG}} - podman manifest create {{.IMAGE}}:{{.TAG}}
- podman build {{.CLI_ARGS}} --platform linux/amd64,linux/arm64 --manifest {{.IMAGE}}:{{.TAG}} {{.CLI_ARGS}} -f Dockerfile ctx - podman build {{.CLI_ARGS}} --platform linux/amd64,linux/arm64 --manifest {{.IMAGE}}:{{.TAG}} {{.CLI_ARGS}} -f Dockerfile ctx
- |
# get digests like:
# podman manifest inspect {{.IMAGE}}:{{.TAG}} | jq -r '.manifests[].digest'
DIGESTS=$(podman manifest inspect {{.IMAGE}}:{{.TAG}} | jq -r '.manifests[].digest')
for DIGEST in $DIGESTS; do
echo "Annotating digest: $DIGEST"
podman manifest annotate \
--annotation org.opencontainers.image.description="A minimal image for running Linux CLI utilities" \
--annotation org.opencontainers.image.url=https://git.sr.ht/~jswank/alpine-cli \
--annotation org.opencontainers.image.title=jswank/alpine-cli \
{{.IMAGE}}:{{.TAG}} $DIGEST
done
publish: publish:
desc: publish the image with the default tag, 'current', and 'latest' desc: publish the image with the default tag, 'current', and 'latest'
cmds: cmds:

View File

@@ -1,21 +0,0 @@
set dotenv-load
tag := `grep ^FROM Dockerfile | cut -d: -f2`
image := "jswank/alpine-cli"
registry := "ghcr.io"
registry_user := "jswank"
# this environment variable will be passed to podman login as the password
registry_pass_var := "REGISTRY_PASSWORD"
# build a new image
build flags="":
podman build -t {{image}}:{{tag}} {{flags}} -f Dockerfile ctx
# publish the image
publish alt_tag=tag:
@ podman tag {{image}}:{{tag}} {{registry}}/{{image}}:{{alt_tag}}
@ echo "${{ registry_pass_var }}" | podman login {{registry}} -u {{registry_user}} --password-stdin
@ podman push {{registry}}/{{image}}:{{alt_tag}}
@ podman logout {{registry}}