refactor: remove manual process management from start-all.ps1 and add memory architecture planning document
This commit is contained in:
105
start-all.ps1
105
start-all.ps1
@@ -31,71 +31,50 @@ foreach ($port in 9331, 9332, 9333) {
|
||||
}
|
||||
}
|
||||
|
||||
$ProcessList = @()
|
||||
|
||||
try {
|
||||
Write-Host "=========================================="
|
||||
Write-Host "Starting Loyalty Agent Services"
|
||||
Write-Host "=========================================="
|
||||
Write-Host "=========================================="
|
||||
Write-Host "Starting Loyalty Agent Services"
|
||||
Write-Host "=========================================="
|
||||
|
||||
# 1. Start MCP Server
|
||||
Write-Host "Starting loyalty-mcp-server..."
|
||||
$mcpLog = Join-Path $LogDir "loyalty-mcp-server.log"
|
||||
$mcpProcess = Start-Process -FilePath "cmd.exe" -ArgumentList "/c ..\mvnw.cmd spring-boot:run -Dmaven.test.skip=true > `"$mcpLog`" 2>&1" -WorkingDirectory (Join-Path $ProjectRoot "loyalty-mcp-server") -PassThru -WindowStyle Hidden
|
||||
$ProcessList += $mcpProcess
|
||||
Write-Host "loyalty-mcp-server started with PID: $($mcpProcess.Id)"
|
||||
# 1. Start MCP Server
|
||||
Write-Host "Starting loyalty-mcp-server..."
|
||||
$mcpLog = Join-Path $LogDir "loyalty-mcp-server.log"
|
||||
$mcpProcess = Start-Process -FilePath "cmd.exe" -ArgumentList "/c ..\mvnw.cmd spring-boot:run -Dmaven.test.skip=true > `"$mcpLog`" 2>&1" -WorkingDirectory (Join-Path $ProjectRoot "loyalty-mcp-server") -PassThru -WindowStyle Hidden
|
||||
Write-Host "loyalty-mcp-server started with PID: $($mcpProcess.Id)"
|
||||
|
||||
Write-Host "Waiting for loyalty-mcp-server to initialize..."
|
||||
while ($true) {
|
||||
$netstat = netstat -ano | Select-String "LISTENING" | Select-String ":9331"
|
||||
if ($netstat) { break }
|
||||
Start-Sleep -Seconds 2
|
||||
}
|
||||
Write-Host "loyalty-mcp-server is up!"
|
||||
|
||||
# 2. Start Agent Service
|
||||
Write-Host "Starting loyalty-agent..."
|
||||
$agentLog = Join-Path $LogDir "loyalty-agent.log"
|
||||
$agentProcess = Start-Process -FilePath "cmd.exe" -ArgumentList "/c ..\mvnw.cmd spring-boot:run -Dmaven.test.skip=true > `"$agentLog`" 2>&1" -WorkingDirectory (Join-Path $ProjectRoot "loyalty-agent") -PassThru -WindowStyle Hidden
|
||||
$ProcessList += $agentProcess
|
||||
Write-Host "loyalty-agent started with PID: $($agentProcess.Id)"
|
||||
|
||||
Write-Host "Waiting for loyalty-agent to initialize..."
|
||||
while ($true) {
|
||||
$netstat = netstat -ano | Select-String "LISTENING" | Select-String ":9332"
|
||||
if ($netstat) { break }
|
||||
Start-Sleep -Seconds 2
|
||||
}
|
||||
Write-Host "loyalty-agent is up!"
|
||||
|
||||
# 3. Start Frontend UI
|
||||
Write-Host "Starting Frontend UI..."
|
||||
$uiLog = Join-Path $LogDir "frontend.log"
|
||||
$uiProcess = Start-Process -FilePath "cmd.exe" -ArgumentList "/c pnpm dev > `"$uiLog`" 2>&1" -WorkingDirectory $ProjectRoot -PassThru -WindowStyle Hidden
|
||||
$ProcessList += $uiProcess
|
||||
Write-Host "Frontend UI started with PID: $($uiProcess.Id)"
|
||||
|
||||
Write-Host "=========================================="
|
||||
Write-Host "All services started successfully!"
|
||||
Write-Host "Log files are stored in: $LogDir"
|
||||
Write-Host "- $mcpLog"
|
||||
Write-Host "- $agentLog"
|
||||
Write-Host "- $uiLog"
|
||||
Write-Host "=========================================="
|
||||
Write-Host "Press Ctrl+C to stop all services..."
|
||||
|
||||
# Wait indefinitely
|
||||
while ($true) {
|
||||
Start-Sleep -Seconds 1
|
||||
}
|
||||
Write-Host "Waiting for loyalty-mcp-server to initialize..."
|
||||
while ($true) {
|
||||
$netstat = netstat -ano | Select-String "LISTENING" | Select-String ":9331"
|
||||
if ($netstat) { break }
|
||||
Start-Sleep -Seconds 2
|
||||
}
|
||||
finally {
|
||||
Write-Host "`nStopping services..."
|
||||
foreach ($p in $ProcessList) {
|
||||
if (-not $p.HasExited) {
|
||||
taskkill /PID $p.Id /T /F 2>&1 | Out-Null
|
||||
Write-Host "Stopped process tree for PID $($p.Id)"
|
||||
}
|
||||
}
|
||||
Write-Host "All services stopped."
|
||||
Write-Host "loyalty-mcp-server is up!"
|
||||
|
||||
# 2. Start Agent Service
|
||||
Write-Host "Starting loyalty-agent..."
|
||||
$agentLog = Join-Path $LogDir "loyalty-agent.log"
|
||||
$agentProcess = Start-Process -FilePath "cmd.exe" -ArgumentList "/c ..\mvnw.cmd spring-boot:run -Dmaven.test.skip=true > `"$agentLog`" 2>&1" -WorkingDirectory (Join-Path $ProjectRoot "loyalty-agent") -PassThru -WindowStyle Hidden
|
||||
Write-Host "loyalty-agent started with PID: $($agentProcess.Id)"
|
||||
|
||||
Write-Host "Waiting for loyalty-agent to initialize..."
|
||||
while ($true) {
|
||||
$netstat = netstat -ano | Select-String "LISTENING" | Select-String ":9332"
|
||||
if ($netstat) { break }
|
||||
Start-Sleep -Seconds 2
|
||||
}
|
||||
Write-Host "loyalty-agent is up!"
|
||||
|
||||
# 3. Start Frontend UI
|
||||
Write-Host "Starting Frontend UI..."
|
||||
$uiLog = Join-Path $LogDir "frontend.log"
|
||||
$uiProcess = Start-Process -FilePath "cmd.exe" -ArgumentList "/c pnpm dev > `"$uiLog`" 2>&1" -WorkingDirectory $ProjectRoot -PassThru -WindowStyle Hidden
|
||||
Write-Host "Frontend UI started with PID: $($uiProcess.Id)"
|
||||
|
||||
Write-Host "=========================================="
|
||||
Write-Host "All services started successfully!"
|
||||
Write-Host "Log files are stored in: $LogDir"
|
||||
Write-Host "- $mcpLog"
|
||||
Write-Host "- $agentLog"
|
||||
Write-Host "- $uiLog"
|
||||
Write-Host "=========================================="
|
||||
|
||||
|
||||
Reference in New Issue
Block a user