Skip to content
This repository was archived by the owner on Sep 12, 2024. It is now read-only.

Update github actions #9

Update github actions

Update github actions #9

Workflow file for this run

name: Java CI with Maven
on:
push:
branches: [ "master" ]
pull_request:
branches: [ "master" ]
permissions:
contents: read
packages: write
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]
steps:
- uses: actions/checkout@v4
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'temurin'
cache: maven
- name: Build with Maven
run: mvn -B package --file pom.xml
- name: Run tests
run: mvn test
- name: Upload test coverage
uses: actions/upload-artifact@v4
with:
name: jacoco-report
path: target/site/jacoco/
- name: Upload JAR
uses: actions/upload-artifact@v4
with:
name: Package-JDK21-${{ matrix.os }}
path: target/*.jar
- name: Publish to GitHub Packages
env:
GITHUB_TOKEN: ${{ github.token }}
run: mvn deploy
release:
runs-on: ubuntu-latest
needs: build
if: github.ref == 'refs/heads/master'
steps:
- name: Download JAR from build job
uses: actions/download-artifact@v4
with:
name: Package-JDK21-ubuntu-latest
- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
body: |
Changes in this Release
- First Change
- Second Change
draft: false
prerelease: false
- name: Upload Release Asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./novelai-desktop.jar
asset_name: novelai-desktop.jar
asset_content_type: application/java-archive