Skip to content

fix(deps): update dependency org.projectlombok:lombok to v1.18.34 #312

fix(deps): update dependency org.projectlombok:lombok to v1.18.34

fix(deps): update dependency org.projectlombok:lombok to v1.18.34 #312

Workflow file for this run

name: CI
on:
push:
branches: [ '**' ]
tags-ignore: [ '**' ]
workflow_dispatch:
concurrency:
group: ci-${{ github.ref }}
cancel-in-progress: true
jobs:
build-native:
name: Build rust ${{ matrix.platform.target }}/${{ matrix.platform.os }}
runs-on: ${{ matrix.platform.os }}
strategy:
fail-fast: false
matrix:
platform:
# mac target
- { os: 'macos-latest', target: 'x86_64-apple-darwin', cross: false, compiler: '', osn: 'mac', arch: 'x86_64', pref: 'lib', ext: 'dylib' }
- { os: 'macos-latest', target: 'aarch64-apple-darwin', cross: true, compiler: '', osn: 'mac', arch: 'aarch64', pref: 'lib', ext: 'dylib' }
# windows target
- { os: 'windows-latest', target: 'x86_64-pc-windows-msvc', cross: false, compiler: '', osn: 'windows', arch: 'x86_64', pref: '', ext: 'dll' }
- { os: 'windows-latest', target: 'aarch64-pc-windows-msvc', cross: true, compiler: '', osn: 'windows', arch: 'aarch64', pref: '', ext: 'dll' }
# linux target
- { os: 'ubuntu-latest', target: 'x86_64-unknown-linux-gnu', cross: false, compiler: '', osn: 'linux', arch: 'x86_64', pref: 'lib', ext: 'so' }
- { os: 'ubuntu-latest', target: 'aarch64-unknown-linux-gnu', cross: true, compiler: 'gcc-aarch64-linux-gnu', osn: 'linux', arch: 'aarch64', pref: 'lib', ext: 'so' }
- { os: 'ubuntu-latest', target: 'arm-unknown-linux-gnueabihf', cross: true, compiler: 'gcc-arm-linux-gnueabihf', osn: 'linux', arch: 'arm', pref: 'lib', ext: 'so' }
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install compiler if needed
if: matrix.platform.os == 'ubuntu-latest' && matrix.platform.compiler != ''
run: sudo apt update -y && sudo apt install ${{ matrix.platform.compiler }} -y
- name: Setup rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable
targets: ${{ matrix.platform.target }}
- name: Initialize rust caching
uses: Swatinem/rust-cache@v2
with:
key: ${{ matrix.platform.target }}
workspaces: native/
- name: Build binary
uses: clechasseur/rs-cargo@v2
with:
command: build
use-cross: ${{ matrix.platform.cross }}
args: --release --target=${{ matrix.platform.target }} --manifest-path=native/Cargo.toml --no-default-features
- name: Prepare output artifact for next step
uses: actions/upload-artifact@v4
with:
name: reflexion-${{ matrix.platform.osn }}_${{ matrix.platform.arch }}
path: native/target/${{ matrix.platform.target }}/release/${{ matrix.platform.pref }}reflexion.${{ matrix.platform.ext }}
build-jar:
name: Build java ${{ matrix.tc.java }}/${{ matrix.tc.os }}
runs-on: ${{ matrix.tc.os }}
needs: [ "build-native" ]
strategy:
matrix:
tc:
# linux
- { os: 'ubuntu-latest', java: 11 }
- { os: 'ubuntu-latest', java: 17 }
- { os: 'ubuntu-latest', java: 21 }
# windows
- { os: 'windows-latest', java: 17 }
# mac
- { os: 'macos-latest', java: 17 }
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup java
uses: actions/setup-java@v4
with:
distribution: 'zulu'
java-version: ${{ matrix.tc.java }}
check-latest: true
cache: 'gradle'
- name: Load native build artifacts
uses: actions/download-artifact@v4
with:
path: reflexion/src/main/resources/reflexion-native
- name: Build and test
run: ./gradlew build test -x jacocoTestReport --no-daemon --stacktrace
- name: Upload java result
uses: actions/upload-artifact@v4
with:
name: reflexion_jar-${{ matrix.tc.os }}-${{ matrix.tc.java }}
path: reflexion/build/libs/reflexion-*.jar