#!/bin/bash # Script to seed visual regression snapshots using Playwright Docker container # This ensures the snapshots are generated in the same environment as CI set -e echo "🚀 Seeding visual regression snapshots using Playwright Docker container..." # Check if Docker is available if ! command -v docker &> /dev/null; then echo "❌ Docker is not installed or not available in PATH" exit 1 fi # Run the Playwright container and generate snapshots docker run --rm -it \ -v "$(pwd):/work" \ -w /work \ mcr.microsoft.com/playwright:v1.54.2-jammy \ bash -c " echo '📦 Installing dependencies...' npm ci echo '🎭 Installing Playwright browsers...' npx playwright install --with-deps echo '🔨 Building application...' npm run build echo '🌐 Starting preview server...' npm run preview & sleep 10 echo '📸 Generating snapshots...' npx playwright test tests/e2e/visual-regression.spec.ts --project=chromium --update-snapshots=all echo '✅ Snapshots generated successfully!' " echo "🎉 Snapshot seeding completed!" echo "📁 Check the generated snapshots in: tests/e2e/visual-regression.spec.ts-snapshots/" echo "💡 Don't forget to commit the snapshot files to your repository"