change: Push to ghcr.io

This commit is contained in:
2025-10-03 15:40:52 +02:00
parent 0549fe78d4
commit 33c3a21e44
2 changed files with 17 additions and 12 deletions
+16 -11
View File
@@ -38,21 +38,21 @@ jobs:
if: github.event_name == 'push'
run: gradle -Prelease.useLastTag=true final jib
env:
USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
PASSWORD: ${{ secrets.DOCKERHUB_PASSWORD }}
USERNAME: ${{ github.actor }}
PASSWORD: ${{ GITHUB_TOKEN }}
- name: Create and publish docker image
if: github.event_name == 'pull_request'
run: gradle snapshot jib
env:
USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
PASSWORD: ${{ secrets.DOCKERHUB_PASSWORD }}
USERNAME: ${{ github.actor }}
PASSWORD: ${{ GITHUB_TOKEN }}
- name: Extract Jib digest
id: digest
run: |
DIGEST_FILE=${{ github.workspace }}/module-deploy/build/jib-image.digest
INDEX_DIGEST=$(cat $DIGEST_FILE)
echo "digest=$INDEX_DIGEST" >> $GITHUB_OUTPUT
ARCH_DIGESTS=$(docker manifest inspect 2martens/timetable@$INDEX_DIGEST | jq -r '.manifests[].digest')
ARCH_DIGESTS=$(docker manifest inspect ghcr.io/2martens/timetable@$INDEX_DIGEST | jq -r '.manifests[].digest')
n=0
for d in $ARCH_DIGESTS; do
echo "arch${n}=$d" >> $GITHUB_OUTPUT
@@ -61,23 +61,28 @@ jobs:
- name: Perform docker login
uses: docker/login-action@v3
with:
registry: docker.io
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ GITHUB_TOKEN }}
- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@v5
with:
images: ghcr.io/2martens/timetable
- uses: anchore/sbom-action@v0
with:
image: docker.io/2martens/timetable
image: ghcr.io/2martens/timetable
output-file: sbom.json
- name: Attest
uses: actions/attest-build-provenance@v3
with:
subject-name: index.docker.io/2martens/timetable
subject-name: ghcr.io/2martens/timetable
subject-digest: ${{ steps.digest.outputs.digest }}
push-to-registry: true
- name: Generate SBOM attestation
uses: actions/attest-sbom@v2
with:
subject-name: index.docker.io/2martens/timetable
subject-name: ghcr.io/2martens/timetable
subject-digest: ${{ steps.digest.outputs.digest }}
sbom-path: 'sbom.json'
push-to-registry: true