secp-examples-kotlin/build.gradle: upgrade to Kotlin 2.3.0-RC3 #1318
Workflow file for this run
This file contains hidden or 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: Gradle Build | |
| on: [push, pull_request, workflow_dispatch] | |
| jobs: | |
| validate_gradle_wrapper: | |
| name: "Validate Gradle Wrapper" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - uses: gradle/actions/wrapper-validation@v4 | |
| build_gradle: | |
| needs: validate_gradle_wrapper | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: [ubuntu-24.04, ubuntu-24.04-arm, macOS-14] | |
| distribution: ['temurin'] | |
| fail-fast: false | |
| name: ${{ matrix.os }} JDK 25 (via Gradle Java toolchains) | |
| steps: | |
| - name: Git checkout | |
| uses: actions/checkout@v5 | |
| - name: Set up Java | |
| uses: actions/setup-java@v5 | |
| with: | |
| distribution: ${{ matrix.distribution }} | |
| # When installing multiple JDKs, the last JDK installed is the default and will be used to run Gradle itself | |
| java-version: | | |
| 25 | |
| cache: 'gradle' | |
| - name: Install secp256k1 with APT | |
| if: runner.os == 'Linux' | |
| run: | | |
| sudo apt install -y libsecp256k1-dev | |
| echo "LD_LIBRARY_PATH=/usr/lib/$(uname -m)-linux-gnu" >> $GITHUB_ENV | |
| - name: Install secp256k1 with Homebrew | |
| if: runner.os == 'macOS' | |
| run: | | |
| brew install secp256k1 | |
| echo "DYLD_LIBRARY_PATH=$(brew --prefix secp256k1)/lib" >> $GITHUB_ENV | |
| echo "JAVA_TOOL_OPTIONS=-Djava.library.path=$(brew --prefix secp256k1)/lib" >> $GITHUB_ENV | |
| - name: Build with Gradle | |
| run: ./gradlew build | |
| - name: Run Java & Kotlin Examples | |
| run: ./gradlew run runEcdsa | |
| - name: Print Sha256Sums (Linux) | |
| if: runner.os == 'Linux' | |
| run: sha256sum secp-api/build/libs/* secp-bouncy/build/libs/* secp-ffm/build/libs/* secp-graalvm/build/libs/* | |
| - name: Print Sha256Sums (macOS) | |
| if: runner.os == 'macOS' | |
| run: shasum -a 256 secp-api/build/libs/* secp-bouncy/build/libs/* secp-ffm/build/libs/* secp-graalvm/build/libs/* | |
| javadoc_artifact: | |
| needs: build_gradle | |
| runs-on: ubuntu-24.04 | |
| name: Publish Aggregated Javadoc artifact | |
| steps: | |
| - name: Git checkout | |
| uses: actions/checkout@v5 | |
| - name: Set up Java | |
| uses: actions/setup-java@v5 | |
| with: | |
| distribution: 'temurin' | |
| java-version: 25 | |
| cache: 'gradle' | |
| - name: Install secp256k1 with APT | |
| run: | | |
| sudo apt install -y libsecp256k1-dev | |
| echo "LD_LIBRARY_PATH=/usr/lib/$(uname -m)-linux-gnu" >> $GITHUB_ENV | |
| - name: Build Aggregate Modular Javadoc with Gradle | |
| run: ./gradlew javadoc | |
| - name: Upload Javadoc as artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: secp256k1-jdk-javadoc | |
| path: build/docs/javadoc/ | |
| build_nix: | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: [ubuntu-24.04, ubuntu-24.04-arm, macOS-14] | |
| fail-fast: false | |
| name: ${{ matrix.os }} Nix | |
| steps: | |
| - name: Git checkout | |
| uses: actions/checkout@v5 | |
| - name: Install Nix | |
| uses: cachix/install-nix-action@v31 | |
| with: | |
| github_access_token: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Build in Nix development shell | |
| run: nix develop -c gradle build run runEcdsa | |
| - name: Print Sha256Sums (Linux) | |
| if: runner.os == 'Linux' | |
| run: sha256sum secp-api/build/libs/* secp-bouncy/build/libs/* secp-ffm/build/libs/* secp-graalvm/build/libs/* | |
| - name: Print Sha256Sums (macOS) | |
| if: runner.os == 'macOS' | |
| run: shasum -a 256 secp-api/build/libs/* secp-bouncy/build/libs/* secp-ffm/build/libs/* secp-graalvm/build/libs/* |