feat(broadcast): add markdown preview and render markdown in emails (… #3607
This file contains hidden or 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: E2E Tests | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| merge_group: | |
| jobs: | |
| e2e-tests: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Cancel Previous Runs | |
| uses: styfle/cancel-workflow-action@0.12.1 | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| cache: "npm" | |
| node-version-file: ".nvmrc" | |
| - name: Setup Golang with cache | |
| uses: magnetikonline/action-golang-cache@v5 | |
| with: | |
| go-version-file: go.mod | |
| cache-key-suffix: e2e | |
| - name: Next.js cache | |
| uses: actions/cache@v4 | |
| with: | |
| path: ${{ github.workspace }}/.next/cache | |
| # Generate a new cache whenever packages, source files, or proto files change. | |
| key: ${{ runner.os }}-nextjs-${{ hashFiles('**/package-lock.json') }}-${{ hashFiles('**/*.proto') }}-${{ hashFiles('**/*.js', '**/*.jsx', '**/*.ts', '**/*.tsx') }} | |
| # If source files changed but packages/proto didn't, rebuild from a prior cache. | |
| restore-keys: | | |
| ${{ runner.os }}-nextjs-${{ hashFiles('**/package-lock.json') }}-${{ hashFiles('**/*.proto') }}- | |
| - name: Get go binaries path | |
| id: go-bin-path | |
| run: echo "PATH=$(go env GOPATH)/bin" >> "$GITHUB_OUTPUT" | |
| - name: Cache atlas | |
| id: cache | |
| uses: actions/cache@v4 | |
| with: | |
| path: ${{ steps.go-bin-path.outputs.PATH }} | |
| key: ${{ runner.os }}-atlas-bin5-v1.1.0 | |
| - name: Install atlas | |
| if: steps.cache.outputs.cache-hit != 'true' | |
| run: make install-atlas | |
| - run: go install ./backend | |
| - uses: cypress-io/github-action@v6 | |
| with: | |
| browser: chrome | |
| build: cp .env.example .env.local | |
| start: backend e2e-infra --ci | |
| wait-on: 'npx wait-on --timeout 250000 http://localhost:3000' | |
| env: | |
| # Or as an environment variable | |
| PINATA_JWT: ${{ secrets.TEST_PINATA_JWT }} | |
| CLERK_SECRET_KEY: ${{ secrets.TEST_CLERK_SECRET_KEY }} | |
| ZENAO_CLERK_SECRET_KEY: ${{ secrets.TEST_CLERK_SECRET_KEY }} | |
| - name: Upload errors screenshots | |
| uses: actions/upload-artifact@v4 | |
| if: failure() | |
| with: | |
| name: cypress-screenshots | |
| path: cypress/screenshots | |
| - name: Upload errors videos | |
| uses: actions/upload-artifact@v4 | |
| if: failure() | |
| with: | |
| name: cypress-videos | |
| path: cypress/videos |