Add Article to JetNews (#1426) #1
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: Crane | |
on: | |
push: | |
branches: | |
- main | |
paths: | |
- '.github/workflows/Crane.yaml' | |
- 'Crane/**' | |
pull_request: | |
paths: | |
- '.github/workflows/Crane.yaml' | |
- 'Crane/**' | |
workflow_dispatch: | |
env: | |
SAMPLE_PATH: Crane | |
compose_store_password: ${{ secrets.compose_store_password }} | |
compose_key_alias: ${{ secrets.compose_key_alias }} | |
compose_key_password: ${{ secrets.compose_key_password }} | |
jobs: | |
build: | |
uses: ./.github/workflows/build-sample.yml | |
with: | |
name: Crane | |
path: Crane | |
secrets: | |
compose_store_password: ${{ secrets.COMPOSE_STORE_PASSWORD }} | |
compose_key_alias: ${{ secrets.COMPOSE_KEY_ALIAS }} | |
compose_key_password: ${{ secrets.COMPOSE_KEY_PASSWORD }} | |
test: | |
needs: build | |
runs-on: macos-13 | |
timeout-minutes: 30 | |
strategy: | |
matrix: | |
api-level: [23, 26, 29] | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Copy CI gradle.properties | |
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v4 | |
with: | |
java-version: 17 | |
distribution: 'zulu' | |
- name: Generate cache key | |
run: ./scripts/checksum.sh $SAMPLE_PATH checksum.txt | |
- uses: actions/cache@v4 | |
with: | |
path: | | |
~/.gradle/caches/modules-* | |
~/.gradle/caches/jars-* | |
~/.gradle/caches/build-cache-* | |
key: gradle-${{ hashFiles('checksum.txt') }} | |
- name: Inject Maps API Key | |
run: | | |
# Injecting the key directly into the manifest as secrets-gradle-plugin | |
# isn't picking up the key when creating a local.properties file here | |
sed -i -e "s,\${googleMapsKey},$GOOGLE_MAPS_KEY,g" ${{ env.SAMPLE_PATH }}/app/src/main/AndroidManifest.xml | |
env: | |
GOOGLE_MAPS_KEY: ${{ secrets.GOOGLE_MAPS_KEY }} | |
- name: Run instrumentation tests | |
uses: reactivecircus/android-emulator-runner@v2 | |
with: | |
api-level: ${{ matrix.api-level }} | |
target: google_apis | |
arch: x86 | |
disable-animations: true | |
script: ./gradlew app:connectedDebugAndroidTest --stacktrace | |
working-directory: ${{ env.SAMPLE_PATH }} | |
- name: Upload test reports | |
if: always() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: test-reports-crane-${{ matrix.api-level }} | |
path: ${{ env.SAMPLE_PATH }}/app/build/reports |