Automate image building and add some images

This commit is contained in:
2023-08-13 18:42:38 -07:00
parent 6e63b4b4ab
commit 7add07006b
18 changed files with 196 additions and 27 deletions

View File

@@ -1,3 +0,0 @@
FROM alpine:edge
RUN apk add --no-cache go
CMD go

27
golang/apko.yaml Normal file
View File

@@ -0,0 +1,27 @@
contents:
keyring:
- ./pkgs/keyring.rsa.pub
repositories:
- https://dl-cdn.alpinelinux.org/alpine/edge/main
- ./pkgs
packages:
- alpine-base
- go-bin
accounts:
groups:
- groupname: nonroot
gid: 65532
users:
- username: nonroot
uid: 65532
gid: 65532
run-as: 65532
entrypoint:
command: go
archs:
- amd64
- arm64
- riscv64

View File

@@ -1,10 +1,23 @@
#!/bin/bash
if [[ $# == 0 ]]; then
echo "Usage: $0 <arch>"
exit 1
fi
set -e
docker login gitea.elara.ws
docker build . -t "gitea.elara.ws/elara6331/golang:$1" --no-cache
docker push "gitea.elara.ws/elara6331/golang:$1"
lure_cmd="lure --interactive=false build -p default/go-bin"
LURE_ARCH="amd64" $lure_cmd
LURE_ARCH="arm64" $lure_cmd
LURE_ARCH="riscv64" $lure_cmd
mkdir -p pkgs/{x86_64,aarch64,riscv64}
file=(*_x86_64.apk) && mv "$file" "pkgs/x86_64/$(sed -e 's/_x86_64//g' -e 's/_/-/g' <<<$file)"
file=(*_aarch64.apk) && mv "$file" "pkgs/aarch64/$(sed -e 's/_aarch64//g' -e 's/_/-/g' <<<$file)"
file=(*_riscv64.apk) && mv "$file" "pkgs/riscv64/$(sed -e 's/_riscv64//g' -e 's/_/-/g' <<<$file)"
abuild-keygen -na
cp ~/.abuild/*.rsa.pub pkgs/keyring.rsa.pub
for arch in pkgs/*/; do
apk index "$arch"/*.apk > "$arch/APKINDEX.tar.gz"
abuild-sign "$arch/APKINDEX.tar.gz"
done
apko publish --sbom=false apko.yaml gitea.elara.ws/elara6331/golang:latest

View File

@@ -1,11 +0,0 @@
#!/bin/bash
tag="$1"
tag="${tag:=latest}"
docker login gitea.elara.ws
docker manifest create "gitea.elara.ws/elara6331/golang:$tag" \
--amend gitea.elara.ws/elara6331/golang:amd64 \
--amend gitea.elara.ws/elara6331/golang:arm64 \
--amend gitea.elara.ws/elara6331/golang:riscv64
docker manifest push "gitea.elara.ws/elara6331/golang:$tag"