Saturday, June 22, 2024

Dependency publishing Option - Optimize your deployment for big projects

 Hello Frieds,

Well – you do have the “dependencyPublishingOption” in the launch.json, which has 3 options:

Consider the scenario where you have multiple applications within an environment, designated as the Parent app and Child App A.

 

  • Parent App: This application does not have any dependencies.
  • Child App A: This application depends on the Parent app.

 

Problem Statement:

When deploying the Parent app in Business Central, should you reinstall all dependent apps (like Child App A)? If so, how can this process be configured to occur automatically?









Solution: 

Using the dependencyPublishingOption Property in launch.json

The dependencyPublishingOption property in the launch.json file is used to manage how dependent apps are handled during deployment. It offers three options:

 

  1. Default: Rebuilds and publishes all dependent apps.
  2. Ignore: Skips dependency publishing. Use this option cautiously, as it may break interdependent apps.
  3. Strict: Fails the publishing process if there are any installed extensions dependent on the root folder. (Publishing will fail if the project has apps that not part of the workspace and depend on it) - Not applicable at in case where we are not using workspace option.

I like the default setting – something it takes a little longer to include all dependencies in the compile – but at least you’re checking all dependencies .. So that must be good ðŸ™‚But, in some cases – especially in case of big apps with many objects – you might want to avoid unnecessary recompiles of dependent apps.. .  (for big project we can use Ignore option in dependency publish to avoid more wait time)

1 comment: