Granular import and export concepts

You can use the granular export and import mechanism to eliminate the risk of import failure when any of the BMC Server Automation objects that you want to import, or any of the objects referenced by these objects, already exist on the destination system.

Note

If you are sure that none of the objects to be imported already exist on the destination system, you can use the regular export and import processes, as described in Import and export concepts. Alternatively, for a component template you might be interested in the version-neutral export and import processes described in the documentation for the ContentImportExport name space.

The granular export and import mechanism strives to import the maximum number of BMC Server Automation objects possible, but does not import objects that already exist on the destination system or any other objects that could cause the process to fail.

Stages of granular export and import

A typical export and import process includes the following stages:

  1. Collection of metadata for all objects involved in the export
  2. Export of objects
  3. Comparison of the exported objects to existing objects on the destination system
  4. Import of objects

You can run the comparison stage before you run the export stage, with the added benefit that objects that cannot be imported (based on the results of the comparison analysis) are excluded already at the export stage.

A corresponding command is available for each of these stages in the GranularExportImport name space. For command details, see the documentation for the GranularExportImport name space.

Rules of granular export and import

The granular export and import mechanism analyzes and acts on your selected BMC Server Automation object or group of objects (including all referenced objects) working from the bottom up, that is, starting at the lowest hierarchical level and proceeding up to the root object or group. The following rules are applied to each and every object:

  • If the object does not exist on the destination system and it can be excluded from the parent objects in which it is referenced, the object is imported.
    For the full list of supported BMC Server Automation object types and whether or not they can be excluded from parent objects, see #Supported object types for granular export and import.
  • If the object does not exist on the destination system but it cannot be excluded from parent objects, it is marked for import together with one referencing parent object. All other parent objects are not imported.
  • If the object exists on the destination system, it is not imported. If this object cannot be excluded from referencing parent objects, all parent objects are not imported as well.
  • If an object is imported while its referencing parent object is not imported due to the existence of an equivalent object on the destination system, the dependency between the child object and the parent object will most likely be lost and you will have to redefine the dependency manually.

Example use case for granular export and import

In the following figure , a Batch Job with complex dependencies is exported from a source system to a target system. Two objects already exist in the target system. The following points summarize the results of the import process for these objects:

  • The NSH script and the component template are not imported, due to the existence of equivalent objects on the target system. the dependency of the NSH script with the parent NSH Script Job and the dependency of the component template with the parent Compliance Job are maintained, because the new jobs contain the correct references to their child objects.
  • The BLPackage referenced by the component template is new and is imported to the target system. Since its referencing parent component template from the source system is not imported, the dependency between the component template and the BLPackage is not maintained. Instead, the original component template on the target system points to the original, pre-import BLPackage. You must redefine the dependency manually.

Supported object types for granular export and import

The following table lists all BMC Server Automation object types that can be included in granular export and import processes. In addition to the object type description (listed in alphabetical order), each object type is also identified by its normalized name, which you use in the input for the commands of the GranularExportImport name space. For each object type, an indication of whether or not it can be excluded appears as well.

Object type

Normalized name

Excludable?

Acl Push Job

ACL_PUSH_JOB

no

AIX Package Installable

AIX_PACKAGE_INSTALLABLE

yes

AIX Patch Installable

AIX_PATCH_INSTALLABLE

yes

Audit Job

AUDIT_JOB

no

Batch Job

BATCH_JOB

no

BLPackage

BLPACKAGE

yes

Compliance Job

COMPLIANCE_JOB

yes

Component Discovery Job

COMPONENT_DISCOVERY_JOB

yes

Custom Software Installable

CUSTOM_SOFTWARE_INSTALLABLE

yes

Deploy Job

DEPLOY_JOB

yes

Depot File Object

DEPOT_FILE_OBJECT

yes

File Deploy Job

FILE_DEPLOY_JOB

no

Hotfix Windows Installable

HOTFIX_WINDOWS_INSTALLABLE

yes

HP Bundle Installable

HP_BUNDLE_INSTALLABLE

yes

HP Patch Installable

HP_PATCH_INSTALLABLE

yes

HP Product Installable

HP_PRODUCT_INSTALLABLE

yes

IIS Hotfix Windows

IIS_HOTFIX_WINDOWS_INSTALLABLE

yes

InstallShield Windows Installable

INSTALLSHIELD_WINDOWS_INSTALLABLE

yes

MSI Windows Installable

MSI_WINDOWS_INSTALLABLE

yes

NSH Script

NSHSCRIPT

yes

NSH Script Job

NSH_SCRIPT_JOB

yes

Patch Analysis Job

PATCH_ANALYSIS_JOB

no

RPM Installable

RPM_INSTALLABLE

yes

Service Pack Windows Installable

SERVICEPACK_WINDOWS_INSTALLABLE

yes

Snapshot Job

SNAPSHOT_JOB

no

Solaris Package Installable

SOLARIS_PACKAGE_INSTALLABLE

yes

Solaris Patch Cluster Installable

SOLARIS_PATCH_CLUSTER_INSTALLABLE

yes

Solaris Patch Installable

SOLARIS_PATCH_INSTALLABLE

yes

Template

Note: A component template that has an install or uninstall Batch Job associated (through the Install/Uninstall tab during template editing) is not supported.

TEMPLATE

yes

Update Server Properties Job

UPDATE_SERVER_PROPERTY_JOB

no

Was this page helpful? Yes No Submitting... Thank you

Comments