Landscapes configuration

Landscapes page shows all existing landscapes and looks:

landscapes

On this page you can:

  1. Create new landscape clicking on Create Landscape button (see Landscape configuration examples to learn how to configure landscapes):

    1. See Landscape configuration (PRO platform) to create PRO landscape.

    2. See Landscape configuration (CPI platform) to create CPI landscape. (Deprecated. We recommend to configure Composite landscapes configuration (CPI/Api Management)).

    3. See Landscape configuration (Api Management platform) to create Api Management landscape. (Deprecated. We recommend to configure Composite landscapes configuration (CPI/Api Management)).

  2. Manage composite landscapes (CPI/Api Management only) selecting Composite in Landscapes Type selector (see Composite landscapes configuration (CPI/Api Management)).

  3. Delete a landscape clicking on its decline button.

    Landscapes linked to any object (release, ticket, etc.) can’t be deleted.
  4. Edit landscapes clicking on its edit button.

    You can edit only Require Transport Approval and Transport Reviewers settings (for PRO and Api Management landscapes) and Deploy after transport, Require approval, and Reviewer emails landscape items settings (for CPI landscapes).

    All transports linked with the landscape must be in IMPORTED, CANCELED, or DECLINED statuses, otherwise you will get an error that it is not possible to change transport approval value because some transports are in WAITING_FOR_APPROVAL, IN_PROGRESS or CREATED state.

  5. Expand/Collapse node of a landscape to view/hide landscape items.

1. Landscape configuration (PRO platform)

