Skip to content

Commit

Permalink
Build: Use Github runners to build and sign container images on new tags
Browse files Browse the repository at this point in the history
  • Loading branch information
almet committed Nov 27, 2024
1 parent c899886 commit b123343
Showing 1 changed file with 49 additions and 0 deletions.
49 changes: 49 additions & 0 deletions .github/workflows/release-container-image.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# This action listens on new tags, generates a new container image
# sign it and upload it to the container registry.

name: Publish container image
on:
push:
tags:
- "container-image/**"
branches:
- "test/image-**"
workflow_dispatch:

permissions:
id-token: write
contents: read
attestations: write
packages: write

env:
IMAGE_REGISTRY: ghcr.io/${{ github.repository_owner }}
REGISTRY_USER: ${{ github.actor }}
REGISTRY_PASSWORD: ${{ github.token }}
IMAGE_NAME: dangerzone/dangerzone

jobs:
build-container-image:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- name: Build and push the dangerzone image
id: build-image
run: |
sudo apt-get install -y python3-poetry
python3 ./install/common/build-image.py
echo ${{ github.token }} | podman login ghcr.io -u USERNAME --password-stdin
gunzip -c share/container.tar.gz | podman load
podman push \
dangerzone.rocks/dangerzone \
${{ env.IMAGE_REGISTRY }}/${{ env.IMAGE_NAME }}
DIGEST=$(podman images --filter "id=dangerzone.rocks/dangerzone" --format "{{ .Digest }}")
echo ${DIGEST}
echo "digest=${DIGEST}" >> "$GITHUB_OUTPUT"
- name: Generate artifact attestation
uses: actions/attest-build-provenance@v1
with:
subject-name: ${{ env.IMAGE_REGISTRY }}/${{ env.IMAGE_NAME }}
subject-digest: "${{ steps.build-image.outputs.digest }}"
push-to-registry: true

0 comments on commit b123343

Please sign in to comment.