32 lines
1.1 KiB
PowerShell
32 lines
1.1 KiB
PowerShell
[CmdletBinding(SupportsShouldProcess = $true)]
|
|
param(
|
|
[Parameter(DontShow = $true)][string]$ContinueUpdate
|
|
)
|
|
|
|
Set-StrictMode -Version 2.0
|
|
$ErrorActionPreference = 'Stop'
|
|
|
|
try {
|
|
Import-Module (Join-Path $PSScriptRoot 'scripts/XasUpdate.psm1') -Force
|
|
if ($ContinueUpdate) {
|
|
[Console]::OutputEncoding = New-Object Text.UTF8Encoding($false)
|
|
if ($WhatIfPreference) { throw '内部更新续接不能与 -WhatIf 同时使用。' }
|
|
Invoke-XasUpdateContinuation -RepositoryRoot $PSScriptRoot -Token $ContinueUpdate
|
|
}
|
|
else {
|
|
Import-Module (Join-Path $PSScriptRoot 'scripts/XasSkills.psm1') -Force
|
|
$skillsRoot = Get-XasDefaultSkillsRoot
|
|
if ($WhatIfPreference) {
|
|
Invoke-XasUpdate -RepositoryRoot $PSScriptRoot -SkillsRoot $skillsRoot -Preview
|
|
}
|
|
elseif ($PSCmdlet.ShouldProcess('origin/main 和本仓库已安装技能', '快进更新仓库并同步技能')) {
|
|
Invoke-XasUpdate -RepositoryRoot $PSScriptRoot -SkillsRoot $skillsRoot
|
|
}
|
|
}
|
|
exit 0
|
|
}
|
|
catch {
|
|
Write-Error -Message $_.Exception.Message -ErrorAction Continue
|
|
exit 1
|
|
}
|