Table of Contents
- About SAP Automation Pilot
- About This Repository
- Getting Started
- Examples
- Learning Resources
- How to obtain support
- Contributing
- License
SAP Automation Pilot is a low-code/no-code automation service that's part of the SAP Business Technology Platform (BTP). As a cloud-native automation engine, it empowers customers to independently automate various scenarios, reducing manual effort and operational complexity across their SAP landscape.
SAP Automation Pilot is designed to:
- Automate complex manual processes with an intuitive, visual interface
- Minimize the time and resources needed to manage cloud solutions
- Allow customers to create and customize automation workflows themselves
- Provide consistent, repeatable execution of critical operational tasks
- Connect with various SAP and third-party services for comprehensive automation scenarios
- Deliver over 300 built-in automations supported by SAP for HANA Cloud, Cloud Foundry, cTMS, BTP management, and more
- Enable serverless execution of HTTP requests, SQL statements, and custom scripts (Python, Node.js, Shell)
This repository contains a curated collection of example Automation Pilot commands that demonstrate the automation of various real-world scenarios relevant to SAP customers, including:
- Remediation & maintenance procedures
- Health checking and monitoring
- Root cause analysis
- Mass operations and bulk management
- Integration scenarios
- And many more operational use cases
These examples serve as starting points and learning resources for customers looking to implement automation in their own environments. They showcase best practices and common patterns while demonstrating the versatility and power of SAP Automation Pilot.
Please note: The examples provided in this repository are for illustrative purposes and are designed to help you understand the capabilities of SAP Automation Pilot. While these examples can be used in productive environments, it is the user's responsibility to:
- Review and validate each automation thoroughly before using it
- Enhance and customize the examples to fit your specific environment and requirements
- Test extensively in non-productive environments before applying to production systems
These examples are provided as-is. Support is available through the community for questions, additional functionalities, and bug fixes. Users should exercise due diligence when implementing these automations in their production environments.
To use the examples in this repository, you'll need access to SAP Automation Pilot. Here are the different ways to get started:
- Tutorial: Get a Free Account on SAP BTP Trial
- Tutorial: Setup Automation Pilot in SAP BTP
- Official Documentation
- Discovery Center Overview
- API Reference
- Interactive Tutorials
- YouTube: Automation Pilot Overview
- YouTube: HANA Cloud Automation
- YouTube: Technical Ops Automations
- Community Blog Posts
Each example in this repository is packaged as a catalog.json file that contains all the necessary automation commands and configurations. Follow these steps to import and use any example:
Browse through the Examples section below and select the automation scenario that fits your needs.
- Navigate to the example folder and copy the entire content of the
catalog.jsonfile - Open your Automation Pilot service
- In the Automation Pilot interface, go to the
My Catalogssection - Import the catalog:
- Click on
Importin the upper right corner - Paste the copied catalog content into the import dialog
- Click
Importto add the catalog to your tenant
- Click on
After successful import, you'll see a new catalog tile labeled "Automation Pilot Examples" in your catalogs overview.
ℹ️ Note: All examples in this repository are part of the "Automation Pilot Examples" catalog. You only need to import each example's catalog.json once to access all its commands.
| Example | Description |
|---|---|
| Update HANA Cloud | Automatically update the HANA Cloud database to the latest patch version, to the next or most recent QRC version |
| Mass Stop/Start HANA Cloud | Stop or start all HANA Cloud databases across your entire BTP account |
| Check HANA Cloud Backup | Check regularly whether there was a recent backup of a SAP HANA Cloud database |
| Check HANA Cloud Audit Logs | Check regularly for any suspicious audit log entries in a SAP HANA Cloud database |
| Check HANA Cloud Availability | Check regularly whether the HANA Cloud database is currently available |
| Rotate HANA Cloud Database Credentials | Automate the rotation of credentials for a HANA Cloud database |
| Run HANA Cloud Stored Procedure | Trigger a stored procedure in HANA Cloud asynchronously and then continuously poll its status until completion |
| Example | Description |
|---|---|
| Create and Configure BTP Subaccount | Create a new BTP subaccount, configure entitlements and setup essential service instances |
| Setup Cloud Foundry BTP Environment | Enable the Cloud Foundry environment, create a space and setup a service instance |
| Grant Privileges | Grant privileges to users on subaccount, organization and space level |
| Reassign Identity Provider | Migrate all users on BTP subaccount level from one identity provider to another |
| Remove Inactive Subaccount Users | Identify and remove inactive users from a BTP subaccount |
| Example | Description |
|---|---|
| SAP Cloud Connector Connection Status | Monitor and push on-premise endpoint connectivity status via SAP Cloud Connector to Cloud ALM Health Monitoring (includes scheduling guidance) |
| Example | Description |
|---|---|
| ✨ Cloud Foundry Apps Insights | Effortlessly identify the state of your Cloud Foundry applications powered by Gen AI |
| Mass Restart CF Apps | Restart all applications in a given Cloud Foundry space |
| Mass Stop/Start CF Apps | Stop or start all Cloud Foundry applications across your entire BTP account |
| CF resource quota notifications | Get insights about Cloud Foundry resource usage via Alert Notification service |
| Example | Description |
|---|---|
| Execute Script Via Kubernetes Job | Execute a custom script within a Kubernetes Job in a customer-owned Kubernetes cluster |
| Example | Description |
|---|---|
| Auto Scale Neo App | Automatically scales up a Neo application and monitors it over time, potentially scaling it back down |
| Example | Description |
|---|---|
| HTTP Request With OAuth Client Credentials | Perform HTTP requests to endpoints requiring OAuth 2.0 authentication using client credentials |
| HTTP Request via SAP Cloud Connector | Perform HTTP requests to internal endpoints via SAP Cloud Connector |
| Execute a SAP Host Agent Operation via SAP Cloud Connector | Execute a SAP Host Agent Operation in an internal environment via SAP Cloud Connector |
| Example | Description |
|---|---|
| HTTP Request via Script | Perform HTTP requests with large timeouts by utilizing the ExecuteScript command |
| Use Custom Python Package | Install and use custom Python package in a script |
| Use Custom NPM Package | Install and use custom NPM package in a NodeJS script |
| Use make and helm | Pull git repo and use make and helm to deploy the helm chart to kubernetes cluster |
| Terraform with BTP Provider | Use Terraform with the BTP Provider |
| Example | Description |
|---|---|
| Transform Data | Transform Data between different formats - JSON, XML, YAML, and CSV |
| Convert JSON to HTML Table | Convert JSON array of objects to HTML table |
| Trigger and Collect Outputs Batching | Trigger Multiple Executions in Batches and Collect their Outputs |
| Pretty Print XML | Pretty Print XML Data |
| Example | Description |
|---|---|
| Advanced Availability Check | Enables comprehensive monitoring, tracking of Service Level Agreements (SLAs) and data visualization within the Dynatrace platform. |
Create an issue in this repository if you find a bug or have questions about the content.
For additional support, ask a question in SAP Community.
If you wish to contribute code, offer fixes or improvements, please send a pull request. Due to legal reasons, contributors will be asked to accept a DCO when they create the first pull request to this project. This happens in an automated fashion during the submission process. SAP uses the standard DCO text of the Linux Foundation.
Copyright (c) 2023 SAP SE or an SAP affiliate company. All rights reserved. This project is licensed under the Apache Software License, version 2.0 except as noted otherwise in the LICENSE file.