Introducing SAP BTP Services for DevOps

Objective

After completing this lesson, you will be able to list which DevOps services are part of the recommended DevOps setup on SAP BTP

SAP BTP Services for DevOps

Note

This lesson is geared mainly towards administrators, but any of the roles involved could benefit from it.

While you have already discovered certain SAP BTP services and offerings, this lesson will help you explore the recommended setup for applying DevOps principles to SAP BTP.

You will find out about all SAP BTP DevOps services, with a short description and potential alternatives (in case you want to break out of the recommended setup for certain aspects along the life-cycle).

Recommended Setup for DevOps on SAP BTP

If you want to implement the recommended approach from SAP for DevOps with SAP BTP, use this section to discover more information on the SAP BTP cloud services involved. In the example figure below, you can see several SAP BTP sub-accounts, which serve the following purposes:

  • Development - for the development of your app
  • Pre-Production - used to test your app in a representative environment
  • Production - used to release the version of your app that end users will adopt

For different teams or organizations, you could have several of these three-tier landscapes. In addition, you could have further central subaccounts for your DevOps-enabling cloud services, depicted also below.

The example shows the recommended landscape for applying DevOps principles for development scenarios in the SAP BTP, Cloud Foundry environment.

diagram showing the setup for DEvOps

Steps to set up DevOps on SAP BTP

1.Set up Continuous Integration (CI)

DevOps with SAP BTP includes SAP Continuous Integration and Delivery service, a 'Pipeline-as-a-Service' offering for CI/CD, with templates for SAP-specific use cases. These templates reflect SAP's best practices for the given development use cases. This offering lets you create a running CI/CD pipeline for an SAP-specific use case in minutes.

2. Develop

The development team then uses the pipeline to qualify their changes, such as those made in SAP Business Application Studio. It offers a powerful and modern development environment tailored for the efficient development of business applications for the intelligent enterprise. Other development environments can be considered.

The changes get pushed into a Git-based source code repository, which triggers the execution of the associated pipeline via webhooks. Then, the automated tests within this pipeline get executed, and their outcome provides feedback to the developer on the quality of the change: is development done, or are further modifications required, as the tests failed?

3. Deliver

The pipelines also allow an optional automated hand-over of qualified release candidates into transport management. This enables you to apply a standardized, enterprise-ready change management process with additional control over your production environment. For example, you can define who can come up and handle changes in which sub-account, which enables you to enforce company policies. You also get a central log file of your changes, for example for auditing reasons.

The recommended option for transport management is the SAP Cloud Transport Management service, as it covers an increasing number of application-specific content types besides development content. For example, think of portal sites from SAP Build Work Zone, integration flows of SAP Integration Suite or content network packages from SAP Analytics Cloud.

The enhanced Change and Transport System (CTS+) can be an alternative to SAP Cloud Transport Management. This system is part of ABAP on-premise servers and can cover only content in the format of multi-target Application (MTA) archives. There are no plans to extend the content coverage of CTS+ beyond this format, so only consider CTS+, if you are sure you will stick to MTA-based content use cases also in the future. If you are unsure, use SAP Cloud Transport Management.

For additional control, you can integrate transport into change management processes - running on SAP Cloud ALM or existing processes powered by SAP Focused Run/SAP Solution Manager. These allow you to synchronize the propagation of cloud changes with on-premise changes, for hybrid scenarios.

4. Operate

SAP Cloud ALM is SAP BTP’s central operations platform. Optionally, you can use SAP Cloud ALM as a data proxy, such as for an integration with SAP Focused Run.

As outlined below, SAP Cloud ALM works with local observability and operations tools. SAP Cloud Logging service is an observability service that builds upon OpenSearch to store, visualize, and analyze application logs, metrics, and traces from SAP BTP Cloud Foundry, Kyma, Kubernetes and other runtime environments. For Cloud Foundry and Kyma, it offers an easy integration by providing predefined contents to investigate load, latency, and error rates of the observed applications based on their requests and correlate them with additional data.

To enable a reactive way of working, consider using the SAP Alert Notification service to subscribe to relevant events around your app – such as from third-party infrastructure providers or by coming up with custom alerts from your application. You can also get notified about the outcomes of pipeline runs and performed transports.

To reduce manual operation efforts and benefit from the automated execution of recommended actions (such as triggered from SAP Cloud ALM or by alerts for their remediation), look into the SAP Automation Pilot service. It brings a low-code and no-code automation engine powered by catalogs of automated actions for daily operation tasks and corrective activities, allowing your DevOps teams to increase the automation level for running your applications on SAP BTP.

The Terraform provider for SAP BTP enables you to automate the provisioning, management, and configuration of resources on SAP BTP. By leveraging this provider, you can simplify and streamline the deployment and maintenance of SAP BTP services and applications. With this, it is an alternative to corresponding commands from SAP Automation Pilot service especially for infrastructure and provisioning management, based on a de-facto industry standard for infrastructure as code.

SAP BTP operations services can smoothly be integrated. For example, SAP Alert Notification service can route an SAP BTP event into the central health monitoring capabilities of SAP Cloud ALM. From there, you can jump to log information provided by SAP Cloud Logging for analyzing the root cause of reported issues. SAP Cloud ALM can also trigger and orchestrate automated operation flows executed on SAP BTP by the SAP Automation Pilot service. Open APIs are offered for an integration into third-party operation platforms.

Note

Although highly integrated, you can also decide to use only single DevOps cloud services, as they are not dependent on each other.

Most of the presented SAP BTP DevOps services are also part of SAP Build Code - an offering consisting of ready-to-use SAP services and generative AI capabilities to simplify the development on SAP BTP Cloud Foundry runtime. If you plan to use this offering, consider to set up the following DevOps services as part of SAP Build Code onboarding for your SAP Build Code use cases (while you might have separate instances in addition, to serve use cases beyond SAP Build Code):

  • SAP Alert Notification service
  • SAP Business Application Studio
  • SAP Cloud Transport Management
  • SAP Cloud Logging
  • SAP Continuous Integration and Delivery

Summary

You have now gained insights into the recommended setup for applying DevOps principles to your development projects on SAP BTP, including an overview of all involved SAP BTP services, their interplay, and potential alternatives.

Further Reading

To use the services above, you must subscribe to them via SAP BTP Cockpit and perform an initial setup of each service, as described in the SAP Help Portal. For services that are also part of SAP Build Code, you can alternatively onboard to this offering – use those instances then for SAP Build Code use cases exclusively.

Log in to track your progress & complete quizzes