ReleaseNotes.txt
0.7.0.9
Issue #1042 Ensure that dotnetcore prerequisite is downloaded before starting the container Issue #1047 Increase download timeout to 300 seconds for each artifact and prerequisite Add timeout parameter to Download-File and Download-Artifacts 0.7.0.8 Issue #1038 Ensure that Download-Artifacts is more resilient towards exceptions or user cancellations during artifact expansion. Avoid returning platform artifacts as localizations (if you don't specify country) Ensure that the latest generic image is pulled when building an image with New-BcImage 0.7.0.7 Require generic 0.1.0.5 to support unexpected restarts during artifact copy Write out time spend during image build If tag isn't specified when auto-building image, add a tag corresponding to the bC version instead of :latest Bugfix: Download-Artifacts couldn't download insider artifacts without a platform tag (build 17.0.14185.0 and later) 0.7.0.6 Remove parameter UseArtifacts from New-NavContainer Add a test in Download-Artifacts to check the validity of Sas Token Force download new generic if generic version is lower than 0.1.0.4 in New-BcContainer Issue #1033 grab collation.txt from the my folder when using Clean-BcContainerDatabase with -useNewDatabase Issue #997 Cside cannot connect to containername\SQLEXPRESS on some machines Issue #1027 add parameter -restart to Import-NavContainerLicense in order to restart the service tier after importing the license 0.7.0.5 Check country and artifactUrl on determining whether or not to rebuild images Get-NavContainerImageLabels now supports getting labels from an local image (without registry) Added new function Get-BcArtifactUrl to get artifact Urls for Business Central builds (thanks Waldo) Added new function Get-NavArtifactUrl to get artifact Urls for Dynamics NAV builds (using Get-BcArtifactUrl) 0.7.0.4 Issue #1016 EnableTaskScheduler parameter is ignored when using traefik Fix regression - New-BcContainer - support blank platform in app artifact Add retry algorithm to Download-Artifacts Dump Additional Parameters during start Add parameter keepDays to Flush-ContainerHelperCache to indicate that cache used during this number of days should be kept (Only implemented for artifacts) Add parameter forceRedirection to Download-Artifacts to force download redirection artifacts -alwaysPull are transferred to Download-Artifacts (-ForceRedirection) to re-download redirection artifacts Do not rebuild images based on -alwaysPull, instead compare version, osversion and generic tag and rebuild only if different 0.7.0.3 New-BcContainer - support blank platform in app artifact Replace-BcServerContainer supports ArtifactUrl Move temporary build folder for New-BcImage to c:\$TMP$-<imagename> (due to filename lengths of more 260) Add new function Download-Artifacts to download artifacts from ArtifactUrl 0.7.0.2 Regression - Flush-ContainerHelperCache fails if c:\bcartifacts.cache doesn't exist Regression - New-BcImage disn't use the new artifacts cache path 0.7.0.1 New-BcContainer will automatically build anc cache an image if ImageName and ArtifactUrl are specified Add environment variable ArtifactUrl to image in New-BcImage new-BcImage deletes the image if it already exists New function Get-BCContainerArtifactUrl to get the ArtifactUrl used to create a container Move Artfacts cache to c:\bcartifacts.cache due to filename lengths above 260 Pre-download platform artifact in containerHelper before starting container to avoid dns problems 0.7.0.0 Add new function New-BcImage to create an image based on artifacts Add artifacts support for New-BcContainer Add downloads cleanup for Flush-ContainerHelperCache Issue #1006 - remove files instead of folder (if a lock is on the folder) Exit waiting for container to be ready if the container exits 0.6.5.11 Set Accept_Outdated to $true as default value to accomodate that images are built on pre-february update WindowsServerCore imageName Check validationResults in Get-Tests loop Windows Defender acuses New-NavContainer of containing a virus 0.6.5.10 Issue #985 Tests report failure wrongly 0.6.5.9 Issue #981 Run-Tests fail on 16.x containers Issue #974 Compile of app fails when using customized application.app 0.6.5.8 Add Parameter -includeTestFrameworkOnly to install the Test Framework without the Test Libraries Issue #978 - do not use local docker.ico when creating shortcuts 0.6.5.7 Issue #921 - Using -useBestContainerOS with foreign database specification fails Issue #959 - Specifying applicationinsights in app.json without application property throws exception PR #949 - support swarm services (Thanks Tobias Fenster) Add parameter profile to Get-Tests and Run-Tests to be able to run tests as a specific profile Issue #944 - reset position in repeater Support Windows 10 2004 Issue #971 - Implicit creation of destination folder in Copy-FileToBcContainer 0.6.5.6 Issue #929 - Get-NavContainerSharedFolders doesn't support :rw or :ro on volumes Issue #934 - Restart instance after creation of new symbolic link Issue #924 - Compile App failed - AlcOutput is null Issue #940 - Vsix analyzer DLLs are not under Win32 0.6.5.5 Use .net core version of alc.exe if available 0.6.5.4 Regression - Issue #930 - Revert fix for #918 0.6.5.3 Issue #918 - Migration of Legacy VeriSign and Symantec Time Stamping Services Issue #925 - Path Test Apps for 16.0 onprem rtm version 0.6.5.2 Regression - Issue #914 getting generic tag before the image has been pulled 0.6.5.1 Force tls1.2 when using Setup-TraefikContainerForBcContainers New function Get-LatestAlLanguageExtensionUrl for getting the Url to the latest AL Extension from the marketplace Added parameter -installCertificateOnHost to New-NavContainer to automatically install the self-signed certificate on the host Avoid double download of best generic image First check "Docker is running" before checking "Windows Container" (PR #904 Thanks Tino-T) Issue #901 - Sort-AppFoldersByDependencies fails if an app.json doesn't have a dependencies section Issue #907 - Local 14.x onpremises images cannot be started with -useBestContainerOS 0.6.5.0 February 2020 bug fix - -useBestContainerOS will now select between all published generic images. Generic images have been built for all supported Windows 10 versions. 0.6.4.30 Add multitenancy support for useNewDatabase in Clean-BcContainerDatabase Add support for indirect dependencies when replacing dependencies (if Application exists - only replace dependencies in this + language apps) 0.6.4.29 Issue #863 Clean-BCContainerDatabase doesn't work with current insider master images 0.6.4.28 Issue #859 Import-NavApplicationObject, Export-NavApplicationObject, Compile-NavApplicationObject etc. doesn't work in 14.10 0.6.4.27 Copy-AlSourceFiles didn't support interface files Issue #858 Get/Run-Tests doesn't work when running Windows Server 2019 images in hyperv mode (support for timezone) 0.6.4.26 Added Parameter -DoNotWriteToHost to function Convert-ALCOutputToAzureDevOps to return the result instead of outputting to Host Added Parameter -OutputTo for specifying a scriptblock in order to override the output of the Compiler result Regression: -updateHosts will remove comments and cause docker to insert multiple lines of the same host name, causing DNS resolution to fail sometimes Bugfix: Missing escape for warning message when using Traefik (thanks Tino-T) Added parameter -evaluationCompany to Clean-BcContainerDatabase (thanks ChrisBlankDe) Bugfix: Invoke-ScriptInNavContainer should throw if the script in the container fails when running unelevated (thanks marknitek) Remove support for 1803 generic image as this is no longer being updated/supported 0.6.4.25 Regression: Calling the container version of updatehosts might have different parameters and lead to missing cleanup of hosts file and ipconfig call on host Add parameter force to Install-NavContainerApp Add tenant parameter to Get-NavContainerTenants (without -forceRefresh) Compile-AppInBCContainer now has support for dependency propagation and application property in 15.3 Issue #810: Setup-NavContainerTestUsers fails on BC14 0.6.4.24 Regression: UpdateHosts did overwrite the hostname variable, which is used in navstart (only for display purposes only) Issue #794: Added parameter -copyTables to allow copying tables from original database when using -useNewDatabase Issue #791: Support foreign database server when using -useNewDatabase and -useCleanDatabase (also Export-BcContainerDatabasesAsBacpac) 0.6.4.23 Copy entitlements from previous database when using -useNewDatabase on Publish-NewApplicationToBcContainer/Clean-BcContainerDatabase (unless -doNotCopyEntitlements is specified) 0.6.4.22 Added parameter -culture to Run-TestsInBCContainer and Get-TestsFromBCContainer in order to run tests in a different culture (default en-US) Export-NavContainerDatabasesAsBacpac will check that entitlement tables are NOT empty - specify -doNotCheckEntitlements if you do not want this check New-NavContainer only uses image file cache if all files was extracted Issue #777 add parameter GenerateReportLayout to Compile-AppInBcContainer Check AL Project folder content before removal 0.6.4.21 Issue #752 Added two new options for -Shortcuts - DesktopFolder and CommonDesktopFolder, which will place shortcuts in a folder on the desktop Issue #751 Added parameter -includeLabels to Get-NavContainers Issue #765 Convert-ALCOutputToAzureDevOps fails on new AppSourceCop rules Issue #769 filenames of tranlationfiles needs to be unescaped All docker versions prior to 18.03.0 will stop working end of 2019 (due to TLS v1.2) - added warning if user needs to update docker Support communication between traefik and BC container to be https in order to support mobile apps (Thanks TFenster) Added parameter forceRefresh to Get-NavContainerTenants (thanks EPErnst) Fix hardcoded container name when using useCleanDatabase and multitenancy (thanks ChrisBlankDe) Support alternative database names when using Export-NavContainerDatabasesAsBacpac (thanks svengrav) 0.6.4.20 Better error handling in Run-Tests and Get-Tests Issue #755 Sort-AppFoldersByDependencies doesn't support "id" in dependencies Wait for tenant ready when restarting service tier in Import-TestToolkitToNavContainer and Setup-NavContainerTestUsers 0.6.4.19 Issue 716 assignPremiumPlan shouldn't require databaseCredential when using in-container database Support Windows Servercore 1909 generic image with useBestContainerOS 0.6.4.18 Pull Request 715 use Join-Path instead of "+" in Get-NavContainerPath Issue 728 allow CommonDesktop for shortcuts on New-BCContainer Pull Request 726 add -copyAppToSymbolsFolder in Compile-AppInBcContainer Issue 729 add isolation mode parameter for Setup-TraefikContainerForBcContainers Issue 716 add -assignPremiumPlan to New-BCContainerBCUser Issue 666 New-BCContainer with -useNewDatabase doesn't work with -multitenant Issue 717 Run-TestsInBCContainer hanging when using ExtensionId Add parameter destinationDatabase to New-BCContainerTenant Add parameter databaseName to Remove-BCContainerTenant 0.6.4.17 Issue #700 Restore-DatabasesInBcContainer will clear the TestFunctions folder to force re-import BREAKING CHANGE: added mandatory containerName parameter to Replace-DependenciesInAppFile Issue #692 System.IO.Packaging.Package could not be found. This is fixed by the breaking change above Detect Windows 10 1909 on host (no generic 1909 yet) Add retry algorithm to SetupWebClient (as setupWebClient sometimes fails with locking issues) Issue #710 traefik fails if PublicDnsName doesn't contain a period (.) Issue #711 Alias Install-BCContainerApp cannot be found Allow container to be started with -includeAL and -doNotExportObjectsAsText when creating AL project without -useBaseLine 0.6.4.16 New-DesktopShortcut didn't work if the username has special characters Add support for Windows Insider builds New-BcContainer would always try to pull the generic image if the image specified didn't exist New-BcContainer will report whether or not it is running as administrator Add host.containerhelper.internal to container hosts file for container to be able to connect to services at the host Add parameter GenerateAppJson to Extract-AppFileToFolder in order to generate a sample app.json based on the app manifest Add parameter VsixFile to New-BCContainer in order to override the .vsix file in the image at runtime Display Error if trying to use Run-Tests while Task Scheduler is running 0.6.4.15 Creating a container with -enableTaskScheduler:$false will disable Task Scheduler (if the container has Task Scheduler running per default = Sandbox containers) Added parameter -recreate on Setup-TraefikContainerForNavContainer to allow recreation of the container (thanks ChrisBlankDe) In Run-TestsInBCContainer - only change timeout on webapp if needed 0.6.4.14 Issue 668 consistent location for license file When restarting container during Run-Tests, wait 30 seconds if using traefik to allow traefik to pickup restarted container Include codeunit ID in assembly name in XUnit output, to allow faster rerun Do not remove results file on rerun 0.6.4.13 Do not fail on missing Web.Config 0.6.4.12 Issue #669 ensure asp.net Core requestTimeout is set to interactionTimeout Set WebServiceInstance in ServiceSettings.ps1 is using Traefik Support connecting to test runner from host (-connectFromHost) for debugging purposes (Fiddler support) Add additional debugging information in Run-TestsInBCContainer when using -debugMode 0.6.4.11 Support ExtensionId and DisabledTests on Get-Tests and Run-Tests on AL test Runner 0.6.4.10 Change ACME implementation to ACME-PS (supporting ACME.v2) Issue 660 Run-TestsInBCContainer doesn't output correctly when running as non-administrator 0.6.4.9 Default usePublicWebBaseUrl to $true if the container was started with useTraefik 0.6.4.8 Default useTraefik to $true if Traefik container is created and initialized 0.6.4.7 Issue #649 Setup-NavContainerTestUsers regression 0.6.4.6 Fix issue #642 - Invoke-NavContainerCodeunit cannot be used in 15.x containers Fix issue #643 - Get-TestsFromBcContainer sometimes fails running as non-administrator Fix issue #644 - -useCleanDatabase and -useNewDatabase get ignored if -includeAL isn't specified Add ReplaceDependencies to Setup-NavContainerTestUsers Support 15.x app in Setup-NavContainerTestUsers 0.6.4.5 Remove Parameter Set on Create-AlProjectFolderFromNavContainer - has caused confusion and blocks defaulting of id, publisher etc. BugFix: ImportTestToolkitToNavContainer running as non-administrator in 15.x containers fails Change New-NavContainer to accept containernames longer than 15 characters - change error to warning Add parameter doNotIncludeStoppedContainers to Test-NavContainer 0.6.4.4 Add -usePublicWebBaseUrl to Get-TestsFromBcContainer and Run-TestsInBcContainer to use the public Web Base Url instead of localhost Added function Sort-AppFoldersByDependencies 0.6.4.3 RestoreApps would install empty apps if ShowMyCode was false. Now it will grab the apps from \Applications Fix issue #627 Flush-ContainerHelperCache didn't remove all applications folders 0.6.4.2 Support WebClientPort in Get-Tests / Run-Tests (Issue #617) Support ReplaceDependencies on functions when publishing apps to containers with custom BaseApp Issue #616 add PreserveFormatting Issue #622 wrong variable passed in Get-BCContainerAppRuntimePackage Added function Replace-DependenciesInAppFile to replace dependencies to f.ex. BaseApp with custom BaseApp Add parameter APIVersion to Get-BCContainerApiCompanyId Add silent to Get-BCContainerApiCompanyId and Invoke-BCContainerApi Add InFile to Invoke-BCContainerApi in order to transfer files Add parameter EnableTaskScheduler to New-BCContainer Add parameter useNewDatabase to New-BCContainer, Publish-NewApplicationToBcContainer and Clean-BcContainerDatabase to create new DB instead of cleaning the existing Allow TestToolkit and apps to be installed in tenant scope and/or using the dev endpoint 0.6.4.1 Add parameter finalizeDatabasesScriptBlock to New-BcContainer Cleanup help for functions Add more debugging info to Get-/Run-Tests when using -DebugMode New function Restore-DatabasesInBcContainer Cannot find txt2al in latest 15.x container Add parameter doNotUseRuntimePackages to New-BcContainer Ignore empty runtime packages when caching runtime test apps Add credential parameter to Create-AlProjectFolderFromBcContainer Add support for relative bakfolders in Backup/Restore Add parameter bakFolder to New-BcContainer to store and reuse database Rename application runtime cache to sandbox-applications or onprem-applications based on style Add parameter -ignoreGroups to Get-TestsFromBcContainer to allow compatible output with 15.x containers (where groups are not supported) New function Flush-ContainerHelperCache to cleanup caches used by ContainerHelperCache 0.6.3.4 Bugfix #570: Get-NavContainerAppInfo can return one app multiple times PR #592: Catch errors from PTE CodeCop Add caching of runtime packages to Import-TestToolkitToBcContainer (or -IncludeTestToolkit) to allow faster subsequent starts of the same version Add DebugMode to run- and get-tests to increase information dump if things fail Fix regression - GetNavContainerAppInfo doesnt sort correctly 0.6.3.3 Import-TestToolkit to use local apps when using local sandbox builds 0.6.3.2 Bugfix: Compile-AppInBcContainer sometimes cannot use the downloaded symbols due to a timing issue Issue #577: Create source files cache folder even if empty Include C:\Applications.Country (if exists) during extract from container Include C:\Test Assemblies\Mock Assemblies in probing path when importing test toolkit Support importing test apps from C:\Application in 15.x containers Bugfix #585: Ignore warning messages in Get-NavContainerAppInfo 0.6.3.1 Use page 130451 as testtool page for 15.x containers Report errors and callstack correctly on 15.x containers 0.6.3.0 Bugfix: When running Sandbox containers with -useBestContainerOS, the IsBcSandbox setting wasn't transferred Include Applications folder on docker images for 15.x containers Support running tests for 15.x containers Grab application source from Applications folder instead of extracting app on 15.x containers 0.6.2.95 Copy-alSourceFiles to support using the same path and/or name for layout as report (*\name.rdlc, *.rdlc or *\..\layouts\*.rdlc) Include translations when extracting app source from 15.x containers Add parameter useBaseAppProperties to Create-AlProjectFromBcContainer in order to use AppId, Name, Publisher and version from existing BaseApp Add parameter saveData to Publish-NewApplicationToBcContainer Add parameter onlySaveBaseAppData to Clean-BcContainerDatabase to avoid saving data for other apps Add parameter restoreApps to Publish-NewApplicationToBcContainer to republish and reinstall installed apps after publishing new BaseApp 0.6.2.94 Ignore SQL Errors when using -assignpremiumplan New-NavContainer will populate the shared program files folder if it is empty (not if not restarting) to allow starting a saved image Sort should default to None and dependency graph walking should avoid recursive loops 0.6.2.93 Copy-alSourceFiles will insert a sequence number if duplicate destination file names are detected Switch to original behavior on importing testtoolkit if running Windows Authentication - the error is tied to UserPassword auth Add parameter -sort to Get-BcContainerAppInfo to get apps sorted with dependencies first or last (for uninstalling etc.) Remove "runtime" property from generated app.json to use latest Support multitenancy for Publish-NewApplicationToBcContainer Added parameter sourceDatabase to New-BcContainerTenant 0.6.2.92 Bugfix #549 -assignPremiumPlan doesn't work with 15.x containers Issue #542 allow static IP for Setup-TraefikContainerForBcContainers Issue #550 import testtoolkit destroys symbols in 14.x containers 0.6.2.91 Add parameter -runTxt2AlInContainer to New-NavContainer to allow a foreign container to perform the Txt2Al conversion when specifying -includeAL 0.6.2.9 Support AccessToken for AAD authentication in Get-TestsFromBcContainer and Run-TestsInBcContainer Support using current AzureAD connection in Create-AadAppsForBc and Create-AadUsersInBcContainer Support GUI flow in Create-AadAppsForBc and Create-AadUsersInBcContainer Bug #526 Compile-AppInBcContainer cannot handle unicode characters and slashes in app.json 0.6.2.8 Get-TestsFromNavContainer and Run-TestsInNavContainer now supports NAV 2016, NAV 2017, NAV 2018 and Business Central. Issue #528 - add SqlCredential to Generate-SymbolsInNavContainer Support AccessToken as Office365Password instead of the AAD User Password (to allow MFA accounts) Invoke-ScriptInNavContainer automatically switches to docker exec if new-pssession fails 0.6.2.7 Add -includeCSIDE parameter to Replace-NavServerContainer 0.6.2.6 Allow -bakFile parameter on New-BcContainer to specify a URL Allow -dvdpath parameter on New-BcContainer to specify a Dropbox, a SAS URL or other URL's which doesn't end in .zip Add parameter dns to new-navcontainer to override the default dns settings in the container (8.8.8.8 is the address of Google's public dns server) BugFix: Copy-AlSourceFiles overwrites dotnet.al with local versions of dotnet.al RunTests and GetTests should give a better error if WebClient isn't included in the container 0.6.2.5 Breaking change: Do not dump eventlog in container log every 2nd second when using New-NavContainer to minimize CPU usage. Added parameter dumpEventLog to keep default behavior. Added parameter doNotCheckHealth to disable health check and always report healthy (minimize CPU usage) 0.6.2.4 Fix Layout reference in report .al files when using Copy-alSourceFiles Added function Clean-BcContainerDatabase to remove the base app from a container (extracted from Publish-NewApplicationToNavContainer) Added function Add-GitToAlProjectFolder (extracted from Create-AlProjectFolderFromNavContainer) Added parameter -useCleanDatabase to New-BcContainer to allow you to create a container which is ready for VS Code to publish code customized AL app 0.6.2.3 Added parameter locale to New-NavContainer to override the culture setting of the container BugFix: Export-NavContainerObjects in hyperv ltsc2019 containers caused destructive encoding of the object files Use different folder name for PsTestTool to avoid using old cached versions BugFix: Convert-Txt2Al, Create-MyDeltaFolder, Create-MyOriginalFolder (and Convert-ModifiedObjectsToAl and Export-ModifiedObjectsAsDeltas) in hyperv ltsc2019 containers caused destructive encoding of files 0.6.2.2 Extract-FilesFromStoppedNavContainer (and -useBestContainerOS) didn't support 15.x containers 0.6.2.1 Renamed parameters navDvd* on New-BcContainer to dvd* (and created alias' for backwards compatibility) Bugfix #502 Windows Client tries to connect to localhost Bugfix #503 Credential parameter missing on Publish-NavContainerApp Support for additional docker registry for private deployments Added parameter interactionTimeout to Run-TestsInNavContainer and set the default to 2 hours (earlier hardcoded to 10 minutes) Added parameter AppendToXUnitResultFile to Run-TestsInNavContainer to allow additional tests runs added to same Xunit output file Added parameter ReRun to Run-TestsInNavContainer to replace former entry in XUnitResultFile with new run Added parameter ReturnTrueIfAllPassed to make Run-TestsInNavContainer return $true if all tests passed Use filtering to increase performance of running a single test codeunit through Run-TestsInNavContainer (instead of running all) 0.6.2.0 Support for 15.x Containers Select the best generic image when running a DVD (earlier versions chose between ltsc2016 and ltsc2019) Added tests for AppHandling functions Added an alias for NavUserPassword to New-NavContainer called UserPassword. Added alFileStructure parameter to Convert-ModifiedObjectsToAl and Create-AlProjectFolderFromNavContainer Added function Copy-AlSourceFiles to copy AL source files to a file structure given by the alFileStructure parameter 0.6.1.5 Use (Get-CimInstance Win32_OperatingSystem).Version instead of [System.Environment]::OSVersion to identify OS Version in Get-BestNavContainerImageName Do not use docker cp for Copy-FileToNavContainer and Copy-FileFromNavContainer Published from Azure DevOps 0.6.1.4 Add parameters EnableAppSourceCop, EnablePerTenantExtensionCop and EnableUICop to Compile-AppInNavContainer Shortcuts on the Desktop will only have RunAsAdmin if you are running NavContainerHelper as admin BugFix #494 0.6.1.3 Added parameter appName to Compile-AppInNavContainer to allow you to specify an app name instead of the default publisher_appname_version.app Added some debugging output to Compile-ObjectsInNavContainer Changing the default tenant to use the default tenant (not the tenant template) to export as bacpac in Export-NavContainerDatabasesAsBacpac Check that the tenant exported in Export-NavContainerDatabasesAsBacpac is operational before exporting Fix bug #492 - Publish-NavContainerApp deletes the App file 0.6.1.2 Remove .git folder and other files, which should not be published Added function Get-NavContainerApp to download an app or symbols from a container Added function Extract-AppFileToFolder to extract the content of an App Package to a Folder Prepare NavContainerHelper for BC containers (without C/AL and without Windows Client) Support for 1903 generic image (mcr.microsoft.com/dynamicsnav:generic-1903) with -useBestContainerOS Improve Traefik Security by disallowing port 8080 on host (Thanks Damien Duportal) Add ForceSync sync mode and Language parameter to Publish-NavContainerApp (Thanks Martin Kuhn) Additional rebranding for NAV/BC containers 0.6.1.1 Reverted the change to default to hyperv isolation if the revision number is different. Instead, just write a warning to maybe specify -isolation hyperv. 0.6.1.0 Added support for traefik (Thanks Tobias Fenster) Added BCContainer aliases for all functions with NavContainer in the name (which are not C/AL functions) Functions working on C/AL objects will not work with version 15.0 and higher Remove functions Convert-CALExecutionTimeToTimeSpan and Convert-CALTestOutputToAzureDevOps Fix: UnInstall and UnPublishNavContainerApp didn't transfer the value of doNotSaveData to the underlying cmdlet Added parameter Force to UnInstall and UnPublishNavContainerApp Fix: Backup-NavContainerDatabases added another mediaset if the file already exists, making the backup useless for creating containers. Added parameter BakFile to New-NavContainer to specify bakFile when starting container Added parameter UseGenericImage to New-NavContainer to allow for using private generic docker images for re-platforming and running container. New-NavContainer defaults to hyperv isolation if the Host OS version differs from the Container OS version (incl. release number = new) 0.6.0.15 Move the git piece of Create-AlProjectFromNavContainer to the end. If this fails, then everything is still created correctly. Create txt files for platform, version and country when extracting files from a container and use those (if existing) when spinning up a generic image. 0.6.0.14 Support for Windows 10 1903 preview 0.6.0.13 Bugfix: Publish-NewApplicationToNavContainer was hardcoded to use CRONUS as database - must take databasename from customsettings 0.6.0.12 Fix: Event Sources is missing for WebClient in Nav 2018 and Business Central Containers (prior to generic tag 0.0.9.6), causing the WebClient to crash if an entry is added to the event log. 0.6.0.11 Regression: Compile-AppInNavContainer should not add defaulting for AssemblyProbingPaths for versions prior to 13.x 0.6.0.10 Test-NavContainer and Get-NavContainerId should now be case insensitive Get-NavContainers now use a single docker statement instead of multiple calls Include WindowsPowerShellScripts\WebSearch\TransitionMenuSuiteObjectsForSearch.psm1 if it exists when extracting files from container BugFix: Run-TestsInNavContainer didn't use the users company setting when running Windows Authentication Added parameter CompanyName to Run-TestsInNavContainer Ignore License expiration warning lines when running Get-CompanyInNavContainer when the user is not running when admin priveleges Ignore License expiration warning lines when running Get-NavContainerNavUser when the user is not running when admin priveleges 0.6.0.9 Regression: Export-NavContainerObjects didn't respect filter containing id in 14.x 0.6.0.8 Use DacFramework 18.2 BugFix: Create-AlProjectFromNavContainer used a global imageName, should be containerName 0.6.0.7 BugFix: Regression - 14.x images has hidden dependency to app symbols Add parameter for file pattern to Convert-ModifiedObjectsToAl in order to allow for app movement 0.6.0.6 Bugfix #423 Regression in Convert-Txt2Al $imageName is unknown 0.6.0.5 Bugfix #421 Export-NavContainerDatabasesAsBacpac error deleting [user login] data 0.6.0.4 Added parameter enableSymbolLoading to Replace-NavServerContainer 0.6.0.3 Regression in Export-NavContainerObjects fixed - $imagename unknown New function Extract-FilesFromStoppedNavContainer to extract (copy) files from a stopped container 0.6.0.1 Regression in Compile-AppInNavContainer when running container prior to 14.x 0.6.0.0 BugFix #403: Extract-FilesFromNavContainer didn't work with all local containers Include ClientContext.ps1, PsTestFunctions.ps1 and pstesttoolpage.fob in NavContainerHelper instead of downloading on demand Add enableSymbolLoading option to Replace-NavServerContainer Compile-AppInNavContainer should only include dependencies in app.json Drop View deadlock_report_ring_buffer_view when creating bacpac using Export-NavContainerDatabasesAsBacpac UpdateHosts will update hosts file in the container with all entries ending with .docker.internal from the host Enable paging in Get-NavContainerImageTags Add parameter networkName to Get-NavContainerIpAddress or get IP address from first network with IP Address Add IncludeSystemObjects parameter to Export-NavContainerObjects Add parameters doNotUseDeltas and alProjectFolder to Convert-ModifiedObjectsToAl Add parameter -includeAL to New-NavContainer to create AL source folder and .netpackages folder with reference assemblies for VS Code Add parameters nowarn and assemblyProbingPaths to Compile-AppInNavContainer. Default assemblyProbingPaths is .netpackages in the project folder and all dll locations in the container Add parameter dotNetAddInsPackage to Convert-ModifiedObjectsToAl and Convert-Txt2Al New function Publish-NewApplicationToNavContainer to publish an app including base app to a container New function Create-AlProjectFolderFromNavContainer to create a VS Code AL Project Folder based on a Container Bugfix #413: Copy-CompanyInNavContainer throws strange exception 0.5.0.11 BugFix: Regression in Compile-AppInNavContainer when using NavUserPassword 0.5.0.10 BugFix #391 [Devops Pipeline].[Compile-App] publisher property not found Added parameter rulesetFile to Compile-AppInNavContainer BugFix #382 Compile-AppInNavContainer cannot download symbols on containers without updated hosts Breaking change: Setup-NavContainerTestUsers has a changed parameter set (specify admin crendential instead of sql credential) Added function: Get-NavContainerApiCompanyId to get the CompanyId for Api Calls Added function: Invoke-NavContainerApi to invoke Api calls towards a container Changed Compile-AppInNavContainer to use the container IP address for downloading symbols 0.5.0.9 Bugfix: Regression in Convert-ModifiedObjectsToAl 0.5.0.7 BugFix #380: Remove WinClient Debugger shortcut Publish and install an app instead of a codeunit when adding test users to Business Central Support Groups in Run-TestsInNavContainer Create AL baseline for database objects when version 14 (Spring Release) Added parameter -doNotUseDeltas to Convert-ModifiedObjectsToAl to create complete AL files of the objects exported 0.5.0.5 Added parameters testCodeunit and testFunction to Run-TestsInNavContainer to run individual tests Added function Get-TestsFromNavContainer to get a list of available tests Added a shortcut for the WinClient Debugger when using includecside Include ImportAction to Import-TestToolKitToNavContainer and Import-ObjectsToNavContainer Check that NavContainerHelper is running in 64bit mode Remove Symbols for Application and Test when running containers in hybrid development Use application version number from dbproperty database for application symbols (if possible) 0.5.0.4 BugFix: Transfer AzureDevOps parameter to PsTestRunner 0.5.0.3 Add paging to Get-NavContainerImageTags (needed for Azure Container Registries) Do not allow c:\programdata\navcontainerhelper as the folder in Export-NavContainerObjects BugFix #355 - Add-FontsToNavContainer fails if the folders doesn't have the same path Added function Run-TestsInNavContainer (preview) Update help text for Copy-FileToNavContainer and Copy-FileFromNavContiner and throw an error if the destination filename specifies a folder 0.5.0.2 Added function Copy-CompanyInNavContainer (Thanks Dmitry K.) Bugfix: Compile-AppInNavContainer didn't escape the publisher name Bugfix: All User data wasn't cleaned up when doing Export-NavContainerDatabasesAsBacpac 0.5.0.1 Fix bug where Get-BestNavContainerImageName returns an illegal image name 0.5.0.0 Support for running NavContainerHelper without elevated permissions Added function Check-NavContainerHelperPermissions to test whether you have the needed permissions to run NavContainerHelper Added function Repair-NavContainerApp Added function Invoke-ScriptInNavContainer to invoke a PowerShell script in a Nav Container Added function Get-NavContainerAppRuntimePackage to download a runtime package for an app from a container Added function Get-NavContainerImageLabels to get the labels for an image directly from the registry Added function Get-NavContainerImageTags to get the available tags a repository directly from the registry Added parameter doNotUpdateSymbols to Import-TestToolkitToNavContainer to avoid symbol generation Check Docker OS in New-NavContainer for better error messages Fix timestamp in file name for Get-NavContainerEventLog 0.4.3.2 BugFix: Replace-NavServerContainer doesn't resolve the best containername and pulls the wrong container 0.4.3.1 Idea #308: Add ID to finsql shortcut to get individual .zup files Idea #305: Include #Requires -PSEdition Desktop Issue #204,#279: Business Inbox fails when running Business Central on Docker Issue #290: Remove-NavContainer fails sometimes with shar 0.4.3.0 Default to process isolation when running Windows 10 18.09.1 or newer Include Collation when using UseBestContainerOS Fix Convert-CALTestOutputToAzureDevOps to support non-us cultures Display NavContainerHelper version in New-NavContainer output Check whether current user has access to run docker.exe instead of checking for admin privileges BugFix: Backup-NavContainerDatabases did not work with multitenant containers 0.4.2.6 BugFix: Publish-NavContainerApp fails in 0.4.2.4 and 0.4.2.5 due to new parameters added 0.4.2.5 BugFix: Wrong defaulting of isolation mode 0.4.2.4 Added Scope and SyncMode parameters to Publish-NavContainerApp Change mechanism to identify host OS Display Docker version during New-NavContainer Removed exception when trying to run Process isolation on Windows 10 Added defaulting mechanism for isolation (Server=process, non-server=hyperv) 0.4.2.3 BugFix: New-NavContainer cannot use images without a platform tag BugFix: Get-BestNavContainerImageName should not append OS if already appended BugFix: Extract-FilesFromNavContainerImage didn't work with SQL 2017 0.4.2.2 Better algorithm for finding which image to use 0.4.2.1 BugFix #268 Revert back to original image name if best container os doesn't exist 0.4.2.0 Automatically detect host OS and use best pre-built container (ltsc2016 or ltsc2019) unless specified Added function Get-BestNavContainerImageName BugFix Export-NavContainerDatabasesAsBacpac didn't work with containers with generic version pre 0.0.8.0 0.4.1.2 Include docker icon 0.4.1.1 Better error message in New-NavContainer Bugfix: 1703 and 1709 build numbers was switched 0.4.1.0 Support for Windows Server 2019 Support for images with SQL Server 2017 0.4.0.2 BugFix #246: Windows Server insider builds couldn't use navcontainerhelper Added function Sign-NavContainerApp to use a container to Sign an app file with a code signing certificate When running generic image, .txt files were exported to a wrong folder (country not included) Division by zero when exporting objects from a container and no objects matched the filter 0.4.0.1 Bugfix: If you specify -includeTestToolkit to New-NavContainer and use a foreign database, the import would fail New-NavContainer will cache the files from Extract-FilesFromNavContainer for future usage instead of deleting them New-CSideDevContainer has been removed - use New-NavContainer with -includeCSide instead Added function Import-PfxCertificateToNavContainer Feature request #238: Adding SynchronizeSchemaChanges parametar to Import-ObjectsToNavContainer Added parameters -publishPorts and -publicDnsName in order to be able to create publicly available containers easier Extract-FilesFromNavContainerImage would fail if any folders were missing 0.4.0.0 BugFix #207: Compile-AppInNavContainer is downloading symbols for app which is in the AppSymbolFolder Include timezone parameter on Invoke-NavContainerCodeunit Compile-AppInNavContainer checks existance of dependencies in app.json Use .alpackages as default symbols folder BugFix #216: enableSymbolLoading only works with includeCSide BugFix #215: Naming symbol-files when compiling with Compile-AppInNavContainer Display progress when pulling and avoid deadlocks when running using New-NavContainer Bugfix Get-AzureADUser didn't always retrieve the user needed New-NavContainer automatically detects best os version of generic image Bugfix: navdvdpath didn't work when pointing to a url which was case sensitive Feature #232: added tenant parameter to Get-NavContainerAppInfo Added function Extract-FilesFromNavContainerImage to extract the files from a Nav Container image Added parameter UseBestContainerOS to tell New-NavContainer to spin up a container based on the best compatible generic image. Added parameter TestToolkitCountry to import-TestToolkitToNavContainer 0.3.1.4 BugFix Convert-ModifiedObjectsToAl failed after the newly introduced [LineStart()] property in newsyntax export 0.3.1.3 Bugfix #202: NavDvd tempfolder was not deleted when using a navdvd.zip file Added function Convert-CALTestOutputToAzureDevOps to convert CAL Test Runner output to XUnit Test Xml for Azure DevOps Added function Convert-CALExecutionTimeToTimeSpan to convert text based ExecutionTime to System.TimeSpan Added parameter doNotSaveData to UnInstall-NavContainerApp and UnPublish-NavContainerApp 0.3.1.2 Bugfix - Setting timezone didn't work with all timezones Automatically use hyperv isolation if host operating system doesn't match container os 0.3.1.1 New flag on Compile-AppInNavContainer -AzureDevOps to output the result in AzureDevOps/VSTS compatible format New function Convert-ALCOutputToAzureDevOps 0.3.1.0 New function Add-FontsToNavContainer Added ClickOnce switch to New-NavContainer Added new parameters to New-NavContainer: WebClientPort, FileSharePort, ManagementServicesPort, ClientServicesPort, SoapServicesPort, ODataServicesPort and DeveloperServicesPort Bugfix #163: Perform Sync-NavTenant after all objects have been imported in Import-TestToolkitToNavContainer Added mode and appVersion to Sync-NavContainerApp Bugfix #143: CSIDE desktop shortcut authentication method follows service tier authentication method Check that windows authentication user is not a Microsoft user in New-NavContainer Added appVersion to Start-NavContainerAppDataUpgrade Ensure that NavContainerHelper is running as administrator Bugfix #153: Ensure that timeZone is set correctly Added function Generate-SymbolsInNavContainer Include test in app.json in Compile-AppInNavContainer Bugfix #nav-docker/251: Create-AadUsersInNavContainer now creates all users (not only the first 100) 0.3.0.1 Added function Get-NavCompanyInNavContainer Always enable API Services in container Throw error if new-navcontainer fails (instead of just displaying error) 0.3.0.0 Update navcontainerhelper welcome text with some missing functions Added function Stop-NavContainer Added function Start-NavContainer Added function Restart-NavContainer Added function New-LetsEncryptCertificate Added function Renew-LetsEncryptCertificate Bugfix: Invoke-NavContainerCodeunit fails if the user already exists Added ReplyTo address to Aad App, which matches Business Central Sandbox Containers 0.2.9.7 Bugfix: docker restart caused Windows Client deployed by -includeCSide to loose ACSUri setting 0.2.9.6 Rewrote Create-AadAppsForNAV to use AzureAD powershell package instead or AzureRM Added function Create-AadUsersInNavContainer 0.2.9.5 Add generatesymbolreference=1 when Importing objects using Import-ObjectsToNavContainer or ImportTestToolkitToNavContainer 0.2.9.4 Set license to NULL from dbo.[dbproperty] and dbo.[tenantproperty] tables when exporting databases to bacpac 0.2.9.3 Use containername for hosts file when using -updatehosts (like remove-navcontainer) Added parameter isolation to new-navcontainer to allow Windows Server to use hyperv isolation Fixed a number of ScriptAnalyzer errors/warnings in NavContainerHelper Empty the dbo.[Tenant License State] table when exporting databases to bacpac 0.2.9.1 Added function Backup-NavContainerDatabases Added function New-CompanyInNavContainer (thanks Mike Glue) Added function Remove-CompanyInNavContainer (thanks Mike Glue) Added function Import-ConfigPackageInNavContainer.ps1 (thanks Mike Glue) Added function Remove-ConfigPackageInNavContainer.ps1 (thanks Mike Glue) Added function Get-NavContainerServerConfiguration (thanks Richard Robberse) In Get-NavContainerPath - if you start the path with a colon (:), then the path refers to a path inside the container and not a shared folder Bugfix: Create-AadAppsForNav required reboot after setup 0.2.9.0 Added tenant parameter (0..many tenants) to Export-NavContainerDatabasesAsBacpac Object handling functions will not ask for credentials if not specified BugFix: doNotOpen in Get-NavContainerEventLog was string - should be switch Compile-AppInNavContainer had a dependency on the WebClient, this dependency is removed BufFix: Compile-AppInNavContainer did not work on multitenant containers BugFix: New-NavContainer will not crash when running the generic image with a NAV 2013 DVD Updated tests 0.2.8.4 Bugfix: Invoke-NavContainerCodeunit didn't work with multitenancy Bugfix: Premium user didn't work with multitenancy Bugfix: Hardcoded containername in Setup-NavContainerTestUsers 0.2.8.0 BugFix: Create-AadAppsForNav throws an error when the owner of the Excel App Registration already exists Add function Get-NavContainerNavUser to return users from the container Add function Invoke-NavContainerCodeunit to invoke a codeunit in a container Add function Compile-AppInNavContainer to compile an extension v2 app in a container (preview) Added publisher and version to unpublish-navcontainerapp Add function Setup-NavContainerTestUsers to setup test users with different plans and permissions Add parameter -AssignPremiumPlan to new-navcontainer in order to assign premium plan to the default super user 0.2.7.5 BugFix: New-NavContainerTenant and Remove-NavContainerTenant falsely asks for SQL credentials if not specified 0.2.7.4 BugFix: -includeCSide and -shortcuts None caused an error that $customconfig didn't exist Added -fullObjectsFolder to export-ModifiedObjectsAsDeltas to receive full objects Added TLS1.2 support to Download-File New-NavContainer now supports specifying a .zip file (UNC or URL) as NavDvdPath Add function Get-NavContainerTenants to list all tenants from a multitenant container 0.2.7.3 BugFix: ExportTxtSkipUnlicensed doesn't get set in Export-NavContainerObject when using NavUserPassword authentication Added -compile switch to Import-DeltasToNavContainer Added -deltaFolder to Export-ModifiedObjectsAsDeltas Increased timeout in Wait-NavContainerReady 0.2.7.1 Bugfix: Get-LocaleFromCountry returned blank for finnl and a lot of other finxx localizations Add -settings on Windows Client shortcut to ensure correct clientsettings.config usage Silence output of clearing modified flag Add function Import-NavContainerLicense Add parameters -sync and -install to Publish-NavContainerApp Add filter parameter to Convert-ModifiedObjectsToAl and Export-ModifiedObjectsAsDeltas (default is Modified=1) Support for inline scripts, URLs and .zip files in myscripts on New-NavContainer Bugfix: Remove-NavContainer doesn't remove entries in hosts file Remove-NavContainer to fail if it cannot remove the containerFolder (open files etc.) 0.2.7.0 Bugfix: Convert-ModifiedObjectsAsAl didn't include page extensions due to new parameter on Compare-NavApplicationObject 0.2.6.9 Bugfix: Use docker pull in New-NavContainer 0.2.6.8 Bugfix: New-NavContainer seems to hang 0.2.6.7 Add sync parameter on Publish-NavContainerApp Added ExportTxtSkipUnlicensed to Export-NavContainerObjects 0.2.6.6 Add uninstall parameter on UnPublish-NavContainerApp Add startup option to New-DesktopShortcut Add generatesymbolreference=1 when Compiling objects using Compile-ObjectsInNavContainer 0.2.6.5 AzureSQL support for multitenancy Add install parameter on Publish-NavContainerApp 0.2.6.4 Bugfix: Didn't work with "old" images 0.2.6.2 Bugfix: Create-AadAppsForNAV wasn't exported and was missing help 0.2.6.1 Check whether AAD is supported by Docker image 0.2.6.0 Add function Create-AadAppsForNav Add parameter authenticationEmail to New-NavContainer Remove default memory limit when running Windows Server as Docker host 0.2.5.2 Bugfix: Remove Test Tool shortcut when removing nav containers Bugfix: Issue 89 CSide with external SQL and different port 0.2.5.1 Update Welcometext 0.2.5.0 Add support for multitenancy Add switch -multitenant to new-navcontainer Add function New-NavContainerTenant Add function Remove-NavContainerTenant Add function New-NavContainerNavUser Add function New-NavContainerWindowsUser Add function Get-NavContainerEventLog Add function Export-NavContainerDatabasesAsBacpac Change default filter in Compile-ObjectsInNavContainer to compiled=No Add Shortcut for opening WebClient with Test Tool page if TestToolKit is included 0.2.2.4 Updated Readme 0.2.2.3 Add nav specific tags when running generic image Check for tag tag when running fetching the tag (support generic image) Check container name validity Add test running generic image 0.2.2.2 Added switch for enabling SymbolLoading (dual development), default is off 0.2.2.1 Added function Import-TestToolkitToNavContainer Added parameter -includeTestToolkit to New-NavContainer to automatically include TestToolkit objects Include more information during start of new-navcontainer (and output the docker run command if it fails early) Fix report preview when running docker images 0.0.4.3 or earlier Bugfix CSide desktop shortcut was always set to windows auth 0.2.2.0 Bugfix: Copying files to/from containers didn't work on Windows 10 Bugfix: Export-NavContainerObjects with a strange error if sharing the folder used for export directly Export-NavContainerObjects now supports txt files and fob files -exportTo parameter replaces -exportToNewSyntax Added Get-NavContainers to get all Nav containers Add pipeline support for Remove-NavContainer and Remove-NavContainerSession (to allow Get-NavContainers | Remove-NavContainer) Added Get-NavContainerDebugInfo Show ContainerName in prompt in Enter-NavContainer 0.2.1.3 Bugfix: Do not clear modified flag when container is restarting 0.2.1.2 Bugfix: Azure VM detection looked in wrong folder 0.2.1.1 Bugfix: username can now contain spaces -myscripts parameter now supports files or folders - all will be copied into the c:\run\my folder 0.2.1.0 Added -databaseServer, -databaseInstance, -databaseName, -databaseCredential to new-navcontainer (Support for External SQL Server - generic tag 0.0.4.0 or later) Added -shortcuts to new-navcontainer (support for placing shortcuts on startmenu or avoid them) Added -navDvdPath and -navDvdCountry (support for running microsoft/dynamics-nav:generic with a DVD mounted) Moved the working folder from c:\demo to c:\programdata\navcontainerhelper Added -alwaysPull to new-navcontainerhelper to always pull newer image if exists 0.2.0.1 Remove recreate-navservercontainer Simplify replace-navservercontainer and allow empty imagename 0.2.0.0 Breaking change: Change all username/password parameters to PSCredential Change -updatehost to automatically update hosts on container restart Breaking change: Remove -updatehost from Remove-NavContainer (automatically handled) 0.1.2.1 Add generatesymbolreference=yes to CSide shortcut if EnableSymbolLoading is true 0.1.2.0 When specifying -includeCSide containers are started with EnableSymbolLoad Refactored all functions into different script files Only clear object modified flag if using localhost\SQLExpress Specify server in sqlcmd Export-NavContainerObjects doesn't fail on NAV2016 and NAV2017 due to missing ExportToNewSyntax parameter 0.1.1.9 Added Start-NavContainerAppDataUpgrade function 0.1.1.8 Added ReleaseNotes a few versions back 0.1.1.7 Added ReleaseNotes to PowerShell Gallery 0.1.1.6 Added default values for additionalParameters and myScripts 0.1.1.5 Added -additionalParameters and -myScripts to New-CsideDevContainer and New-NavContainer Added -useSSL switch to New-CsideDevContainer and New-NavContainer 0.1.1.4 Fixed a bug in Convert-ModifiedObjectsToAl, where conversion would end up with an empty AL folder 0.1.1.3 Secure passwords for creating containers 0.1.1.2 Initial releases use help on the individual functions to get info. |