1
0
Fork 0
mirror of https://github.com/imjasonh/gitscrub synced 2026-07-07 02:52:18 +00:00
gitscrub/scripts/test-with-netlify.js
Jason Hall 4a77cbcfb0
Switch from OAuth device flow to standard OAuth2 web flow
- Replace device flow with standard OAuth2 authorization code flow
- Add auth-start.js and auth-callback.js Netlify functions
- Create AuthSuccess page to handle OAuth callbacks
- Remove device flow UI components and polling logic
- Add CSRF protection with state parameter
- Update all documentation to reflect web flow
- Remove unauthenticated access - authentication now required
- Update tests for new authentication requirements
- Add test helper script for Netlify dev server

This provides a more familiar OAuth experience where users are
redirected to GitHub for authorization rather than entering codes.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-16 16:05:06 -04:00

37 lines
No EOL
1,004 B
JavaScript
Executable file

#!/usr/bin/env node
import { execSync } from 'child_process';
import { spawn } from 'child_process';
console.log('Checking for Netlify CLI...');
try {
execSync('netlify --version', { stdio: 'ignore' });
console.log('✓ Netlify CLI is installed');
} catch (error) {
console.error('✗ Netlify CLI is not installed');
console.error('Please install it with: npm install -g netlify-cli');
process.exit(1);
}
// Check for .env file
import { existsSync } from 'fs';
if (!existsSync('.env')) {
console.error('✗ .env file not found');
console.error('Please create one with: cp .env.example .env');
console.error('Then add your GITHUB_CLIENT_ID');
process.exit(1);
}
console.log('✓ Environment configured');
console.log('Starting Playwright tests with Netlify dev server...\n');
// Run playwright test
const playwright = spawn('npx', ['playwright', 'test', ...process.argv.slice(2)], {
stdio: 'inherit',
shell: true
});
playwright.on('exit', (code) => {
process.exit(code);
});