Follow the steps to configure landscape:

  1. Go to the Landscapes tab on Configuration page, select Individual in Landscapes Type selector and add your landscape through Create Landscape button:

    create landscape PRO
  2. Configure the following properties:

    • Name of new landscape. Should be unique within the organization.

    • Platform - select the type of your landscape - PRO.

    • Integrated transport management - if true, Figaf Tool will use file transport EJB API to process transport of ESR (Enterprise Service Repository) objects and integration directory WS (Web Service) for Directory objects. Otherwise, user should attach transports to tickets (transports are synchronized in CTT).

    • Lookup transport automatically during synchronization finds Figaf Tool transport (with IN_PROGRESS status and the landscape has a flag Lookup transports during synchronization) when new transports with Import type were handled by CTT during synchronization. That operation is asynchronously executed at the end of synchronization.

      This option can be enabled if Integrated transport management is disabled.
    • Binary defines landscape with 2 landscape items. Binary landscape has a lot of features:

      Binary landscapes features
      1. Idempotent binary landscape is a binary landscape having landscape items with the same agent. For such landscapes there are 2 flows of transport import:

        1. When the object is mapped during transport, then new object will be created on the same system.

        2. When object is not mapped, then it will be updated on the same system.

      2. Predecessors and Successors are used to define a composite landscape. Composite landscape includes binary landscapes and links them together. For example:

        composite landscape example PRO
      3. 'Deny if matches' criteria, 'Allow if matches' criteria, 'Deny if object exists' criteria configurations (see transport denying rules).

      4. Batch import of Integration Directory transports linked with the same PI binary landscape. Batch import is not supported for groups of transports (when multiple transports created for one ticket).

      5. Batch rollback of Integration Directory transports imported in batch mode.

      6. Possibility to split import process for Integration Directory transports done through WS. You can choose if changelist should be activated immediately after upload of all objects or not.

      7. Validation of Integration Directory transports done through WS after upload completion (split import process). If related PI changelist is invalid, transport is marked Invalid in Figaf Tool and import can’t be completed.

        If you import several transports in batch mode and PI changelist is invalid for one of them, then related changelist will be canceled but batch import will continue for other transports. So invalid PI changelist will be 'skipped' during batch import operation.

      8. Possibility to update routing conditions in ICO Transport Configuration (see Transport Configuration page).

      9. Possibility to keep receiver/interface rules that exist only on target object after import (see Transport Configuration page).

      10. Projection of receiver/interface rules in ICO Transport Configuration (see Transport Configuration page).

      11. Possibility to browse changes between source ICO state and the state to upload in ICO Transport Configuration (see Transport Configuration page).

      12. Consistency check of the list of directory objects in transport as a part of transport validation.

        Let’s have a Configuration Scenario that has a set of objects related to one ICO (parties, components, channels). Map party to get it nonexistent on the target system. Then add all objects related to Configuration Scenario to transport but detach mapped party from the ticket. Validation will be processed and all objects except channels will have a validation error. Channel won’t have it because it depends on component, but the component is in transport, so, it shouldn’t be validated during validation of channel. It’s expected behavior because it’s impossible to proceed further - components are not valid in transport.

        If a component is not in transport, then channel dependencies will be validated fully.

      13. Validation of uniqueness of target objects in transport.

      14. Possibility to view changes overview for ICOs and communication channels.

        Only for transports of integration directory objects.
      15. Selection of adapterEngineName channel parameter on transport configuration page. Decentral adapter engine labels are used as values in the selector.

      16. Tracked objects name mapping lookup across the composite landscape.

      17. Navigation between Transport Configurations of the same object across the Composite landscape.

      18. Child objects name mapping lookup on Transport configuration page.

      19. Validation of naming convention rules.

      20. "Soft" decline to move transport to the CREATED state (before approval).

      21. Possibility to complete import if all landscape items are either imported or skipped but transport status is still IN_PROGRESS.

      22. Possibility to create a next ticket for the next landscape in the chain from successfully processed transport page.

        Only if landscape from current transport has one successor.
      23. Possibility to download parameters report that contains all external properties that are used in the transport. It supports CPI IFlows (CPI platform), communication channels (PRO platform) and API Proxies and Key Value Maps (Api Management platform).

      24. Possibility to perform a mass update of transport configuration parameters. It supports CPI IFlows (CPI platform), communication channels (PRO platform) and API Proxies and Key Value Maps (Api Management platform). See batch parameters update to upload transport configuration parameters for more details.

      25. Possibility to schedule import process execution. See schedule import for more details.

      26. Integration with a webhook (see Webhook integration).

      27. Integration to fetch external tickets data (see Ticket Management System Integration).

    • (Only for binary landscapes) Enable Naming Validation enables objects names mappings validation on transport level. If you have a rule TEST.*, related objects can’t be mapped to TST.* Naming validation rules should be uploaded for agent related to a source landscape item (upload naming convention rules).

    • Require Transport Approval enables review step between transport creation and import.

    • Transport Reviewers defines reviewers. This option is available only if Require Transport Approval is true.

      If Restrict Access is configured, all reviewers should also be landscape developers.
    • Make a snapshot of Transport configuration before approval - if true, transport configuration is cached once transport is sent to approval. The option is visible if Require Transport Approval option is enabled for at least one landscape item.

    • Restrict Execution enables transport executors configuration.

    • Transport Executors defines executors. This option is available only if Restrict Execution is true.

      If Restrict Access is configured, all executors should also be landscape developers.
    • Restrict Access enables restricted access to the landscape.

    • Landscape Developers defines users who are allowed to work with the landscape. This option is available only if Restrict Access is true.

    • (Only for binary landscapes) Scheduled transports execution time configures left bound for import process execution. After configured time global scheduler will have a pulse each 5 minutes. If a lot of transports are scheduled around same period, then target system may be overloaded with transports for some period of time. So that not all transports will be scheduled and executed in time.

    • Landscape Items describes groups of Agents in specific order and assignment. Landscape items can be added by clicking on plus and deleted by clicking on its decline.

      The items have the following configuration:

      • System Id is selected agent.

        If Binary is true and both landscape items have the same System Id, then it will be idempotent binary landscape. For such landscapes there are 2 flows of transport import:

        1. When the object is mapped during transport, then new object will be created on the same system.

        2. When object is not mapped, then it will be updated on the same system.

      • System description is description for current system (e.g. qa).

    • (Only for binary landscapes) Predecessors and Successors are used to define a composite landscape. Composite landscape includes binary landscapes and links them together. For example:

      composite landscape example PRO
    • Parameter values replacement defines parameter values replacement rules for transport configuration parameters. To enable this feature during landscape creation switch Configure on. Then for each landscape item you can define rule type (substring or exact match) and parameter values which will be used in transport configuration parameters.

      Only parameters inherited from source will be replaced according to defined strategy.

      Example: let’s define a landscape with 3 landscape items: Dev, Qa, Prod and configure Parameter values replacement (substring criteria):

      Rule Type Dev Qa Prod

      Substring

      dev.system.com

      qa.system.com

      prod.system.com

      Exact Match

      sapdev

      sapqa

      sapprod

      Exact Match

      dev.system.com:2222

      qa.system.com:3333

      prod.system.com:4444

      Substring

      dev.system.ondemand.com

      qa.system.ondemand.com

      So all parameters inherited from source in all objects transported through the landscape will be replaced by corresponding value in the table. If value isn’t defined, empty string will be used in transport configuration parameters.

    • Transport validation tags configures tags either technical or not-technical. If a tag is detected in an object during the creation of transport, it will be displayed as a warning. This functionality allows for easily tracking of non-blocking issues resulting from transport validation.

    • (Only for binary landscapes) 'Deny if matches' criteria defines criteria for objects that will not be attached to tickets and transports. So such objects can’t be imported. You can define criteria Object name patterns (as regular expression appended by list of types if it is needed), Object Types and Object Tags.

      Define bootstrap parameter irt.devops.exclude-denied-objects-from-dev-scope = true in order to exclude denied objects from dev scope of composite landscape,

    • (Only for binary landscapes) 'Allow if matches' criteria defines criteria for objects that will be attached to tickets and transports. Only objects match this criteria can be imported. You can define criteria Object name patterns (as regular expression), Object Types and Object Tags. If the criteria is defined and object doesn’t match all filters, then its devops is denied (in other words, if object matches any filter - its devops is allowed).

    • (Only for binary landscapes) 'Deny if object exists' criteria defines criteria for objects that will not be attached to tickets and transports if target objects exist. So such objects can be imported only if corresponding objects don’t exist on target system. You can define criteria Object name patterns (as regular expression), Object Types and Object Tags.

      Priority of resolution from the high to low: 'Deny if matches' → 'Allow if matches' → 'Deny if object exists'. It means if some object matches 'Deny if matches' criteria other 2 won’t be checked. If object doesn’t match it but matches 'Allow if matches' criteria, then checking of 'Deny if object exists' will be skipped.
    • Email integration enables or disables emails sending for approval and import operations. Configure the settings:

      • Notify about approval actions - if enabled, notification about sending for approval and execution of approval (approve, decline, soft decline) will be sent. By default, it’s disabled.

      • Notify about transport process completion - if enabled, notification about transport process completion (import, complete import, rollback, etc.) will be sent. By default, it’s disabled.

      • Additional recipients to inform about transport process completion - list of user emails that should be added to CC list in the transport process completion notification email.

    • (Only for binary landscapes) Ticket Management System Integration configures send message request used to fetch external tickets.

      It is recommended to select send message request configured by yourself. The IFlow used in the send message request should return json in the following format:

      [
          {
              "ID": "<ID>",
              "URL": "<URL>",
              "Title": "<Title>",
              "Description": "<Description>",
              "Status": "<Status>"
          },
          {...},
          ...
      ]

      There is a possibility to create default Jira Issues Request automatically. IFlow Jira_SearchIssues from FigafJiraIntegration package should be synchronized at least on one agent. Then related send message request will be created on any agent where the IFlow is synchronized.

      Then it is possible to Select from external tickets and initialize ticket data during ticket creation or update.

    • (Only for binary landscapes) Webhook integration defines events which should fire via webhook. To configure webhook go to Integrations page and create HTTP(S) integration.

      When event is triggered, related Audit event will be logged.

