Automating the setup of your SAP BTP account with btp-setup-automator
With the newly available GitHub repository for the btp-setup-automator we are providing the community with a script to automate the setup of an SAP Business Technology Platform (SAP BTP) account and to learn how this is done with the various command line interfaces and tools.
- Setup of your SAP BTP account
- Entitlement of services
- Subscription of applications and creation of service instances with api keys
- Addition of administrator users to global account and subaccounts
- Setup of roles and role collections, assignment of roles collections to users
- Deployment of complete applications
- Unrolling created setup
In essence it’s all about making it easier to get developers quickly onboard on SAP BTP and use services on SAP BTP without having to know too much of the terminology and how to use the SAP BTP Cockpit.
All in containers
The tooling for the btp-setup-automator is running within a Docker container and the repository provides all what you need. Why Docker? We want to ensure that you can focus on getting your work done on the SAP BTP account without having to worry whether you have the right tools in the right release for the right operating system in place.
Sounds already good, but there is a cherry on top: we provide you as well the pre-built Docker image in our GitHub account at https://github.com/SAP-samples/btp-setup-automator/pkgs/container/btp-setup-automator as a package.
CLIs: Sitting (not standing) on the shoulders of giants
The tool is there to prove how much you can already automate today with the various command line interfaces (CLIs) on SAP BTP. The btp-setup-automator uses:
- SAP btp CLI
- Cloud Foundry CLI
- The Cloud Foundry plugin for MTA files
- kubectl (including the kubelogin extension)
- krew (maybe you want some more kubectl extensions 😊)
Maybe the tool inspires you to create your own tool to automate the setup of your SAP BTP account. And it is so easy and powerful that you don’t even have to stand on the shoulders of giants but can rather sit very relaxed on their shoulders 😊.
The repository is available under the Apache 2.0 license. It is written in Python and the log files produced by the tool show you which commands you need to use to carry out certain tasks in, for example, the SAP btp CLI to entitle a subaccount to use a service, or how you can create a service instance in your subaccount using the Cloud Foundry CLI.
You can learn through the log files what you need to do in which sequence.
And if you feel like something should be done differently in the code: fork the GitHub repo of btp-setup-automator and send a pull request to the repository or adapt the code to your needs.
The use cases
You might already know the use cases for the SAP Business Technology Platform. The btp-setup-automator wants to make it easier for you to set up the SAP BTP part in your SAP BTP account.
As a user of the btp-setup-automator you focus on a specific use case via a file with a defined JSON structure. You can find several examples in the repository and – of course – you can create your own use case files as well.
These configuration files tell the tool which services and service plans are needed.
With the release today we are providing you configurations for the following use cases:
- Deploy full-stack CAP application on SAP Launchpad – on SAP BTP Trial accounts as well as on productive pay-per-use SAP BTP accounts (based on respective tutorial on developers.sap.com)
- Initial setup for SAP Task Center (based on SAP Discovery Center mission)
- Extend SAP S/4HANA Business Processes on SAP BTP by leveraging DevOps (based on a specific GitHub repo for this use case)
- Setup of ABAP Steampunk instance
- Setup of Kyma environments
- Getting started
Just follow the instructions on the GitHub repository for btp-setup-automator and see how easy it is to setup your SAP BTP account with services and subscriptions.
If you hit issues please raise an issue in the repo, we are happy to fix and improve the tool.
Share your experience
To be straight: this tool is not the silver bullet for all possible tasks around SAP BTP. It is focusing on the setup of an SAP BTP account and the creation of service instances and app subscriptions. But even more importantly it wants to inspire you on how easy it is to integrate SAP BTP within your development processes.
Maybe you even start your own GitHub project around SAP BTP.
Share your experience with us here in the SAP Community or inside the “Discussions” tab of the project. Let us know your thoughts on how you are using the btp-setup-automator for your development with SAP BTP.
Rui for the contributors of the #btp-setup-automator