diff --git a/.github/workflows/pr_checks.yml b/.github/workflows/pr_checks.yml new file mode 100644 index 0000000..1ace8bb --- /dev/null +++ b/.github/workflows/pr_checks.yml @@ -0,0 +1,50 @@ +name: UI Tests + +concurrency: + # Support push/pr as event types with different behaviors each: + # 1. push: queue up builds + # 2. pr: only allow one run per PR + group: ${{ github.workflow }}-${{ github.event.type }}${{ github.event.pull_request.number }} + # If there is already a workflow running for the same pull request, cancel it + cancel-in-progress: ${{ github.event_name == 'pull_request' }} + +env: + VERCEL_ORG_ID: ${{ secrets.VERCEL_TEAM_ID }} + VERCEL_PROJECT_ID: ${{ secrets.UI_TEST_WALLET_V2_VERCEL_PROJECT_ID }} + +on: + pull_request: + branches: + - main + +jobs: + preview: + runs-on: ubuntu-latest + outputs: + preview-url: ${{ steps.preview.outputs.PREVIEW_URL }} + steps: + - uses: actions/checkout@v4 + - name: Install Vercel CLI + run: npm install --global vercel@latest + - name: Pull Vercel Environment Information + run: vercel pull --yes --environment=preview --token=${{ secrets.UI_TEST_VERCEL_TOKEN }} + - name: Build Project Artifacts + run: vercel build --token=${{ secrets.UI_TEST_VERCEL_TOKEN }} + - name: Deploy Project Artifacts to Vercel + run: vercel deploy --prebuilt --token=${{ secrets.UI_TEST_VERCEL_TOKEN }} > preview.txt + - name: preview + id: preview + run: echo "PREVIEW_URL=$(cat preview.txt | tail -n 1)" >> "$GITHUB_OUTPUT" + + ui-test: + needs: preview + with: + base-url: https://lab.web3modal.com/ + wallet-url: ${{ needs.preview.outputs.preview-url }}/ + skip-playwright-webserver: true + branch: V3 + command: playwright:test:wallet + uses: WalletConnect/web3modal/.github/workflows/ui_tests.yml@V3 + secrets: + NEXT_PUBLIC_PROJECT_ID: ${{ secrets.UI_TEST_PROJECT_ID }} + TESTS_NEXTAUTH_SECRET: ${{ secrets.TESTS_NEXTAUTH_SECRET }}