| name: package:ok_http CI |
| |
| on: |
| push: |
| branches: |
| - main |
| - master |
| paths: |
| - '.github/workflows/okhttp.yaml' |
| - 'pkgs/ok_http/**' |
| - 'pkgs/http_client_conformance_tests/**' |
| pull_request: |
| paths: |
| - '.github/workflows/okhttp.yaml' |
| - 'pkgs/ok_http/**' |
| - 'pkgs/http_client_conformance_tests/**' |
| schedule: |
| - cron: "0 0 * * 0" |
| |
| env: |
| PUB_ENVIRONMENT: bot.github |
| |
| jobs: |
| verify: |
| name: Format & Analyze & Test |
| runs-on: ubuntu-cpu16-ram64 |
| defaults: |
| run: |
| working-directory: pkgs/ok_http |
| steps: |
| - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 |
| - uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 |
| with: |
| distribution: 'zulu' |
| java-version: '17' |
| - uses: subosito/flutter-action@e938fdf56512cc96ef2f93601a5a40bde3801046 |
| with: |
| channel: 'stable' |
| - id: install |
| name: Install dependencies |
| run: flutter pub get |
| - name: Check formatting |
| if: always() && steps.install.outcome == 'success' |
| run: dart format --output=none --set-exit-if-changed . |
| - name: Analyze code |
| if: always() && steps.install.outcome == 'success' |
| run: flutter analyze --fatal-infos |
| - name: Enable KVM group perms |
| 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 |
| - name: Run tests |
| uses: reactivecircus/android-emulator-runner@1dcd0090116d15e7c562f8db72807de5e036a4ed |
| if: always() && steps.install.outcome == 'success' |
| with: |
| # api-level/minSdkVersion should be help in sync in: |
| # - .github/workflows/okhttp.yml |
| # - pkgs/ok_http/android/build.gradle |
| # - pkgs/ok_http/example/android/app/build.gradle |
| api-level: 21 |
| arch: x86_64 |
| script: cd pkgs/ok_http/example && flutter test --timeout=1200s integration_test/ |