name: Build and Release JAR on: push: branches: - '**' paths-ignore: - 'README.md' jobs: build-and-release: runs-on: ubuntu-latest permissions: contents: write # Required for creating releases steps: - name: Checkout source code uses: actions/checkout@v4 - name: Set up JDK 17 uses: actions/setup-java@v4 with: java-version: '17' distribution: 'temurin' - name: Build with Maven run: mvn package -DskipTests - name: Get version from pom.xml id: get_version run: | version=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout) echo "version=$version" >> $GITHUB_OUTPUT - name: Create GitHub Release id: create_release uses: softprops/action-gh-release@v2 with: tag_name: v${{ steps.get_version.outputs.version }} name: Release v${{ steps.get_version.outputs.version }} generate_release_notes: true - name: Upload JAR to release uses: softprops/action-gh-release@v2 with: files: target/*.jar