Integrating Promotion into SAP CTS+
Prerequisites
- Domain Controller: SAP Solution Manager 7.01 SP25 at least, SAP Solution Manager 7.1, SAP NetWeaver 7.3 EHP1, or SAP NetWeaver 7.4.
- CTS plug-in installed on the CTS system (taken from SL Toolset 1.0 SP09 at least – always use the newest available CTS plug-in), see also SAP Note 1665940 for installing the SAP CTS Plug-In of SL Toolset. Note: Starting with SAP Solution Manager 7.1 SP5,
CTS_PLUG
is automatically part of your SAP Solution Manager.
- CTS plug-in installed on the CTS system (taken from SL Toolset 1.0 SP09 at least – always use the newest available CTS plug-in), see also SAP Note 1665940 for installing the SAP CTS Plug-In of SL Toolset. Note: Starting with SAP Solution Manager 7.1 SP5,
- XBP RFC user needs
SAP_CTS_PLUS
role - Redwood Server user with sufficient privileges to create and export objects in the source Redwood Server system
- Redwood Server user with sufficient privileges to create objects in the target Redwood Server system (for CTS+)
Change and Transport System Plus
Change and Transport System Plus (CTS+) is an extension of the Change and Transport System (CTS). It allows for non-ABAP objects to be collected and transported to other destination systems. The Promotion module integrates into your CTS landscape and allows you to control promoting RunMyJobs objects from within CTS.
Configuring Redwood Server to Adhere to Your Transport Strategy
You can configure the behavior of RunMyJobs with regards to the CTS transport strategy by setting parameters on the CTSPlus_Export_Pusher process or Process Definition. When you want to change the default values of parameters, duplicate the Process Definition and change the values in the copy. See Pusher Process Definition for SAP CTS+ Integration for more information on the parameters.
Tip: By default, when you promote an object via your Transport Domain Controller, the Submit Wizard lets you override defaults. You can set all mandatory parameters and the Default Queue on the Process Definition to suppress the Submit Wizard.
CTS supports the following transport strategies for requests ( WBO_GET_REQ_STRATEGY
). For each strategy, the recommended parameter values on the CTSPlus_Export_PusherProcess Definition are as follows:
- Tagged: Requires a preselected request. If you use this strategy, set the Request number parameter to either the request number or
default
, if the request in question is the user's default in the CTSPlus_Export_Pusher process. - Smart: The system either uses the preselected request or, if there is none, automatically creates a transport request and selects it. If you use this strategy, do not enter the Request number parameter in the CTSPlus_Export_Pusher process; a new request will always be created.
- Create: The system automatically creates a transport request and selects it as the standard request, ignoring any preselected request. If you use this strategy, do not enter the Request number parameter in the CTSPlus_Export_Pusher process; a new request will always be created.
CTS supports the following transport strategies for releasing requests ( WBO_REL_REQ_STRATEGY
). For each strategy, the recommended parameter values on the CTSPlus_Export_Pusher process are as follows:
- Auto: The system automatically releases the transport request as soon as an object is added to the request. This is the default behavior of RunMyJobs: it will release the request in question automatically.
- Manual: You must release the transport request manually or set the value of the parameter to Auto. If you use this strategy, set the Release request parameter of the CTSPlus_Export_Pusher process to
No
.
CTSPlus_Export_Pusher Process Definition
Parameters
Tab | Name | Description | Documentation | Default Expression | Values |
---|---|---|---|---|---|
Parameters | SAP_SYSTEMS | SAP System |
|
|
|
Parameters | CLIENT | Client |
|
|
|
Parameters | TARGET_SID | SID of the transport source system |
|
|
|
Parameters | REQUEST | Request number |
|
|
<request_number> , default |
Parameters | DESCRIPTION | Description for the new request |
|
|
|
Parameters | RELEASE_REQUEST | Release request |
|
Yes
|
Yes , No |
Parameters | CTS_URL | CTS URL |
|
|
|
Parameters | CTS_MESSAGE | Message |
|
|
|
Parameters | REQUEST_URL | Request URL |
|
|
|
Parameters | Address | Address | The address associated with the source Process Server check, or the address of the Remote System. |
|
|
Parameters | Data | Data | The data associated with the current process or Process Server check, or location of the CAR file. |
|
|
Parameters | Message | Message | The message associated with the source Process Server check. |
|
|
Parameters | SourceObject | Source Object | The name of the source that initiated this process. |
|
|
Parameters | SourceObjectType | Source Object Type | The object type of the source that initiated this process. |
|
|
Parameters | SourceObjectUniqueId | Source Object UniqueId | The unique ID of the source that initiated this process. |
|
|
Parameters | exportRuleSetBusinessKey | Export Rule Set Business Key | The business key of the Export Rule Set that contains all the objects that must be included in the generated CAR file. |
|
|
Parameters | remoteSystemBusinessKey | Remote System Business Key | The business key of the remote system that this promotion should go to. The same information is available in the Source* parameters, but this is for backwards compatibility. |
|
|
Parameters | sendToRemoteSystem | Send to Remote System | Should only the CAR file be generated (false), or must it also be send to the remote system (true). |
|
|
Parameters | SAP_USER_NAME | Request owner |
|
|
|
Parameters | CTS_PROJECT | CTS+ Request Project |
|
|
|
Parameters | TMWFLOW | Request Attribute Value |
|
|
|
Parameters | promotionComment | Comment for this promotion | Additional information as to why this promote is being done (for example, an issue number or link to documentation). |
|
|
Integrating RunMyJobs into CTS+
To begin integrating RunMyJobs into your CTS+ (BC-CTS) landscape:
-
Navigate to from Configuration > Software.
-
Under Download CTS+ Tool, download the (
ctsplus.zip
) file. -
Decompress the file.
-
To install the CTSPlus_Export_Pusher Process Definition in RunMyJobs, import the
CTSPlus_Export_Pusher.car
file. -
Install the shell scripts into the
<sapmnt>/<SAPSID>/global/CtsScripts
directory. Do not overwrite existing SAP shell scripts. -
Configure CTS+ for use with RunMyJobs:
- Create a Remote System in RunMyJobs.
- Test the setup.
See Pusher Process Definition for SAP CTS+ Integration for more information on the applicable parameters.
Note: <sapmnt>
defaults to /sapmnt
on UNIX and <drive>:/sapmnt
on Windows (for example: D:\\sapmnt
).
Tip: You can use the CTSPlus_Export_Pusher Process Definition without modifying it. If you need to modify it, duplicate it and then modify the copy.
Warning: Your modifications will be lost if you inadvertently re-import the CAR file.
Setting Up an XBP Connection to the Transport Domain Controller
Note: Follow these steps only if you do not already have a connection to the Transport Domain Controller.
- In RunMyJobs, navigate to Environment > SAP.
-
Click .
- On the SAP System tab, enter a Name and the RFC Connect Stringof your Transport Domain Controller, then choose a time zone from the Default Job Time Zone dropdown list.
- On the XBP tab, enter values for Client Number, Username, andPassword, then check Default Client.
- Click Save & Close.
Copying the Shell Scripts and JAR File to Your SAP System
- Open a command prompt on the Transport Domain Controller host.
- Inspect your
<sapmnt>/<SAPSID>/global/CtsScripts
directory to see if you already have adeploy.sh
ordeploy.bat
file and proceed as follows:- If the Transport Domain Controller is on UNIX:
- If you have a
deploy.sh
file:- Integrate the code between
"# === SAP_CPS extension === start"
and"# === SAP_CPS extension === stop"
from the provideddeploy.sh
file into yourdeploy.sh
, then copy thedeploy_SAP_CPS.sh
file to the same directory. - Ensure the shell scripts are executable by the
<SAPSID>adm
user.
- Integrate the code between
- If you do not have a
deploy.sh
file in<sapmnt>/<SAPSID>/global/CtsScripts
:- Copy both files into your
<sapmnt>/<SAPSID>/global/CtsScripts
directory. - Ensure the shell scripts are executable by the
<SAPSID>adm
user.
- Copy both files into your
- If you have a
- If the Transport Domain Controller is on Windows:
- If you have a
deploy.bat
file:- Integrate the code between
"REM === SAP_CPS extension === start"
and"REM === SAP_CPS extension === stop"
from the provideddeploy.bat
file into yourdeploy.bat
, then copy thedeploy_SAP_CPS.ps1
file to the same directory. - Ensure the shell scripts are executable by the
<SAPSID>adm
user.
- Integrate the code between
- If you do not have a
deploy.bat
file in<sapmnt>/<SAPSID>/global/CtsScripts
:- Copy both files into your
<sapmnt>/<SAPSID>/global/CtsScripts
directory. - Ensure the shell scripts are executable by the
<SAPSID>adm
user. :
- Copy both files into your
- If you have a
- If the Transport Domain Controller is on UNIX:
Note: If the directory <sapmnt>/<SAPSID>/global/CtsScripts
does not exist, you can create it. Note that you must know the location of <sapmnt>
. The CtsScript
directory must be executable by the <SAPSID>adm
user of the CTS host system. Restrict access to the CtsScripts
folder to users who are performing setup and deployment.
Creating the Application Type SAP CPS in CTS
- In SAP GUI, connect to the Transport Domain Controller and enter the transaction code
STMS
. - In the Transport Management System, navigate to Overview > Systems (Shift+F6).
- Choose Extras > Application Types > Configure.
- Choose Edit > New Entries (F5).
- Enter the details from the following table:
Field | Value |
---|---|
Application Identifier | SAP_CPS |
Application Description | SAP CPS: Transport of automation objects |
Application Support Details | Contact your SAP Basis support team (OSS via component XX_PART-REDWOOD-CPS ). |
Creating a Non-ABAP Target System in CTS
- In SAP GUI, connect to the Transport Domain Controller and enter the transaction code
STMS
. - In the Transport Management System, choose Overview > Systems (Shift F6).
- Choose SAP System > Create > Non-ABAP System.
- Create the non-ABAP system with an appropriate system ID and a description.
- Select the Transport Domain Controller as the communication system.
- Under Target System Settings, select Activate Deployment Service, then select MethodOther.
- Save your settings and confirm that you want to distribute the CTS configuration.
- In the next dialog, choose Edit > New Entries (F5).
- Select the
SAP_CPS
application type. - Enter the details from the following table:
Field | Value |
---|---|
Deploy method | Script-based Deployment |
Deploy URI | <target contexturl> [-targetpartition <partition>] or <target contexturl> [<import_rule_set>]
|
User | <user>
|
Password |
|
Example:
Field | Value |
---|---|
Deploy method | Script-based Deployment |
Deploy URI (example 1) | https://dublin.runmyfinance.cloud/customer/test -targetpartition PRS
|
Deploy URI (example 2) | http://pr1.example.com:53000/redwood MSLN_ImportRuleSetProduction
|
User | rmj_cts
|
Password |
|
Creating a Non-ABAP Source System in CTS
- In SAP GUI, connect to the SAP Solution Manager and enter the transaction code
STMS
. - In the Transport Management System, choose Overview > Systems (Shift F6).
- Choose SAP System > Create > Non-ABAP System.
- Create the non-ABAP system with an appropriate system ID and a description.
- Select the SAP Solution Manager as the communication system.
- Under Source System Settings, select Activate Transport Organizer, and choose the appropriate client. The client should be the same as the one specified on the SAP System in RunMyJobs: navigate to Environment > SAP and select Edit from the SAP System that is connected to the Transport Domain Controller. The client is specified on the XBP tab.
- Save your settings and confirm that you want to distribute the TMS configuration.
Creating a Destination Type Remote System in the Redwood Server Promotion Module
- Navigate to Promotion > Remote Systems.
-
Click .
- Enter a Name and select a Type of Destination or Both.
- Enter the URL of your local RunMyJobs instance into the URL field using the syntax
http[s]://localhost:<port>/<context>
(for example:http://localhost:53000/redwood
). - Enter valid credentials for the remote server.
- Select CTSPlus_Export_Pusher from the Pusher Process Definition dropdown list.
- Click Save & Close.
Creating Transport Routes
The configuration of your transport routes must be performed and heavily depends on your CTS landscape. See Configuring Transport Routes for more information.
Testing the Setup
- Ensure the Process Server for the Transport Domain Controller SAP system is running.
- Navigate to Definitions > Processes.
- Create a Process Definition of type RedwoodScript with the name
RS_Test_CTS_Integration
and the following Source:{}
- Click Save & Close.
- Right-click the
RS_Test_CTS_Integration
Process Definition and choose Promote > Promote to system. - Select the previously created remote system that has the CTSPlus_Export_Pusher pusher Process Definition set.
- Fill in the parameters:
- SAP System: Select the Transport Domain Controller SAP System.
- SID of the transport source system: Enter the SID of the current (source) SAP System.
- If the user has to use a default transport request as defined in CTS, specify
default
in the Request number parameter. Alternatively, you can specify a request number. If you leave the field empty, a new request will be generated. - The other parameters are optional.
- Click Next and specify the Queue of the SAP System connected to the Transport Domain Controller.
- Navigate to Monitoring > Processes and locate the CTSPlus_Export_Pusher process.
- In the detail pane, locate the CTS URL parameter. Navigate to that URL.
- You might have to enable the Transport Organizer Web UI for your client. Refer to the See Also section below.
- Locate the transport request generated by the RFC user and release it if needed (depending on the RunMyJobs and CTS transport strategy: see Choosing a Transport Strategy for more information).
- In SAP GUI, open the import Queue of the target System, with transaction code
STMS
. - Select Import Overview (F5).
- Select the target system and inspect the Import Queue (F8).
- Locate the Import Request, then select Start Import. Review the information and correct it if necessary.
- Click Continue.
- In the target RunMyJobs instance, locate the import process in Monitoring > Processes.
- Inspect the Process Definition RS_Test_CTS_Integration in Definitions > Processes.