Skip to Content
Product Information
Author's profile photo Karin Spiegel

gCTS is here

Do you know gCTS?

Maybe not – it is quite new.

Do you need gCTS?

Maybe – if your ABAP development processes should go for DevOps.

To solve the riddle: gCTS is short for Git-enabled Change and Transport System. The basic idea is that you can use Git to store your ABAP development objects.

The developers continue working in the ABAP workbench (SE80) or in ABAP development tools (ADT). They continue recording their changes in tasks. They continue releasing tasks and transport requests.

But: releasing the transport request does no longer mean that the transport request is added to the import queues of the follow-on systems of your system landscape. Releasing the transport request means that a commit is created in Git. The objects that were changed are added as files to a Git repository.

You can connect other ABAP runtimes to this repository. You can then choose from the commits to pull one or the other into this ABAP system.

You can set up a continuous integration process for your ABAP development.

gCTS still has a way to go until it can fully support DevOps or distributed development. But the basics are there. You can try them out for a simple ABAP package if you like – no need to immediately switch your whole ABAP development department to gCTS.

Interested in more?

To learn what is available right now in S/4HANA 1909, you can read the documentation on the SAP Help Portal: Git-enabled Change and Transport System

To get the full picture of what is planned, read our statement of direction Continuous integration in an ABAP environment

Or if you prefer a recorded session from SAP TechEd Las Vegas 2019: LT110 – Include ABAP in DevOps: Get the Picture

 

