#762 added support custom build configuration for apple target #770
Workflow file for this run
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: KMP library compilation check | |
on: | |
pull_request: | |
branches: | |
- master | |
- develop | |
push: | |
branches: | |
- master | |
- develop | |
jobs: | |
build-library: | |
runs-on: macOS-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 17 | |
- name: Setup Gradle | |
uses: gradle/gradle-build-action@v3 | |
with: | |
cache-read-only: ${{ github.ref != 'refs/heads/master' && github.ref != | |
'refs/heads/develop' }} | |
- name: Cache .konan | |
uses: actions/cache@v4 | |
with: | |
path: ~/.konan | |
key: ${{ matrix.runs-on }}-konan-${{ hashFiles('**/*.gradle*', 'gradle/**/*') }} | |
- name: Check | |
run: ./local-check.sh | |
shell: bash | |
- name: Plugin local publish | |
run: ./gradlew -p resources-generator publishToMavenLocal | |
shell: bash | |
- name: Library local publish | |
run: ./gradlew publishToMavenLocal | |
shell: bash | |
- name: Upload artifacts | |
uses: actions/upload-artifact@v3 | |
with: | |
name: maven | |
path: ~/.m2/repository/dev/icerock | |
- name: Publish Test Report | |
uses: mikepenz/action-junit-report@v2 | |
if: ${{ always() }} | |
with: | |
report_paths: "**/build/test-results/**/TEST-*.xml" | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Archive reports | |
uses: actions/upload-artifact@v4 | |
if: ${{ always() }} | |
with: | |
name: code-coverage-report-${{ github.job }}-${{ matrix.runs-on }} | |
path: "**/build/reports/**/*" | |
check-sample-android-mpp-app: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: | |
- macOS-latest | |
- windows-latest | |
- ubuntu-latest | |
needs: build-library | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 17 | |
- name: Setup Gradle | |
uses: gradle/gradle-build-action@v3 | |
with: | |
cache-read-only: ${{ github.ref != 'refs/heads/master' && github.ref != | |
'refs/heads/develop' }} | |
- name: Cache .konan | |
uses: actions/cache@v4 | |
with: | |
path: ~/.konan | |
key: ${{ matrix.runs-on }}-konan-${{ hashFiles('**/*.gradle*', 'gradle/**/*') }} | |
- name: Download maven artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: maven | |
path: ~/.m2/repository/dev/icerock | |
- name: Sample - android-mpp-app | |
run: cd samples/android-mpp-app && ./local-check.sh | |
shell: bash | |
- name: Publish Test Report | |
uses: mikepenz/action-junit-report@v2 | |
if: ${{ always() }} | |
with: | |
report_paths: "**/build/test-results/**/TEST-*.xml" | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Archive reports | |
uses: actions/upload-artifact@v4 | |
if: ${{ always() }} | |
with: | |
name: code-coverage-report-${{ github.job }}-${{ matrix.runs-on }} | |
path: "**/build/reports/**/*" | |
check-sample-auto-manifest: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: | |
- macOS-latest | |
- windows-latest | |
- ubuntu-latest | |
needs: build-library | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 17 | |
- name: Setup Gradle | |
uses: gradle/gradle-build-action@v3 | |
with: | |
cache-read-only: ${{ github.ref != 'refs/heads/master' && github.ref != | |
'refs/heads/develop' }} | |
- name: Cache .konan | |
uses: actions/cache@v4 | |
with: | |
path: ~/.konan | |
key: ${{ matrix.runs-on }}-konan-${{ hashFiles('**/*.gradle*', 'gradle/**/*') }} | |
- name: Download maven artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: maven | |
path: ~/.m2/repository/dev/icerock | |
- name: Sample - auto-manifest | |
run: cd samples/auto-manifest && ./local-check.sh | |
shell: bash | |
- name: Publish Test Report | |
uses: mikepenz/action-junit-report@v2 | |
if: ${{ always() }} | |
with: | |
report_paths: "**/build/test-results/**/TEST-*.xml" | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Archive reports | |
uses: actions/upload-artifact@v4 | |
if: ${{ always() }} | |
with: | |
name: code-coverage-report-${{ github.job }}-${{ matrix.runs-on }} | |
path: "**/build/reports/**/*" | |
check-sample-compose-jvm-app: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: | |
- macOS-latest | |
- windows-latest | |
- ubuntu-latest | |
needs: build-library | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 17 | |
- name: Setup Gradle | |
uses: gradle/gradle-build-action@v3 | |
with: | |
cache-read-only: ${{ github.ref != 'refs/heads/master' && github.ref != | |
'refs/heads/develop' }} | |
- name: Cache .konan | |
uses: actions/cache@v4 | |
with: | |
path: ~/.konan | |
key: ${{ matrix.runs-on }}-konan-${{ hashFiles('**/*.gradle*', 'gradle/**/*') }} | |
- name: Download maven artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: maven | |
path: ~/.m2/repository/dev/icerock | |
- name: Sample - compose-jvm-app | |
run: cd samples/compose-jvm-app && ./local-check.sh | |
shell: bash | |
- name: Publish Test Report | |
uses: mikepenz/action-junit-report@v2 | |
if: ${{ always() }} | |
with: | |
report_paths: "**/build/test-results/**/TEST-*.xml" | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Archive reports | |
uses: actions/upload-artifact@v4 | |
if: ${{ always() }} | |
with: | |
name: code-coverage-report-${{ github.job }}-${{ matrix.runs-on }} | |
path: "**/build/reports/**/*" | |
check-sample-resources-gallery: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: | |
- macOS-latest | |
- windows-latest | |
- ubuntu-latest | |
needs: build-library | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 17 | |
- name: Setup Gradle | |
uses: gradle/gradle-build-action@v3 | |
with: | |
cache-read-only: ${{ github.ref != 'refs/heads/master' && github.ref != | |
'refs/heads/develop' }} | |
- name: Cache .konan | |
uses: actions/cache@v4 | |
with: | |
path: ~/.konan | |
key: ${{ matrix.runs-on }}-konan-${{ hashFiles('**/*.gradle*', 'gradle/**/*') }} | |
- name: Download maven artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: maven | |
path: ~/.m2/repository/dev/icerock | |
- name: Sample - resources-gallery | |
run: cd samples/resources-gallery && ./local-check.sh | |
shell: bash | |
- name: Publish Test Report | |
uses: mikepenz/action-junit-report@v2 | |
if: ${{ always() }} | |
with: | |
report_paths: "**/build/test-results/**/TEST-*.xml" | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Archive reports | |
uses: actions/upload-artifact@v4 | |
if: ${{ always() }} | |
with: | |
name: code-coverage-report-${{ github.job }}-${{ matrix.runs-on }} | |
path: "**/build/reports/**/*" | |
check-sample-default-hierarchy-resources-gallery-mobile: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: | |
- macOS-latest | |
- windows-latest | |
- ubuntu-latest | |
needs: build-library | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 17 | |
- name: Setup Gradle | |
uses: gradle/gradle-build-action@v3 | |
with: | |
cache-read-only: ${{ github.ref != 'refs/heads/master' && github.ref != | |
'refs/heads/develop' }} | |
- name: Cache .konan | |
uses: actions/cache@v4 | |
with: | |
path: ~/.konan | |
key: ${{ matrix.runs-on }}-konan-${{ hashFiles('**/*.gradle*', 'gradle/**/*') }} | |
- name: Download maven artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: maven | |
path: ~/.m2/repository/dev/icerock | |
- name: Sample - default-hierarchy-gallery-mobile | |
run: cd samples/default-hierarchy-gallery-mobile && ./local-check.sh | |
shell: bash | |
- name: Publish Test Report | |
uses: mikepenz/action-junit-report@v2 | |
if: ${{ always() }} | |
with: | |
report_paths: "**/build/test-results/**/TEST-*.xml" | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Archive reports | |
uses: actions/upload-artifact@v4 | |
if: ${{ always() }} | |
with: | |
name: code-coverage-report-${{ github.job }}-${{ matrix.runs-on }} | |
path: "**/build/reports/**/*" | |
check-sample-ios-static-xcframework: | |
runs-on: macOS-latest | |
needs: build-library | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 17 | |
- name: Setup Gradle | |
uses: gradle/gradle-build-action@v3 | |
with: | |
cache-read-only: ${{ github.ref != 'refs/heads/master' && github.ref != | |
'refs/heads/develop' }} | |
- name: Cache .konan | |
uses: actions/cache@v4 | |
with: | |
path: ~/.konan | |
key: ${{ matrix.runs-on }}-konan-${{ hashFiles('**/*.gradle*', 'gradle/**/*') }} | |
- name: Download maven artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: maven | |
path: ~/.m2/repository/dev/icerock | |
- name: Sample - ios-static-xcframework | |
run: cd samples/ios-static-xcframework && ./local-check.sh | |
shell: bash | |
- name: Publish Test Report | |
uses: mikepenz/action-junit-report@v2 | |
if: ${{ always() }} | |
with: | |
report_paths: "**/build/test-results/**/TEST-*.xml" | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Archive reports | |
uses: actions/upload-artifact@v4 | |
if: ${{ always() }} | |
with: | |
name: code-coverage-report-${{ github.job }}-${{ matrix.runs-on }} | |
path: "**/build/reports/**/*" | |
check-sample-ios-cocoapods-static-framework: | |
runs-on: macOS-latest | |
needs: build-library | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 17 | |
- name: Setup Gradle | |
uses: gradle/gradle-build-action@v3 | |
with: | |
cache-read-only: ${{ github.ref != 'refs/heads/master' && github.ref != | |
'refs/heads/develop' }} | |
- name: Cache .konan | |
uses: actions/cache@v4 | |
with: | |
path: ~/.konan | |
key: ${{ matrix.runs-on }}-konan-${{ hashFiles('**/*.gradle*', 'gradle/**/*') }} | |
- name: Download maven artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: maven | |
path: ~/.m2/repository/dev/icerock | |
- name: Sample - ios-cocoapods-static-framework | |
run: cd samples/ios-cocoapods-static-framework && ./local-check.sh | |
shell: bash | |
- name: Publish Test Report | |
uses: mikepenz/action-junit-report@v2 | |
if: ${{ always() }} | |
with: | |
report_paths: "**/build/test-results/**/TEST-*.xml" | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Archive reports | |
uses: actions/upload-artifact@v4 | |
if: ${{ always() }} | |
with: | |
name: code-coverage-report-${{ github.job }}-${{ matrix.runs-on }} | |
path: "**/build/reports/**/*" | |
check-sample-kotlin-ios-app: | |
runs-on: macOS-latest | |
needs: build-library | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 17 | |
- name: Setup Gradle | |
uses: gradle/gradle-build-action@v3 | |
with: | |
cache-read-only: ${{ github.ref != 'refs/heads/master' && github.ref != | |
'refs/heads/develop' }} | |
- name: Cache .konan | |
uses: actions/cache@v4 | |
with: | |
path: ~/.konan | |
key: ${{ matrix.runs-on }}-konan-${{ hashFiles('**/*.gradle*', 'gradle/**/*') }} | |
- name: Download maven artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: maven | |
path: ~/.m2/repository/dev/icerock | |
- name: Sample - kotlin-ios-app | |
run: cd samples/kotlin-ios-app && ./local-check.sh | |
shell: bash | |
- name: Publish Test Report | |
uses: mikepenz/action-junit-report@v2 | |
if: ${{ always() }} | |
with: | |
report_paths: "**/build/test-results/**/TEST-*.xml" | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Archive reports | |
uses: actions/upload-artifact@v4 | |
if: ${{ always() }} | |
with: | |
name: code-coverage-report-${{ github.job }}-${{ matrix.runs-on }} | |
path: "**/build/reports/**/*" | |
check-sample-compose-resources-gallery: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: | |
- macOS-latest | |
- windows-latest | |
- ubuntu-latest | |
needs: build-library | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 17 | |
- name: Setup Gradle | |
uses: gradle/gradle-build-action@v3 | |
with: | |
cache-read-only: ${{ github.ref != 'refs/heads/master' && github.ref != | |
'refs/heads/develop' }} | |
- name: Cache .konan | |
uses: actions/cache@v4 | |
with: | |
path: ~/.konan | |
key: ${{ matrix.runs-on }}-konan-${{ hashFiles('**/*.gradle*', 'gradle/**/*') }} | |
- name: Download maven artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: maven | |
path: ~/.m2/repository/dev/icerock | |
- name: Sample - compose-resources-gallery | |
run: cd samples/compose-resources-gallery && ./local-check.sh | |
shell: bash | |
- name: Publish Test Report | |
uses: mikepenz/action-junit-report@v2 | |
if: ${{ always() }} | |
with: | |
report_paths: "**/build/test-results/**/TEST-*.xml" | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Archive reports | |
uses: actions/upload-artifact@v4 | |
if: ${{ always() }} | |
with: | |
name: code-coverage-report-${{ github.job }}-${{ matrix.runs-on }} | |
path: "**/build/reports/**/*" | |
check-kotlin-2-sample: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: | |
- macOS-latest | |
- windows-latest | |
- ubuntu-latest | |
needs: build-library | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 17 | |
- name: Setup Gradle | |
uses: gradle/gradle-build-action@v3 | |
with: | |
cache-read-only: ${{ github.ref != 'refs/heads/master' && github.ref != | |
'refs/heads/develop' }} | |
- name: Cache .konan | |
uses: actions/cache@v4 | |
with: | |
path: ~/.konan | |
key: ${{ matrix.runs-on }}-konan-${{ hashFiles('**/*.gradle*', 'gradle/**/*') }} | |
- name: Download maven artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: maven | |
path: ~/.m2/repository/dev/icerock | |
- name: Sample - kotlin-2-sample | |
run: cd samples/kotlin-2-sample && ./local-check.sh | |
shell: bash | |
- name: Publish Test Report | |
uses: mikepenz/action-junit-report@v2 | |
if: ${{ always() }} | |
with: | |
report_paths: "**/build/test-results/**/TEST-*.xml" | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Archive reports | |
uses: actions/upload-artifact@v4 | |
if: ${{ always() }} | |
with: | |
name: code-coverage-report-${{ github.job }}-${{ matrix.runs-on }} | |
path: "**/build/reports/**/*" | |
check-cm-resources-sample: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: | |
- macOS-latest | |
- windows-latest | |
- ubuntu-latest | |
needs: build-library | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 17 | |
- name: Setup Gradle | |
uses: gradle/gradle-build-action@v3 | |
with: | |
cache-read-only: ${{ github.ref != 'refs/heads/master' && github.ref != | |
'refs/heads/develop' }} | |
- name: Cache .konan | |
uses: actions/cache@v4 | |
with: | |
path: ~/.konan | |
key: ${{ matrix.runs-on }}-konan-${{ hashFiles('**/*.gradle*', 'gradle/**/*') }} | |
- name: Download maven artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
name: maven | |
path: ~/.m2/repository/dev/icerock | |
- name: Sample - cm-resources-sample | |
run: cd samples/cm-resources-sample && ./local-check.sh | |
shell: bash | |
- name: Publish Test Report | |
uses: mikepenz/action-junit-report@v2 | |
if: ${{ always() }} | |
with: | |
report_paths: "**/build/test-results/**/TEST-*.xml" | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Archive reports | |
uses: actions/upload-artifact@v4 | |
if: ${{ always() }} | |
with: | |
name: code-coverage-report-${{ github.job }}-${{ matrix.runs-on }} | |
path: "**/build/reports/**/*" | |