Files
agent-desktop/scripts/wheel_build.ps1
T

48 lines
1.8 KiB
PowerShell

# Build a full wheel package including the latest console frontend.
# Run from repo root: pwsh -File scripts/wheel_build.ps1
$ErrorActionPreference = "Stop"
$RepoRoot = (Get-Item $PSScriptRoot).Parent.FullName
Set-Location $RepoRoot
$ConsoleDir = Join-Path $RepoRoot "console"
$ConsoleDest = Join-Path $RepoRoot "src\qwenpaw\console"
Write-Host "[wheel_build] Building console frontend..."
Push-Location $ConsoleDir
try {
npm ci
if ($LASTEXITCODE -ne 0) { throw "npm ci failed with exit code $LASTEXITCODE" }
npm run build
if ($LASTEXITCODE -ne 0) { throw "npm run build failed with exit code $LASTEXITCODE" }
} finally {
Pop-Location
}
Write-Host "[wheel_build] Copying console/dist/* -> src/pineagents/console/..."
if (Test-Path $ConsoleDest) {
Remove-Item -Path (Join-Path $ConsoleDest "*") -Recurse -Force -ErrorAction SilentlyContinue
} else {
New-Item -ItemType Directory -Force -Path $ConsoleDest | Out-Null
}
$ConsoleDist = Join-Path $ConsoleDir "dist"
Copy-Item -Path (Join-Path $ConsoleDist "*") -Destination $ConsoleDest -Recurse -Force
Write-Host "[wheel_build] Bundling website docs into package..."
$DocsSrc = Join-Path $RepoRoot "website\public\docs"
$DocsDest = Join-Path $RepoRoot "src\qwenpaw\docs"
if (Test-Path $DocsDest) { Remove-Item -Recurse -Force $DocsDest }
New-Item -ItemType Directory -Force -Path $DocsDest | Out-Null
Copy-Item -Path (Join-Path $DocsSrc "*.md") -Destination $DocsDest -Force
Write-Host "[wheel_build] Building wheel + sdist..."
python -m pip install --quiet build
$DistDir = Join-Path $RepoRoot "dist"
if (Test-Path $DistDir) {
Remove-Item -Path (Join-Path $DistDir "*") -Force -ErrorAction SilentlyContinue
}
python -m build --outdir dist .
if ($LASTEXITCODE -ne 0) { throw "python -m build failed with exit code $LASTEXITCODE" }
Write-Host "[wheel_build] Done. Wheel(s) in: $RepoRoot\dist\"