Skip to content

KMM :: Internal :: Add arrow library #15

KMM :: Internal :: Add arrow library

KMM :: Internal :: Add arrow library #15

Workflow file for this run

name: Build All Modules
on:
pull_request:
branches:
- "**"
push:
branches:
- "**"
jobs:
build:
name: Build & test (non-iOS)
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v2
with:
distribution: "adopt"
java-version: "11"
- name: Validate Gradle Wrapper
uses: gradle/wrapper-validation-action@v1
- name: Cache gradle
uses: actions/cache@v3
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-${{ hashFiles('*.gradle') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Cache konan
uses: actions/cache@v3
with:
path: ~/.konan
key: ${{ runner.os }}-gradle-${{ hashFiles('*.gradle') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Static code analysis
run: ./gradlew :harmony-kotlin:ktlintCheck :harmony-kotlin:detekt
- name: Detekt report
uses: jwgmeligmeyling/checkstyle-github-action@master
if: failure()
with:
name: Detekt report
path: harmony-kotlin/build/reports/detekt/*.xml
- name: Build
run: ./gradlew :harmony-kotlin:assemble
- name: Test
run: ./gradlew :harmony-kotlin:check
- name: Unit tests report
uses: dorny/test-reporter@v1
if: always()
with:
name: Unit test report
path: harmony-kotlin/build/test-results/testReleaseUnitTest/*.xml
reporter: java-junit
fail-on-error: true
build-ios:
name: Build & test iOS
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v2
with:
distribution: "adopt"
java-version: "11"
- name: Validate Gradle Wrapper
uses: gradle/wrapper-validation-action@v1
- name: Cache gradle
uses: actions/cache@v3
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-${{ hashFiles('*.gradle') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Cache konan
uses: actions/cache@v3
with:
path: ~/.konan
key: ${{ runner.os }}-gradle-${{ hashFiles('*.gradle') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Build
run: >
./gradlew
:harmony-kotlin:compileKotlinIosArm64
:harmony-kotlin:compileKotlinIosSimulatorArm64
:harmony-kotlin:compileKotlinIosX64
:harmony-kotlin:iosArm64MetadataJar
:harmony-kotlin:iosSimulatorArm64MetadataJar
:harmony-kotlin:iosX64MetadataJar
- name: Test
run: >
./gradlew
:harmony-kotlin:iosX64Test
:harmony-kotlin:iosSimulatorArm64Test
env:
GRADLE_OPTS: -Dorg.gradle.jvmargs="-Xmx3g -XX:MaxPermSize=2048m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 -XX:MaxMetaspaceSize=512m"