Publish version tags from Forgejo
Some checks failed
deploy-hugo-site.yml / Publish version tags from Forgejo (push) Failing after 0s
Publish Hugo Deployment Image / publish (push) Failing after 5s

This commit is contained in:
Neil Borromeo 2026-04-19 13:16:15 +08:00
commit 28fb445eaf
2 changed files with 7 additions and 2 deletions

View file

@ -4,6 +4,8 @@ on:
push: push:
branches: branches:
- main - main
tags:
- 'v*'
workflow_dispatch: workflow_dispatch:
inputs: inputs:
image_tag: image_tag:
@ -25,10 +27,12 @@ jobs:
runs-on: docker-desktop runs-on: docker-desktop
env: env:
EVENT_NAME: ${{ forgejo.event_name }} EVENT_NAME: ${{ forgejo.event_name }}
REF_TYPE: ${{ forgejo.ref_type }}
REF_NAME: ${{ forgejo.ref_name }}
REGISTRY_HOST: ${{ vars.REGISTRY_HOST }} REGISTRY_HOST: ${{ vars.REGISTRY_HOST }}
REGISTRY_USERNAME: ${{ vars.REGISTRY_USERNAME }} REGISTRY_USERNAME: ${{ vars.REGISTRY_USERNAME }}
IMAGE_REPO: cliper/hugo-deployment IMAGE_REPO: cliper/hugo-deployment
IMAGE_TAG: ${{ inputs.image_tag != '' && inputs.image_tag || forgejo.sha }} IMAGE_TAG: ${{ inputs.image_tag != '' && inputs.image_tag || (forgejo.ref_type == 'tag' && forgejo.ref_name || forgejo.sha) }}
PUBLISH_LATEST: ${{ inputs.publish_latest }} PUBLISH_LATEST: ${{ inputs.publish_latest }}
steps: steps:
- name: Checkout repository - name: Checkout repository
@ -70,6 +74,6 @@ jobs:
run: | run: |
set -euo pipefail set -euo pipefail
docker push "${REGISTRY_HOST}/${IMAGE_REPO}:${IMAGE_TAG}" docker push "${REGISTRY_HOST}/${IMAGE_REPO}:${IMAGE_TAG}"
if [ "${EVENT_NAME:-}" = "push" ] || [ "${PUBLISH_LATEST:-false}" = "true" ]; then if { [ "${EVENT_NAME:-}" = "push" ] && [ "${REF_TYPE:-}" = "branch" ] && [ "${REF_NAME:-}" = "main" ]; } || [ "${PUBLISH_LATEST:-false}" = "true" ]; then
docker push "${REGISTRY_HOST}/${IMAGE_REPO}:latest" docker push "${REGISTRY_HOST}/${IMAGE_REPO}:latest"
fi fi

View file

@ -29,6 +29,7 @@ Shared Forgejo deployment image scaffold for Develton-managed Hugo sites.
The publish workflow runs on `docker-desktop` and publishes the versioned tag on every run. The publish workflow runs on `docker-desktop` and publishes the versioned tag on every run.
- Pushes to `main` publish `registry.develton.com/cliper/hugo-deployment:<commit-sha>` and also move `latest` - Pushes to `main` publish `registry.develton.com/cliper/hugo-deployment:<commit-sha>` and also move `latest`
- Pushes of Git tags like `v1` publish the matching image tag without moving `latest`
- Manual runs can override the tag with `image_tag` - Manual runs can override the tag with `image_tag`
- Manual runs do not move `latest` unless `publish_latest` is set to `true` - Manual runs do not move `latest` unless `publish_latest` is set to `true`