Creating content packages to deploy tailoring changes of applications
As an administrator, on a Tailoring environment, you can create content packages to move the tailoring changes of an application from one environment to the next. In other words, to move the customizations of an application from Tailoring, to QA, to Production. A content package contains tailored definitions, configuration data, and data from a dependent application or library can also be included.
For example, when you create a content package for BMC Helix Business Workflows, data from the primary library as well as a dependent library such as BMC Helix Innovation Studio Foundation library can also be included in the package.
Essentially, a content package is a template to apply changes to an application to modify the application for a specific business need.
For example, you might want to create a set of customizations of BMC Helix Business Workflows that convert it into an HR Case Management application. To move your changes from tailoring to QA environment, you create a content package of your customizations of BMC Helix Business Workflows. When you deploy the content package in a production environment, it applies the customizations to BMC Helix Business Workflows, turning it into an HR case management application.
After you tailor an application, you can create a content package, and share it with other administrators and developers. Administrators and developers can then import the content package by using BMC Helix Innovation Studio to deploy the tailoring changes.
Process for packaging tailoring changes
The following image shows the workflow of creating a content package from tailoring to production environment:
Before you begin
Ensure that you complete the following tasks:
- Deploy the application to your environment.
- Customize the application to meet your business requirements.
To create a content package
On a dedicated or shared tailoring system, you can create a deployable content package that gets downloaded as a ZIP file. The ZIP file is named in <developer ID>.<application name>-<application version>-content.zip> format. For example, com.example.workorder-1.0.0-content.zip. If an application's econtent package was created earlier, BMC Helix Platform overwrites the earlier package with the latest package.
Use the 7 Zip utility to extract the contents of the ZIP file. You cannot extract the contents of the import ZIP file using the Windows Zip utility or Mac archive utility.
To create a content package, perform the following steps:
- Log in to BMC Helix Innovation Studio and navigate to the Workspace tab.
- Select the installed application for which you want to create the content package.
- Select Actions > Create Content Package.
In the Create Content Package window, on the tabs displayed, perform the actions as described in the following table:
Tab name Action Select Definitions Select the customized definitions that you want to include in the content package, and click Next.
You can filter the definitions based on name, modification date, or modified by and select the definitions from the search results.
- For a content package, definitions from dependent applications and libraries are also displayed.
When you select the Record or Process check box, all the corresponding definitions are not selected.
To add the required record definitions in the package, click Add, and then click.
Important: When you are adding the record definitions from the BMC Helix Platform Foundation library, ensure that you add the definitions in the following order so that the definitions are imported properly when you import the package:
Root Cause Category
To filter the data sources that are displayed in the grid, click the Click to build a global data filter expression link.
To filter a specific data source, select a data source and click the Click to build an expression link next to the data source.
- To select the fields from an associated record, select a data source, and click the Click to build an expression link.
From Expression Editor, click Associations, and select the required fields from the associated record.
BMC Helix Platform evaluates the expression containing the associated records while creating the package and exporting data.
Important: Only fields from one to one and one to many associations are supported.
- To prevent rules from being executed after the package is deployed to the target environment, click Ignore Rules.
- To choose how duplicate data records should be handled, select one of the following options:
- Create New—New data records are created, regardless of whether any data records are duplicates.
- Ignore—Discards the duplicate data records, and creates data records only for the unique records.
- Merge—Combines the duplicate data records into a single data record.
- Overwrite—If a duplicate data record is found, replaces previous data with new data record.
To include the connector and other configuration data in the content package, select the Include configuration data in the package check box.
You can also select either of the following options after you select the Include configuration data in the package check box:
Ignore—When you are deploying a content package for the first time that contains configurations, these configurations are not deployed.
Overwrite—When you are deploying a content package to an environment that already has certain configurations, the configurations from the package overwrite the configurations that exist in the environment.
Only the connector configuration data that is available in the application or library or dependent application or library for which you are creating the content package is added to the package.
- For a content package, data from dependent applications and libraries is also displayed.
For a content package, the code-based application decides the data to be displayed in the Default section. Otherwise, all the record definitions that have the Export Data property set to True are displayed in the Default section.
Reorder data items by moving them up or down and click Next. The data items are installed in the specified order on the target environment.
Important: You cannot move the record definitions that are dimmed.
Select approval configuration definitions that you want to include in the content package.
Approval definitions from dependent applications and libraries are also displayed.
Important: The approval configurations that you have created are displayed.
Select assignment configuration definitions that you want to include in the content package.
Assignment definitions from dependent applications and libraries are also displayed.
Important: The assignment configurations that you have created are displayed.
Select Definitions to Delete
(Optional) Definitions that have been deleted are displayed here. If you want to remove the definitions from the target environment after deployment, select the deleted definitions to be removed.
If you do not select any definitions, the definitions are available for use on the target environment after the application is deployed.
Important: If the centralized tenant configuration setting VersionControl-Object-Modification-Log-Mode is enabled and you delete any objects, then the system records all these deleted deletions and displays them in the Select Definitions to Delete tab.
Review the following information that is auto-populated by default and cannot be modified:
- Application name
- Application version
- Developer ID
- Application ID
Package Click Create Package to create the package. After the package is created, click Next.
While creating a content package, you can click Close and Continue to close the window. The package creation continues in the background. You can download the package by using the Download Content Package option.
If the package creation fails, you get an error message. You can fix the issues and recreate the content package.
(Optional) Download Content Package To download a content package, click this option. If the content package creation fails, you get an error message.
The deployable content package is downloaded as a ZIP file. You can upload a package to a version control system and share the package with other developers and administrators, so that they can deploy the tailoring changes by importing the package.