Files
api-collections/scripts/setup-environment.ps1
T

55 lines
1.6 KiB
PowerShell

function Initialize-PowerShellEnvironment {
Write-Host "Initializing PowerShell environment..." -ForegroundColor Yellow
# Add any environment setup logic here, such as importing modules, setting variables, etc.
# Example: Import-Module SomeModule
Import-Module powershell-yaml -ErrorAction SilentlyContinue
Write-Host "PowerShell environment initialized." -ForegroundColor Green
}
function Initialize-GenerateTools {
Write-Host "Initializing Node.js dependencies..." -ForegroundColor Yellow
Push-Location -StackName NodeTools (Join-Path $PSScriptRoot "../tools/")
Get-childitem -Path . -Directory | ForEach-Object {
Write-Host "Initializing $($_.Name)..." -ForegroundColor Cyan
Push-Location -StackName NodeTools $_.FullName
try {
# Install Node.js dependencies
& npm install
if ($LASTEXITCODE -ne 0) {
Write-Error "npm install failed with exit code $LASTEXITCODE."
exit 1
}
}
catch {
Write-Error "npm install failed for $($_.Name): $_"
exit 1
}
finally {
Pop-Location -StackName NodeTools
}
}
Pop-Location -StackName NodeTools
Write-Host "Node.js dependencies initialized." -ForegroundColor Green
}
function Invoke-Main {
Write-Host "Preparing environment..." -ForegroundColor Cyan
Write-Host
Initialize-PowerShellEnvironment
Write-Host
Initialize-GenerateTools
Write-Host
Write-Host "Environment preparation complete!" -ForegroundColor Green
}
Invoke-Main