Multi-Agent V3, Trail/Blaze architecture, accessibility driver, and desktop app improvements #310
Workflow file for this run
This file contains hidden or 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: Checks | |
| on: | |
| # Runs on PRs targeting the default branch | |
| pull_request: | |
| branches: [ "main" ] | |
| # Runs after merging to the default branch | |
| push: | |
| branches: [ "main" ] | |
| # Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. | |
| # However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. | |
| concurrency: | |
| group: ci-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| # Run Tests | |
| checks: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup Java | |
| uses: actions/setup-java@v4 | |
| with: | |
| distribution: 'zulu' | |
| java-version: '17' | |
| check-latest: true | |
| - name: Test on Ubuntu | |
| run: ./gradlew assemble check | |
| - name: Verify Documentation is up-to-date | |
| run: ./scripts/generate-docs-and-diff.sh | |
| # Run Android Instrumentation Tests | |
| android-tests: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 60 | |
| env: | |
| OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }} | |
| steps: | |
| - name: Enable KVM group perms | |
| if: runner.os == 'Linux' | |
| 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 | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Setup Java | |
| uses: actions/setup-java@v4 | |
| with: | |
| distribution: zulu | |
| java-version: 17 | |
| - name: Setup Android SDK | |
| uses: android-actions/setup-android@9fc6c4e9069bf8d3d10b2204b1fb8f6ef7065407 | |
| - name: Create and start emulator and run tests (Linux) | |
| if: runner.os == 'Linux' | |
| uses: reactivecircus/android-emulator-runner@b530d96654c385303d652368551fb075bc2f0b6b | |
| id: run-tests-linux | |
| continue-on-error: true | |
| with: | |
| api-level: 34 | |
| arch: x86_64 | |
| disable-animations: true | |
| disk-size: 6000M | |
| heap-size: 600M | |
| profile: Nexus 6 | |
| script: ./.github/pr_run_android_tests.sh | |
| - name: Verify logs were pulled | |
| if: always() | |
| run: ./.github/pr_verify_logs_were_pulled.sh | |
| - name: Generate Trailblaze report | |
| if: always() | |
| continue-on-error: true | |
| run: ./.github/pr_generate_trailblaze_report.sh | |
| - name: Create artifacts | |
| if: always() | |
| continue-on-error: true | |
| run: ./.github/pr_create_artifacts.sh | |
| - name: Upload artifacts | |
| if: always() # Ensures this runs even if the previous step failed | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: trailblaze-artifacts | |
| path: | | |
| trailblaze-logs.zip | |
| trailblaze_report.html | |
| logcat.log | |
| - name: Fail if tests failed | |
| if: steps.run-tests-linux.outcome == 'failure' | |
| run: | | |
| echo "Tests failed - failing the workflow" | |
| exit 1 |