Skip to content

Faucet Polling in E2E Tests #427

Faucet Polling in E2E Tests

Faucet Polling in E2E Tests #427

Workflow file for this run

name: E2E Tests
on:
push:
branches:
- main
pull_request:
branches:
- main
types:
- opened
- reopened
- edited
- labeled
- synchronize
schedule:
- cron: '0 0 * * *'
workflow_dispatch:
inputs:
network:
description: 'Select the blockchain network for testing'
required: false
default: 'emerynet'
type: choice
options:
- emerynet
- devnet
- ollinet
- xnet
- local
a3p_image_tag:
description: 'Docker image tag for the a3p chain to use in testing'
required: false
type: string
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
e2e:
runs-on: ubuntu-latest
env:
AGORIC_NET: >-
${{ github.event.inputs.network
|| contains(github.event.pull_request.labels.*.name, 'emerynet') && 'emerynet'
|| contains(github.event.pull_request.labels.*.name, 'devnet') && 'devnet'
|| contains(github.event.pull_request.labels.*.name, 'ollinet') && 'ollinet'
|| contains(github.event.pull_request.labels.*.name, 'xnet') && 'xnet'
|| github.event_name == 'schedule' && 'emerynet'
|| 'local'
}}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Run E2E Tests
run: |
docker compose -f test/e2e/docker-compose.yml --profile $SYNPRESS_PROFILE up --build --exit-code-from synpress
env:
A3P_IMAGE_TAG: ${{ inputs.a3p_image_tag || 'latest' }}
SYNPRESS_PROFILE: ${{ env.AGORIC_NET == 'local' && 'synpress' || 'daily-tests' }}
COMPOSE_DOCKER_CLI_BUILD: 1
DOCKER_BUILDKIT: 1
DOCKER_DEFAULT_PLATFORM: linux/amd64
NGROK_AUTH: ${{ secrets.NGROK_AUTH }}
NGROK_BASIC_AUTH: ${{ secrets.NGROK_BASIC_AUTH }}
CYPRESS_PRIVATE_KEY_WITH_FUNDS: ${{ secrets.CYPRESS_PRIVATE_KEY_WITH_FUNDS }}
CYPRESS_ENVIRONMENT: ci
CYPRESS_AGORIC_NET: ${{ env.AGORIC_NET }}
ANVIL_FORK_URL: ${{ secrets.ANVIL_FORK_URL }}
GH_PAT: ${{ secrets.GH_PAT }}
GH_USERNAME: ${{ secrets.GH_USERNAME }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CYPRESS_PROJECT_ID: ${{ secrets.CYPRESS_PROJECT_ID }}
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
COMMIT_INFO_MESSAGE: ${{ github.event.pull_request.title }}
COMMIT_INFO_SHA: ${{ github.event.pull_request.head.sha }}
- name: Upload Artifacts
uses: actions/upload-artifact@v4
if: always()
with:
name: e2e-artifacts
path: |
test/e2e/cypress/videos
test/e2e/cypress/screenshots
continue-on-error: true
- name: Notify About Failure
if: >
failure() && github.event_name != 'pull_request' &&
github.repository_owner == 'agoric'
uses: ./.github/actions/notify-status
with:
webhook: ${{ secrets.SLACK_WEBHOOK_URL }}
continue-on-error: true