chore: track artifact sizes #2661
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: CI | |
on: | |
pull_request: | |
workflow_dispatch: | |
# Allow one instance of this workflow per pull request, and cancel older runs when new changes are pushed | |
concurrency: | |
group: ci-pr-${{ github.ref }} | |
cancel-in-progress: true | |
env: | |
RUN: ${{ github.run_id }}-${{ github.run_number }} | |
GRADLE_OPTS: "-Dorg.gradle.daemon=false -Dkotlin.incremental=false" | |
jobs: | |
jvm: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
# we build with a specific JDK version but source/target compatibility should ensure the jar is usable by | |
# the target versions we want to support | |
java-version: | |
- 8 | |
- 11 | |
- 17 | |
- 21 | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
with: | |
path: 'aws-sdk-kotlin' | |
- name: Setup Build | |
uses: ./aws-sdk-kotlin/.github/actions/setup-build | |
- name: Test | |
working-directory: ./aws-sdk-kotlin | |
shell: bash | |
run: | | |
pwd | |
ls -lsa | |
./gradlew -Ptest.java.version=${{ matrix.java-version }} jvmTest --stacktrace | |
all-platforms: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ ubuntu-latest, macos-latest, windows-latest ] | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
with: | |
path: 'aws-sdk-kotlin' | |
- name: Setup Build | |
uses: ./aws-sdk-kotlin/.github/actions/setup-build | |
- name: Build smithy-kotlin | |
working-directory: ./smithy-kotlin | |
shell: bash | |
run: | | |
# protocol tests require everything is published | |
pwd | |
./gradlew --parallel assemble | |
./gradlew publishToMavenLocal | |
- name: Test | |
working-directory: ./aws-sdk-kotlin | |
shell: bash | |
run: | | |
pwd | |
./gradlew :build-support:test | |
./gradlew publishToMavenLocal | |
./gradlew apiCheck | |
./gradlew test jvmTest | |
./gradlew testAllProtocols | |
- name: Save Test Reports | |
if: failure() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: test-reports | |
path: '**/build/reports' |