Skip to content

Save test reports when Gradle fails (#1299) #2472

Save test reports when Gradle fails (#1299)

Save test reports when Gradle fails (#1299) #2472

Workflow file for this run

name: build
on:
pull_request: {}
workflow_dispatch: {}
push:
branches:
- 'master'
tags-ignore:
- '**'
env:
GRADLE_OPTS: "-Dorg.gradle.jvmargs=-Xmx2g -Dorg.gradle.daemon=false -Dkotlin.incremental=false"
jobs:
jvm:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
java-version:
- 8
- 11
- 17
- 19
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Validate Gradle Wrapper
uses: gradle/wrapper-validation-action@v1
- name: Configure JDK
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: 19
- name: Test
run: |
./gradlew -Dkjs=false -Dknative=false -Dkwasm=false -Dtest.java.version=${{ matrix.java-version }} build --stacktrace
emulator:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- uses: actions/[email protected]
with:
distribution: 'zulu'
java-version: 19
- uses: gradle/gradle-build-action@v2
- uses: reactivecircus/android-emulator-runner@v2
with:
api-level: 24
script: ./gradlew :okio-assetfilesystem:connectedCheck
loom:
runs-on: ubuntu-latest
strategy:
fail-fast: false
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Validate Gradle Wrapper
uses: gradle/wrapper-validation-action@v1
- name: Configure JDK
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: 19
- name: Test
run: |
./gradlew -DloomEnabled=true build
all-platforms:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ macos-11, ubuntu-latest, windows-latest ]
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Validate Gradle Wrapper
uses: gradle/wrapper-validation-action@v1
- name: Configure JDK
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: 19
- name: Test
run: |
./gradlew build
- name: Save Test Reports
if: failure()
uses: actions/upload-artifact@v3
with:
name: test-reports
path: '**/build/reports'
publish:
runs-on: macos-11
if: github.repository == 'square/okio' && github.ref == 'refs/heads/master'
needs: [jvm, all-platforms, emulator]
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Configure JDK
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: 19
- name: Upload Artifacts
run: |
./gradlew clean publish --stacktrace
env:
ORG_GRADLE_PROJECT_mavenCentralUsername: ${{ secrets.SONATYPE_NEXUS_USERNAME }}
ORG_GRADLE_PROJECT_mavenCentralPassword: ${{ secrets.SONATYPE_NEXUS_PASSWORD }}
ORG_GRADLE_PROJECT_signingInMemoryKey: ${{ secrets.ARTIFACT_SIGNING_PRIVATE_KEY }}
publish-website:
runs-on: ubuntu-latest
if: github.repository == 'square/okio' && github.ref == 'refs/heads/master'
needs: [jvm, all-platforms, emulator]
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Configure JDK
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: 19
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.8
- name: Prepare docs
run: .buildscript/prepare_mkdocs.sh
- name: Build mkdocs
run: |
pip3 install mkdocs-material mkdocs-macros-plugin
mkdocs build
- name: Restore 1.x docs
run: .buildscript/restore_v1_docs.sh
- name: Deploy docs
if: success()
uses: JamesIves/github-pages-deploy-action@releases/v3
with:
GITHUB_TOKEN: ${{ secrets.GH_CLIPPY_TOKEN }}
BRANCH: gh-pages
FOLDER: site
SINGLE_COMMIT: true