Assigned Tags

      55 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Christoph Pohl
      Christoph Pohl

      Thanks for the concise blog, Karin!

      IMHO, this is the best answer to the "special snowflake" discussion started last year by Nigel James's Blog and Dennis Howlett's reaction to it. With gCTS, CI/CD pipelines as known from the non-ABAP world eventually become possible (and hopefully soon reality).

      Cheers, Christoph

      Author's profile photo Thomas Schneider
      Thomas Schneider

      Hi Karin,

      nice blog post!

      The following blog post may be interesting to understand the role of gCTS in the context of the SAP Cloud Platform ABAP Environment:

      https://blogs.sap.com/2019/11/13/software-lifecycle-management-for-sap-cloud-platform-abap-environment/

      Best regards,

      Thomas

       

       

      Author's profile photo Martin Fischer
      Martin Fischer

      Hi Karin,

      great blog post! I really like the possibilities gCTS brings with it and the way described in the statement of direction sounds great.

      But I don't think we should say gCTS enables DevOps. gCTS makes it easier to set up your development process as you do it with other technology stacks and enable CI/CD. But DevOps is much more. It's not only about CI/CD, monitoring, automated testing and other technical aspects. It's at least for the same amount a cultural topic and a big change for all SAP development departments at customers I've seen.

      Cheers,

      Martin

      Author's profile photo Thorsten Schneider
      Thorsten Schneider

      Hi Karin,

      that's great news! Looking forward working with it.

      I've got one question:
      In ABAP-Git the serialization of table records is usually not supported (only via plugins or using the detour via BC-Sets). What is the technique used in gCTS? BC-Sets tend to be a bit slow when containing too many records.

      Regards,

      Thorsten

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi Thorsten,

      currently, gCTS does not support customizing. Anything that can be part of a Workbench request can be handeled via gCTS - even TABU entries. This with the exception that deletion ob TABUs are not supported and that there is no specific client handling. Which means that the source client will always be the target client. You can check note 288887 for details.

      Hope this helps
      Kind regards
      karin

      Author's profile photo Rammutla Ndlovu
      Rammutla Ndlovu

      Hi Karin,

       

      Are there any plans to bring gCTS to the SAP Netweaver versions that still support the SAP Business Suite (ECC 6)?

       

      Kind regards,

      Rammutla

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi Rammutla,

       

      there are no plans to downport gCTS to anything below SAP S/4HANA 1909. This is due to technical reasons as it is simply not possible to make gCTS work in the way it does on previous releases and due to the fact that new features are published in new releases.

      If you need to be able to work with gCTS in older releases, please let me know via mail naming the customer (if he allows) and the business reason. We collect these requirements and if there is a big need for this, we can think about options how it might be possible to allow at least an integration with gCTS to some extend.

      Thanks and kind regards

      Karin

      Author's profile photo Taryck Bensiali
      Taryck Bensiali

      Hi Karin,

       

      I'm not sure to understand what does gCTS provide for customizing and what is does not provide.

      Does each transport entries for customizing like TABU are generating files in folders in Git or not ?

      If not can it be enhanced to generate files in folders ?

      I ask this for the git file generation only. I do not expect that file in git will make change on S/4HANA system.

      Just a good way to review changes made overtime to each customizing entry of each tables.... which is an interesting feature.

       

      Does gCTS can support this ? With ou without any enhancement ?

      What are the available API for git ?

      Author's profile photo Christoph Pohl
      Christoph Pohl

      Cross-posting my recent blog post on modern CI practices that  become possible with gCTS: https://blogs.sap.com/2020/03/03/ci-cd-in-abap-an-outside-in-view/

      Author's profile photo Greg Gipson
      Greg Gipson

      Karin,

      Can gCTS  run in parallel with the normal transport management processes for the QA and PRD environments. For example,  exporting code to an external repo for running SAST but at the same maintaining the current transport process?

      If so,  any documentation for Basis support team. Trying to engage this concept in a phased approach.

      Thanks,

      Greg

       

       

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi Greg,

      you define on development package level whether the respective objects shall be pushed to a Git Repository when the transport request is released. The mechanism works via the transport layer. Maybe that this page on the SAP Help Portal is a starting point: https://help.sap.com/viewer/4a368c163b08418890a406d413933ba7/201909.002/en-US/3c24c83b2c0a4eee83cac387f96905ee.html

      So yes, you can use gCTS and classical CTS in parallel - and for now, you have to as gCTS does not support transport of customizing, yet.

      Hope this helps - let me know if not

      Thanks and kind regards
      Karin

      Author's profile photo Joe Valliparampil
      Joe Valliparampil

      hi Karin,

       

      The link you have given above https://help.sap.com/viewer/4a368c163b08418890a406d413933ba7/201909.002/en-US/3c24c83b2c0a4eee83cac387f96905ee.html gives me a blank page when using the Chrome browser, on Microsoft Edge it works fine though.

       

      Thank You,

      Joe.

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi Joe,

      sorry to hear that. It works fine for me in Chrome - could you maybe try again?

      Thanks and kind regards

      karin

      Author's profile photo Greg Gipson
      Greg Gipson

      Thanks Karin.

      Another question.

      I'm trying to configure the Fiori tile  but I don't have path '/sap/bc/ui5_ui5/sap/gcts' in SICF as described in catalog SAP_BASIS_TCR_T.

      on my system  1909 FPS01 SP01  , the tile itself has 'error' displayed on it the lower left  with ... on the right.  The application appears opens to '/sap/bc/ui5_ui5/bc_cts_git'. Is this a problem with a missing program or catalog?

      Somewhere a redirection to UI5 app 'bc_cts_git' is occurring.

      Thanks,

      Greg

       

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi Greg,

      The error message shown on the tile only indicates that the tile cannot count the number of repositories – this is something that we can only fix in the next release. The workaround to get rid of the error message would be to create a new, static tile. Details on what has to be done are provided in SAP Note 2955781

      But this error message doesn’t mean that you cannot use gCTS. You should anyhow be able to open the gCTS SAP Fiori App by clicking on the tile. Does this work for you?

      Kind regards

      Karin

      Author's profile photo Greg Gipson
      Greg Gipson

      Thanks a million for the OSS Note.

      So  /sap/bc/ui5_ui5/sap/gcts   is ignored? I don't see it anymore in  SICF,  is there an OSS Note for SAP_BASIS_TCR_T?

      I can't seem to find how or where bc_cts_git is being called. Trying to understand how its all tied together.

      The SAP Fiori Apps library is pointing to /sap/bc/ui5_ui5/sap/gcts..

       

      Regards,

       

      Greg

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi Greg,

      in SAP S/4HANA 1909, the REST Service /sap/bc/cts_abapvcs is used. We plan to continue with an ODATA -service for SAP Fiori applications in the next release

      Kind regards

      Karin

      Author's profile photo Greg Gipson
      Greg Gipson

      Once again thanks a million!

      I'm a bit further along, I'm investigating a pre-release gate in the CI pipeline, any information on the topic would be appreciated.

      Regards,

      Greg

       

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi Greg,

      we don't have any guidelines or best practices about how to create the pipeline. What we have are the pipeline steps for gCTS in Project ‘Piper’

      Kind regards

      karin

      Author's profile photo Greg Gipson
      Greg Gipson

      Hi Karin,

       

      I'm a little  further in gCTS thanks for the information.

      As for Project Piper is there a way to incorporate it into Microsoft(TFS)?

      How would one use Project Piper to build pipelines on that platform?

      For example scenario of running a test case on TFS that fails and the pipeline would need to execute gctsRollback?

      Kind regards,

      Greg

       

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi Greg,

      sorry, I am not an expert on how pipelines are to be build in Azure DevOps.

      In principle, gCTS steps should be agnostic to the pipeline tool. Some parameters are Jenkins-only. You can find that specified in the respective steps' documentation

      Maybe you could ask the question how to build a pipeline in Azur DevOps to the community (go for 'Answers -> Ask a question')

      And just FYI: We know that there is currently an issue with the deploy step in project 'Piper'. We plan to work on them and plan to publish re-worked steps.

      Kind regards
      karin

      Author's profile photo Harald Stevens
      Harald Stevens

      Hi Greg,

      just to add to what Karin said: There have been some efforts to connect project Piper with Azure DevOps, see these blog posts:

      https://blogs.sap.com/2019/10/24/how-to-use-project-piper-docker-images-for-cicd-with-azure-devops/

      https://blogs.sap.com/2019/11/06/project-piper-and-azure-devops-successful-collaboration-with-delaware/

      However, these examples are not referring to gCTS but to 'classical' web development. Still it might be worth asking a question in these blog posts...

      Kind regards
      Harald

       

      Author's profile photo Greg Gipson
      Greg Gipson

      Hi Karin,

      Thanks for the quick response. I'm not really having trouble AZURE DevOps pipeline process.

      I'm having trouble trying to find a process in SAP where I can call the Rollback on a Commit in the target QA system when encountering a SAST or ATC issue, something similar to how gctsRollback is described in the Project Piper documentation.

      I would think that process would eventually call some type API on the  target QA ABAP server in order to initiate  the Rollback.

      I guess I'm trying prevent the activate from occurring on the Commit on the target system or stopping the transport release from DEV system which I didn't think was possible asynchronously.

      Maybe there's something in the cyclic CTS job that runs on the target QA system?

      Regards,

      Greg

       

       

      Author's profile photo Thorsten Klingbeil
      Thorsten Klingbeil

      Excellent Blog Karin! 🙂

      Just one question regarding the integration of UI5 Development (WebIDE) with gCTS:

      Are there any plans to integrate the WebIDE ABAP-Deployment Process with gCTS in order to enable a direct deployment to Test and Prod from a SCP Git Repositiory?

      Background of my question is: we're currently developing Fiori-Apps on WebIDE (SCP) and deploy to our ABAP dev Backend as BSP subsequently (all our UI5 sources are located on the SCP Git Service). Afterwards, the entire BSP is transported to Test and Prod via CTS. The problem is, that in case of hot fixes (we have a separate branch for this) we have to "overwrite" the actual development version of our app, because we need to deploy and transport the entire fixed production version from dev to prod and "overwrite" our current development version on the ABAP-Backend! 🙁

      As workaround we need to redeploy the dev/feature branch to ABAP dev backend, which is very error-prone and annoying 🙁

      Would be great to have a way to deploy hot-fixes directly to Test/Prod Backend 🙂

      I hope this was not too confusing and I would be very grateful for any kind of help 🙂

      br

      Thorsten

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi Thorsten,

      Thanks 🙂

      Concerning your scenario: do you have the option to use a CI server - so to set up a pipeline?

      If so, a hotfix-pipeline might be a solution. This pipeline could be set up in a way that it directly adds the hotfix to a transport request in the test system.

      Do you know Project 'Piper'? There is a step available that supports this - currently via RFC only

      Hope this helps

      Kind regards

      Karin

      Author's profile photo Pooja Honne Gowda
      Pooja Honne Gowda

      Hi Karin,

      I have tried gCTS but facing issue while pushing the object to GitHub. After release for TR, i am able to see the object in gCTS Fiori app but when i select the object manually and push the same to GitHub, it fails.
      Checked the logs on gCTS Fiori app and it just says RC 8.

      Please suggest.

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi Pooja,

      Do you have SAP S/4 HANA1909 SP2 available on your system? If so, you could implement some notes that would bring the Health Check to your system. With this little addition to the gCTS App, you can check, whether all your gCTS configuration works fine. In you case especially, I would check whether your ABAP system is allowed to connect to GitHub - so can access pages on the internet.

      Details about the SAP Notes required for the Health Check are available in here: https://launchpad.support.sap.com/#/notes/2821718

      For more detailed logs, you could also check transaction AL11: open DIR_INSTANCE, go to folder gcts/your_repository/log

      If you release a transport request, this includes adding it to the local repository and to the remote repository on GitHub - no manual push is required.

      Hope this helps
      Kind regards
      Karin

      Author's profile photo Christoph Herrmann
      Christoph Herrmann

      Hi Karin,

      great fan of the idea to bring some Git into the our ABAP world - excited to see this journey evolve.

      I'm currently trying to set this up in our test system (S/4 1909FP2). However, we have a dedicated Fiori Frontend Server (on an "old" NW 7.52 with the 1909 UI components) and I'm struggling to piece this together.

      From what I can see, one of the required services has been created on the front-end box, the other one on our actual S/4 system. How do I tell the Fiori app not to look at it's own server or forward the call to the actual S/4 backend?

      I am struggling to find any documentation that explains how this is supposed to be set up. All documentation seems to assume the App and the Backend are the same system but nowhere is it called out that our setup doesn't work. Maybe I'm just doing doing it horribly wrong? 🙂

      If you have a comment that would point me in the right direction - that would be much appreciated!

      Cheers,

      Christoph

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi Christoph,

      I am not an expert on SAP Fiori in general - so in the following, please find some hints and links that might help:

      First of all: using Fiori embedded is the recommended way for SAP S/4HANA: https://blogs.sap.com/2019/10/25/sap-fiori-deployment-options-updates-with-sap-fes-6.0/

      On the frontend:

      • In transaction PFCG, add the SAP Fiori Tile Catalog SAP_BASIS_TCR_T (SAP: Application Services) to the user roles that will use the gCTS app. Assign one of the user roles to all users that will use the gCTS app
      • in SICF transaction, you have to activate the cts_abapvcs and the bc_cts_git services

      On the backend

      Is the ODATA a service for project SCTS_GCTS registered in SEGW in the backend? Maybe that this blog can help you doing this. https://blogs.sap.com/2017/11/19/sap-fiori-odata-service-registration-activation/

      Or maybe this documentation: https://help.sap.com/viewer/68bf513362174d54b58cddec28794093/201909.001/en-US/ae7822518bc72214e10000000a44176d.html

      For details on SEGW please refer to https://help.sap.com/viewer/68bf513362174d54b58cddec28794093/201909.001/en-US/cddd22512c312314e10000000a44176d.html

      Hope this helps a bit

      Kind regards

      karin

      Author's profile photo Himanshu Sharma
      Himanshu Sharma

      Hello Karin,

      There is a sudden issue happening with our GCTS. Issue is-> After TR release from Dev, we can see a new commit ID in Dev-GCTS app, also our code is pushing to Git. Secondly, the new commit is also available in Test-GCTS app also, but after pulling or updating it to latest commit, the code must come to local Test system, but unfortunately it is not reflecting in Test system and TRs are not importing from Git side. We checked the Health Check, and no errors are there now. Please suggest, how to proceed.

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi Himanshu,

      did you check the 'logs'-tab in the gCTS app? (the Health Check is more for configuration and connection issues). Is there anything available in the import queue in transaction STMS of your target system? If yes: please check the import logs

      Kind regards

      Karin

      Author's profile photo Himanshu Sharma
      Himanshu Sharma

      Hi Karin,

      I checked the import Logs, but transports are not available in the Queue which we have pushed, this is strange. Also if we are checking Logs in GCTS, so the status is red and it is only stating->

      Finished after 1188 ms with RC 0
      I checked the, Logs in AL11>DIR_instance>gcts>repo>Logs, but there also the log is stating the same.
      We are following every option, given online, but still the Transports & Code are not getting pulled in Local system.
      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi Himanshu,

      so can you see an action PULL_BY_COMMIT ion the Logs-tab? Is this shown in red? What can you see if you click on the entry?

      Kind regards

      Karin

      Author's profile photo Himanshu Sharma
      Himanshu Sharma

      Hi Karin,

      Yes I can see the logs and, PULL_BY_COMMIT also, plz have a look at below image

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi Himanshu,

      I assume that this is what you can see when you choose the line for the transport tools, right? Could you please click on the small arrow  on the top left and select the entry below where the application is 'Client'?

      Thanks and kind regards

      karin

      Author's profile photo Himanshu Sharma
      Himanshu Sharma

      Hi,  yes you are right, it is for Transport tools.
      I am trying to open the other Tab for Client, but it is not opening. I only can open the Transport tools tab and not the other one.

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      As they are both shown in green it is also quite unlikely that there is an error in the details. Is there any line on the actions tab that shows a red symbol in the end?

      To be honest, it is a bit hard to support this without any system access. I would suggest that you open an incident so that my colleagues from support could take a look

      Kind regards
      Karin

      Author's profile photo Himanshu Sharma
      Himanshu Sharma

      Hi Karin,

      Thanks for the suggestion, I have raised an incident,
      53071 / 2021 gCTS import issue.

      Awaiting a response from the support.

       

      Kind Regards

      Himanshu

      Author's profile photo Dinesh Singh
      Dinesh Singh

      Hi Karin,

      Good evening!

       

      I'm trying to implement the gCTS in S/4 HANA 1909 but facing some issues.

      I'm getting error in gctsDeploy.

      Error "hudson.AbortException: No such library resource metadata/gctsDeploy.yaml could be found"

       

      gCTSDeploy%20Error%20Log

      gCTSDeploy Error Log

       

      gCTSDeploy%20Pipeline

      gCTSDeploy Pipeline

       

      My Jenkinsfile file code below

      @Library('piper-lib-os') _

      node() {

      stage('Deploy') {
      gctsDeploy(
      script: this,
      host: 'https:<host>.com:<port>',
      client: '300',
      abapCredentialsId: 'ABAPUserPasswordCredentialsId',
      repository: 'DEV003',
      )
      }

      }

       

      My .pipeline/config.yaml code below

      general:

      stages:
      gctsDeploy:
      host: 'https:<host>.com:<port>'
      client: '300'
      abapCredentialsId: 'ABAPUserPasswordCredentialsId'
      repository: 'DEV003'

       

      Please can you provide some assistance on the same? Or provide you contact mail ID so that I can explain the end-to-end process offline.

      Thank you in advance.

       

       

      With Regards,

      Dinesh.

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi Dinesh,

      sorry to say, but we currently have an issue with the gCTSDeploy-Step. We are working on it

      Kind regards
      Karin

      Author's profile photo Dinesh Singh
      Dinesh Singh

       

      Hi Karin,

      Good evening!

      Thank you for your reply. I'm also exploring other options from my end.

      I'm currently exploring the SAP for DevOps for our On-Premises system (1909 FS01), which I'm using different tools like Jekins and Azure. In Jenkins I required your support as some of the things are not working as expected.

      Would like to provide more details to you in 1-to-1 mail and discuss our approach.

      Please let me know how can I contact.

      Thank you in advance.

      With Regards,

      Dinesh.

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi Dinesh,

      the new deploy step is now available in Project 'Piper'. https://www.project-piper.io/steps/gctsDeploy/

      Please note that the step now also provides many more parameters - so it is not a simple correction.

      Kind regards
      karin

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi Dinesh,

      if things don't work as they should (or as documented), I would suggest that you open an incident. With this, my colleagues from support or development would have a chance to also look into your system to investigate in detail what goes wrong.

      Please check also SAP Note 2821718 in there, you can find the SAP Notes collected that are relevant for the different releases. Maybe that they already fix issues that you are facing.

      You might also find hints in our Guided Answer

      Thanks and kind regards
      Karin

      Author's profile photo Jean-Pierre Domen
      Jean-Pierre Domen

      Hi Karin Spiegel ,

       

      Thank you for sharing your expertise on gCTS. It is great to see and read what is now already possible.

      We are using a CI/CD Jenkins Pipeline on our HANA on premise and on our HANA cloud platform and we are really looking forward to transform our S/4HANA landscape. We are on 2020 release since this weekend, so gCTS can be a next step. But gCTS on BW would have a bigger advantage for us than S/4HANA. I noticed in the running OpenSAP course that BW/4HANA was mentioned on one of the slides but afterwards BW was nowhere mentioned.

      Looking to the SAP notes that you need to apply in S/4 system we have the impression that it could also work on BW. Do you have any insights if gCTS could work on BW already? Or do you have any insights on when this might be possible? And off course, when it is possible can you share this knowledge?

      Thanks in advance

       

      Kind Regards,

      JP Domen

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi,

      gCTS is available starting with SAP S/4HANA 1909. To my knowledge, BW uses older basis releases. therefore gCTS cannot be used on BW systems.

      Kind regards
      karin

      Author's profile photo Jean-Pierre Domen
      Jean-Pierre Domen

      Thank you.

      That's a pity, hopefully we can try it soon.

       

      Author's profile photo Himanshu Sharma
      Himanshu Sharma

      Hello Karin,

      We are facing some, issues, and our basis team is also puzzled, maybe you can help here. We recently upgraded our 1909 systems to 2020, and again setup GCTS with them. Currently we are facing some issues.

      System 1->
      1. We are not able to see our commits, and every time, we are trying to click over any tab, one error      popup is coming- "Opening a file for output failed". We checked Health Check, and it is working          fine.

      2. Our "Update to Latest commit" button is also not helping us, in making our last commits visible.

      Is it something related to some OS level settings, which we are missing, or might be related to Gcts interface (fiori app).

      System 2->
      1. No Tab is working, even we can not click over Health check to see, the issues. After clicking we get, Random Error Popup, with no Error explanation written over it.

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi Himanshu,

      did you upgrade to SAP S/4HANA 2020 including SP1 or did you use SP00?
      In any case: could you please check SAP Note 2821718 - Central Note for Git-enabled Change and Transport System (gCTS)

      There you can find Links to other SAP Notes that are required for SAP S/4HANA 2020. Could you please check whether they are implemented in your system?

      If the these SAP Notes are implemented or if implementing them doesn't help, could you please open an incident? Analyzing this issue without system access is a bit hard

      Thanks and kind regards

      karin

      Author's profile photo Vipul Mittal
      Vipul Mittal

      Hi,

       

      I am new to gCTS and wanted to know if gCTS is cross version compatible. We are using 2 dev environment with a version 1909 FPS01. Can we use a different version for our test environment?

       

      Regards,

      Vipul

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi Vipul,

      if the development system is the older version, this should be fine. If the development system is newer, gCTS cannot guarantee that everything is working from an ABAP coding perspective. In addition, gCTS in SAP S/4HANA 2020 supports customizing - in SAP S/4HANA 1909 this is not supported.

      Another important topic is the Layout version of the repository. If the repositories were created with the same version of the system, you should be fine. if they are created on different versions, the layout version might be different. You can find details on the SAP Help Portal at https://help.sap.com/viewer/4a368c163b08418890a406d413933ba7/202009.002/en-US/893df0b4187b4000b7d5be017fddaeee.html

       

      Kind regards

      karin

      Author's profile photo Vipul Mittal
      Vipul Mittal

      Thanks Karin.

      Author's profile photo Asanka Liyanage
      Asanka Liyanage

      Hi Karin/Experts,

      We've got an error during deployment of a SAP ABAP change using Jenkins(project piper).

      --- End library step of: gctsDeploy ---
      [Pipeline] }
      [Pipeline] // stage
      [Pipeline] stage
      [Pipeline] { (gctsExecuteABAPQualityChecks)
      Stage "gctsExecuteABAPQualityChecks" skipped due to earlier failure(s)
      [Pipeline] }
      [Pipeline] // stage
      [Pipeline] stage
      [Pipeline] { (Results in Checkstyle)
      Stage "Results in Checkstyle" skipped due to earlier failure(s)
      [Pipeline] }
      [Pipeline] // stage
      [Pipeline] stage
      [Pipeline] { (Rollback)
      Stage "Rollback" skipped due to earlier failure(s)
      [Pipeline] }
      [Pipeline] // stage
      [Pipeline] }
      [Pipeline] // withEnv
      [Pipeline] }
      [Pipeline] // withEnv
      [Pipeline] }
      [Pipeline] // node
      [Pipeline] End of Pipeline
      ERROR: [gctsDeploy] Step execution failed (category: undefined). Error: creating repository on the ABAP system http://despina.xrsc.local:8080 failed: request to http://despina.xrsc.local:8080/sap/bc/cts_abapvcs/repository?sap-client=400 returned with response 500 Internal Server Error

      GitHub has been notified of this commit’s build result

      Finished: FAILURE

       

      Please help me in understanding what needs to be done.

      Thanks,

      Asanka.

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi Asanka,

      is there maybe a bit more information about the error in the section gCTSDeploy?
      Did you create a webhook so that Jenkins can communicate with Git?
      Did you provide a user on Jenkins which can access and does have sufficient permissions on the ABAP system?

      Kind regards
      karin

      Author's profile photo Karan Chopra
      Karan Chopra

      Hello Karin ,

       

      When we are trying to run the pipeline in Jenkins we get error in Jenkins steps where it tries to access abapvcs

      We have provided credentials in Jenkins for ABAP system and it is also able to access git repository.

      Below is the config,  (using single Jenkins files instead of config.yaml for now)

      Jenkinsfile

      @Library(['piper-lib-os']) _
      pipeline {
        agent any
        options {
          disableConcurrentBuilds()
        }
      
        environment {
          DEMOCREDS= 'ABAP'
          HOST= 'https://************:****'
          CLIENT= '100'
          REPO= 'karanchopras-workbench'
          REPO_URL= "https://github.com/karanchopras/workbench"
        }
      
        
        stages {
      
          stage('gCTS Deploy') {
            when {
              anyOf {
                branch 'gCTS'
              }
            }
            steps {
              gctsDeploy(
                script:this,
                host:HOST,
                client:CLIENT,
                abapCredentialsId:DEMOCREDS,
                repository:REPO,
                remoteRepositoryURL:REPO_URL,
                verbose:true,
                role:'SOURCE',
                vSID:'GIT')
            }
          }
          

       

      Pipeline%20Error

      Pipeline Error

      I checked the get request for abapvcs (https:/******:<host>/sap/bc/cts_abapvcs/config?sap-client=100) in Postman and it is working fine but here in Jenkins it gives error as shown in screen shot. Are we missing something in configuration?

      Stage%20View

      Stage View

      Author's profile photo Karin Spiegel
      Karin Spiegel
      Blog Post Author

      Hi,

      to me it looks like you are using basic authentication for GitHub. This is no longer supported. A token is required. I think this is the reason for the error

       

      Kind regards

      Karin