Installing packages from repository
Glossary Item Box
Introduction
Installing a package from the repository is adding the package and all its dependencies from the version control system repository (SVN) to bpm’online.
Package installation is required when:
- Multiple developers work on the package functionality.
- Changes are transferred between applications.
ATTENTION
The information below are applicable when working with SVN repositories via the bpmonline built-in development tools. The information are not applicable when the file system design mode is turned on (see "Working with SVN in the file system").
Package installation sequence
NOTE
Important!
Before updating the application via SVN, you must back up the database. If the application is deployed in the cloud, you should contact support.
Please note that you cannot revert to the previous version of the application via SVN.
The package is installed from the repository using the actions in the [Configuration] section. More details about this section tools can be found in the "The [Configuration] section” article.
To install the package from the repository, go to the [Configuration] section, right-click the [Packages] tab and select the [Install Package from Repository] option (Fig. 1).
Fig. 1. The [Packages] tab context menu
Then, in the dialog box, select the repository, the name and version of the package to install, and then click the [Install] button (Fig. 2).
Fig. 2. The dialog box for the package installing from the repository
During the package installation, the bound data will be automatically applied, and dependencies will be installed.
If, for any reason, the automatic application of changes has not been enabled, then changes must be applied manually. To do this, perform the following actions for the installed package in the [Configuration] section:
- Generate the source codes for items that require it.
- Compile the modified items.
- Update the database structure.
- Install SQL scripts if necessary.
- Install the connected data.
NOTE
Checkboxes in the [Database Update Required] and [Require database installation] columns on the [Schemas], [SQL scripts] and [Data] tabs of the [Configuration section] indicate that a schema, script or data needs to be installed in the database or requires modification of the database structure. In case of errors, the text of the last error can be seen in the [Last error message text] column.
Please note that not all of these columns are displayed on the [Schemas], [SQL scripts] and [Data] tabs of the [Configuration] section. If necessary, you can add them using the [Columns setup] context menu.
ATTENTION
Starting with version 7.11, after installing or updating a package from SVN, bpm'online application requires compilation (the [Compile all items] action in the [Configuration] section). In the process of compilation, the static content will be generated (see "Client static content in the file system" article).
Changes in package hierarchy
When you install a custom package, the system checks its dependencies and optionally installs or upgrades all the packages the current package depends on. For example, when you install the [UsrCustomPackage] package from the repository, the [UsrDependentPackage] package dependency will also be installed (Fig. 3).
Fig. 3. The [Changes] window after a package has been installed from SVN
This modifies the package hierarchy in the application (Fig. 4).
Fig. 4. New application package hierarchy
When a custom package is installed from SVN, the package hierarchy will be modified in the following way:
1) The application detects all dependencies of the installed package specified in its metadata in the DependsOn property.
{ "Descriptor": { "UId": "8bc92579-92ee-4ff2-8d44-1ca61542aa1b", "PackageVersion": "7.8.0", "Name": "UsrCustomPackage", "ModifiedOnUtc": "\/Date(1522671879000)\/", "Maintainer": "Customer", "Description": "Package created by user", "DependsOn": [ { "UId": "51b3ed42-678c-4da3-bd16-8596b95c0546", "PackageVersion": "7.8.0", "Name": "UsrDependentPackage" }, { "UId": "e14dcfb1-e53c-4439-a876-af7f97083ed9", "PackageVersion": "7.8.0", "Name": "SalesEnterprise" } ] } }
2) Then the system checks whether the package dependencies are installed in the configuration. If the dependencies are installed, they update, if not — the application installs them.
ATTENTION
If the package dependencies are not found in the repository (e.g., repository is not registered or not active), you will see the package installation error message. When you install the package the whole hierarchy of its dependencies is updated, so all repositories that may contain the package dependencies should be included in the configuration and activated.
3) When a package is installed, only the dependencies installed from the version control system (SVN) are installed or updated. Packages installed from zip files and pre-installed packages are not updated.
ATTENTION
If the workspace is missing any pre-installed dependency packages that were installed from zip files, the package installation will fail.
You must first install the packages on which the installed custom package or its dependencies depend on.