45 lines
1.2 KiB
PowerShell
45 lines
1.2 KiB
PowerShell
[CmdletBinding(DefaultParameterSetName = 'Check')]
|
|
param(
|
|
[Parameter(Mandatory, ParameterSetName = 'Check')]
|
|
[switch]$Check,
|
|
|
|
[Parameter(Mandatory, ParameterSetName = 'Bump')]
|
|
[Parameter(Mandatory, ParameterSetName = 'Version')]
|
|
[string]$Package,
|
|
|
|
[Parameter(Mandatory, ParameterSetName = 'Bump')]
|
|
[ValidateSet('major', 'minor', 'patch')]
|
|
[string]$Bump,
|
|
|
|
[Parameter(Mandatory, ParameterSetName = 'Version')]
|
|
[ValidatePattern('^(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)\.(0|[1-9][0-9]*)(?:-[0-9A-Za-z.-]+)?(?:\+[0-9A-Za-z.-]+)?$')]
|
|
[string]$Version,
|
|
|
|
[Parameter(ParameterSetName = 'Bump')]
|
|
[Parameter(ParameterSetName = 'Version')]
|
|
[switch]$DryRun
|
|
)
|
|
|
|
$ErrorActionPreference = 'Stop'
|
|
$scriptPath = Join-Path $PSScriptRoot 'update-shrinksdk-versions.mjs'
|
|
$arguments = @($scriptPath)
|
|
|
|
if ($Check) {
|
|
$arguments += '--check'
|
|
} else {
|
|
$arguments += @('--package', $Package)
|
|
if ($PSCmdlet.ParameterSetName -eq 'Bump') {
|
|
$arguments += @('--bump', $Bump)
|
|
} else {
|
|
$arguments += @('--version', $Version)
|
|
}
|
|
if ($DryRun) {
|
|
$arguments += '--dry-run'
|
|
}
|
|
}
|
|
|
|
& node @arguments
|
|
if ($LASTEXITCODE -ne 0) {
|
|
throw "ShrinkSDK version tool failed with exit code $LASTEXITCODE."
|
|
}
|