文件

51 行
1.4 KiB
YAML

name: ci-live-smoke
on:
workflow_dispatch:
schedule:
- cron: "20 20 * * *"
jobs:
live-smoke:
runs-on: ubuntu-latest
timeout-minutes: 20
env:
LIVE_SMOKE_BASE_URL: ${{ secrets.LIVE_SMOKE_BASE_URL }}
LIVE_SMOKE_ADMIN_IDENTIFIER: ${{ secrets.LIVE_SMOKE_ADMIN_IDENTIFIER }}
LIVE_SMOKE_ADMIN_PASSWORD: ${{ secrets.LIVE_SMOKE_ADMIN_PASSWORD }}
LIVE_SMOKE_EMPLOYEE_IDENTIFIER: ${{ secrets.LIVE_SMOKE_EMPLOYEE_IDENTIFIER }}
LIVE_SMOKE_EMPLOYEE_PASSWORD: ${{ secrets.LIVE_SMOKE_EMPLOYEE_PASSWORD }}
LIVE_EXPECT_WECOM_STATUS: ${{ secrets.LIVE_EXPECT_WECOM_STATUS }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: "22"
cache: npm
cache-dependency-path: client/package-lock.json
- name: Install client dependencies
working-directory: client
run: npm ci
- name: Install Playwright browsers
working-directory: client
run: npx playwright install --with-deps
- name: Run live smoke
run: bash scripts/qa/run-web-gates.sh smoke-live
- name: Upload Playwright report
if: always()
uses: actions/upload-artifact@v4
with:
name: live-smoke-report-${{ github.run_id }}
path: |
client/playwright-report
client/test-results
if-no-files-found: ignore