|
23 | 23 | jobs:
|
24 | 24 | verify:
|
25 | 25 | name: Format & Analyze & Test
|
26 |
| - runs-on: ubuntu-latest |
27 |
| - timeout-minutes: 20 |
| 26 | + runs-on: ubuntu-cpu16-ram64 |
| 27 | + timeout-minutes: 30 |
28 | 28 | strategy:
|
29 | 29 | fail-fast: false
|
30 | 30 | matrix:
|
|
33 | 33 | run:
|
34 | 34 | working-directory: pkgs/cronet_http
|
35 | 35 | steps:
|
36 |
| - - name: Delete unnecessary tools 🔧 |
37 |
| - |
38 |
| - with: |
39 |
| - android: false # Don't remove Android tools |
40 | 36 | - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
|
41 | 37 | - uses: actions/setup-java@3a4f6e1af504cf6a31855fa899c6aa5355ba6c12
|
42 | 38 | with:
|
|
54 | 50 | - name: Analyze code
|
55 | 51 | if: always() && steps.install.outcome == 'success'
|
56 | 52 | run: flutter analyze --fatal-infos
|
| 53 | + - name: Enable KVM group perms |
| 54 | + run: | |
| 55 | + echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules |
| 56 | + sudo udevadm control --reload-rules |
| 57 | + sudo udevadm trigger --name-match=kvm |
57 | 58 | - name: Run tests
|
58 | 59 | uses: reactivecircus/android-emulator-runner@62dbb605bba737720e10b196cb4220d374026a6d
|
59 | 60 | if: always() && steps.install.outcome == 'success'
|
|
62 | 63 | # - .github/workflows/cronet.yml
|
63 | 64 | # - pkgs/cronet_http/android/build.gradle
|
64 | 65 | # - pkgs/cronet_http/example/android/app/build.gradle
|
65 |
| - api-level: 21 |
| 66 | + |
| 67 | + # Google Play services does not support older Android API levels; |
| 68 | + # as of March 2025, they supported API level 23 and higher. Instead |
| 69 | + # of breaking when support for API level 23 is removed, just run |
| 70 | + # the tests that rely on Google Play services with the newest API |
| 71 | + # level (34 as of March 2025). The tests that don't rely on Google |
| 72 | + # Play serviecs can test the oldest supported API level. |
| 73 | + api-level: ${{ matrix.cronetHttpNoPlay == 'true' && '21' || '29' }} |
| 74 | + disable-animations: true |
66 | 75 | arch: x86_64
|
67 | 76 | target: ${{ matrix.cronetHttpNoPlay == 'true' && 'default' || 'google_apis' }}
|
68 | 77 | script: cd pkgs/cronet_http/example && flutter test --dart-define=cronetHttpNoPlay=${{ matrix.cronetHttpNoPlay }} --timeout=1200s integration_test/
|
0 commit comments