work on postgress / will prob remove and work on ib exchanges and symbols
This commit is contained in:
parent
cce5126cb7
commit
a20a11c1aa
16 changed files with 1441 additions and 95 deletions
134
scripts/setup-playwright.sh
Executable file
134
scripts/setup-playwright.sh
Executable file
|
|
@ -0,0 +1,134 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Playwright Setup Script for Stock Bot
|
||||
# This script specifically handles Playwright installation and browser setup
|
||||
|
||||
set -e
|
||||
|
||||
# Colors
|
||||
GREEN='\033[0;32m'
|
||||
BLUE='\033[0;34m'
|
||||
RED='\033[0;31m'
|
||||
NC='\033[0m'
|
||||
|
||||
log_info() {
|
||||
echo -e "${BLUE}[INFO]${NC} $1"
|
||||
}
|
||||
|
||||
log_success() {
|
||||
echo -e "${GREEN}[SUCCESS]${NC} $1"
|
||||
}
|
||||
|
||||
log_error() {
|
||||
echo -e "${RED}[ERROR]${NC} $1"
|
||||
}
|
||||
|
||||
# Check if we're in the project directory
|
||||
check_project_directory() {
|
||||
if [[ ! -f "package.json" ]]; then
|
||||
log_error "Please run this script from the project root directory"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
# Install Playwright dependencies
|
||||
install_playwright_deps() {
|
||||
log_info "Installing Playwright system dependencies..."
|
||||
bunx playwright install-deps chromium
|
||||
log_success "Playwright system dependencies installed"
|
||||
}
|
||||
|
||||
# Install Playwright browsers
|
||||
install_browsers() {
|
||||
log_info "Installing Playwright browsers..."
|
||||
|
||||
# Install all browsers
|
||||
bunx playwright install chromium
|
||||
bunx playwright install firefox
|
||||
bunx playwright install webkit
|
||||
|
||||
log_success "All Playwright browsers installed"
|
||||
}
|
||||
|
||||
# Test Playwright installation
|
||||
test_playwright() {
|
||||
log_info "Testing Playwright installation..."
|
||||
|
||||
# Create a simple test script
|
||||
cat > /tmp/test-playwright.js << 'EOF'
|
||||
const { chromium } = require('playwright');
|
||||
|
||||
(async () => {
|
||||
try {
|
||||
const browser = await chromium.launch({ headless: true });
|
||||
const page = await browser.newPage();
|
||||
await page.goto('https://example.com');
|
||||
const title = await page.title();
|
||||
console.log('✅ Playwright test successful! Page title:', title);
|
||||
await browser.close();
|
||||
} catch (error) {
|
||||
console.error('❌ Playwright test failed:', error.message);
|
||||
process.exit(1);
|
||||
}
|
||||
})();
|
||||
EOF
|
||||
|
||||
# Run the test
|
||||
node /tmp/test-playwright.js
|
||||
|
||||
# Clean up
|
||||
rm /tmp/test-playwright.js
|
||||
|
||||
log_success "Playwright test completed successfully"
|
||||
}
|
||||
|
||||
# Main function
|
||||
main() {
|
||||
log_info "Setting up Playwright for Stock Bot..."
|
||||
|
||||
check_project_directory
|
||||
install_playwright_deps
|
||||
install_browsers
|
||||
test_playwright
|
||||
|
||||
log_success "Playwright setup completed!"
|
||||
log_info "You can now run your browser automation scripts"
|
||||
}
|
||||
|
||||
# Show help
|
||||
show_help() {
|
||||
echo "Playwright Setup Script for Stock Bot"
|
||||
echo ""
|
||||
echo "Usage: $0 [OPTIONS]"
|
||||
echo ""
|
||||
echo "Options:"
|
||||
echo " -h, --help Show this help message"
|
||||
echo " --test-only Only run the Playwright test"
|
||||
echo " --deps-only Only install system dependencies"
|
||||
echo ""
|
||||
}
|
||||
|
||||
# Parse arguments
|
||||
case "${1:-}" in
|
||||
-h|--help)
|
||||
show_help
|
||||
exit 0
|
||||
;;
|
||||
--test-only)
|
||||
check_project_directory
|
||||
test_playwright
|
||||
exit 0
|
||||
;;
|
||||
--deps-only)
|
||||
install_playwright_deps
|
||||
exit 0
|
||||
;;
|
||||
"")
|
||||
main
|
||||
;;
|
||||
*)
|
||||
log_error "Unknown option: $1"
|
||||
show_help
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
Loading…
Add table
Add a link
Reference in a new issue