2. Composite landscapes configuration (CPI/Api Management)

CPI and Api Management binary landscapes are managed only in scope of a composite landscape and support only linear flow. So if you want to use binary landscape features, it’s required to configure corresponding composite landscape.

We recommend this flow because it provides a lot of benefits:

Binary landscapes features
  1. Idempotent binary landscape is a binary landscape having landscape items with the same agent. For such landscapes there are 2 flows of transport import:

    1. When the object is mapped during transport, then new object will be created on the same system.

    2. When object is not mapped, then it will be updated on the same system.

  2. Predecessors and Successors are used to define a composite landscape. Composite landscape includes binary landscapes and links them together. For example:

    composite landscape example CPI or API

    CPI and Api Management binary and composite landscapes are managed by Figaf Tool on Composite landscapes configuration (CPI/Api Management) page

  3. CPI only. Import of Partner Directory and Security Content objects.

    Edit and save related security content objects on Management of Security Content objects page to successfully import Security Content objects. It’s needed to have credentials stored in Figaf Tool, otherwise import will not be performed.
  4. CPI only. Import of TPM objects.

    Supported objects are Company Profile, Subsidiary, Trading Partner, Agreement Template, Agreement, B2B Scenario. The import is performed for Agreements and objects linked with the agreement attached to the transport will be imported to target system.

    It is recommended to use the feature in the following way:

    1. Import MIGs/MAGs manually using export/import operation on Integration Suite environment from source tenant to target tenant.

    2. Create CPI composite landscape (see that section to learn how to do that) if it is not configured yet.

    3. Create ticket and attach TPM objects to it.

    4. Process import to target system.

    There are also several important notes that we recommend to be aware of:

    • If TPM objects already exist on target system and were created manually (not using Figaf tool transport), the transport will fail and it is expected.

    • If some TPM objects attached to the ticket aren’t linked with any agreement attached to the ticket, these TPM objects will be skipped in the transport.

    • It doesn’t really matter if other TPM objects except Agreements are attached to the ticket or not. Agreement will be imported together with all other objects always. So, the fact whether other TPM objects are linked to the ticket or not, affects only the fact if the target objects will be linked to the ticket after transport and it doesn’t affect the content of the archive at all.

    • Idempotent landscapes aren’t supported.

    • Rollback isn’t supported.

    • Identifiers, systems, etc. will no be deleted on target objects after transport if they are deleted on source objects. This is SAP standard behaviour, deletion is not included, only create or overwrite.

    • B2B agreements archive import operation has timeout that could be configured by bootstrap parameter irt.devops.b2b-import-archive-timeout. Default value might be not enough for transports with a lot of agreements.

  5. CPI only. Replication of changes through CPI composite landscape. Replication will automatically create tickets, start and import transports and resolve tickets if some changes are found during synchronization of source system.

  6. CPI only. Possibility to transport older versions.

  7. Batch import of CPI/Api Management transports linked with the same binary landscape.

  8. Batch rollback of Integration Directory transports imported in batch mode.

  9. Parameter mapping rules defines name mapping rules. Several Rule Types are supported and depending on chosen types different configuration is required.

  10. 'Deny if matches' criteria, 'Allow if matches' criteria, 'Deny if object exists' criteria configurations (see transport denying rules).

  11. Tracked objects name mapping lookup across the composite landscape.

  12. Navigation between Transport Configurations of the same object across the Composite landscape.

  13. Child objects name mapping lookup on Transport configuration page.

  14. Validation of naming convention rules.

  15. "Soft" decline to move transport to the CREATED state (before approval).

  16. Possibility to complete import if all landscape items are either imported or skipped but transport status is still IN_PROGRESS.

  17. Initialize transport configuration by the ancestor values in IFlow Transport Configuration (see Transport Configuration page).

  18. Tracking source and target objects automatically using technical tags.

  19. Defining comment propagation policy used during import/rollback operations.

  20. Possibility to browse all objects in scope of composite landscape on Landscape Overview page.

  21. Possibility to change default behavior of inheritance flag for existing objects to 'Inherit from source'.

  22. Possibility to create a next ticket for the next landscape in the chain from successfully processed transport page.

    Only if landscape from current transport has one successor.
  23. Possibility to download parameters report that contains all external properties that are used in the transport. It supports CPI IFlows (CPI platform), communication channels (PRO platform) and API Proxies and Key Value Maps (Api Management platform).

  24. Possibility to perform a mass update of transport configuration parameters. It supports CPI IFlows (CPI platform), communication channels (PRO platform) and API Proxies and Key Value Maps (Api Management platform). See batch parameters update to upload transport configuration parameters for more details.

  25. Possibility to schedule import process execution. See schedule import for more details.

  26. Integration with a webhook (see Webhook integration).

  27. Integration to fetch external tickets data (see Ticket Management System Integration).

