|
|
@ -21,11 +21,21 @@ jobs:
|
|
|
|
timeout-minutes: 20
|
|
|
|
timeout-minutes: 20
|
|
|
|
steps:
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: ./.github/actions/setup-java
|
|
|
|
|
|
|
|
- uses: ./.github/actions/setup-gradle
|
|
|
|
- uses: actions/setup-java@v5
|
|
|
|
|
|
|
|
with:
|
|
|
|
|
|
|
|
distribution: zulu
|
|
|
|
|
|
|
|
java-version: 21
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- uses: gradle/actions/setup-gradle@v4
|
|
|
|
with:
|
|
|
|
with:
|
|
|
|
cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
|
|
|
|
cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
|
|
|
|
- uses: ./.github/actions/setup-gradle-properties
|
|
|
|
build-scan-publish: true
|
|
|
|
|
|
|
|
build-scan-terms-of-use-url: https://gradle.com/terms-of-service
|
|
|
|
|
|
|
|
build-scan-terms-of-use-agree: yes
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- name: Copy CI gradle.properties
|
|
|
|
|
|
|
|
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
|
|
|
|
|
|
|
|
|
|
|
|
- name: Check build-logic
|
|
|
|
- name: Check build-logic
|
|
|
|
run: ./gradlew :build-logic:convention:check
|
|
|
|
run: ./gradlew :build-logic:convention:check
|
|
|
@ -90,11 +100,21 @@ jobs:
|
|
|
|
timeout-minutes: 40
|
|
|
|
timeout-minutes: 40
|
|
|
|
steps:
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: ./.github/actions/setup-java
|
|
|
|
|
|
|
|
- uses: ./.github/actions/setup-gradle
|
|
|
|
- uses: actions/setup-java@v5
|
|
|
|
|
|
|
|
with:
|
|
|
|
|
|
|
|
distribution: zulu
|
|
|
|
|
|
|
|
java-version: 21
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- uses: gradle/actions/setup-gradle@v4
|
|
|
|
with:
|
|
|
|
with:
|
|
|
|
cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
|
|
|
|
cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
|
|
|
|
- uses: ./.github/actions/setup-gradle-properties
|
|
|
|
build-scan-publish: true
|
|
|
|
|
|
|
|
build-scan-terms-of-use-url: https://gradle.com/terms-of-service
|
|
|
|
|
|
|
|
build-scan-terms-of-use-agree: yes
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- name: Copy CI gradle.properties
|
|
|
|
|
|
|
|
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
|
|
|
|
|
|
|
|
|
|
|
|
- name: Build all build type and flavor permutations
|
|
|
|
- name: Build all build type and flavor permutations
|
|
|
|
run: ./gradlew :app:assemble -PminifyWithR8=false
|
|
|
|
run: ./gradlew :app:assemble -PminifyWithR8=false
|
|
|
@ -110,11 +130,21 @@ jobs:
|
|
|
|
timeout-minutes: 20
|
|
|
|
timeout-minutes: 20
|
|
|
|
steps:
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: ./.github/actions/setup-java
|
|
|
|
|
|
|
|
- uses: ./.github/actions/setup-gradle
|
|
|
|
- uses: actions/setup-java@v5
|
|
|
|
|
|
|
|
with:
|
|
|
|
|
|
|
|
distribution: zulu
|
|
|
|
|
|
|
|
java-version: 21
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- uses: gradle/actions/setup-gradle@v4
|
|
|
|
with:
|
|
|
|
with:
|
|
|
|
cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
|
|
|
|
cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
|
|
|
|
- uses: ./.github/actions/setup-gradle-properties
|
|
|
|
build-scan-publish: true
|
|
|
|
|
|
|
|
build-scan-terms-of-use-url: https://gradle.com/terms-of-service
|
|
|
|
|
|
|
|
build-scan-terms-of-use-agree: yes
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- name: Copy CI gradle.properties
|
|
|
|
|
|
|
|
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
|
|
|
|
|
|
|
|
|
|
|
|
- name: Check lint
|
|
|
|
- name: Check lint
|
|
|
|
run: ./gradlew :app:lintProdRelease :app-nia-catalog:lintRelease :lint:lint
|
|
|
|
run: ./gradlew :app:lintProdRelease :app-nia-catalog:lintRelease :lint:lint
|
|
|
@ -156,11 +186,21 @@ jobs:
|
|
|
|
timeout-minutes: 20
|
|
|
|
timeout-minutes: 20
|
|
|
|
steps:
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: ./.github/actions/setup-java
|
|
|
|
|
|
|
|
- uses: ./.github/actions/setup-gradle
|
|
|
|
- uses: actions/setup-java@v5
|
|
|
|
|
|
|
|
with:
|
|
|
|
|
|
|
|
distribution: zulu
|
|
|
|
|
|
|
|
java-version: 21
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- uses: gradle/actions/setup-gradle@v4
|
|
|
|
with:
|
|
|
|
with:
|
|
|
|
cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
|
|
|
|
cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
|
|
|
|
- uses: ./.github/actions/setup-gradle-properties
|
|
|
|
build-scan-publish: true
|
|
|
|
|
|
|
|
build-scan-terms-of-use-url: https://gradle.com/terms-of-service
|
|
|
|
|
|
|
|
build-scan-terms-of-use-agree: yes
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- name: Copy CI gradle.properties
|
|
|
|
|
|
|
|
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
|
|
|
|
|
|
|
|
|
|
|
|
- name: Run all local screenshot tests (Roborazzi)
|
|
|
|
- name: Run all local screenshot tests (Roborazzi)
|
|
|
|
id: screenshotsverify
|
|
|
|
id: screenshotsverify
|
|
|
@ -227,13 +267,30 @@ jobs:
|
|
|
|
swap-storage: true # rm -f /mnt/swapfile (4GiB)
|
|
|
|
swap-storage: true # rm -f /mnt/swapfile (4GiB)
|
|
|
|
docker-images: false # Takes 16s, enable if needed in the future
|
|
|
|
docker-images: false # Takes 16s, enable if needed in the future
|
|
|
|
large-packages: false # includes google-cloud-sdk and it's slow
|
|
|
|
large-packages: false # includes google-cloud-sdk and it's slow
|
|
|
|
|
|
|
|
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: ./.github/actions/setup-kvm
|
|
|
|
|
|
|
|
- uses: ./.github/actions/setup-java
|
|
|
|
- name: Enable KVM group perms
|
|
|
|
- uses: ./.github/actions/setup-gradle
|
|
|
|
run: |
|
|
|
|
|
|
|
|
echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules
|
|
|
|
|
|
|
|
sudo udevadm control --reload-rules
|
|
|
|
|
|
|
|
sudo udevadm trigger --name-match=kvm
|
|
|
|
|
|
|
|
ls /dev/kvm
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- uses: actions/setup-java@v5
|
|
|
|
|
|
|
|
with:
|
|
|
|
|
|
|
|
distribution: zulu
|
|
|
|
|
|
|
|
java-version: 21
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- uses: gradle/actions/setup-gradle@v4
|
|
|
|
with:
|
|
|
|
with:
|
|
|
|
cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
|
|
|
|
cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
|
|
|
|
- uses: ./.github/actions/setup-gradle-properties
|
|
|
|
build-scan-publish: true
|
|
|
|
|
|
|
|
build-scan-terms-of-use-url: https://gradle.com/terms-of-service
|
|
|
|
|
|
|
|
build-scan-terms-of-use-agree: yes
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- name: Copy CI gradle.properties
|
|
|
|
|
|
|
|
run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties
|
|
|
|
|
|
|
|
|
|
|
|
- name: Build projects and run instrumentation tests
|
|
|
|
- name: Build projects and run instrumentation tests
|
|
|
|
uses: reactivecircus/android-emulator-runner@v2
|
|
|
|
uses: reactivecircus/android-emulator-runner@v2
|
|
|
|