Skip to content

[Indy-VDR]: Kotlin Release #16

[Indy-VDR]: Kotlin Release

[Indy-VDR]: Kotlin Release #16

Workflow file for this run

name: '[Indy-VDR]: Kotlin Release'
on:
workflow_dispatch:
jobs:
build-linux:
name: Build Linux Artifacts
runs-on: ubuntu-22.04
defaults:
run:
working-directory: kotlin
steps:
- uses: actions/checkout@v4
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@master
with:
toolchain: 1.86.0
targets: aarch64-linux-android,armv7-linux-androideabi,i686-linux-android,x86_64-linux-android,x86_64-unknown-linux-gnu,aarch64-unknown-linux-gnu
- name: Cache cargo resources
uses: Swatinem/rust-cache@v2
with:
shared-key: deps
save-if: false
workspaces: "indy-vdr"
- name: Install Cross
run: |
cargo install cross --git https://github.com/cross-rs/cross
- name: Setup Java
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 17
- name: Set up Gradle
uses: gradle/actions/setup-gradle@v4
with:
gradle-version: 8.13
- name: Build Linux JARs
run: |
gradle :indy_vdr_uniffi:jarJvmRustRuntimeLinuxArm64Release
gradle :indy_vdr_uniffi:jarJvmRustRuntimeLinuxX64Release
- name: Upload Linux libs
uses: actions/upload-artifact@v4
with:
name: linux-libs
path: kotlin/indy-vdr/build/libs
- name: Publish Android
run: |
gradle :indy_vdr_uniffi:publishAndroidReleasePublicationToGithubRepository
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
build-windows:
name: Build Windows Artifact
runs-on: windows-latest
defaults:
run:
working-directory: kotlin
steps:
- uses: actions/checkout@v4
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@master
with:
toolchain: 1.86.0
targets: x86_64-pc-windows-msvc
- name: Cache cargo resources
uses: Swatinem/rust-cache@v2
with:
shared-key: deps
save-if: false
workspaces: "indy-vdr"
- name: Install Cross
run: |
cargo install cross --git https://github.com/cross-rs/cross
- name: Setup Java
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 17
- name: Set up Gradle
uses: gradle/actions/setup-gradle@v4
with:
gradle-version: 8.13
- name: Build Windows JAR
run: |
gradle :indy_vdr_uniffi:jarJvmRustRuntimeWindowsX64Release
- name: Upload Windows libs
uses: actions/upload-artifact@v4
with:
name: windows-libs
path: kotlin/indy-vdr/build/libs
publish-macos:
name: Publish to Maven Local on macOS
runs-on: macos-latest
defaults:
run:
working-directory: kotlin
needs: [build-linux, build-windows]
steps:
- uses: actions/checkout@v4
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@master
with:
toolchain: 1.86.0
targets: aarch64-linux-android,aarch64-apple-ios,aarch64-apple-ios-sim,x86_64-apple-ios,aarch64-apple-darwin,x86_64-apple-darwin
- name: Setup Java
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: 17
- name: Cache cargo resources
uses: Swatinem/rust-cache@v2
with:
shared-key: deps
save-if: false
workspaces: "indy-vdr"
- name: Set up Gradle
uses: gradle/actions/setup-gradle@v4
with:
gradle-version: 8.13
- name: Download Linux libs
uses: actions/download-artifact@v4
with:
name: linux-libs
path: kotlin/indy-vdr/build/libs
- name: Download Windows libs
uses: actions/download-artifact@v4
with:
name: windows-libs
path: kotlin/indy-vdr/build/libs
- name: Set up Java and Gradle
uses: gradle/actions/setup-gradle@v3
- name: Publish to Github
run: |
gradle :indy_vdr_uniffi:publishKotlinMultiplatformPublicationToGithubRepository
gradle :indy_vdr_uniffi:publishJvmPublicationToGithubRepository
gradle :indy_vdr_uniffi:publishMacosArm64PublicationToGithubRepository
gradle :indy_vdr_uniffi:publishMacosX64PublicationToGithubRepository
gradle :indy_vdr_uniffi:publishIosArm64PublicationToGithubRepository
gradle :indy_vdr_uniffi:publishIosSimulatorArm64PublicationToGithubRepository
gradle :indy_vdr_uniffi:publishIosX64PublicationToGithubRepository
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}