To configure composite landscape follow:

  1. Go to the Landscapes tab on Configuration page, select Composite in Landscapes Type selector.

  2. In order to create new composite landscape, click on plus. New composite landscape page will be opened:

    new composite landscapes
  3. Select Platform and configure Environments. Once this configuration is done, click on Next button. Platform and Environments will become uneditable and all corresponding binary landscapes will be predefined:

    new composite landscapes step 2
  4. Configure each landscape:

    • Name of landscape

    • (Only for CPI) Deploy after transport defines whether objects imported to current system are deployed or not.

    • (Only for binary landscapes) Enable Naming Validation enables objects names mappings validation on transport level. If you have a rule TEST.*, related objects can’t be mapped to TST.* Naming validation rules should be uploaded for agent related to a source landscape item (upload naming convention rules).

    • Require Transport Approval enables review step between transport creation and import.

    • Transport Reviewers defines reviewers. This option is available only if Require Transport Approval is true.

      If Restrict Access is configured, all reviewers should also be landscape developers.
    • Make a snapshot of Transport configuration before approval - if true, transport configuration is cached once transport is sent to approval. The option is visible if Require Transport Approval option is enabled for at least one landscape item.

    • Restrict Execution enables transport executors configuration.

    • Transport Executors defines executors. This option is available only if Restrict Execution is true.

      If Restrict Access is configured, all executors should also be landscape developers.
    • (Only for CPI) Allow transport of older versions allows import older versions to target systems.

    • Enable 'Inherit from source' by default for existing target objects changes default behavior of inheritance flag for existing objects to 'Inherit from source'. Default values is false, that means 'Inherit from target' flag for existing objects.

    • Restrict Access enables restricted access to the landscape.

    • Landscape Developers defines users who are allowed to work with the landscape. This option is available only if Restrict Access is true.

    • (Only for binary landscapes) Scheduled transports execution time configures left bound for import process execution. After configured time global scheduler will have a pulse each 5 minutes. If a lot of transports are scheduled around same period, then target system may be overloaded with transports for some period of time. So that not all transports will be scheduled and executed in time.

    • Parameter mapping rules defines name mapping rules. Several Rule Types are supported and depending on chosen types different configuration is required.

    • Parameter values replacement defines parameter values replacement rules for transport configuration parameters. To enable this feature during landscape creation switch Configure on. Then for each landscape item you can define rule type (substring or exact match) and parameter values which will be used in transport configuration parameters.

      Only parameters inherited from source will be replaced according to defined strategy.

      Example: let’s define a landscape with 3 landscape items: Dev, Qa, Prod and configure Parameter values replacement (substring criteria):

      Rule Type Dev Qa Prod

      Substring

      dev.system.com

      qa.system.com

      prod.system.com

      Exact Match

      sapdev

      sapqa

      sapprod

      Exact Match

      dev.system.com:2222

      qa.system.com:3333

      prod.system.com:4444

      Substring

      dev.system.ondemand.com

      qa.system.ondemand.com

      So all parameters inherited from source in all objects transported through the landscape will be replaced by corresponding value in the table. If value isn’t defined, empty string will be used in transport configuration parameters.

    • Transport validation tags configures tags either technical or not-technical. If a tag is detected in an object during the creation of transport, it will be displayed as a warning. This functionality allows for easily tracking of non-blocking issues resulting from transport validation.

    • (Only for binary landscapes) 'Deny if matches' criteria defines criteria for objects that will not be attached to tickets and transports. So such objects can’t be imported. You can define criteria Object name patterns (as regular expression appended by list of types if it is needed), Object Types and Object Tags.

      Define bootstrap parameter irt.devops.exclude-denied-objects-from-dev-scope = true in order to exclude denied objects from dev scope of composite landscape,

    • (Only for binary landscapes) 'Allow if matches' criteria defines criteria for objects that will be attached to tickets and transports. Only objects match this criteria can be imported. You can define criteria Object name patterns (as regular expression), Object Types and Object Tags. If the criteria is defined and object doesn’t match all filters, then its devops is denied (in other words, if object matches any filter - its devops is allowed).

    • (Only for binary landscapes) 'Deny if object exists' criteria defines criteria for objects that will not be attached to tickets and transports if target objects exist. So such objects can be imported only if corresponding objects don’t exist on target system. You can define criteria Object name patterns (as regular expression), Object Types and Object Tags.

      Priority of resolution from the high to low: 'Deny if matches' → 'Allow if matches' → 'Deny if object exists'. It means if some object matches 'Deny if matches' criteria other 2 won’t be checked. If object doesn’t match it but matches 'Allow if matches' criteria, then checking of 'Deny if object exists' will be skipped.
    • Email integration enables or disables emails sending for approval and import operations. Configure the settings:

      • Notify about approval actions - if enabled, notification about sending for approval and execution of approval (approve, decline, soft decline) will be sent. By default, it’s disabled.

      • Notify about transport process completion - if enabled, notification about transport process completion (import, complete import, rollback, etc.) will be sent. By default, it’s disabled.

      • Additional recipients to inform about transport process completion - list of user emails that should be added to CC list in the transport process completion notification email.

    • (Only for binary landscapes) Ticket Management System Integration configures send message request used to fetch external tickets.

      It is recommended to select send message request configured by yourself. The IFlow used in the send message request should return json in the following format:

      [
          {
              "ID": "<ID>",
              "URL": "<URL>",
              "Title": "<Title>",
              "Description": "<Description>",
              "Status": "<Status>"
          },
          {...},
          ...
      ]

      There is a possibility to create default Jira Issues Request automatically. IFlow Jira_SearchIssues from FigafJiraIntegration package should be synchronized at least on one agent. Then related send message request will be created on any agent where the IFlow is synchronized.

      Then it is possible to Select from external tickets and initialize ticket data during ticket creation or update.

    • (Only for binary landscapes) Webhook integration defines events which should fire via webhook. To configure webhook go to Integrations page and create HTTP(S) integration.

      When event is triggered, related Audit event will be logged.

    If you need to update Environments click on Back to environments configuration.
  5. Once configuration is ready, click on Create and configure landscapes button. Composite Landscape Creation Confirmation dialog will be opened:

    composite landscape creation confirmation dialog

    You can check configurations of all landscapes, technical tags, object name mappings.

