Outbound Endpoint Configuration

This section describes step-by-step how an outbound integration endpoint can be configured to be used for publishing the system configuration to a remote Git repository.

Note: If you want to compare the configurations from multiple systems, the endpoint configuration on the systems should be identical (except for the Git branch 'Git Delivery' plugin information).

  1. Launch the 'Outbound Integration Endpoint Wizard' by selecting 'Create Outbound Integration Endpoint…' in the context menu for a setup group configured to hold outbound integration endpoints.

  1. In the 'Identify Endpoint' step of the wizard, enter basic information. Make sure the endpoint is configured to run as a system user who has view privileges to the configuration objects to be exported.

  1. As stated in Integration Endpoint PluginsOutbound Integration Endpoint 'Git Delivery' Plugin here, all configurations and settings to be held in Git must be published each time the outbound integration endpoint is invoked. Therefore, the endpoint must in step 2 of the wizard be configured to use the 'Select Objects' data source option. Even if no product, entity or classification objects are to be published, a 'dummy' selection must be made. If such data objects are to be published, the relevant root nodes should be selected.

  1. In the 'Configure Endpoint' step, select 'STEP Exporter' as the processing engine. As for the 'Workspace' parameter, most configuration objects are not workspace revised; if data objects like products, entities and classifications are to be published, in most cases it is the approved version of these objects that should be exported and for this, the 'Approved' workspace should be selected. If configuration data that is to be published is dimension dependent, all relevant contexts should be selected.

  1. Once the wizard has been completed, on the 'Configuration' tab of the newly created endpoint, configure the schedule, queue, and process retention settings as desired.

  1. In the 'Output Templates' section, add a single configuration and select the object types of the nodes selected for publishing (must also be done for 'dummy' selections).

Note: The Git delivery plugin will only work with a single output template.

  1. For 'Format', the Version Control System (VCS) integration plugins will work with either the 'STEPXML' or the 'Advanced STEPXML' format plugins. However, if data objects are to be published and the exported objects are to be filtered according to their object types, the 'Advanced STEPXML' option must be selected.

If 'STEPXML' is selected, select 'Yes' / 'All' for the configuration types to export, 'Minimum' for products, entities, and classifications, if these are to be exported and 'No' / 'None' for all types that should not be published.

Further, to make obfuscated configurations (e.g., business rules) comparable outside STEP, select 'Yes' to export 'Definitions As Comments'.

If the 'Advanced STEPXML' option is selected, enter the appropriate template and make sure to set the STEP-ProductInformattion 'DefinitionsAsComments' attribute to 'true'.

Full example configuration with product object type filtering is shown below:

<?xml version='1.0'?>
<STEP-ProductInformation DefinitionsAsComments='true'>
  <TagGroupList/>
  <TagList/>
  <Qualifiers/>
  <GlobalSettings/>
  <UserTypes ExportSize='All'/>
  <Keys/>
  <DerivedEventTypes/>
  <EdgeTypes/>
  <CrossReferenceTypes ExportSize='All'/>
  <DimensionList/>
  <ContextList/>
  <UnitList ExportSize='All'/>
  <CollectionList ExportSize='All'/>
  <ListOfValuesGroupList/>
  <ListsOfValues ExportSize='All'/>
  <IntegrationEndpoints/>
  <EventProcessors/>
  <SetupGroups/>
  <SetupEntities/>
  <AttributeGroupList ExportSize='All'/>
  <AttributeList ExportSize='All'/>
  <DataContainerTypes ExportSize='All'/>
  <ActionSetList/>
  <UserGroupList/>
  <UserList/>
  <SystemSetup ExportSize='All'/>
  <TableColors ExportSize='All'/>
  <TableRules ExportSize='All'/>
  <TableTypeGroupList ExportSize='All'/>
  <TableTypeDefinitions ExportSize='All'/>
  <ECatalogs/>
  <EventQueues/>
  <STEPWorkflows ExportSize='All'/>
  <BusinessLibraries ExportSize='All'/>
  <BusinessRules ExportSize='All'/>
  <MatchCodes/>
  <MatchingAlgorithms/>
  <PortalConfigurations ExportSize='All'/>
  <AttributeTransformationGroups/>
  <ImportConfigurations ExportSize='All'/>
  <ExportConfigurations ExportSize='All'/>
  <BulkUpdateConfigurations ExportSize='All'/>
  <TransformationLookupTableConfigurations ExportSize='All'/>
  <ComponentModels/>
  <Products ExportSize='Minimum'>
    <FilterUserType ID='Level1'/>
    <FilterUserType ID='Level2'/>
    <FilterUserType ID='Level3'/>
    <Product/>
  </Products>
  <Classifications ExportSize='Minimum'/>
</STEP-ProductInformation>
  1. Configure the 'STEPXML Splitter' post-processor. For more information, refer to Integration Endpoint PluginsOutbound Integration Endpoint 'STEPXML Splitter' Post-processor Plugin for details here.

  1. Configure the 'Git Delivery' delivery plugin. Refer to section Integration Endpoint PluginsOutbound Integration Endpoint 'Git Delivery' Plugin for details here.