Product Information
Getting started with SAP Transport Management Service (beta) for SAP Cloud Platform
Moderator Note: this blog post is outdated and refers to an older beta version that doesn’t exist anymore.
Introducing
I got the chance to be part of the beta program for (thx to Boris Zarske and team) SAP Transport Management Service (TMS) for SAP Cloud Platform. Therefor this is a closed beta, as commented below from Boris there will be a more open beta (link will be posted) and currently it´s planned to release SAP TMS in Q3/2018.
In Short SAP TMS is an additional transport option to the existing one and is running only as an Cloud based solution.:
SAP TMS provides and allows us to transport development artifacts and application content. The tool covers the following
- SaaS and PaaS
- Application-specific content archives
- Multi-Target Applications
- SAP HANA XS classic model Delivery Unit
Currently the SAP TMS supports only the Neo Environment, the future direction will also covers the SAP CF environment.
From the architecture point of view, the TMS is running at the CF environment:
And nothing (mostly) works without a litte config, therefore we want now cover the following steps:
0 | Overview and Intro |
1 | Enable SAP TMS in SAP CP (CF env.) |
2 | Create the destination(s) – SCP CF and SCP Neo |
3 | Create source node |
4 | Create target nodes with assigned destination to deployment target |
5 | Create transport routes between transport nodes |
6 | Transport SAP CP Integration with SAP TMS |
So let´s start dude….
Enable SAP TMS on SAP CP CF
The first thing what i´ve do is to create a new “Subaccount”:
Afterwards we need to assign the Entitlements to our newly created Subacc.
Now you can enable the SAP TMS subscription in your SAP CP CF subaccount:
Define the Role Collection to get access
For this pls enter the TMS Subscription and define a new role collection:
Assign the application role to the newly create role collection (e.g. SYC_RC):
And configure the trust configuration by adding the user to the role collection, by entering the SAP ID Service:
And assign a user:
Afterwards we are able to enter the SAP TMS application:
If the login is successfully we should see now the SAP TMS application:
Create the REST API access
To get access from the SAP CP Neo Acc. we need to create the API access on the TMS service in our CloudFoundry environment. This can be done via cockpit or my favorite here is simply using the cf cli:
cf login -o SAP_CP_cf-beta-test -s dev
# create a new service instance
cf create-service transport standard sap-tms
# create the service key
cf create-service-key sap-tms tms-service-key
# display the key
cf service-key sap-tms tms-service-key
Abrufen des Schlüssels tms-service-key für Serviceinstanz tms als fabian...
{
"uaa": {
"clientid": "<client ID>",
"clientsecret": "<client secretY",
"identityzone": "cf-beta-test",
"identityzoneid": "36ed660a-ecc0-4778-8b61-b2137a1bb6eb",
"sburl": "https://internal-xsuaa.authentication.eu10.hana.ondemand.com",
"tenantid": "36ed660a-ecc0-4778-8b61-b2137a1bb6eb",
"tenantmode": "dedicated",
"uaadomain": "authentication.eu10.hana.ondemand.com",
"url": "https://cf-beta-test.authentication.eu10.hana.ondemand.com",
"verificationkey": "-----BEGIN PUBLIC KEY-----MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAwThn6OO9kj0bchkOGkqYBnV1dQ3zU/xtj7Kj7nDd8nyRMcEWCtVzrzjzhiisRhlrzlRIEY82wRAZNGKMnw7cvCwNixcfcDJnjzgr2pJ+5/yDZUc0IXXyIWPZD+XdL+0EogC3d4+fqyvg/BF/F0t2hKHWr/UTXE6zrGhBKaL0d8rKfYd6olGWigFd+3+24CKI14zWVxUBtC+P9Fhngc9DRzkXqhxOK/EKn0HzSgotf5duq6Tmk9DCNM4sLW4+ERc6xzrgbeEexavax/Az9WZ4qhwgw+fwIhKIC7WLwCEJaRsW4m7NKkv+eJR2LKYesuQ9SVAJ3EXV86RwdnH4uAv7lQHsKURPVAQBlranSqyQu0EXs2N9OlWTxe+FyNkIvyZvoLrZl/CdlYc8AKxRm5rn2/88nkrYQ0XZSrnICM5FRWgVF2hn5KfZGwtBN85/D4Yck6B3ocMfyX7e4URUm9lRPQFUJGTXaZnEIge0R159HUwhTN1HvyXrs6uT1ZZmW+c3p47dw1+LmUf/hIf8zd+uvHQjIeHEJqxjqfyA8yqAFKRHKVFrwnwdMHIsRap2EKBhHMfeVf0P2th5C9MggYoGCvdIaIUgMBX3TtCdvGrcWML7hnyS2zkrlA8SoKJnRcRF2KxWKs355FhpHpzqyZflO5l98+O8wOsFjGpL9d0ECAwEAAQ==-----END PUBLIC KEY-----",
"xsappname": "<xsapp>"
},
"uri": "https://transport-service-app-backend.ts.cfapps.eu10.hana.ondemand.com"
}
Create the destination at SAP CP (CF env.)
The last thing which we need to do on SAP CP (CF env.) is to define a new destination which is pinting to the “Solution Lifecycle Management service” from your “Neo Acc”:
In detail u need to configure the following:
Name: | e.g. cpi_neo_subacc |
Type | HTTP |
Description | e.g. Solution Lifecycle Management service |
URL | https://slservice.eu1.hana.ondemand.com/slservice/slp/basic/<neo acc. id>/slp |
Proxy Type | Internet |
Authentification | Basic |
User | <your s-suser> |
Password | <s-user pw> |
For the specification of the url pls check this SAP Help page.
Create the destination at SAP CP (Neo env.)
On the Neo side we need create 3 destinations:
The first for our target application which want to use, in our scenario we want to transport SAP CP Integration content. Therefore we need information about CPI:
Name: | CloudIntegration |
Type | HTTP |
Description | e.g.SCP Integration |
URL | https://<cpi-tenant>-tmn.hci.eu1.hana.ondemand.com/itspaces/ |
Proxy Type | Internet |
Authentification | Basic |
User | <your s-suser> |
Password | <s-user pw> |
Details of the different types of available destinations can be be found here.
As u documnted in the SAP Help, for SAP CPI ist required to specify the name of the Destination as “CloudIntegration“.
The last two Destinations which are required now, are the destination to provide us access to the CF env.:
Name: | TransportManagementService |
Type | HTTP |
Description | TMS |
URL | <uri from the service key> e.g. https://transport-service-app-backend.ts.cfapps.eu10.hana.ondemand.com |
Proxy Type | Internet |
Authentification | None |
Additional Properties
sourceSystemId | CPI_DEV |
OAuth Destination:
Name: | TransportManagementServiceOAuth |
Type | HTTP |
Description | e.g.TMS OAuth |
URL | <urls from service key> https://cf-beta-test.authentication.eu10.hana.ondemand.com |
Proxy Type | Internet |
Authentification | Basic |
User | <client id from service key> |
Password | <client secret from the service key> |
Enter SAP TMS
What we 1st need to do is to specify the “source” and the “target” node.
The source node
In our simple scenario we´ve only on CPI Tenant therefore we have only one source node:
The target node
And the “target” node, were we can find now a different setup:
The transport route
Afterwards the node´s are successfully defined, we can now define our “little” transport route:
Transport and SAP CP Integration Package
Prerequisite
To tell SAP CPI which type of transport we want to use know.
It´s required to config this by entering the “Settings” section of your tenant and select TMS as “Transport Mode”:
#
Transport
Now we switch to the “Design” perspective and select a package.
In de detail view of the package click now on the “transport” link:
Enter a description:
And yes looks it works:
To validate that this really work´s and based on the fact that iám using here only a singel CPI tenant i want now to delete the package:
Enter TMS
If we go back to SAP TMS and selecting our Transport node we can now see our transport.
Select the entry and click import:
And here we go…….we can now find our content/package in the SAP CPI Tenant:
Conclusion
From my perspective it´s and important thing that we got asap (Q2?) SAP TMS to handle our artifacts.
In many projects it was really bad experience, first to export manually the CPI content and to reimport this to another tenant.
A cool thing which can be helpful as well can be a scheduled import option to avoid the manual process for the import.
But anyway i think SAP TMS is the right direction.
cheers,
Fabian
Helpful Links
MTA for the Neo Environment SAP Help
Configuring the Access to the Solutions Lifecycle Management Service
Hello Fabian,
Thanks a lot for setting up this blog!
Just to clarify the situation for all interested parties:
Thanks again,
Boris
Hello Boris,
are there any news about second beta phase ?
Regards,
Michael
Hello Michael,
Thanks for asking, second beta phase would now be available, so please let me know in case you would be interested to join the beta usage. We also plan to announce the availability of the second phase via further channels in the upcoming time.
Thanks again,
Boris
Hello Boris,
we are interested !
Regards,
Michael
Hi Michael,
Thanks for reaching out to me! I just sent you a personal message here with my email address with the request to send me a short email, so that I can send you more details concerning the boundary conditions of the beta usage.
Thanks in advance + best regards,
Boris
Hello Boris,
I am also interested in access to the second phase of the beta.
Thanks,
David
Hello David,
Also thanks for your interest in the beta phase! I also sent you a personal message with my email address, would be great, if you could send me a short email as well.
Thanks + best regards,
Boris
Hello Boris,
I am interested for TMS beta service.
Thanks.
Best Regard's
Rudra Dixit
Hi Fabian,
The destination 'TransportManagementServiceOAuth' is not supported anymore. Could you please update your blog and remove it?
Instead, the authentication data (clientid and secret) must be provided in the destination 'TransportManagementService' after changing from 'NoAuthentication' to 'OAuth2ClientCredentials' Authentication. In addition, set the Token Service URL to the URL from the service key and add '/oauth/token' to the path,e.g. https://subdomain.sl4cloud.authentication.sap.hana.ondemand.com/oauth/token.
Thanks,
Henrik
can we move data from one HANA DB tenant to another.. using CTS.. is there some content agent built for this like done for CPI ?