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 `
        -useBestContainerOS `
        -additionalParameters $AdditionalParams
    }
    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 `
        -useBestContainerOS
    }

    Import-TestToolkitToNavContainer -containerName $ContainerName -includeTestLibrariesOnly -sqlCredential $Credential -doNotUpdateSymbols
}

Export-ModuleMember -Function New-NavContainer2