S/4Hana Git-enabled CTS – Part 1 – Step towards devops

Hello All,

In this blog i am going to talk about Git-enabled CTS which is a fiori app and available since S/4Hana 1909 onwards. I am using S/4Hana 2021 for showing gCTS Capabilities.

What is Git-enabled CTS?

SAP aims to support continuous integration in an ABAP environment and to allow development processes in ABAP to be aligned with development processes that are commonly used for other development environments or languages.

This has two main components:

  • Git-based versioning, including branch and merge support
  • Options to connect your ABAP processes with continuous integration (CI) tools

This will be provided by extending the ABAP Change and Transport System (“CTS”). This new set of CTS features is referred to as “git-enabled CTS” (“gCTS”).

Git repositories will be used to store released ABAP transport requests. To configure connections between Git repositories and ABAP, and manage commits / development objects stored in these repositories, a UI is provided which offers the following:

  • Subscribe to one or more Git reposititories where ABAP content is provided for the ABAP target systems
  • Trigger updates
  • Display the system”s attributes and also the subscribed Git repositories
  • Select one of the repositories, display its attributes, and the avalable commit IDs
  • Select one of the commit IDs to update the ABAP system with the content that is necessary to bring it to exactly the selected software state, or update a system to “the latest” state
  • Configuration options:register new repositories, edit existing ones, populate a new system with initial content, delete a repository subscription

1 Git-enabled Fiori – here you can find are the dependency to enable fiori app in fiori launchpad

https://fioriappslibrary.hana.ondemand.com/sap/fix/externalViewer/#/detail/Apps(‘F4158’)/S24OP

2. Fiori tile in FIori launchpad-

After assigning the required roles , users will be able to see fiori tile in fiori launchpad.

gCTS%20Tile

gCTS Tile

3. gCTS Home page

Home%20page%20of%20gCTS

Home page of gCTS

4. Enable gCTS – All the required information such as gCTS Directory, Java Runtime, Git Client etc. information has to be provided.

Enable%20gCTS

Enable gCTS

5. Health check – all should be green in order to make the proper communications

Health%20check

Health check

6. Multiple Repository can be created from here – ABAP objects can be segregated — Waoo this is cool

You can have multiple Git Repositery and multiple vSID in your system for pushing the objects.

This is private repository where i have already having required configuration, let me go inside.

Now we are inside the Repositories where you can see all the relevant information such as GitHub url, Type, vSID, git branch, commit, configurations, activities , etc.

Now let me talk about how it is working –

Once we enabled gCTS in FIori after providing all the required information such as Gitpath, vSID etc.

Automatically S4P Transport  target would be created in the system where your fiori launchpad resides. And whatever transports are part of S4P Transport target that would be pushed in Fiori gCTS apps as well as git repository.

Note – You can give any name in my case S4P 🙂

Target in SE01 you can see when you create Transports.

S4P gCTS generated Target

Once Transport will be released , objects would be commited in gCTS fiori app as well as Github..

Waao this is cool – Automatic commit 🙂

Waao same objects in github too.

Conclusion-

In this blog i was showing the steps how gCTS apps being used for pushing the objects to Github.

In my next blog gCTS part 2 i will show you how to push objects manually , track activates, logs, add teams , give permissions etc.

Regards

Naveen Jain

SAP BTP/Fullstack/FIori/S/4Hana