Files
claudetools/clients/dataforth/scripts/deploy-agent-to-ad2-simple.ps1
Mike Swanson 5cbd49ce24 Reorganize repo: compartmentalize scripts by client/project
Move 150+ scripts from root and scripts/ into client/project directories:
- clients/dataforth/scripts/ (110 files: AD2, sync, SSH, DB, DOS scripts)
- clients/bg-builders/scripts/ (14 files: Lesley mgmt, Exchange, termination)
- clients/internal-infrastructure/scripts/ (10 files: GDAP, Gitea, backups)
- projects/msp-tools/scripts/ (9 files: CIPP, MSP onboarding, Datto)
- projects/gururmm-agent/scripts/ (3 files: API test, JWT, record counts)
- clients/glaztech/scripts/ (1 file: CentraStage removal)

Also reorganized:
- VPN scripts → infrastructure/vpn-configs/
- Retrieved API/JS files → api/
- Forum posts → projects/community-forum/forum-posts/
- SSH docs → clients/internal-infrastructure/docs/
- NWTOC/CTONW docs → projects/wrightstown-smarthome/docs/
- ACG website files → projects/internal/acg-website-2025/
- Dataforth docs → clients/dataforth/docs/
- schema-retrieved.sql → docs/database/

Deleted 24 tmp_*.ps1 one-off debug scripts (preserved in git history).
Root reduced from 220+ files to 62 items (docs + directories only).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-20 17:15:07 -07:00

70 lines
2.6 KiB
PowerShell

# Deploy GuruRMM Agent to AD2 (Simplified - No WinRM)
# This script just copies the binary - service management done manually
$ErrorActionPreference = "Stop"
Write-Host "[INFO] Starting GuruRMM agent deployment to AD2 (SMB only)..."
# Credentials
$password = ConvertTo-SecureString 'Paper123!@#' -AsPlainText -Force
$cred = New-Object System.Management.Automation.PSCredential('INTRANET\sysadmin', $password)
# Paths
$localBinary = "D:\ClaudeTools\projects\msp-tools\guru-rmm\agent\target\release\gururmm-agent.exe"
$remotePath = "\\192.168.0.6\C$\Program Files\GuruRMM"
$remoteAgent = "$remotePath\gururmm-agent.exe"
$remoteBackup = "$remotePath\gururmm-agent.exe.backup"
# Connect to AD2
Write-Host "[INFO] Connecting to AD2 via SMB..."
New-PSDrive -Name AD2 -PSProvider FileSystem -Root "\\192.168.0.6\C$" -Credential $cred | Out-Null
Write-Host "[OK] Connected to AD2"
# Check if agent directory exists
if (Test-Path "AD2:\Program Files\GuruRMM") {
Write-Host "[OK] GuruRMM directory found"
} else {
Write-Host "[WARNING] GuruRMM directory not found - creating..."
New-Item -Path "AD2:\Program Files\GuruRMM" -ItemType Directory | Out-Null
}
# Check for existing agent
if (Test-Path $remoteAgent) {
$existingAgent = Get-Item $remoteAgent
Write-Host "[OK] Found existing agent:"
Write-Host " Size: $([math]::Round($existingAgent.Length / 1MB, 2)) MB"
Write-Host " Modified: $($existingAgent.LastWriteTime)"
# Backup existing agent
Write-Host "[INFO] Backing up existing agent..."
Copy-Item -Path $remoteAgent -Destination $remoteBackup -Force
Write-Host "[OK] Backup created: gururmm-agent.exe.backup"
} else {
Write-Host "[INFO] No existing agent found - this will be a fresh install"
}
# Copy new agent
Write-Host "[INFO] Copying new agent to AD2..."
$localInfo = Get-Item $localBinary
Write-Host " Source size: $([math]::Round($localInfo.Length / 1MB, 2)) MB"
Copy-Item -Path $localBinary -Destination $remoteAgent -Force
Write-Host "[OK] Agent copied successfully"
# Verify copy
$copiedAgent = Get-Item $remoteAgent
Write-Host "[OK] Verification:"
Write-Host " Size: $([math]::Round($copiedAgent.Length / 1MB, 2)) MB"
Write-Host " Modified: $($copiedAgent.LastWriteTime)"
# Cleanup
Remove-PSDrive -Name AD2
Write-Host ""
Write-Host "[SUCCESS] File deployment complete!"
Write-Host ""
Write-Host "IMPORTANT: Manual service management required:"
Write-Host "1. Connect to AD2: ssh INTRANET\\\\sysadmin@192.168.0.6"
Write-Host "2. Stop service: Stop-Service gururmm-agent"
Write-Host "3. Start service: Start-Service gururmm-agent"
Write-Host "4. Check status: Get-Service gururmm-agent"
Write-Host ""