3. Landscape configuration (CPI platform)

This is a deprecated feature for CPI platform. We recommend to use Composite landscapes configuration (CPI/Api Management) because it provides a lot of benefits:

Binary landscapes features
  1. Idempotent binary landscape is a binary landscape having landscape items with the same agent. For such landscapes there are 2 flows of transport import:

    1. When the object is mapped during transport, then new object will be created on the same system.

    2. When object is not mapped, then it will be updated on the same system.

  2. Predecessors and Successors are used to define a composite landscape. Composite landscape includes binary landscapes and links them together. For example:

    composite landscape example CPI or API

    CPI and Api Management binary and composite landscapes are managed by Figaf Tool on Composite landscapes configuration (CPI/Api Management) page

  3. CPI only. Import of Partner Directory and Security Content objects.

    Edit and save related security content objects on Management of Security Content objects page to successfully import Security Content objects. It’s needed to have credentials stored in Figaf Tool, otherwise import will not be performed.
  4. CPI only. Import of TPM objects.

    Supported objects are Company Profile, Subsidiary, Trading Partner, Agreement Template, Agreement, B2B Scenario. The import is performed for Agreements and objects linked with the agreement attached to the transport will be imported to target system.

    It is recommended to use the feature in the following way:

    1. Import MIGs/MAGs manually using export/import operation on Integration Suite environment from source tenant to target tenant.

    2. Create CPI composite landscape (see that section to learn how to do that) if it is not configured yet.

    3. Create ticket and attach TPM objects to it.

    4. Process import to target system.

    There are also several important notes that we recommend to be aware of:

    • If TPM objects already exist on target system and were created manually (not using Figaf tool transport), the transport will fail and it is expected.

    • If some TPM objects attached to the ticket aren’t linked with any agreement attached to the ticket, these TPM objects will be skipped in the transport.

    • It doesn’t really matter if other TPM objects except Agreements are attached to the ticket or not. Agreement will be imported together with all other objects always. So, the fact whether other TPM objects are linked to the ticket or not, affects only the fact if the target objects will be linked to the ticket after transport and it doesn’t affect the content of the archive at all.

    • Idempotent landscapes aren’t supported.

    • Rollback isn’t supported.

    • Identifiers, systems, etc. will no be deleted on target objects after transport if they are deleted on source objects. This is SAP standard behaviour, deletion is not included, only create or overwrite.

    • B2B agreements archive import operation has timeout that could be configured by bootstrap parameter irt.devops.b2b-import-archive-timeout. Default value might be not enough for transports with a lot of agreements.

  5. CPI only. Replication of changes through CPI composite landscape. Replication will automatically create tickets, start and import transports and resolve tickets if some changes are found during synchronization of source system.

  6. CPI only. Possibility to transport older versions.

  7. Batch import of CPI/Api Management transports linked with the same binary landscape.

  8. Batch rollback of Integration Directory transports imported in batch mode.

  9. Parameter mapping rules defines name mapping rules. Several Rule Types are supported and depending on chosen types different configuration is required.

  10. 'Deny if matches' criteria, 'Allow if matches' criteria, 'Deny if object exists' criteria configurations (see transport denying rules).

  11. Tracked objects name mapping lookup across the composite landscape.

  12. Navigation between Transport Configurations of the same object across the Composite landscape.

  13. Child objects name mapping lookup on Transport configuration page.

  14. Validation of naming convention rules.

  15. "Soft" decline to move transport to the CREATED state (before approval).

  16. Possibility to complete import if all landscape items are either imported or skipped but transport status is still IN_PROGRESS.

  17. Initialize transport configuration by the ancestor values in IFlow Transport Configuration (see Transport Configuration page).

  18. Tracking source and target objects automatically using technical tags.

  19. Defining comment propagation policy used during import/rollback operations.

  20. Possibility to browse all objects in scope of composite landscape on Landscape Overview page.

  21. Possibility to change default behavior of inheritance flag for existing objects to 'Inherit from source'.

  22. Possibility to create a next ticket for the next landscape in the chain from successfully processed transport page.

    Only if landscape from current transport has one successor.
  23. Possibility to download parameters report that contains all external properties that are used in the transport. It supports CPI IFlows (CPI platform), communication channels (PRO platform) and API Proxies and Key Value Maps (Api Management platform).

  24. Possibility to perform a mass update of transport configuration parameters. It supports CPI IFlows (CPI platform), communication channels (PRO platform) and API Proxies and Key Value Maps (Api Management platform). See batch parameters update to upload transport configuration parameters for more details.

  25. Possibility to schedule import process execution. See schedule import for more details.

  26. Integration with a webhook (see Webhook integration).

  27. Integration to fetch external tickets data (see Ticket Management System Integration).

