This blog post on the variables involved with a CU upgrade provides a detailed overview of the essential variables. The script highlights the importance of thoroughly understanding these variables to ensure a successful upgrade.
First, these variables are critical for configuring the upgrade. They include paths to the base application, system application, and other relevant apps. The blog post explains how to define and use these variables throughout the upgrade process.
Configuration Files for CU Upgrade Variables
The post explains how to configure the CustomSettings.config
and NavSettings.json
files. These configuration files define key settings or variables and parameters for the Business Central environment with a CU upgrade. The author provides an overview of the most important variables to include in these files, such as the certificate thumbprint, temporary file destination, and the application’s client ID.
The post also discusses how to configure the various ports for the different services used—such as OData services, SOAP services, and management API services. Correctly configuring these ports is essential for smooth communication between system components.
In addition, the blog post covers how to configure the security settings. This includes setting the appropriate authentication methods and configuring access control for the various services. The author emphasizes the importance of properly configuring these settings to maintain system security.
Finally, the blog post outlines several best practices for performing a CU (Cumulative Update) upgrade. These include backing up the current configuration, testing the upgrade in a sandbox environment and carefully documenting all changes made during the upgrade process
In summary, this blog post serves as a comprehensive guide for performing a CU upgrade of Dynamics 365 Business Central. By understanding the variables and configuration settings, users can ensure a smooth and secure upgrade process.
#------------------------------------------------------------------------------------------------------------------------------------------------------------------
#PowerShell variabelen
#https://learn.microsoft.com/en-us/dynamics365/business-central/dev-itpro/upgrade/upgrading-cumulative-update-v22#powershell-variables-used-in-tasks
#------------------------------------------------------------------------------------------------------------------------------------------------------------------
$BaseAppPath = "C:\NAV\Software\BC"+"$Version"+"."+"$CURelease\$Release\Applications\BaseApp\Source\Microsoft_Base Application.app"
$SystemAppPath = "C:\NAV\Software\BC"+"$Version"+"."+"$CURelease\$Release\Applications\system application\Source\\Microsoft_System Application.app"
$ApplicationAppPath = "C:\NAV\Software\BC"+"$Version"+"."+"$CURelease\$Release\Applications\Application\Source\Microsoft_Application.app"
$AddinsFolder = "$env:ProgramFiles\Microsoft Dynamics 365 Business Central\$Version\Service\Add-ins\"
$PartnerLicense= "C:\NAV\License\BC"+"$Version"+"\CSS Support License - BCOP v22.bclicense"
$CustomerLicense= "C:\NAV\License\BC"+"$Version"+"\CSS Support License - BCOP v22.bclicense"
#------------------------------------------------------------------------------------------------------------------------------------------------------------------
#Configuratie van CustomSettings.config en NavSettings.json
#------------------------------------------------------------------------------------------------------------------------------------------------------------------
$Module = "$env:ProgramFiles\Microsoft Dynamics 365 Business Central\$Version\Service\NavAdminTool.ps1"
$ServicesCertificateThumbprint = "e705aab68c59b0527d277364927772c1882d5b66"
$Destination = "C:\TEMP"
$ApplicationClientId = "2363362f-2103-4901-bc41-625a56d8e4af"
$NSTClientServicesCredentialType = "AccessControlService"
$ValidAudiencesServer = "$ApplicationClientId;https://api.businesscentral.dynamics.com"
$TenantAadId = "d9028ecb-8f48-44c1-ad8b-b6fc54f404fe"
$TenantDomain = "melsbergmans.nl"
$ODataServicesPort = "22048"
$ManagementServicesPort = "22045"
$SnapshotDebuggerServicesPort = "22083"
$ClientServicesPort = "22085"
$DeveloperServicesPort = "22049"
$SOAPServicesPort = "22047"
$ManagementApiServicesPort = "22086"
$PublicODataBaseUrl = "https://d365bc."+"$TenantDomain"+":"+"$ODataServicesPort/$BcServerInstance/ODataV4/"
$AppIdUri = "api://$ApplicationClientId"
$ClientServicesFederationMetadataLocation = "https://login.microsoftonline.com/$TenantAadId/FederationMetadata/2007-06/FederationMetadata.xml"
$ExcelAddInAzureActiveDirectoryClientId = "6ad8562c-0d43-4ddc-9d86-f78d233f461d"
$ExtendedSecurityTokenLifetime = "9"
$NASServicesStartupCodeunit = "450"
$PublicSOAPBaseUrl = "https://d365bc."+"$TenantDomain"+":"+"$SOAPServicesPort/$BcServerInstance/WS/"
$PublicWebBaseUrl = "https://d365bc."+"$TenantDomain"+":"+"$WebSitePort/$BcServerInstance/"
$ServicesCertificateThumbprint = "e705aab68c59b0527d277364927772c1882d5b66"
$ServicesDefaultCompany = "$Company"
$WSFederationLoginEndpoint = "https://login.microsoftonline.com/$TenantAadId/wsfed?wa=wsignin1.0%26wtrealm=$AppIdUri"
$DnsIdentity = "*.melsbergmans.nl"
$WebClientServicesCredentialType = "AccessControlService"
$AadApplicationId = "$ApplicationClientId"
$AadAuthorityUri = "https://login.microsoftonline.com/$TenantAadId"
$WebSitePort = "443"
$DeveloperServicesEnabled = "true"
$SOAPServicesEnabled = "true"
$ODataServicesEnabled = "true"
$DeveloperServicesSSLEnabled = "true"
$SOAPServicesSSLEnabled = "true"
$ODataServicesSSLEnabled = "true"
$ManagementApiServicesPort = "22086"
$Multitenant = "true"
$AddinsFolder = "$env:ProgramFiles\Microsoft Dynamics 365 Business Central\$Version\Service\Add-ins"
$ClientServicesCredentialType = "AccessControlService"
$ADOpenIdMetadataLocation = "https://login.microsoftonline.com/$TenantAadId/.well-known/openid-configuration"
More information about Microsoft Business Central can be found here. More information about the author of this blog post can be found here.