alpine-php8-webserver/.forgejo/workflows/build.yml
holzi1005 8ed1b9a778
All checks were successful
docker-build / release (push) Successful in 5s
docker-build / webserver (push) Successful in 8s
docker-build / cron (push) Successful in 13s
Update .forgejo/workflows/build.yml
2025-06-22 11:45:31 +02:00

97 lines
2.8 KiB
YAML

name: docker-build
on:
push:
branches:
- main
permissions: write-all
jobs:
release:
runs-on: docker
outputs:
version: ${{ steps.version.outputs.version }}
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Define next tag
uses: https://github.com/paulhatch/semantic-version@v5.0.2
id: version
with:
tag_prefix: ""
major_pattern: "(MAJOR)"
minor_pattern: "(MINOR)"
change_path: .
version_format: "${major}.${minor}.${patch}"
- name: Create tag
run: |
git config --global user.name "${GITHUB_ACTOR}"
git config --global user.email "${GITHUB_ACTOR}@users.noreply.github.com"
git tag "${{ steps.version.outputs.version }}" -m "[forgejo-action-tag]"
git push origin --tags
webserver:
runs-on: host
needs:
- release
steps:
- name: Checkout Repository
uses: actions/checkout@v4
with:
github-server-url: https://git.h2-invent.com
repository: Public-System-Design/alpine-php8-webserver
ref: main
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
registry: git.h2-invent.com
username: ${{ secrets.FORGEJO_ACTION_PACKAGE_RW_USER }}
password: ${{ secrets.FORGEJO_ACTION_PACKAGE_RW_KEY }}
- name: Build and push
uses: docker/build-push-action@v6
with:
push: true
tags: |
git.h2-invent.com/public-system-design/alpine-php8-webserver:${{ needs.release.outputs.version }}
git.h2-invent.com/public-system-design/alpine-php8-webserver:latest
cron:
runs-on: host
needs:
- release
- webserver
steps:
- name: Checkout Repository
uses: actions/checkout@v4
with:
github-server-url: https://git.h2-invent.com
repository: Public-System-Design/alpine-php8-cron-webserver
ref: main
path: alpine-php8-cron-webserver
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
registry: git.h2-invent.com
username: ${{ secrets.FORGEJO_ACTION_PACKAGE_RW_USER }}
password: ${{ secrets.FORGEJO_ACTION_PACKAGE_RW_KEY }}
- name: Build and push
uses: docker/build-push-action@v6
with:
context: ./alpine-php8-cron-webserver
push: true
tags: |
git.h2-invent.com/public-system-design/alpine-php8-cron-webserver:${{ needs.release.outputs.version }}
git.h2-invent.com/public-system-design/alpine-php8-cron-webserver:latest
build-args: |
VERSION=${{ needs.release.outputs.version }}