-
Notifications
You must be signed in to change notification settings - Fork 15
39 lines (39 loc) · 1.33 KB
/
qa.yml
File metadata and controls
39 lines (39 loc) · 1.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
name: QA
on:
schedule:
- cron: '0 */4 * * *' # Every 4 hours — quality sweep
- cron: '30 1 * * 1' # Every Monday 1:30am UTC — Telegram soak test (offset from */4 to avoid dedup)
- cron: '0 6 * * *' # Daily 6am UTC — Interactive E2E (1 agent, 1 cloud)
workflow_dispatch:
inputs:
reason:
description: 'QA mode to trigger'
required: false
default: 'schedule'
type: choice
options:
- schedule
- e2e
- e2e-interactive
- fixtures
- soak
jobs:
trigger:
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- name: Trigger QA cycle
env:
SPRITE_URL: ${{ secrets.QA_SPRITE_URL }}
TRIGGER_SECRET: ${{ secrets.QA_TRIGGER_SECRET }}
run: |
if [ "${{ github.event_name }}" = "schedule" ] && [ "${{ github.event.schedule }}" = "30 1 * * 1" ]; then
REASON="soak"
elif [ "${{ github.event_name }}" = "schedule" ] && [ "${{ github.event.schedule }}" = "0 6 * * *" ]; then
REASON="e2e-interactive"
else
REASON="${{ github.event.inputs.reason || 'schedule' }}"
fi
curl -sS --fail-with-body -X POST \
"${SPRITE_URL}/trigger?reason=${REASON}" \
-H "Authorization: Bearer ${TRIGGER_SECRET}"