Some checks failed
CI / node 22.19 (push) Has been skipped
CI / node 26 (push) Has been skipped
CI / python 3.10 / keyless SDK (push) Has been skipped
CI / python runtime / release-shaped Linux x64 (push) Has been skipped
CI / windows node 24 / wine blocking (push) Has been skipped
CI / wine apt cache (push) Successful in 58s
CI / serial / linux (push) Has been skipped
Deploy documentation / build (push) Failing after 2m46s
Deploy documentation / deploy (push) Has been skipped
E2E (real DeepSeek API) / e2e (push) Failing after 1m18s
Sandbox / sandbox e2e (bwrap, ubuntu-latest) (push) Failing after 1m18s
Landlock Run / Matrix (push) Successful in 13s
Release (vendor) / Pack npm tarballs (push) Failing after 3m43s
Release (dsh) / Pack npm tarballs (push) Failing after 1m53s
Sandbox / sandbox e2e (landlock, ubuntu-24.04) (push) Failing after 1m51s
Release (vendor) / Publish to npm (push) Has been skipped
Release (dsh) / Publish to npm (push) Has been skipped
CI / node 24 / static (push) Has been cancelled
CI / node 24 / coverage (push) Has been cancelled
CI / node 24 / snapshots and artifacts (push) Has been cancelled
CI / windows node 24 / native complete (push) Has been cancelled
CI / serial / linux (self-hosted standby) (push) Has been cancelled
CI / serial / macos (push) Has been cancelled
CI / serial / windows (self-hosted standby) (push) Has been cancelled
CI / larger-runner-benchmark (16, linux, dsh-ubuntu-24-04-16core, typecheck) (push) Has been cancelled
CI / larger-runner-benchmark (16, windows, dsh-windows-2025-16core, production-site) (push) Has been cancelled
CI / larger-runner-benchmark (32, linux, dsh-ubuntu-24-04-32core, typecheck) (push) Has been cancelled
CI / larger-runner-benchmark (32, windows, dsh-windows-2025-32core, production-site) (push) Has been cancelled
CI / larger-runner-benchmark (4, linux, dsh-ubuntu-24-04-4core, typecheck) (push) Has been cancelled
CI / larger-runner-benchmark (4, windows, dsh-windows-2025-4core, production-site) (push) Has been cancelled
CI / larger-runner-benchmark (64, linux, dsh-ubuntu-24-04-64core, typecheck) (push) Has been cancelled
CI / larger-runner-benchmark (64, windows, dsh-windows-2025-64core, production-site) (push) Has been cancelled
CI / larger-runner-benchmark (8, linux, dsh-ubuntu-24-04-8core, typecheck) (push) Has been cancelled
CI / larger-runner-benchmark (8, windows, dsh-windows-2025-8core, production-site) (push) Has been cancelled
CI / larger-runner-benchmark (96, linux, dsh-ubuntu-24-04-96core, typecheck) (push) Has been cancelled
CI / larger-runner-benchmark (96, windows, dsh-windows-2025-96core, production-site) (push) Has been cancelled
CI / consolidated-runner-benchmark (16, linux, dsh-ubuntu-24-04-16core, 16) (push) Has been cancelled
CI / consolidated-runner-benchmark (16, windows, dsh-windows-2025-16core, 2) (push) Has been cancelled
CI / consolidated-runner-benchmark (32, linux, dsh-ubuntu-24-04-32core, 32) (push) Has been cancelled
CI / consolidated-runner-benchmark (32, windows, dsh-windows-2025-32core, 2) (push) Has been cancelled
CI / consolidated-runner-benchmark (4, linux, dsh-ubuntu-24-04-4core, 4) (push) Has been cancelled
CI / consolidated-runner-benchmark (4, windows, dsh-windows-2025-4core, 2) (push) Has been cancelled
CI / consolidated-runner-benchmark (64, linux, dsh-ubuntu-24-04-64core, 32) (push) Has been cancelled
CI / consolidated-runner-benchmark (64, windows, dsh-windows-2025-64core, 2) (push) Has been cancelled
CI / consolidated-runner-benchmark (8, linux, dsh-ubuntu-24-04-8core, 8) (push) Has been cancelled
CI / consolidated-runner-benchmark (8, windows, dsh-windows-2025-8core, 2) (push) Has been cancelled
CI / consolidated-runner-benchmark (96, linux, dsh-ubuntu-24-04-96core, 32) (push) Has been cancelled
CI / consolidated-runner-benchmark (96, windows, dsh-windows-2025-96core, 2) (push) Has been cancelled
CI / all checks passed (push) Has been cancelled
Sandbox / sandbox e2e (seatbelt, macos-latest) (push) Has been cancelled
Sandbox / sandbox e2e (landlock, ubuntu-24.04-arm) (push) Has been cancelled
Landlock Run / ${{ matrix.platform }} (push) Has been cancelled
Landlock Run / darwin (no platform package — degradation proof) (push) Has been cancelled
70 lines
2.8 KiB
PowerShell
70 lines
2.8 KiB
PowerShell
# Install from caches filled by download-deps.ps1. Unpacks the official Node zip
|
|
# into .offline-cache/node/runtime and prepends it to PATH so the offline machine
|
|
# does not need a system Node. Fails if any lockfile package is missing from
|
|
# .offline-store (no registry access).
|
|
#
|
|
# Usage (repo root): powershell -File scripts/offline/install-deps.ps1 [-Build]
|
|
[CmdletBinding()]
|
|
param(
|
|
[switch]$Build
|
|
)
|
|
$ErrorActionPreference = 'Stop'
|
|
Set-StrictMode -Version Latest
|
|
|
|
$Root = (Resolve-Path (Join-Path $PSScriptRoot '..\..')).Path
|
|
Set-Location $Root
|
|
|
|
function Import-OfflineNode {
|
|
$nodeCache = Join-Path $Root '.offline-cache\node'
|
|
$metaPath = Join-Path $nodeCache 'runtime.json'
|
|
if (-not (Test-Path $metaPath)) {
|
|
throw "Missing $metaPath. Run scripts/offline/download-deps.ps1 on a networked machine first, then copy the checkout."
|
|
}
|
|
$meta = Get-Content $metaPath -Raw | ConvertFrom-Json
|
|
$archivePath = Join-Path $nodeCache ([string]$meta.archive)
|
|
$runtimeDir = Join-Path $nodeCache 'runtime'
|
|
$nodeHome = Join-Path $runtimeDir ("node-v{0}-{1}" -f $meta.version, $meta.platform)
|
|
if (-not (Test-Path (Join-Path $nodeHome 'node.exe'))) {
|
|
if (-not (Test-Path $archivePath)) {
|
|
throw "Missing Node archive $archivePath. Re-run download-deps.ps1."
|
|
}
|
|
if (Test-Path $runtimeDir) { Remove-Item -Recurse -Force $runtimeDir }
|
|
New-Item -ItemType Directory -Force -Path $runtimeDir | Out-Null
|
|
Expand-Archive -LiteralPath $archivePath -DestinationPath $runtimeDir
|
|
}
|
|
if (-not (Test-Path (Join-Path $nodeHome 'node.exe'))) {
|
|
throw "Unpacked Node is missing: $nodeHome\node.exe"
|
|
}
|
|
$env:PATH = "$nodeHome;$env:PATH"
|
|
return $nodeHome
|
|
}
|
|
|
|
$nodeHome = Import-OfflineNode
|
|
$storeDir = Join-Path $Root '.offline-store'
|
|
$corepackHome = Join-Path $Root '.offline-cache\corepack'
|
|
if (-not (Test-Path $storeDir)) {
|
|
throw "Missing $storeDir. Run scripts/offline/download-deps.ps1 on a networked machine first, then copy the checkout."
|
|
}
|
|
if (-not (Test-Path $corepackHome)) {
|
|
throw "Missing $corepackHome. Re-run download-deps.ps1 so Corepack pnpm is cached in-repo."
|
|
}
|
|
|
|
$env:COREPACK_HOME = $corepackHome
|
|
$env:COREPACK_ENABLE_NETWORK = '0'
|
|
|
|
$manifest = Get-Content (Join-Path $Root 'package.json') -Raw | ConvertFrom-Json
|
|
$packageManager = [string]$manifest.packageManager
|
|
$corepack = Join-Path $nodeHome 'corepack.cmd'
|
|
|
|
Write-Host "Offline install $packageManager from $storeDir (Node $(& (Join-Path $nodeHome 'node.exe') --version))"
|
|
& $corepack pnpm install --offline --frozen-lockfile --store-dir $storeDir
|
|
|
|
if ($Build) {
|
|
Write-Host 'Building host/client libs, then the web frontend'
|
|
npm run build:lib
|
|
& $corepack pnpm --dir apps/web run build
|
|
Write-Host "Build complete. Start the UI with: `"$nodeHome\corepack.cmd`" pnpm dsh web"
|
|
} else {
|
|
Write-Host 'Install complete. For dsh web also run: powershell -File scripts/offline/install-deps.ps1 -Build'
|
|
}
|