Skip to content

E2E Tests Nightly

E2E Tests Nightly #31

Workflow file for this run

name: E2E Tests Nightly
on:
schedule:
# Runs "At 01:00 every night except weekends"
- cron: '0 1 * * 1-5'
workflow_dispatch:
concurrency:
group: ${{ github.ref }}
cancel-in-progress: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
jobs:
build-compose-apks:
name: Build
uses: ./.github/workflows/e2e-build.yml
with:
app: compose
run-compose-tests-nightly:
name: Test compose
runs-on: ubuntu-24.04
needs: build-compose-apks
strategy:
matrix:
include:
- android_api_level: 35
- android_api_level: 34
- android_api_level: 33
- android_api_level: 32
- android_api_level: 31
- android_api_level: 29
- android_api_level: 28
fail-fast: false
env:
ANDROID_API_LEVEL: ${{ matrix.android_api_level }}
steps:
- name: Connect Bot
uses: webfactory/[email protected]
with:
ssh-private-key: ${{ secrets.BOT_SSH_PRIVATE_KEY }}
- uses: actions/[email protected]
- uses: actions/[email protected]
continue-on-error: true
with:
name: apks
- uses: ./.github/actions/setup-java
- uses: ./.github/actions/enable-kvm
- uses: ./.github/actions/setup-ruby
- uses: ./.github/actions/allure-launch
with:
allure-token: ${{ secrets.ALLURE_TOKEN }}
cron: true
- name: Run tests
uses: reactivecircus/android-emulator-runner@v2
timeout-minutes: 120
with:
api-level: ${{ env.ANDROID_API_LEVEL }}
disable-animations: true
profile: pixel
arch : x86_64
emulator-options: ${{ vars.EMULATOR_OPTIONS }}
script: bundle exec fastlane run_e2e_test
- name: Allure TestOps Upload
run: bundle exec fastlane allure_upload
if: success() || failure()
env:
ALLURE_TOKEN: ${{ secrets.ALLURE_TOKEN }}
LAUNCH_ID: ${{ env.LAUNCH_ID }}
- name: Allure TestOps Launch Removal
run: bundle exec fastlane allure_launch_removal
if: cancelled()
env:
ALLURE_TOKEN: ${{ secrets.ALLURE_TOKEN }}
LAUNCH_ID: ${{ env.LAUNCH_ID }}
- name: Upload test results
uses: actions/[email protected]
if: failure()
with:
name: test_report
path: |
./**/build/reports/androidTests/*
fastlane/stream-chat-test-mock-server/logs/*