✨ feat: make docker-push workflow self-contained by computing deps_hash internally
This commit is contained in:
@@ -323,5 +323,5 @@ jobs:
|
||||
-H "Authorization: token ${{ secrets.GITEA_TOKEN || secrets.PACKAGES_TOKEN }}" \
|
||||
-H "Content-Type: application/json" \
|
||||
"${{ env.GITEA_INTERNAL }}api/v1/repos/${{ env.GITEA_ORG }}/${{ env.GITEA_REPO }}/actions/workflows/docker-push.yaml/dispatches" \
|
||||
-d '{"ref":"${{ github.ref }}","inputs":{"deps_hash":"${{ needs.build-cache.outputs.deps_hash }}","ref":"${{ github.ref }}"}}'
|
||||
-d '{"ref":"${{ github.ref }}"}'
|
||||
echo "✅ Docker Push workflow triggered successfully!"
|
||||
|
||||
@@ -6,13 +6,9 @@
|
||||
name: Docker Push
|
||||
|
||||
on:
|
||||
# Manual trigger only - no automatic triggers
|
||||
# Manual trigger for testing or production
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
deps_hash:
|
||||
description: 'Dependency hash from build-cache job'
|
||||
required: true
|
||||
type: string
|
||||
ref:
|
||||
description: 'Git reference (branch/tag)'
|
||||
required: false
|
||||
@@ -45,13 +41,21 @@ jobs:
|
||||
username: ${{ github.actor }}
|
||||
password: ${{ secrets.PACKAGES_TOKEN }}
|
||||
|
||||
- name: Calculate dependency hash
|
||||
id: calc_hash
|
||||
run: |
|
||||
# Calculate dependency hash (same method as build-cache job)
|
||||
DEPS_HASH=$(sha256sum go.mod go.sum docker/Dockerfile.build | sha256sum | cut -d' ' -f1 | head -c 12)
|
||||
echo "Dependency hash: $DEPS_HASH"
|
||||
echo "deps_hash=$DEPS_HASH" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Build and push Docker image
|
||||
run: |
|
||||
source VERSION
|
||||
IMAGE_VERSION="$MAJOR.$MINOR.$PATCH${PRERELEASE:+-$PRERELEASE}"
|
||||
|
||||
# Use the provided dependency hash
|
||||
DEPS_HASH="${{ github.event.inputs.deps_hash }}"
|
||||
# Use the calculated dependency hash
|
||||
DEPS_HASH="${{ steps.calc_hash.outputs.deps_hash }}"
|
||||
echo "Using dependency hash: $DEPS_HASH"
|
||||
|
||||
# Create Dockerfile.prod from template
|
||||
|
||||
Reference in New Issue
Block a user