Follow the steps to configure landscape:

  1. Go to the Landscapes tab on Configuration page, select Individual in Landscapes Type selector and add your landscape through Create Landscape button:

    create landscape CPI
  2. Configure the following properties:

    • Name of new landscape. Should be unique within the organization.

    • Platform - select the type of your landscape - CPI.

    • Define virtual items manually enables possibility to define virtual landscape items manually. Enable this option if you need landscape configuration similar to System A → System B (virtual) → System B → System C.

      If this option is disabled, agent system is marked as virtual for the 2nd and subsequent inclusions (see Landscape configurations examples).

    • Make a snapshot of Transport configuration before approval - if true, transport configuration is cached once transport is sent to approval. The option is visible if Require Transport Approval option is enabled for at least one landscape item.

    • Restrict Execution enables transport executors configuration.

    • Transport Executors defines executors. This option is available only if Restrict Execution is true.

      If Restrict Access is configured, all executors should also be landscape developers.
    • Restrict Access enables restricted access to the landscape.

    • Landscape Developers defines users who are allowed to work with the landscape. This option is available only if Restrict Access is true.

    • (Only for binary landscapes) Scheduled transports execution time configures left bound for import process execution. After configured time global scheduler will have a pulse each 5 minutes. If a lot of transports are scheduled around same period, then target system may be overloaded with transports for some period of time. So that not all transports will be scheduled and executed in time.

    • Landscape Items describes groups of Agents in specific order and assignment. Landscape items can be added by clicking on plus and deleted by clicking on its decline.

      The items have the following configuration:

      • System Id is selected agent.

      • System description is description for current system (e.g. qa).

      • Virtual defines whether landscape item is virtual or not. It’s editable only if Define virtual items manually option is enabled for current landscape.

      • Deploy after transport defines whether objects imported to current system are deployed or not.

      • Require approval defines whether transports to current system require approval or not.

        if CPI landscape item has approval flag enabled, all next landscape items must have that flag also enabled.
      • Reviewer emails defines reviewers. Available only if Require approval is true for current item.

        If Restrict Access is configured, all reviewers should also be landscape developers.
        If landscape has 3 or more landscape items, the state of the object from previous landscape item is chosen during importing transport.
    • Parameter mapping rules defines name mapping rules for technical names, displayed names, JMS queue name and sender url. The rules are applied as they are in all cases except when it’s a virtual landscape item:

      • If JMS queue name or sender url is externalized, related parameter mapping rule isn’t applied, the value should be updated in transport configuration.

      • If JMS queue name or sender url is not externalized, related parameter mapping rule is applied.

    • Parameter values replacement defines parameter values replacement rules for transport configuration parameters. To enable this feature during landscape creation switch Configure on. Then for each landscape item you can define rule type (substring or exact match) and parameter values which will be used in transport configuration parameters.

      Only parameters inherited from source will be replaced according to defined strategy.

      Example: let’s define a landscape with 3 landscape items: Dev, Qa, Prod and configure Parameter values replacement (substring criteria):

      Rule Type Dev Qa Prod

      Substring

      dev.system.com

      qa.system.com

      prod.system.com

      Exact Match

      sapdev

      sapqa

      sapprod

      Exact Match

      dev.system.com:2222

      qa.system.com:3333

      prod.system.com:4444

      Substring

      dev.system.ondemand.com

      qa.system.ondemand.com

      So all parameters inherited from source in all objects transported through the landscape will be replaced by corresponding value in the table. If value isn’t defined, empty string will be used in transport configuration parameters.

    • Transport validation tags configures tags either technical or not-technical. If a tag is detected in an object during the creation of transport, it will be displayed as a warning. This functionality allows for easily tracking of non-blocking issues resulting from transport validation.

    • Email integration enables or disables emails sending for approval and import operations. Configure the settings:

      • Notify about approval actions - if enabled, notification about sending for approval and execution of approval (approve, decline, soft decline) will be sent. By default, it’s disabled.

      • Notify about transport process completion - if enabled, notification about transport process completion (import, complete import, rollback, etc.) will be sent. By default, it’s disabled.

      • Additional recipients to inform about transport process completion - list of user emails that should be added to CC list in the transport process completion notification email.

