Package Management

In addition to the inmation components already mentioned, it is also possible to install 3rd party packages using the Package Manager.

Packages are additional services that extend the functionality of inmation components. For example, a package can wrap a .NET SDK or API in order to integrate with an external system which supports those, or even expose data managed by inmation in a custom fashion.

system:inmation is designed to be a distributed system with a central Core component that is connected to multiple Connectors on local or remote hosts. The Package Manager enables the user to deploy 3rd party software components from the central system store to any of the remote Connector locations when needed.

Package .zip files

Package Names

Packages are stored as a .zip file in the central system package store (packages folder in the inmation.root directory). The package .zip file has a distinctive name made up of the following parts:

  • Version independent name - for example "inmationPIBridge"

  • version - must contain only digits. For example "1.60.0.4567"

  • .zip suffix The parts should then be separated by dots to give the full name. For example: inmationPIBridge.1.60.0.4567.zip

The exact name and version number is required to install the package using DataStudio. If the package name contains elements other than those stated above then package installation will fail.

Package Content

Each package must contain a manifest.xml file and a script.lua file to work with the package installer. Any other files in the package zip directory will be extracted into the appropriate package directory in the service store.

Package Installation

When a package is required by a particular inmation component, the package can be added in the Package Installer property compound in the Object Properties panel of the component object in DataStudio. It’s possible to install multiple package for the same component.

The Package Installer Property Compound
Figure 1. The Package Installer Property Compound

The file is transmitted from the System Package Store (in the packages directory of the inmation.root directory) to the specified component’s Service Package Store (in the packages directory within the component service’s work directory).

The Service Package Store contains three directories:

  • installed - contains the directories for installed packages

  • received - contains the .zip directories for fully transmitted packages

  • transmission - contains temporary files for packages that are still undergoing transmission

When a package has been fully received it is extracted and installed in the installed directory. The version independent package name is used as the directory name for the installed packages (along with any added instance name).

When a Connector component is updated automatically, installed packages on this Connector are also updated automatically.

Examples for Package Management Installation

Detailed examples for the use of Package Management for the installation of (Bridge Service) packages are available in the documentation on Using Bridge Interfaces.