Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions .github/workflows/java-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Java CI

on:
push:
branches: [ '*', '*/*' ]

jobs:
build:
name: Build for GraalVM (OpenJDK ${{ matrix.javaver }}) on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
javaver: [21, 23, 24, 25]
os: [ubuntu-latest]
steps:
- uses: actions/checkout@v6
- name: GitHub Action for GraalVM
uses: graalvm/setup-graalvm@v1
with:
java-version: ${{ matrix.javaver }}
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
native-image-job-reports: 'true'
- run: docker compose -f env/standalone-docker/docker-compose.yml up -d
- name: Build and test
run: mvn package
- name: Native test
run: mvn -Pnative test
26 changes: 26 additions & 0 deletions .github/workflows/javadoc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Javadoc

on:
release:
types: [ created ]

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: GitHub Action for GraalVM
uses: graalvm/setup-graalvm@v1
with:
java-version: 25
distribution: 'graalvm'
github_token: ${{ secrets.GITHUB_TOKEN }}
- name: Compile
run: mvn compile
- name: Javadoc
run: mvn javadoc:javadoc
- name: Publish Documentation on GitHub Pages
uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./target/site/apidocs
41 changes: 41 additions & 0 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: Publish package to the Maven Central Repository

on:
release:
types: [ created ]

jobs:
publish:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- uses: actions/checkout@v6

- name: Set up JDK
uses: actions/setup-java@v5
with:
distribution: 'temurin'
java-version: 21

- name: Build with Maven
run: mvn -ntp -B package

- name: Set up Maven Central Repository
uses: actions/setup-java@v5
with:
java-version: 21
distribution: 'temurin'
server-id: central
server-username: MAVEN_USERNAME
server-password: MAVEN_PASSWORD
gpg-private-key: ${{ secrets.CENTRAL_GPG_PRIVATE_KEY }}
gpg-passphrase: MAVEN_GPG_PASSPHRASE

- name: Publish to the Maven Central Repository
run: mvn -ntp -B -DskipTests -Prelease-central deploy
env:
MAVEN_USERNAME: ${{ secrets.CENTRAL_TOKEN_USERNAME }}
MAVEN_PASSWORD: ${{ secrets.CENTRAL_TOKEN_PASSWORD }}
MAVEN_GPG_PASSPHRASE: ${{ secrets.CENTRAL_GPG_PASS_PHRASE }}