ci: use skopeo
Build a docker image. / build-docker-image (push) Failing after 2m22s

This commit is contained in:
2026-09-04 15:25:19 +02:00
parent 6427233d9b
commit 5d6ab3a11b
+30 -19
View File
@@ -1,6 +1,7 @@
name: Build a docker image.
on: [push]
on:
push:
jobs:
build-docker-image:
@@ -10,25 +11,35 @@ jobs:
- name: Check out repository code
uses: actions/checkout@v4
- name: Build flake
run: nix build .#docker
- name: Load Docker image
run: docker load < result
- name: Login to local Gitea registry
- name: Build image
run: |
echo "${{ secrets.GITEA_TOKEN }}" | \
docker login ${{ gitea.server_url }} \
--username "${{ gitea.actor }}" \
--password-stdin
- name: Tag image
run: |
docker tag my-image:latest \
${{ gitea.server_url }}/${{ gitea.repository }}:latest
nix build .#docker
- name: Push image
env:
REGISTRY: "${{ gitea.server_url }}"
REPOSITORY: "${{ gitea.repository }}"
USERNAME: "${{ gitea.actor }}"
PASSWORD: "${{ secrets.GITEA_TOKEN }}"
TAG: "${{ gitea.sha }}"
run: |
docker push \
${{ gitea.server_url }}/${{ gitea.repository }}:latest
REGISTRY="${REGISTRY#https://}"
REGISTRY="${REGISTRY#http://}"
REGISTRY="${REGISTRY%/}"
IMAGE="${REGISTRY}/${REPOSITORY}:${TAG}"
echo "Pushing ${IMAGE}"
skopeo copy \
--dest-creds "${USERNAME}:${PASSWORD}" \
"docker-archive:result" \
"docker://${IMAGE}"
# Also update latest
if [ "${GITEA_REF_TYPE}" = "branch" ] && [ "${GITEA_REF_NAME}" = "main" ]; then
skopeo copy \
--dest-creds "${USERNAME}:${PASSWORD}" \
"docker-archive:result" \
"docker://${REGISTRY}/${REPOSITORY}:latest"
fi