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.
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:
- Collection of metadata for all objects involved in the export
- Export of objects
- Comparison of the exported objects to existing objects on the destination system
- 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.
Acl Push Job
AIX Package Installable
AIX Patch Installable
Component Discovery Job
Custom Software Installable
Depot File Object
File Deploy Job
Hotfix Windows Installable
HP Bundle Installable
HP Patch Installable
HP Product Installable
IIS Hotfix Windows
InstallShield Windows Installable
MSI Windows Installable
NSH Script Job
Patch Analysis Job
Service Pack Windows Installable
Solaris Package Installable
Solaris Patch Cluster Installable
Solaris Patch Installable
Update Server Properties Job