Package Dependencies

A package can have one or more packages defined as a dependency. These dependent packages must be deployed first, before the package with dependencies can be deployed. It is possible to deploy packages with dependencies in a sequence using Deploy With Dependencies option (see Package Repository Right-Click Menu). Dependencies between Deployment Packages are created automatically when they belong to the same Project. An order in which dependent Packages will be deployed is visible in Deployment Status Tab.

Packages created based on PB Projects cannot currently be deployed with dependencies.

Package Dependencies Business Rules:

  1. When a package is generated (Latest Changes, All Changes or From Selection) it is automatically given a dependency to a previously generated package.
  2. Package can reference one or more packages.
  3. Package cannot reference itself.
  4. If there is a loop in the dependencies (cyclic dependency), an error message will appear.
  5. A dependency can be added only to a package that exists in the same repository.
  6. It is not possible to delete a package that is dependency of another package.
  7. When a package is transported, information about all its dependencies is transported as well.
  8. Dependency requirement can be manually overridden by marking a package as Deployed Manually (see Package Repository Right-Click Menu)

Adding and removing Package dependencies

This functionality is available from a tab in Package Properties Window or directly from Action menu or context menu after a Package is selected in Project View Pane (Generated Packages, Deployment Status tabs) by clicking the Package Dependencies menu item.

A dialog box is displayed (visible on the right) that contains two segments. Segment on the left displays a list of existing dependencies (if any). Segment on the right contains a list of all the Packages that are not linked as dependencies. User can filter the contents of this list by specifying the folder which contents will be displayed. The system shall remember user's last selection and use the same filter setting next time he arrives to this screen. You can drag and drop Packages from the second part to the first part to create the dependencies and drag and drop Packages from the first part to the second part to remove them.

Removing dependencies to a Package generated from the same Project may prevent the Package from deploying because it will lack required dependent Packages. If you try to remove a dependency to a Package generated from the same Project a warning message will appear.