Containers/New-NavContainer2.ps1

function New-NavContainer2 {
    Param(
        [Parameter(Mandatory=$true)]
        [string]$ContainerName,
        [Parameter(Mandatory=$true)]
        [string]$ImageName,
        [Parameter(Mandatory=$false)]
        [System.Management.Automation.PSCredential]$Credential,
        # Optional additional parameters to use when creating the docker container
        [Parameter(Mandatory=$false)]
        [string[]]
        $AdditionalParams
    )

    if ($Credential -eq $null) {
        $Password = ConvertTo-SecureString (Get-EnvironmentKeyValue -KeyName 'password') -AsPlainText -Force    
        $Credential = New-Object System.Management.Automation.PSCredential((Get-EnvironmentKeyValue -KeyName 'user'),$Password)
    }

    if ($ImageName.Contains('nav')) {
        $LicenceFile = (Get-TFSConfigKeyValue 'navLicenceFile')
    }
    else {
        $LicenceFile = (Get-TFSConfigKeyValue 'businessCentralLicenceFile')
    }

    if ($null -ne $AdditionalParams) {
    New-NavContainer -containerName $ContainerName `
        -accept_eula `
        -auth NavUserPassword `
        -Credential $Credential `
        -enableSymbolLoading `
        -doNotExportObjectsToText `
        -imageName $ImageName `
        -includeCSide `
        -licenseFile $LicenceFile `
        -restart no `
        -shortcuts None `
        -updateHosts `
        -alwaysPull `
        -useBestContainerOS `
        -additionalParameters $AdditionalParams
    }
    else {
        New-NavContainer -containerName $ContainerName `
        -accept_eula `
        -auth NavUserPassword `
        -Credential $Credential `
        -enableSymbolLoading `
        -doNotExportObjectsToText `
        -imageName $ImageName `
        -includeCSide `
        -licenseFile $LicenceFile `
        -restart no `
        -shortcuts None `
        -updateHosts `
        -alwaysPull `
        -useBestContainerOS
    }

    Import-TestToolkitToNavContainer -containerName $ContainerName -includeTestLibrariesOnly -sqlCredential (New-Object System.Management.Automation.PSCredential('sa',$Password))
}

Export-ModuleMember -Function New-NavContainer2