Files
lucidia-main/.github/workflows/e2e-blackroad.yml
2026-02-28 23:00:10 +00:00

63 lines
2.2 KiB
YAML

name: E2E BlackRoad.io
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
workflow_dispatch:
jobs:
e2e:
runs-on: ubuntu-latest
permissions:
contents: read
env:
STRIPE_SECRET_KEY: ${{ secrets.STRIPE_SECRET_KEY }}
CLERK_SECRET_KEY: ${{ secrets.CLERK_SECRET_KEY }}
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY: ${{ secrets.NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY }}
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY: ${{ secrets.NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY }}
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Install dependencies
working-directory: blackroad_site
run: |
if [ -f package-lock.json ]; then npm ci; elif [ -f package.json ]; then npm install; else echo "No JS deps"; fi
- name: Stripe CLI setup
run: |
curl -s https://packages.stripe.dev/api/security/keypair/stripe-cli-gpg/public | gpg --dearmor -o /usr/share/keyrings/stripe.gpg
echo "deb [signed-by=/usr/share/keyrings/stripe.gpg] https://packages.stripe.dev/stripe-cli-debian-local stable main" | sudo tee /etc/apt/sources.list.d/stripe.list
sudo apt-get update && sudo apt-get install -y stripe || echo "Stripe CLI install skipped"
- name: Run E2E tests
working-directory: blackroad_site
run: |
if [ -f package.json ] && grep -q '"test:e2e"' package.json; then
npm run test:e2e
else
echo "::warning::No E2E test script found — add test:e2e to blackroad_site/package.json"
fi
- name: Verify Stripe webhook signatures
run: |
if [ -n "$STRIPE_SECRET_KEY" ]; then
echo "Stripe key configured — webhook verification ready"
else
echo "::warning::STRIPE_SECRET_KEY not set — add it in repo secrets"
fi
- name: Verify Clerk auth
run: |
if [ -n "$CLERK_SECRET_KEY" ]; then
echo "Clerk key configured — auth verification ready"
else
echo "::warning::CLERK_SECRET_KEY not set — add it in repo secrets"
fi