4. Landscape configuration (Api Management platform)

This is a deprecated feature for Api Management platform. We recommend to use Composite landscapes configuration (CPI/Api Management) because it provides a lot of benefits:

Binary landscapes features
  1. Idempotent binary landscape is a binary landscape having landscape items with the same agent. For such landscapes there are 2 flows of transport import:

    1. When the object is mapped during transport, then new object will be created on the same system.

    2. When object is not mapped, then it will be updated on the same system.

  2. Predecessors and Successors are used to define a composite landscape. Composite landscape includes binary landscapes and links them together. For example:

    composite landscape example CPI or API

    CPI and Api Management binary and composite landscapes are managed by Figaf Tool on Composite landscapes configuration (CPI/Api Management) page

  3. CPI only. Import of Partner Directory and Security Content objects.

    Edit and save related security content objects on Management of Security Content objects page to successfully import Security Content objects. It’s needed to have credentials stored in Figaf Tool, otherwise import will not be performed.
  4. CPI only. Import of TPM objects.

    Supported objects are Company Profile, Subsidiary, Trading Partner, Agreement Template, Agreement, B2B Scenario. The import is performed for Agreements and objects linked with the agreement attached to the transport will be imported to target system.

    It is recommended to use the feature in the following way:

    1. Import MIGs/MAGs manually using export/import operation on Integration Suite environment from source tenant to target tenant.

    2. Create CPI composite landscape (see that section to learn how to do that) if it is not configured yet.

    3. Create ticket and attach TPM objects to it.

    4. Process import to target system.

    There are also several important notes that we recommend to be aware of:

    • If TPM objects already exist on target system and were created manually (not using Figaf tool transport), the transport will fail and it is expected.

    • If some TPM objects attached to the ticket aren’t linked with any agreement attached to the ticket, these TPM objects will be skipped in the transport.

    • It doesn’t really matter if other TPM objects except Agreements are attached to the ticket or not. Agreement will be imported together with all other objects always. So, the fact whether other TPM objects are linked to the ticket or not, affects only the fact if the target objects will be linked to the ticket after transport and it doesn’t affect the content of the archive at all.

    • Idempotent landscapes aren’t supported.

    • Rollback isn’t supported.

    • Identifiers, systems, etc. will no be deleted on target objects after transport if they are deleted on source objects. This is SAP standard behaviour, deletion is not included, only create or overwrite.

    • B2B agreements archive import operation has timeout that could be configured by bootstrap parameter irt.devops.b2b-import-archive-timeout. Default value might be not enough for transports with a lot of agreements.

  5. CPI only. Replication of changes through CPI composite landscape. Replication will automatically create tickets, start and import transports and resolve tickets if some changes are found during synchronization of source system.

  6. CPI only. Possibility to transport older versions.

  7. Batch import of CPI/Api Management transports linked with the same binary landscape.

  8. Batch rollback of Integration Directory transports imported in batch mode.

  9. Parameter mapping rules defines name mapping rules. Several Rule Types are supported and depending on chosen types different configuration is required.

  10. 'Deny if matches' criteria, 'Allow if matches' criteria, 'Deny if object exists' criteria configurations (see transport denying rules).

  11. Tracked objects name mapping lookup across the composite landscape.

  12. Navigation between Transport Configurations of the same object across the Composite landscape.

  13. Child objects name mapping lookup on Transport configuration page.

  14. Validation of naming convention rules.

  15. "Soft" decline to move transport to the CREATED state (before approval).

  16. Possibility to complete import if all landscape items are either imported or skipped but transport status is still IN_PROGRESS.

  17. Initialize transport configuration by the ancestor values in IFlow Transport Configuration (see Transport Configuration page).

  18. Tracking source and target objects automatically using technical tags.

  19. Defining comment propagation policy used during import/rollback operations.

  20. Possibility to browse all objects in scope of composite landscape on Landscape Overview page.

  21. Possibility to change default behavior of inheritance flag for existing objects to 'Inherit from source'.

  22. Possibility to create a next ticket for the next landscape in the chain from successfully processed transport page.

    Only if landscape from current transport has one successor.
  23. Possibility to download parameters report that contains all external properties that are used in the transport. It supports CPI IFlows (CPI platform), communication channels (PRO platform) and API Proxies and Key Value Maps (Api Management platform).

  24. Possibility to perform a mass update of transport configuration parameters. It supports CPI IFlows (CPI platform), communication channels (PRO platform) and API Proxies and Key Value Maps (Api Management platform). See batch parameters update to upload transport configuration parameters for more details.

  25. Possibility to schedule import process execution. See schedule import for more details.

  26. Integration with a webhook (see Webhook integration).

  27. Integration to fetch external tickets data (see Ticket Management System Integration).

