Skip to main content
Matrix42 Self-Service Help Center

Configuration Package Export

Overview

Configuration Packaging versioning, export to package, and other actions overview.

Before exporting the Configuration Project to a package, consider applying the Adjust Scripts Order action if you have any manually added items or manually edited order of the items in the Configuration Project.

Versions

The version is necessary for tracking progress in the package development. The current version is assigned for each change of the object or entity of the package automatically and depends on the current version of the package.

By default, the project and all changes are created with version 1.0

The package minor version or major version can be increased with the Export to Package action:

CP_change_minor_version.png

Changing the default package version from 1.0 to 1.1

Version changes have an impact on schema script optimization logic.

Export to Package

Export to Package action is available from the Configuration Project preview page. The action allows you to optionally increase the version of the package and download an archive that is ready for installation. 

The exported package includes the following files:

  • Package.json: a package descriptor with the basic information used during installation/uninstallation of the Configuration Project on another environment. It contains the unique identifier of the package (ID), vendor taken from the current certificate of the Matrix42 system, name of the package, description, version, and setup directives:
{
  "Id": "e11c11c1-1a22-c333-4d44-05d55a55c55b",
  "Vendor": "matrix42 AG",
  "Name": "HR Portal",
  "Description": "<p>HR process management app</p>",
  "Version": "1.0",
  "LastUpdatedDate": "0001-01-01T00:00:00",
  "SetupDirectives": {
    "MaintenanceMode": false,
    "RecycleWebApplication": false,
    "RestartM42WindowsServices": false
  }
}

For more details and additional parameters description see package.json content page. 

  • Schema script files: a set of files that contain the actual changes that are applied to the system by the project install;
  • Install.xml: a set of changes and schema scripts order in which they will be applied during the package installation process;
  • Uninstall.xml, Uninstall_data.xml: a set of changes and schema scripts order in which they will be applied during the package uninstallation process;

Schema script files have Owner and Audience attributes that might cause errors when installing the Configuration Package on another environment:

  • Owner attribute needs to be removed when not present at the target system. 
  • Audience: in the case of Audience attribute, it is not allowed to share objects with the User that is not present in the target system. You need to configure the audience with Roles, Inheritance, or Users that are present in the target system only. You can also make them unrestricted when it is fine from the business case. 

Resolve External References Conflicts

Starting with v. 25.4, during an export, there might be an additional step to Resolve Conflicts. The Export Configuration Package wizard validates all external references contained in the package and guides you to fix them before export. This check speeds up the development and testing of the extensions, as the conflicts and issues are identified before the package is exported and installed in other environments.

Before exporting the Package, the system checks if the project has external references that point to objects that may not exist in the target system, which could lead to installation failures:

  1. In Extensions → Configuration Projects → select the project and run Export Configuration Package

  2. The wizard scans the package for external references. The system validates references to objects that are not included in the package and are not System Objects (i.e., not present in the reference DB).

  3. If conflicts are found, the Resolve External References Conflicts step appears. 
    Resolve object references conflicts page lists each conflict with context: Conflicting attribute, Change name/order, Exported object, External reference, and the Resolve action selector per identified conflict:
    Configuration_project_resolve conflict1.png

    Resolve External References Conflicts page example with identified conflicts and Resolve options

  4. Choose the Resolve action for each listed reference or adjust the configuration project before exporting based on the provided information:

    • Ignore (default): with this option, the object is not changed and is exported as is. 

    • Reset: clears the value to the system default or empty for safe installation.

    • Adjust the configuration project before exporting, and select a replacement or add a missing reference from the current environment. 
      The following example identified that the exported Navigation Item called Car in the Administration application is referencing a Car Dataset View that is not part of the standard version of the system, and is also not present in the exported package:
      configuration project conflict example.png
      To fix this conflict, adjust the package and add the missing reference manually, for example, go back to Edit the project manually and add the highlighted missing reference. In case of the current project, add the Car Dataset View to the Layouts section:
      configuration project add missing reference.png
      Save the changes, and the next time the Export Configuration Package action is run, this conflict will no longer appear in the list of issues, as it was already resolved.

  5. Continue to export the package with resolved conflicts.

Other Actions

  • Delete: Delete the Configuration Project and selected objects. The changes in the Schema, Layouts, Objects, and other items that were created or changed within the Configuration Project remain in the system intact. 
  • Export: Export the Configuration Project data in a file. 
  • History: View the history of all the Configuration Project-related transactions. You can filter the transactions by date, attribute, user, and/or transaction type. 
  • Was this article helpful?