Containers/New-NavContainer2.ps1
function New-NavContainer2 { Param( [Parameter(Mandatory=$true)] [string]$ContainerName, [Parameter(Mandatory=$true)] [string]$ImageName, [Parameter(Mandatory=$false)] [PSCredential]$Credential, # Swtich to include CSide [Parameter(Mandatory=$false)] [switch] $includeCSide, # Optional additional parameters to use when creating the docker container [Parameter(Mandatory=$false)] [string[]] $AdditionalParams ) if ($null -eq $Credential) { $NewCredential = New-CredentialFromEnvironmentJson if ($NewCredential -eq $false) { $Credential = [PSCredential]::new('admin', (ConvertTo-SecureString 'P@ssword1' -AsPlainText -Force)) } else { $Credential = $NewCredential } } if ($ImageName.Contains('nav')) { $LicenceFile = (Get-TFSConfigKeyValue 'navLicenceFile') } else { $LicenceFile = (Get-TFSConfigKeyValue 'businessCentralLicenceFile') } if ($null -ne $AdditionalParams) { New-NavContainer -containerName $ContainerName ` -accept_eula ` -accept_outdated ` -auth NavUserPassword ` -Credential $Credential ` -doNotExportObjectsToText ` -imageName $ImageName ` -includeCSide:$includeCSide ` -licenseFile $LicenceFile ` -restart no ` -shortcuts None ` -updateHosts ` -alwaysPull ` -additionalParameters $AdditionalParams ` -includeTestToolkit ` -includeTestLibrariesOnly ` -enableTaskScheduler:$false ` -isolation (Get-ContainerIsolation) } else { New-NavContainer -containerName $ContainerName ` -accept_eula ` -accept_outdated ` -auth NavUserPassword ` -Credential $Credential ` -doNotExportObjectsToText ` -imageName $ImageName ` -includeCSide:$includeCSide ` -licenseFile $LicenceFile ` -restart no ` -shortcuts None ` -updateHosts ` -alwaysPull ` -includeTestToolkit ` -includeTestLibrariesOnly ` -enableTaskScheduler:$false ` -isolation (Get-ContainerIsolation) } } Export-ModuleMember -Function New-NavContainer2 |