# name: Playwright Tests # on: # pull_request: # branches: # - main # jobs: # build: # timeout-minutes: 10 # runs-on: ubuntu-latest # steps: # - uses: actions/checkout@v4 # - uses: actions/setup-node@v4 # with: # node-version: lts/* # - name: Caching # uses: actions/cache@v4 # with: # path: | # ~/.npm # ${{ github.workspace }}/.next/cache # key: ${{ runner.os }}-nextjs-${{ hashFiles('**/package-lock.json') }}-${{ hashFiles('**/*.js', '**/*.jsx', '**/*.ts', '**/*.tsx') }} # restore-keys: | # ${{ runner.os }}-nextjs-${{ hashFiles('**/package-lock.json') }}- # - name: Set environment variables # run: | # echo NEXT_PUBLIC_AUTH_GOOGLE_ID=${{ secrets.NEXT_PUBLIC_AUTH_GOOGLE_ID }} >> $GITHUB_ENV # echo NEXT_PUBLIC_AUTH_GOOGLE_SECRET=${{ secrets.NEXT_PUBLIC_AUTH_GOOGLE_SECRET }} >> $GITHUB_ENV # echo NEXT_PUBLIC_DUMMY_EMAIL=${{ secrets.NEXT_PUBLIC_DUMMY_EMAIL }} >> $GITHUB_ENV # echo NEXT_PUBLIC_DUMMY_PASSWORD=${{ secrets.NEXT_PUBLIC_DUMMY_PASSWORD }} >> $GITHUB_ENV # echo NEXT_PUBLIC_STRIPE_PUBLIC_KEY=${{ secrets.NEXT_PUBLIC_STRIPE_PUBLIC_KEY }} >> $GITHUB_ENV # echo NEXT_PUBLIC_SUPABASE_ANON_KEY=${{ secrets.NEXT_PUBLIC_SUPABASE_ANON_KEY }} >> $GITHUB_ENV # echo NEXT_PUBLIC_SUPABASE_URL=${{ secrets.NEXT_PUBLIC_SUPABASE_URL }} >> $GITHUB_ENV # echo NEXT_PUBLIC_SUPABASE_URL_SOURCE=${{ secrets.NEXT_PUBLIC_SUPABASE_URL_SOURCE }} >> $GITHUB_ENV # echo NEXT_PUBLIC_TEST_URL=${{ secrets.NEXT_PUBLIC_TEST_URL }} >> $GITHUB_ENV # echo PROJECT_ID=${{ secrets.PROJECT_ID }} >> $GITHUB_ENV # echo STRIPE_SECRET_KEY=${{ secrets.STRIPE_SECRET_KEY }} >> $GITHUB_ENV # echo SUPABASE_SERVICE_ROLE_KEY=${{ secrets.SUPABASE_SERVICE_ROLE_KEY }} >> $GITHUB_ENV # echo NEXT_PUBLIC_TEST_USER_EMAIL=${{ secrets.NEXT_PUBLIC_TEST_USER_EMAIL }} >> $GITHUB_ENV # echo NEXT_PUBLIC_TEST_USER_PASSWORD=${{ secrets.NEXT_PUBLIC_TEST_USER_PASSWORD }} >> $GITHUB_ENV # echo NEXT_PUBLIC_SITEKEY=${{ secrets.NEXT_PUBLIC_SITEKEY }} >> $GITHUB_ENV # echo BASE_URL=${{ secrets.BASE_URL }} >> $GITHUB_ENV # - name: Install dependencies # run: npm ci # - name: Install Playwright Browsers # run: npx playwright install --with-deps # - name: Run Playwright tests with 1 workers # run: npx playwright test --workers=1 # - uses: actions/upload-artifact@v4 # if: ${{ !cancelled() }} # with: # name: playwright-report # path: playwright-report/ # retention-days: 30