Introducing SAP BTP Services for DevOps

Objective

After completing this lesson, you will be able to list the DevOps services that 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 roles involved could benefit from it.

While you've already explored some SAP BTP services and offerings, this lesson will guide you through the recommended setup for implementing DevOps principles on SAP BTP.

You will learn about all SAP BTP DevOps services, including a brief description and possible alternatives (in case you want to diverge from the recommended setup for certain parts of the lifecycle).

Recommended Setup for DevOps on SAP BTP

If you want to implement the recommended SAP DevOps approach with SAP BTP, use this section to find more information about 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 (DEV) - for the development of your app
  • Test - used to test your app in a representative environment
  • Production (PROD) - used to release the version of your app that end users will adopt

You could have multiple three-tier landscapes for different teams or organizations. Additionally, you might have more central subaccounts for your DevOps-enabled cloud services, as shown below.

The example shows the recommended landscape for applying DevOps principles to 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 the 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 within minutes.

2. Develop

The development team then uses the pipeline to qualify their changes, such as those made in SAP Business Application Studio. It provides a powerful and modern development environment designed for efficient business application development. Other development environments may also be considered.

The changes are pushed into a Git-based source code repository, which triggers the execution of the associated pipeline through webhooks. Then, the automated tests within this pipeline are run, and their results give feedback to the developer about the quality of the change: is the development complete, or are more modifications needed if the tests fail?

3. Deliver

The pipelines also support optional automated handover of qualified release candidates into transport management. This allows you to implement a standardized, enterprise-ready change management process with additional control over your production environment. For instance, you can specify who can initiate and handle changes in specific sub-accounts, helping you enforce company policies. Additionally, you receive a central log of your changes, which is useful for auditing purposes.

The recommended option for transport management is the SAP Cloud Transport Management service because it supports an increasing variety of application-specific content types beyond just development content. For example, consider portal sites from SAP Build Work Zone, integration flows from SAP Integration Suite, or content network packages from SAP Analytics Cloud.

The enhanced Change and Transport System (CTS+) can serve as an alternative to SAP Cloud Transport Management. This system is part of ABAP on-premise servers and only supports content in the format of multi-target Application (MTA) archives. There are no plans to expand the content coverage of CTS+ beyond this format. Also, CTS+ cannot be integrated into change and deployment management capabilities as of today. As a result, consider using CTS+ only if you have it already in use and are sure you will continue to focus on MTA-based content use cases in the future. If you're 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 integrates with local observability and operations tools. SAP Cloud Logging service, an observability platform built on OpenSearch, stores, visualizes, and analyzes application logs, metrics, and traces from SAP BTP Cloud Foundry, Kyma, Kubernetes, and other runtime environments. For Cloud Foundry and Kyma, it provides easy integration by offering predefined contents to examine load, latency, and error rates of the observed applications based on their requests and correlates them with additional data.

To enable a reactive approach, consider using the SAP Alert Notification service to subscribe to relevant events related to your app, such as those from third-party infrastructure providers, or by creating custom alerts from your application. You can also receive notifications about the outcomes of pipeline runs and performed transports.

To decrease manual effort and take advantage of automated execution of suggested actions, such as those triggered from SAP Cloud ALM or alerts for remediation, consider using the SAP Automation Pilot service. It offers a low-code and no-code automation engine supported by catalogs of automated actions for daily operational tasks and corrective measures, enabling your DevOps teams to enhance automation for managing applications on SAP BTP.

SAP Job Scheduling service enables you to automate and manage jobs, tasks, and schedules via a web-based user interface or a uniform REST API. It is available in the SAP BTP Cloud Foundry and Kyma environments. For multitenant applications, the service allows you to manage tenant-specific jobs and schedules. The Job Scheduling service ensures timely execution of jobs, tasks, and schedules, boosting operational efficiency. You can integrate it with the SAP Alert Notification service for SAP BTP, which sends alerts for both failed and successful job executions, keeping you informed and allowing prompt action. To monitor your job executions in SAP Cloud ALM, you can select the job in the Dashboard UI or through the REST API.

The Terraform provider for SAP BTP allows you to automate the provisioning, management, and configuration of resources on SAP BTP. Using this provider, you can make the deployment and maintenance of SAP BTP services and applications simpler and more efficient. It serves as an alternative to commands from the SAP Automation Pilot service, especially for infrastructure and provisioning management, and is based on a widely adopted industry standard for infrastructure as code.

SAP BTP operations services can be seamlessly integrated. For example, the SAP Alert Notification service can route an SAP BTP event into the central health monitoring capabilities of SAP Cloud ALM. From there, you can access log information provided by SAP Cloud Logging to analyze the root cause of reported issues. SAP Cloud ALM can also trigger and orchestrate automated operational flows executed on SAP BTP by the SAP Automation Pilot service. Open APIs are available for 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 SAP BTP DevOps services listed are also included in SAP Build – a comprehensive suite of code-first and low-code solutions designed to accelerate application development with generative AI. If you plan to use this offering, consider setting up these DevOps services as part of your SAP Build onboarding for your SAP Build use cases (although you might have separate instances for other use cases beyond SAP Build).

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

Summary

You now have insights into the recommended setup for applying DevOps principles to your SAP BTP development projects, including an overview of all relevant SAP BTP services, how they interact, and possible alternatives.

Further Reading

To use the services listed above, you must subscribe to them via SAP BTP Cockpit and perform an initial setup for each service, as outlined in the SAP Help Portal. For services also included in SAP Build, you can alternatively onboard to that offering — then use those instances exclusively for SAP Build use cases.