Skip to content

move toncenter to ton-sdk-toncenter module #66

move toncenter to ton-sdk-toncenter module

move toncenter to ton-sdk-toncenter module #66

Workflow file for this run

name: KMP Validate
on:
pull_request:
push:
branches:
- main
workflow_dispatch:
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
JAVA_VERSION: '21'
GRADLE_OPTS: "-Dorg.gradle.daemon=false -Dorg.gradle.parallel=true -Dkotlin.daemon.useFallbackStrategy=false -Dorg.gradle.jvmargs='-Xmx3g -XX:+UseParallelGC'"
GRADLE_USER_HOME: ${{ github.workspace }}/.gradle
CI: "true"
jobs:
wrapper-validation:
name: Gradle Wrapper Validation
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: gradle/wrapper-validation-action@v2
linux:
name: Linux (JVM + linuxX64)
needs: [wrapper-validation]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with: { fetch-depth: 0 }
- uses: actions/setup-java@v4
with:
distribution: temurin
java-version: ${{ env.JAVA_VERSION }}
- uses: gradle/actions/setup-gradle@v4
- name: Cache Konan
uses: actions/cache@v4
with:
path: ~/.konan
key: ${{ runner.os }}-konan-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties', '**/libs.versions.toml') }}
- name: JVM & linuxX64 tests
run: ./gradlew --stacktrace --build-cache --parallel --configuration-cache jvmTest linuxX64Test
windows:
name: Windows (mingwX64)
needs: [wrapper-validation]
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
with: { fetch-depth: 0 }
- uses: actions/setup-java@v4
with:
distribution: temurin
java-version: ${{ env.JAVA_VERSION }}
- uses: gradle/actions/setup-gradle@v4
- name: Cache Konan
uses: actions/cache@v4
with:
path: ~\AppData\Local\Konan
key: ${{ runner.os }}-konan-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties', '**/libs.versions.toml') }}
- name: mingwX64 tests
shell: bash
run: ./gradlew --stacktrace --build-cache --parallel --configuration-cache compileKotlinMingwX64
macos:
name: macOS (macosArm64 only)
needs: [wrapper-validation]
runs-on: macos-14
steps:
- uses: actions/checkout@v4
with: { fetch-depth: 0 }
- uses: actions/setup-java@v4
with:
distribution: temurin
java-version: ${{ env.JAVA_VERSION }}
- uses: gradle/actions/setup-gradle@v4
- name: Cache Konan
uses: actions/cache@v4
with:
path: ~/.konan
key: ${{ runner.os }}-konan-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties', '**/libs.versions.toml') }}
- name: macOS tests
run: ./gradlew --stacktrace --build-cache --parallel --configuration-cache macosArm64Test
static-analysis:
name: Lint & API checks
needs: [linux]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with: { fetch-depth: 0 }
- uses: actions/setup-java@v4
with:
distribution: temurin
java-version: ${{ env.JAVA_VERSION }}
- uses: gradle/actions/setup-gradle@v4
- name: checkLegacyAbi
run: ./gradlew --stacktrace --build-cache --parallel --configuration-cache checkLegacyAbi
docs:
name: Dokka (artifact)
needs: [linux]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with: { fetch-depth: 0 }
- uses: actions/setup-java@v4
with:
distribution: temurin
java-version: ${{ env.JAVA_VERSION }}
- uses: gradle/actions/setup-gradle@v4
- name: Generate Dokka HTML
run: |
if ./gradlew -q tasks --all | grep -qE '^dokkaHtml\s'; then
./gradlew --stacktrace --build-cache --parallel --configuration-cache dokkaHtml
else
echo "dokkaHtml not found, skipping" && exit 0
fi
- name: Upload docs
uses: actions/upload-artifact@v4
with:
name: dokka-html
path: "**/build/dokka/html"
if-no-files-found: ignore