Merge pull request #3663 from osmosis-labs/stage #3691
This file contains 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: Production frontend E2E tests | |
on: | |
push: | |
branches: | |
- master | |
workflow_dispatch: | |
jobs: | |
wait-for-deployment: | |
runs-on: ubuntu-latest | |
outputs: | |
environment_url: ${{steps.vercel.outputs.environment_url}} | |
steps: | |
- name: Check out repository | |
uses: actions/checkout@v4 | |
- id: vercel | |
env: | |
BRANCH_NAME: ${{ github.head_ref || github.ref_name }} | |
VERCEL_TOKEN: ${{ secrets.VERCEL_TOKEN }} | |
VERCEL_PROJECT: ${{ secrets.VERCEL_PROJECT }} | |
VERCEL_TARGET: "production" | |
run: | | |
echo "$BRANCH_NAME" | |
python -m pip install requests | |
cd .github && python await_deployment.py | |
- name: Echo GITHUB_OUTPUT environment_url | |
env: | |
environment_url: ${{ steps.vercel.outputs.environment_url }} | |
run: echo "$environment_url" | |
prod-e2e-tests: | |
runs-on: macos-latest | |
needs: wait-for-deployment | |
environment: | |
name: prod_swap_test | |
steps: | |
- name: Check out repository | |
uses: actions/checkout@v4 | |
- name: Setup Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20.x | |
- name: Cache dependencies | |
uses: actions/cache@v4 | |
with: | |
path: "**/node_modules" | |
key: ${{ runner.OS }}-20.x-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.OS }}-20.x- | |
- name: Install Playwright | |
run: | | |
yarn --cwd packages/web install --frozen-lockfile && npx playwright install --with-deps chromium | |
- name: Run Swap Pair tests on Master | |
env: | |
BASE_URL: "https://app.osmosis.zone" | |
PRIVATE_KEY: ${{ secrets.PRIVATE_KEY }} | |
run: | | |
cd packages/web | |
npx playwright test -g "Test Swap feature" | |
- name: upload test results | |
if: always() | |
id: e2e-test-results | |
uses: actions/upload-artifact@v4 | |
with: | |
name: main-e2e-test-results | |
path: packages/web/playwright-report | |
- name: Send Slack alert if test fails | |
id: slack | |
if: failure() | |
uses: slackapi/[email protected] | |
with: | |
payload: | | |
{ | |
"text": "🚨 FE E2E Tests Failure Alert 🚨", | |
"blocks": [ | |
{ | |
"type": "header", | |
"text": { | |
"type": "plain_text", | |
"text": "FE E2E Tests Failure" | |
} | |
}, | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "*Environment:* production\n*App URL:* https://app.osmosis.zone" | |
} | |
}, | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "Click here to view the run: <${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}|GitHub Actions Run>" | |
} | |
} | |
] | |
} | |
env: | |
SLACK_WEBHOOK_URL: ${{ secrets.SERVER_E2E_TESTS_SLACK_WEBHOOK_URL }} | |
SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK |