Just over a year ago, it became possible to manage transports in SAP BTP, ABAP Environment (i.e. “Steampunk”) systems using the BTP service, Cloud Transport Management (cTMS).
Harald Stevens wrote an exhaustive, step-by-step blog post, which I found indispensable:
Setting up SAP Cloud Transport Management for SAP BTP ABAP Environment
However, we’ve updated the service, so I thought I would run through the changes here.
One limitation was that you could only import one released transport at a time. Now, we’ve developed some improvements:
If you want to know more, check out the SAP Help Portal:
Import Transport Requests | SAP Help
To use these improvements, you need to use a new Communication Scenario, SAP_COM_0948 (instead of the deprecated SAP_COM_0510.) I’ll talk about this below.
Both the use cases I will discuss here are covered in detail in SAP Help Portal:
We strongly recommend that you set up five systems for any project requiring more than occasional development. In fact, we really don’t recommend a three-system landscape for projects where you need to fix bugs in parallel to ongoing feature development.
In a 3-system landscape, you can of course use git branches to save your work on new features. You could then temporarily use your development (DEV) system as a correction (COR) system – for fixing urgent bugs on the release branch that is currently active in production (PRD).
However, if you had already extended your data model for a new feature, any test data based on the extended model would be lost when switching DEV to the previously released state. The only way to avoid such inconsistencies caused by switching branches would be to deliver fixes directly with the next regular release. If this is not feasible for your project, you need a 5-system landscape.
With five systems, you can set up two codelines:
Cloud Transport Management (cTMS): Five-system landscape
This graphic shows the systems involved:
DEV = develop features on main branch
TST = Quality Assurance / acceptance testing on main branch
COR = develop corrections on release branch;
QAS = Quality Assurance / acceptance testing on release branch;
PRD = Productive end use
It works like this:
The advantage of the five-system landscape is that you keep your feature development route separate from your hot fix route – i.e., you develop to your heart’s content in the infinity codeline. If you need to implement a correction, you can directly do so in COR on the release branch and transport the fix, knowing that there are no new features in the way that may not be ready.
For the COR-QAS-PRD route, we recommend Cloud Transport Management, for controlled delivery and orchestration with other tools, such as Change Request Management (ChaRM) on SAP Solution Manager (SolMan) or Cloud Application Lifecycle Management (CALM). While you could also set up a 2nd cTMS route for DEV-TST, we recommend using the ABAP Environment Pipeline from Project Piper to enable faster automated roundtrips. With a second cTMS route, you would have to manually export commits from DEV for import to TST.
If you want to find out more about CI pipelines for ABAP Environment at SAP, I can recommend this detailed blog post by Daniel Mieg:
SAP BTP, ABAP Environment Pipeline: Introducing AB... - SAP Community
Since SAP BTP 2308, you can temporarily “hibernate” / suspend any systems that are not permanently needed – here, TST, COR, QAS, and possibly even DEV, -- thus reducing the operating costs and making a 5-system landscape much more affordable.
That is, you pay for the disk space but not for memory or processing time. You also need to plan for a few minutes spin-up time.
For more details about hibernation, see:
Landscape overview in SAP BTP, ABAP Environment and in the Cloud Transport Management service
Most of the setup has been covered already in Harald’s blog post, so I’m just going to focus on the new parts.
Prerequisites - same
Service Instance for cTMS - same
Despite the fact that this is a five-system landscape, I’ll focus only on the cTMS route COR-QAS-PRD. As suggested above, I’m going to assume that you are using cTMS for your correction development but a CI pipeline for your “infinity development.” This means I’ll be setting up a transport route for: COR > QAS > PRD. I will not include DEV or TST.
Create the communication arrangement:
SAP BTP, ABAP Environment: Inbound Communication Arrangements in QAS and PRD
The process is very similar to the process in Harald’s blog post, but I’ll run through it anyway.
The Communication Arrangement should look roughly like this. You will use the Manage Software Components API later when creating a destination.
Save inbound communication arrangement
And that’s it. You should now be ready to transport your development objects as Harald describes. And as he said, please feel free to leave your feedback.
For more information, please see SAP Help:
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
23 | |
11 | |
10 | |
9 | |
8 | |
6 | |
6 | |
5 | |
5 | |
5 |