Modules/businessdev.ALbuild.OnPrem/Public/Start-BcOnPremUpgrade.ps1

function Start-BcOnPremUpgrade {
    <#
    .SYNOPSIS
        Runs the data-upgrade for an AL app on an on-premises Business Central server instance (licensed).
    .PARAMETER ServerInstance
        The BC server instance.
    .PARAMETER AppName
        The app name.
    .PARAMETER AppVersion
        Optional app version.
    .PARAMETER Tenant
        Tenant. Default 'default'.
    #>

    [CmdletBinding(SupportsShouldProcess)]
    param(
        [Parameter(Mandatory)] [string] $ServerInstance,
        [Parameter(Mandatory)] [string] $AppName,
        [string] $AppVersion,
        [string] $Tenant = 'default'
    )
    Assert-ALbuildLicensed -Feature 'OnPrem'
    if (-not $PSCmdlet.ShouldProcess($ServerInstance, "Upgrade data for $AppName")) { return }
    $params = @{ ServerInstance = $ServerInstance; Name = $AppName; Tenant = $Tenant; ErrorAction = 'Stop' }
    if ($AppVersion) { $params['Version'] = $AppVersion }
    Start-NAVAppDataUpgrade @params
    Write-ALbuildLog -Level Success "Ran data upgrade for $AppName on '$ServerInstance'."
}