Follow the steps to configure landscape:

  1. Go to the Landscapes tab on Configuration page, select Individual in Landscapes Type selector and add your landscape through Create Landscape button:

    create landscape API
  2. Configure the following properties:

    • Name of new landscape. Should be unique within the organization.

    • Platform - select the type of your landscape - Api Management.

    • Define virtual items manually enables possibility to define virtual landscape items manually. Enable this option if you need landscape configuration similar to System A → System B (virtual) → System B → System C.

      If this option is disabled, agent system is marked as virtual for the 2nd and subsequent inclusions (see Landscape configurations examples).

    • Require Transport Approval enables review step between transport creation and import.

    • Transport Reviewers defines reviewers. This option is available only if Require Transport Approval is true.

      If Restrict Access is configured, all reviewers should also be landscape developers.
    • Make a snapshot of Transport configuration before approval - if true, transport configuration is cached once transport is sent to approval. The option is visible if Require Transport Approval option is enabled for at least one landscape item.

    • Restrict Execution enables transport executors configuration.

    • Transport Executors defines executors. This option is available only if Restrict Execution is true.

      If Restrict Access is configured, all executors should also be landscape developers.
    • Restrict Access enables restricted access to the landscape.

    • Landscape Developers defines users who are allowed to work with the landscape. This option is available only if Restrict Access is true.

    • (Only for binary landscapes) Scheduled transports execution time configures left bound for import process execution. After configured time global scheduler will have a pulse each 5 minutes. If a lot of transports are scheduled around same period, then target system may be overloaded with transports for some period of time. So that not all transports will be scheduled and executed in time.

    • Landscape Items describes groups of Agents in specific order and assignment. Landscape items can be added by clicking on plus and deleted by clicking on its decline.

      The items have the following configuration:

      • System Id is selected agent.

      • System description is description for current system (e.g. qa).

      • Virtual defines whether landscape item is virtual or not. It’s editable only if Define virtual items manually option is enabled for current landscape.

    • Parameter mapping rules defines name mapping rules for technical names, displayed names and base path.

    • Parameter values replacement defines parameter values replacement rules for transport configuration parameters. To enable this feature during landscape creation switch Configure on. Then for each landscape item you can define rule type (substring or exact match) and parameter values which will be used in transport configuration parameters.

      Only parameters inherited from source will be replaced according to defined strategy.

      Example: let’s define a landscape with 3 landscape items: Dev, Qa, Prod and configure Parameter values replacement (substring criteria):

      Rule Type Dev Qa Prod

      Substring

      dev.system.com

      qa.system.com

      prod.system.com

      Exact Match

      sapdev

      sapqa

      sapprod

      Exact Match

      dev.system.com:2222

      qa.system.com:3333

      prod.system.com:4444

      Substring

      dev.system.ondemand.com

      qa.system.ondemand.com

      So all parameters inherited from source in all objects transported through the landscape will be replaced by corresponding value in the table. If value isn’t defined, empty string will be used in transport configuration parameters.

    • Transport validation tags configures tags either technical or not-technical. If a tag is detected in an object during the creation of transport, it will be displayed as a warning. This functionality allows for easily tracking of non-blocking issues resulting from transport validation.

    • Email integration enables or disables emails sending for approval and import operations. Configure the settings:

      • Notify about approval actions - if enabled, notification about sending for approval and execution of approval (approve, decline, soft decline) will be sent. By default, it’s disabled.

      • Notify about transport process completion - if enabled, notification about transport process completion (import, complete import, rollback, etc.) will be sent. By default, it’s disabled.

      • Additional recipients to inform about transport process completion - list of user emails that should be added to CC list in the transport process completion notification email.

5. Landscape configuration examples

  1. If development and debugging process is executed on the following systems: D74 (dev system) → D75 (qa system) → T75 (prod system), then landscape configuration is:

    landscape example 1
  2. If development and debugging process is executed on the following systems: D74 (dev and qa system) → D75 (prod system), then landscape configuration is:

    landscape example 2

    In this case Agent system C73 will be marked as virtual for the 2nd inclusion.

    Agent system is marked as virtual for the 2nd and subsequent inclusions. You need to use Agent system twice to define configurations like DP1 (dev and qa system) → DP2 (prod system).