feat: team org panel, admin CRUD, local deploy tools, bidirectional data sync
Add TeamMember model and APIs, team status UI, /admin page, local server bats, and scripts to sync data between local PostgreSQL and Render. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
4
scripts/get-lan-ip.ps1
Normal file
4
scripts/get-lan-ip.ps1
Normal file
@@ -0,0 +1,4 @@
|
||||
$ip = Get-NetIPAddress -AddressFamily IPv4 -ErrorAction SilentlyContinue |
|
||||
Where-Object { $_.IPAddress -match '^(172\.|192\.168\.|10\.)' } |
|
||||
Select-Object -First 1 -ExpandProperty IPAddress
|
||||
if ($ip) { Write-Output $ip }
|
||||
11
scripts/kill-ports.ps1
Normal file
11
scripts/kill-ports.ps1
Normal file
@@ -0,0 +1,11 @@
|
||||
$ports = @(4000, 3000, 3001)
|
||||
$killed = @()
|
||||
Get-NetTCPConnection -State Listen -ErrorAction SilentlyContinue |
|
||||
Where-Object { $ports -contains $_.LocalPort } |
|
||||
ForEach-Object {
|
||||
$pid = $_.OwningProcess
|
||||
if ($killed -notcontains $pid) {
|
||||
Stop-Process -Id $pid -Force -ErrorAction SilentlyContinue
|
||||
$killed += $pid
|
||||
}
|
||||
}
|
||||
9
scripts/wait-db.ps1
Normal file
9
scripts/wait-db.ps1
Normal file
@@ -0,0 +1,9 @@
|
||||
$ok = $false
|
||||
1..30 | ForEach-Object {
|
||||
if (Test-NetConnection -ComputerName localhost -Port 5432 -WarningAction SilentlyContinue -ErrorAction SilentlyContinue | Where-Object { $_.TcpTestSucceeded }) {
|
||||
$ok = $true
|
||||
break
|
||||
}
|
||||
Start-Sleep -Seconds 1
|
||||
}
|
||||
if (-not $ok) { exit 1 }
|
||||
Reference in New Issue
Block a user