Skip to content

format samples and adjust in order only samples #107

format samples and adjust in order only samples

format samples and adjust in order only samples #107

name: Quality Assurance
on: [ push, pull_request ]
jobs:
generate-matrix:
runs-on: ubuntu-latest
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Generate matrix
id: set-matrix
run: node .github/workflows/matrix.js
build-and-test:
needs: generate-matrix
runs-on: ${{ matrix.os }}
strategy:
matrix: ${{ fromJson(needs.generate-matrix.outputs.matrix) }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up JDK ${{ matrix.java_version }}
uses: actions/setup-java@v4
with:
distribution: ${{ matrix.java_distribution }}
java-version: ${{ matrix.java_version }}
- name: Setup Gradle
uses: gradle/gradle-build-action@v3.5.0
- name: Build using JDK ${{ matrix.java_version }}
run: ./gradlew build
- name: Upload build code coverage
uses: codecov/codecov-action@v4.5.0
if: ${{ github.event_name == 'pull_request' || (github.event_name == 'push' && github.ref == 'refs/heads/main') }}
with:
token: ${{ secrets.CODECOV_TOKEN }}
flags: ${{ matrix.os == 'windows-latest' && 'current_windows' || 'current' }}
env_vars: JAVA_VERSION
- name: Composite build atrium-samples-test
run: ./gradlew build
working-directory: misc/tools/atrium-samples-test
dexer:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Cache Android jar
id: android-cache
uses: actions/cache@v4
with:
path: android-jar-cache
key: ${{ runner.os }}-android-version-26
- name: Download Android SDK's android.jar (or use cached file)
if: steps.android-cache.outputs.cache-hit != 'true'
run: |
mkdir android-jar-cache
cd android-jar-cache
curl -o android.jar -L "https://github.com/Sable/android-platforms/blob/master/android-26/android.jar?raw=true"
echo "cdc1846376a14b0370cc63454a129606b4a52cc50ada75ef0d4cf956b1ad2daa android.jar" > android.sha256
if ! sha256sum -c android.sha256; then
echo >&2 "wrong sha256 for android.jar, expected:"
cat >&2 android.sha256
echo >&2 "actual:"
sha256sum android.jar
exit 1;
fi
- name: Check Atrium's -jvm.jar can be dexed
run: ATRIUM_ANDROID_JAR="$PWD/android-jar-cache/android.jar" ./gradlew checkDexer
forwardCompatibility:
env:
JAVA_VERSION: 17
KOTLIN_VERSION: ${{ matrix.kotlin_version }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
kotlin_version: [ '1.5', '1.6', '1.7', '1.8', '1.9', '2.0' ]
steps:
- uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
distribution: 'adopt'
java-version: 17
- name: Setup Gradle
uses: gradle/gradle-build-action@v3.5.0
- name: Build using Kotlin ${{ matrix.kotlin_version }}
run: ./gradlew build