combine vegafusion and vegafusion-python-embed #405
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#name: java | |
#on: | |
# pull_request: | |
# types: [ opened, synchronize ] | |
#jobs: | |
# build-test-java-linux-64: | |
# runs-on: ubuntu-20.04 | |
# steps: | |
# - name: Check out repository code | |
# uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # [email protected] | |
# - uses: prefix-dev/[email protected] | |
# with: | |
# pixi-version: v0.13.0 | |
# - name: Cache | |
# uses: actions/cache@v3 | |
# with: | |
# key: ${{ runner.os }}-${{ hashFiles('pixi.lock', 'Cargo.lock') }}-build-test-java-linux-64 | |
# path: | | |
# ~/.cargo | |
# target | |
# .pixi | |
# - name: Test Java | |
# run: pixi run test-java | |
# - name: Copy native lib | |
# run: | | |
# mkdir -p native/linux-64 | |
# cp target/release/libvegafusion_jni.so native/linux-64 | |
# - name: Upload artifacts | |
# uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # [email protected] | |
# with: | |
# name: jni-native | |
# path: | | |
# native | |
# | |
# build-test-java-osx-64: | |
# runs-on: macos-11 | |
# steps: | |
# - name: Check out repository code | |
# uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # [email protected] | |
# - uses: prefix-dev/[email protected] | |
# with: | |
# pixi-version: v0.13.0 | |
# - name: Cache | |
# uses: actions/cache@v3 | |
# with: | |
# key: ${{ runner.os }}-${{ hashFiles('pixi.lock', 'Cargo.lock') }}-build-test-java-osx-64 | |
# path: | | |
# ~/.cargo | |
# target | |
# .pixi | |
# - name: Test Java | |
# run: pixi run test-java | |
# - name: Copy native lib | |
# run: | | |
# mkdir -p native/osx-64 | |
# cp target/release/libvegafusion_jni.dylib native/osx-64 | |
# - name: Upload artifacts | |
# uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # [email protected] | |
# with: | |
# name: jni-native | |
# path: | | |
# native | |
# | |
# build-java-osx-arm64: | |
# runs-on: macos-11 | |
# steps: | |
# - name: Check out repository code | |
# uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # [email protected] | |
# - uses: prefix-dev/[email protected] | |
# with: | |
# pixi-version: v0.13.0 | |
# - name: Cache | |
# uses: actions/cache@v3 | |
# with: | |
# key: ${{ runner.os }}-${{ hashFiles('pixi.lock', 'Cargo.lock') }}-build-java-osx-arm64 | |
# path: | | |
# ~/.cargo | |
# target | |
# .pixi | |
# - name: Build jni library | |
# run: | | |
# pixi run python automation/download_rust_target.py aarch64-apple-darwin | |
# pixi run build-jni --target aarch64-apple-darwin | |
# - name: Copy native lib | |
# run: | | |
# mkdir -p native/osx-arm64 | |
# cp target/aarch64-apple-darwin/release/libvegafusion_jni.dylib native/osx-arm64 | |
# - name: Upload artifacts | |
# uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # [email protected] | |
# with: | |
# name: jni-native | |
# path: | | |
# native | |
# build-test-java-win-64: | |
# runs-on: windows-2022 | |
# steps: | |
# - name: Check out repository code | |
# uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # [email protected] | |
## # Using pixi action here results in error on cleanup: | |
## # EBUSY: resource busy or locked, unlink 'D:\a\vegafusion\vegafusion\.pixi\env\Library\lib\jvm\lib\modules' | |
## - uses: prefix-dev/[email protected] | |
## with: | |
## pixi-version: v0.13.0 | |
## # So use manual install for now | |
# - name: Install pixi | |
# run: | | |
# iwr -useb https://pixi.sh/install.ps1 | iex | |
# echo "${HOME}\.pixi\bin" | |
# echo "${HOME}\.pixi\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append | |
# - name: Cache | |
# uses: actions/cache@v3 | |
# with: | |
# key: ${{ runner.os }}-${{ hashFiles('pixi.lock', 'Cargo.lock') }}-build-test-java-win-64 | |
# path: | | |
# ~/.cargo | |
# target | |
# .pixi | |
# - name: Test Java | |
# run: pixi run test-java-win | |
# - name: Copy native lib | |
# run: | | |
# mkdir -p native/win-64 | |
# cp target/release/vegafusion_jni.dll native/win-64 | |
# - name: Upload artifacts | |
# uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # [email protected] | |
# with: | |
# name: jni-native | |
# path: | | |
# native | |
# | |
# build-jar: | |
# runs-on: ubuntu-20.04 | |
# needs: | |
# - build-test-java-linux-64 | |
# - build-test-java-osx-64 | |
# - build-java-osx-arm64 | |
## - build-test-java-win-64 | |
# steps: | |
# - name: Check out repository code | |
# uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # [email protected] | |
# - uses: prefix-dev/[email protected] | |
# with: | |
# pixi-version: v0.13.0 | |
# - name: Cache | |
# uses: actions/cache@v3 | |
# with: | |
# key: ${{ runner.os }}-${{ hashFiles('pixi.lock', 'Cargo.lock') }}-build-jar | |
# path: | | |
# .pixi | |
# - name: Download jni libs | |
# uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a # [email protected] | |
# with: | |
# name: jni-native | |
# path: jni-native | |
# - name: Build jar | |
# run: | | |
# export VEGAFUSION_JNI_LIBRARIES=/home/runner/work/vegafusion/vegafusion/jni-native | |
# pixi run build-jar | |
# - name: Upload jar | |
# uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # [email protected] | |
# with: | |
# name: jar | |
# path: | | |
# java/lib/build/libs/vegafusion-*.jar | |
# | |
# try-jar: | |
# strategy: | |
# fail-fast: false | |
# matrix: | |
# os: | |
# - ubuntu-20.04 | |
# - macos-11 | |
## - windows-2022 | |
# runs-on: ${{ matrix.os }} | |
# needs: [ build-jar ] | |
# steps: | |
# - name: Install Java | |
# uses: actions/setup-java@5ffc13f4174014e2d4d4572b3d74c3fa61aeb2c2 # pin@v3 | |
# with: | |
# distribution: 'temurin' | |
# java-version: '17' | |
# - name: Download jar | |
# uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a # [email protected] | |
# with: | |
# name: jar | |
# path: . | |
# - name: Run jar (non-Windows) | |
# if: ${{ runner.os != 'Windows' }} | |
# run: | | |
# java -jar vegafusion-*.jar | |
# - name: Run jar (Windows) | |
# if: ${{ runner.os == 'Windows' }} | |
# run: | | |
# $jarFile = Get-ChildItem -Path .\ -Filter "vegafusion-*.jar" | Select-Object -First 1 | |
# java -jar $jarFile |