sagcc exec templates composite generate input
Generates a template using input parameters, specified in a template metadata file. Based on the template metadata file, the command can generate:
A run-time micro template from an installed product instance.
An infrastructure micro template from the Platform Manager instance in an installation.
A product instance template containing a
nodes: section.
The command can help you when you want to filter which configuration properties of the product instance and its child run-time components to extract in the template.
Command Central imports the generated template automatically and creates a layer type definition for the template in the local
Command Central installation. You can use this layer type definition to create a layer for the product instance in an existing product stack. See the
sagcc create stacks layers command.
Syntax
Command Central syntax:
sagcc exec templates composite generate {--input | -i} filename.xml [options]
Not supported on
Platform Manager.
Arguments and Option
Argument or Option | Description |
{--input | -i} | Required. Specifies a template metadata file in XML format. For information about the structure and contents of the input metadata file, see Usage Notes. For more information about the {--input | -i} option, see
input. |
[options] | Optional. The command allows all options supported by the Command Line Interface. For a description of the options, see
Common Options. |
Usage Notes
The input file with the template metadata for generating an infrastructure or a runtime template uses the following XML schema:
To specify that all configurations that are defined in the
<configurations> element will be added in the generated template.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<generateCompositeTemplate>
<alias>templateAlias</alias>
<nodeAlias>exportInstallationAlias</nodeAlias>
<runtimeComponentId>runtimeComponentId</runtimeComponentId>
<infrastructure>
<includeHostname>true</includeHostname>
</infrastructure>
<instances/>
<products/>
<fixes/>
<configurations>
<runtimeComponent id="runtimecomponentId1">
<configurationInstanceId>configurationInstanceId1</configurationInstanceId>
<configurationInstanceId>configurationInstanceId2</configurationInstanceId>
...
<configurationTypeId>configurationTypeId1</configurationTypeId>
<configurationTypeId>configurationTypeId2</configurationTypeId>
...
</runtimeComponent>
<runtimeComponent id="runtimeComponentId2">
<configurationInstanceId>configurationInstanceId1</configurationInstanceId>
...
</runtimeComponent>
...
</configurations>
<parameterize>true</parameterize>
<paramPrefix>paramPrefix</paramPrefix>
<overwrite>true</overwrite>
</generateCompositeTemplate>
To specify which configurations to exclude from the generated template, set
exclude="true" attribute of the
<configurations> element. All configurations for the specified run-time components will be added in the template, except the configurations listed in the
<configurations> element of the template metadata file.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<generateCompositeTemplate>
<alias>templateAlias</alias>
<nodeAlias>exportInstallationAlias</nodeAlias>
<runtimeComponentId>runtimeComponentId</runtimeComponentId>
<infrastructure>
<includeHostname>true</includeHostname>
</infrastructure>
<instances/>
<products/>
<fixes/>
<configurations exclude="true">
<runtimeComponent id="runtimecomponentId1">
<configurationInstanceId>configurationInstanceId1</configurationInstanceId>
<configurationInstanceId>configurationInstanceId2</configurationInstanceId>
...
<configurationTypeId>configurationTypeId1</configurationTypeId>
<configurationTypeId>configurationTypeId2</configurationTypeId>
...
</runtimeComponent>
<runtimeComponent id="runtimeComponentId2">
<configurationInstanceId>configurationInstanceId1</configurationInstanceId>
...
</runtimeComponent>
...
</configurations>
<parameterize>true</parameterize>
<paramPrefix>paramPrefix</paramPrefix>
<overwrite>true</overwrite>
</generateCompositeTemplate>
The following table describes the parameters in the template metadata file:
Parameter | Description |
templateAlias | The alias name of the run-time micro template to generate. |
nodeAlias | The alias name of the installation in which the parent product instance is installed. |
runtimeComponentId | The ID of the parent product instance, from which to extract configurations. By default, if you do not include any child run-time components, only the configurations for the parent product instance will be extracted. |
infrastructure | Required when the <runtimeComponentId> is "OSGI-SPM" or is not specified. If you omit the <infrastructure> element, the command generates a runtime micro template. |
includeHostname | Optional. Includes the hostname of the Platform Manager node, from which you export Platform Manager. |
instances | Includes the instance properties of the specified product instance. |
products | Includes a list of product inline templates in the generated template. The list of products depends on the version of the source installation: For installations version 10.4 or higher, the command adds inline templates only for the products hosted on the product instance. For installations version 10.3 or lower, the command adds inline templates for all products from the source installation (not only the products hosted on the product instance). |
fixes | Adds a templates:templateAlias:fixes: section. Only with DSL "1.1", if the source product instance has been updated with patches, it also adds a templates:templateAlias:patches: section. Based on the version of the source installation, the generated template will differ as follows: 10.5 and higher, adds fixes and patches parameters that list the fixes and patches installed on the source product instance. 10.4 and lower, adds a fixes: ALL parameter that indicates to install all fixes available for the product instance in the fix repository. |
configurations | Includes the configurations of the product instance and all its child run-time components. |
exclude="true" | Optional. Specifies that the generated template will contain all configurations for the specified run-time components, except for the configurations listed in the template metadata file. Valid values: true - exclude the configurations listed in the <configurations> element false - (default) do not exclude the configurations |
id="runtimeComponentId" | Optional. Specifies the IDs of the run-time components for which you want to export configurations. You can specify the ID of the parent run-time component, or one of its child components. You can list multiple run-time components. |
configurationInstanceId | Optional. The ID of a specific configuration instance to be exported for the specified run-time component. You can list multiple configuration instances. If you do not specify any configuration instance IDs for a particular run-time component, all configurations for this run-time component will be exported. Note: If exclude="true" the specified configuration instances will be excluded from the template. |
configurationTypeId | Optional. Specifies that all configurations with this type ID must be included in the template. You can list multiple configuration type IDs. Note: If exclude="true", all configurations with the specified configuration types will be excluded from the template. |
parameterize | Optional. Specifies whether to parameterize the exported configurations. Valid values: true - parameterize the configurations false - (default) do not parameterize the configurations |
paramPrefix | Optional. Specifies a prefix to be added to the exported parameter names. Use this parameter only when parameterize is set to true. |
createLayerType | Optional. Specifies whether to create a new layer type definition that references the generated template. The alias of the new layer type definition uses the alias of the generated template, for example if the template alias is my-template, the layer definition alias is MY-TEMPLATE. Valid values: true (default) - create a new layer definition false - do not create a new layer definition |
overwrite | Optional. Use only when updating a template. Specifies whether to overwrite an existing template with the same alias name. Valid values: true - overwrite the template false - (default) do not overwrite the template |
Example Metadata File for Exporting a Platform Manager Instance to an Infrastructure Template
Use the following template metadata file to generate an infrastructure micro template named "spm-infra," which contains the hostname of the Platform Manager node, where the "COMMON-MEMORY" configuration instance will be exported, configurations will be parameterized, and if a template with the same name already exists, it will be overwritten:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<generateCompositeTemplate>
<alias>spm-infra</alias>
<nodeAlias>local</nodeAlias>
<runtimeComponentId>OSGI-SPM</runtimeComponentId>
<parameterize>true</parameterize>
<infrastructure>
<includeHostname>true</includeHostname>
</infrastructure>
<configurations>
<configurationTypeId>COMMON-MEMORY</configurationTypeId>
</configurations>
<overwrite>false</overwrite>
</generateCompositeTemplate>
Example Metadata File for Generating an Integration Server Template
Use the following template metadata file to generate a template named "is-config," which contains all typical Integration Server configurations from the "OSGI-IS_default" Integration Server run-time component in the "local" installation, where configurations will be parameterized, the "is" prefix will be added in front of each exported parameter, and if a template with the same name already exists, it will be overwritten:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<generateCompositeTemplate>
<alias>is-config</alias>
<nodeAlias>local</nodeAlias>
<runtimeComponentId>OSGI-IS_default</runtimeComponentId>
<configurations exclude="true">
<runtimeComponent id="OSGI-IS_default">
<configurationTypeId>COMMON-CONFIGURATION-TYPE-METADATA</configurationTypeId>
</runtimeComponent>
<runtimeComponent id="integrationServer-default">
<configurationTypeId>COMMON-CONFIGURATION-TYPE-METADATA</configurationTypeId>
</runtimeComponent>
</configurations>
<parameterize>true</parameterize>
<paramPrefix>is</paramPrefix>
<overwrite>true</overwrite>
</generateCompositeTemplate>
Example Metadata File for Generating an Integration Server Template with a Nodes Section
Use the following template metadata file to generate a template named "is-config," which contains a nodes: section, all typical Integration Server configurations from the "OSGI-IS_default" Integration Server run-time component in the "local" installation, where configurations will be parameterized, the "is" prefix will be added in front of each exported parameter, and if a template with the same name already exists, it will be overwritten:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<generateCompositeTemplate>
<alias>is-config</alias>
<nodeAlias>local</nodeAlias>
<runtimeComponentId>OSGI-IS_default</runtimeComponentId>
<infrastructure>
<includeHostname>true</includeHostname>
</infrastructure>
<configurations exclude="true">
<runtimeComponent id="OSGI-IS_default">
<configurationTypeId>COMMON-CONFIGURATION-TYPE-METADATA</configurationTypeId>
</runtimeComponent>
<runtimeComponent id="integrationServer-default">
<configurationTypeId>COMMON-CONFIGURATION-TYPE-METADATA</configurationTypeId>
</runtimeComponent>
</configurations>
<parameterize>true</parameterize>
<paramPrefix>is</paramPrefix>
<overwrite>true</overwrite>
</generateCompositeTemplate>
Example When Executing on Command Central
To generate a template using the properties, defined in the "my-is-config.xml" template metadata file:
sagcc exec templates composite generate -i my-is-config.xml