Skip to content

build fixes

build fixes #3

Workflow file for this run

name: Build and Test
on:
push:
branches: [ master, develop ]
pull_request:
branches: [ master ]
# Add permissions for test reporting
permissions:
contents: read
checks: write
pull-requests: write
jobs:
test:
name: Test on Java 21
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'temurin'
- name: Setup Gradle
uses: gradle/gradle-build-action@v2
with:
gradle-version: wrapper
- name: Run tests
run: ./gradlew test --no-daemon
- name: Publish Test Results
uses: EnricoMi/publish-unit-test-result-action@v2
if: always()
with:
files: |
build/test-results/test/*.xml
check_name: "Test Results (Java 21)"
comment_title: "Test Results (Java 21)"
- name: Upload test results
uses: actions/upload-artifact@v4
if: always()
with:
name: test-results-java-21
path: |
build/reports/tests/
build/test-results/
build:
name: Build Application
runs-on: ubuntu-latest
needs: test
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'temurin'
- name: Setup Gradle
uses: gradle/gradle-build-action@v2
with:
gradle-version: wrapper
- name: Build application
run: ./gradlew build --no-daemon
- name: Upload build artifacts
uses: actions/upload-artifact@v4
with:
name: build-artifacts
path: |
build/libs/*.jar
build/distributions/*
# Only run on master branch pushes
release:
name: Create Release
runs-on: ubuntu-latest
needs: [test, build]
if: github.ref == 'refs/heads/master' && github.event_name == 'push'
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'temurin'
- name: Setup Gradle
uses: gradle/gradle-build-action@v2
with:
gradle-version: wrapper
- name: Build release
run: ./gradlew build --no-daemon
- name: Get version
id: version
run: echo "VERSION=$(date +'%Y.%m.%d')-${{ github.run_number }}" >> $GITHUB_OUTPUT
- name: Create Release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: v${{ steps.version.outputs.VERSION }}
release_name: Release v${{ steps.version.outputs.VERSION }}
body: |
Automated release from main branch
Changes in this release:
${{ github.event.head_commit.message }}
draft: false
prerelease: false