-
Notifications
You must be signed in to change notification settings - Fork 9
Expand file tree
/
Copy pathgridwolf.bat
More file actions
92 lines (78 loc) · 3.09 KB
/
gridwolf.bat
File metadata and controls
92 lines (78 loc) · 3.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
@echo off
:: Gridwolf — Windows Launcher
:: Double-click this file to start Gridwolf
:: Requires: Python 3.9+ and Node.js 18+
title Gridwolf - ICS/OT Security Platform
color 0B
echo.
echo ╔══════════════════════════════════════════════╗
echo ║ GRIDWOLF - OT Security ║
echo ║ Passive ICS/SCADA Network Discovery ║
echo ╚══════════════════════════════════════════════╝
echo.
:: Check if Docker is available
docker --version >nul 2>&1
if %ERRORLEVEL% EQU 0 (
echo [*] Docker detected - using containerized setup...
echo [*] Building and starting containers...
docker compose up --build -d
echo.
echo [+] Gridwolf is starting...
timeout /t 10 /nobreak >nul
echo [+] Opening browser...
start http://localhost:3000
echo.
echo Frontend: http://localhost:3000
echo API Docs: http://localhost:8000/docs
echo Login: Click 'Demo Login'
echo.
echo Stop: docker compose down
echo.
pause
exit /b
)
:: Native install fallback
echo [*] Docker not found - using native install...
echo.
:: Check Python
python --version >nul 2>&1
if %ERRORLEVEL% NEQ 0 (
echo [!] Python 3.9+ is required. Download from https://python.org
pause
exit /b 1
)
:: Check Node
node --version >nul 2>&1
if %ERRORLEVEL% NEQ 0 (
echo [!] Node.js 18+ is required. Download from https://nodejs.org
pause
exit /b 1
)
echo [1/4] Installing backend dependencies...
cd backend
python -m pip install -e "." --quiet
cd ..
echo [2/4] Installing frontend dependencies...
cd frontend
call npm install --silent
cd ..
echo [3/4] Starting backend server...
start /B "Gridwolf Backend" cmd /c "cd backend && python -m uvicorn app.main:app --host 0.0.0.0 --port 8000"
echo [4/4] Starting frontend server...
start /B "Gridwolf Frontend" cmd /c "cd frontend && npm run dev -- --port 5174"
timeout /t 5 /nobreak >nul
echo.
echo ╔══════════════════════════════════════════════╗
echo ║ Gridwolf is running! ║
echo ╠══════════════════════════════════════════════╣
echo ║ Frontend: http://localhost:5174 ║
echo ║ API Docs: http://localhost:8000/docs ║
echo ║ Login: Click 'Demo Login' ║
echo ╚══════════════════════════════════════════════╝
echo.
start http://localhost:5174
echo Press any key to stop Gridwolf...
pause >nul
taskkill /FI "WINDOWTITLE eq Gridwolf Backend" /F >nul 2>&1
taskkill /FI "WINDOWTITLE eq Gridwolf Frontend" /F >nul 2>&1
echo [+] Gridwolf stopped.