Publish version tags from Forgejo
This commit is contained in:
parent
bf6360b222
commit
28fb445eaf
2 changed files with 7 additions and 2 deletions
|
|
@ -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
|
||||||
|
|
|
||||||
|
|
@ -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`
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue