add actions
All checks were successful
Build and Push Multi-Arch Docker Image / build-and-push (push) Successful in 17m43s

Signed-off-by: Peter Siegmund <developer@mars3142.org>
This commit is contained in:
2025-12-18 22:54:48 +01:00
parent 42157c4abc
commit 8579066a1e
4 changed files with 52 additions and 51 deletions

View File

@@ -0,0 +1,51 @@
name: Build and Push Multi-Arch Docker Image
on:
push:
branches:
- main
jobs:
build-and-push:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Set Registry Domain
run: |
REGISTRY_DOMAIN=$(echo "${{ github.server_url }}" | sed 's|https://||' | sed 's|http://||')
echo "REGISTRY_DOMAIN=$REGISTRY_DOMAIN" >> $GITHUB_ENV
- name: Login to Gitea Registry
uses: docker/login-action@v2
with:
registry: ${{ env.REGISTRY_DOMAIN }}
username: ${{ secrets.REGISTRY_USER }}
password: ${{ secrets.REGISTRY_PASSWORD }}
- name: Set up JDK
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- name: Extract Version
run: |
VERSION=$(grep -m1 '<version>' pom.xml | sed -E 's/.*<version>([^<]+)<\/version>.*/\1/')
echo "VERSION=$VERSION" >> $GITHUB_ENV
echo "MAJOR=$(echo $VERSION | cut -d. -f1)" >> $GITHUB_ENV
echo "MAJOR_MINOR=$(echo $VERSION | cut -d. -f1,2)" >> $GITHUB_ENV
- name: Build and Push Multi-Arch Image
run: |
docker buildx build \
--platform linux/amd64,linux/arm64 \
-t ${{ env.REGISTRY_DOMAIN }}/${{ github.repository }}:latest \
-t ${{ env.REGISTRY_DOMAIN }}/${{ github.repository }}:${{ env.MAJOR }} \
-t ${{ env.REGISTRY_DOMAIN }}/${{ github.repository }}:${{ env.MAJOR_MINOR }} \
-t ${{ env.REGISTRY_DOMAIN }}/${{ github.repository }}:${{ env.VERSION }} \
--push .

View File

@@ -1,11 +0,0 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
- package-ecosystem: "maven"
directory: "/"
schedule:
interval: "weekly"

View File

@@ -1,39 +0,0 @@
---
name: 'deploy to hetzner'
on:
push:
branches:
- main
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Cloning repo
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'temurin'
cache: maven
- name: Build and test with Maven
run: mvn --batch-mode --update-snapshots verify
- name: Push to dokku
timeout-minutes: 20
uses: dokku/github-action@v1
with:
branch: main
git_remote_url: ${{ secrets.HETZNER_GIT_URI }}
ssh_private_key: ${{ secrets.SSH_PRIVATE_KEY }}
git_push_flags: --force

View File

@@ -7,7 +7,7 @@
<groupId>dev.mars3142.fhq</groupId> <groupId>dev.mars3142.fhq</groupId>
<artifactId>website</artifactId> <artifactId>website</artifactId>
<name>website</name> <name>website</name>
<version>1.0-SNAPSHOT</version> <version>0.1.0-SNAPSHOT</version>
<packaging>jar</packaging> <packaging>jar</packaging>
<properties> <properties>