btp-setup-automator
A containerised script that sets up an SAP BTP account from JSON configuration files: entitlements, subscriptions, service instances, administrators and role collections, instead of clicking through the cockpit.
Sets up a BTP account from JSON configuration files run inside a DockerDockerA container engine that packages software with the tools it needs and runs it isolated from the host. Things here that ship as an image need it installed, so the reader installs the engine rather than each of the command line tools inside the container. container that carries the command line tools it drives, which the overview gives as the reason it exists: configuring BTP without installing and understanding several of them first. It entitles services, subscribes to applications and creates service instances with service keys, adds administrator users to the global account and its subaccounts, sets up roles and role collections and assigns them to users, deploys whole applications, and unrolls a setup it created. A setup is written as a use case, and the repository ships a folder of them, of which only the ones in the released directory are described as tested. SAP has archived the repository and states that the tool is no longer maintained, recommending the Terraform Provider for SAP BTPTerraform Provider for SAP BTPThe plugin that lets a Terraform or OpenTofu configuration manage the resources of an SAP BTP global account, from directories and subaccounts to entitlements, role collections and subscriptions.sap official, btp instead.
Facts
Where it sits
Who is behind it
In the atlas: maintains 2@SAP-archiveSAPSAPMaintains this
In the atlas: maintains 137, wrote 14@SAPmaintainersAlexander RiederContributes to this
In the atlas: contributes to 1@AlexRiederAlper DedeogluContributes to this
In the atlas: contributes to 3, wrote 2@alperdedeogluArmin KramerContributes to this
In the atlas: contributes to 1@AMNKramerAndreContributes to this
In the atlas: contributes to 2@andre68723Brian BernardContributes to this
In the atlas: contributes to 64@btbernardBritta VarwigContributes to this
In the atlas: contributes to 8@bvarwigDJ AdamsContributes to this
Developer Advocate
In the atlas: contributes to 20, wrote 22@qmacroFabian LehmannContributes to this
In the atlas: contributes to 4@fabianlehilyabelozerovsapContributes to this
In the atlas: contributes to 1@ilyabelozerovsapSangeetha JayakumarContributes to this
In the atlas: contributes to 2@jsangeetha18 contributors
Before choosing this
Signals
RepositoryArchivedThe declared repository is archived
GitHub reports the repository as archived. The package may remain installable, but its source is no longer open for normal maintenance.
What it declares
Every artifact
- Type
- CLI
- Origin
- By SAP
As a CLI
- Distributed through
- Container image
Connections
Setting up cloud accounts, entitlements and access from code
A container engine that packages software with the tools it needs and runs it isolated from the host. Things here that ship as an image need it installed, so the reader installs the engine rather than each of the command line tools inside the container.
Download
Architecture
Download
README
quoted from SAP-archive/btp-setup-automator under Apache-2.0, readSetup Automator for SAP Business Technology Platform
⚠ ARCHIVED - NO MAINTENANCE ⚠
📢 Please be aware that with tool is no longer maintained and the repository is archived
As an alternative for the btp-setup-automator we recommend to use the Terraform Provider for SAP BTP as tool for the setup of infrastructure on the SAP BTP available in the Hashicorp Terraform registry.
Description
This repository provides the user 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 that run inside a Docker container. It uses JSON configuration files to automate this setup of SAP BTP accounts or do other administrative tasks.
This includes:
- Setup of your SAP BTP account
- Entitlement of services
- Subscriptions to applications and creation of service instances with service keys
- Addition of administrator users to global account and sub accounts
- Setup of roles and role collections, assignment of roles collections to users
- Deployment of complete applications
- Unrolling created setup
Quick Overview
Get a quick overview & demo of the btp-setup-automator through this video:

Documentation
Started as a small helper for basic SAP BTP setups the tool has grown since its start. This documentation should support you in getting started quickly and then dive into the depths of the btp-setup-automator. The documentation has the following outline:
- Overview
- Basic setup incl. the prerequisites
- Detailed walk-through
- Detailed configuration
- Overview of btpsa parameters
- FAQ
Code of conduct
Checkout the CODE_OF_CONDUCT.md file for more details on the code of conduct for this open source project.
License
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.
History
Notes
Other Changes
- Several updates of dependencies via Dependabot (see list)
Notes
Bug Fixes 🐞
- [#619] - Fix for breaking Docker Built - pinning MTA plugin to version 3.0.3
Other Changes
Notes
Other Changes
- Removal of tool
fx(fetched from https://github.com/antonmedv/fx/) from Docker imagebtp-setup-automatoras no longer available - Update of CF CLI version from
8.6.1to8.7.3 - Fix of security vulnerability CVE-2023-43804
- Regular update of
btpsa-usecase.jsonand automated documentation due to updates in the service metadata - Several updates of dependencies via Dependabot (see list)
- Removal of tool
Notes
New Features and Enhancements 🚀
- [#549] - Support custom IDP in logon
Bug Fixes 🐞
- [#547] - Broken links in use case readme for multitenant apps
Breaking Changes 🛠
- Announcement - Switch to maintenance mode
Other Changes
Notes
Other Changes
- Regular update of
btpsa-usecase.jsonand automated documentation due to updates in the service metadata - Several updates of dependencies via Dependabot (see list)
- Security fix for CVE-2023-26115
- Regular update of
Notes
Other Changes
- Regular update of
btpsa-usecase.jsonand automated documentation due to updates in the service metadata - Several updates of dependencies via Dependabot (see list)
- Fix for vulnerability CVE-2023-32681
- Regular update of
Notes
Bug Fixes 🐞
Other Changes
- Regular update of
btpsa-usecase.jsonand automated documentation due to updates in the service metadata - Several updates of dependencies via Dependabot
- [#489] - Update CF CLI to version 8.6.1
- [#490] - Update of MTA build tool to version 1.2.23 and FX Terminal tool to version 24.1.0
Community Contributions
@biehlera , @ublock
- Regular update of
Notes
New Features and Enhancements 🚀
- [#477] - Improvement of 3586-s4hana-kyma-mission
- [#478] - Enhanced documentation
- [#480] - Improved usecases documentation and enhancements
Bug Fixes 🐞
- [#479] - Type in overview.
Other Changes
- Regular update of
btpsa-usecase.jsonand automated documentation due to updates in the service metadata - [#484] - Update link checker to update existing issues
Community Contributions
@shankarigr , @bvarwig , @AlexRieder
Notes
New Features and Enhancements 🚀
- [#467] - Update UseCase file for btp-resilient-apps repo - event mesh changes + entitleonly param usage
- [#468] - Enhancement of role collection assignment with custom IdP.
Bug Fixes 🐞
- [#470] - Fix NoneType Error during app subscription.
- [#472] - Read subaccount domain from existing subaccount
- [#473] - Fix issue
inappropriate ioctl for devicewith multiple CF spaces in a subaccount.
Other Changes
- [#466] - Update version of BTP CLI to 2.38.0.
- Regular update of
btpsa-usecase.jsonand automated documentation due to updates in the service metadata including the latest naming changes introduced by SAP Build - Dependabot updates of dependencies
Community Contributions
@AlexRieder , @maxstreifeneder
Notes
New Features and Enhancements 🚀
- [#456] - Enable of service parameterfiles for
sapbtpandkymaruntimeresources. - [#457] - Enable native HANA consumption in discovery center use cases.
- [#459] - New use cases for Setup of SAP Build Apps and DSAG Technology Days 2023 session.
Bug Fixes 🐞
- [#458] - Increases timeouts to detect plans in environments after entitlement.
- [#463] - Fix for differing app name and commercial app name.
Other Changes
- Regular update of
btpsa-usecase.jsonand automated documentation due to updates in the service metadata including the latest naming changes introduced by SAP Build - Dependabot updates of dependencies
Community Contributions
@bondfelix , @AlexRieder
- [#456] - Enable of service parameterfiles for
Notes
Bug Fixes 🐞
- [#450] - Mitigate "plan not found" issues in usecase execution via a waiting strategy. This includes an improvement of the logging of the process.
- [#452] - Improvement of waiting strategy introduced with [#450].
- [#453] - Usage of correct app name in case of difference between commercial and technical app name.
Breaking Changes 🛠
- [#451] - The automatic creation of the subdomain ID is no longer linked to the GUID of the global account, but is postfixed with a GUID of length 10 to avoid length issues in downstream service instance creation. See also issue 260.
Other Changes
- Regular update of
btpsa-usecase.jsonand automated documentation due to updates in the service metadata including the latest naming changes introduced by SAP Build
Community Contributions
@AlexRieder
Notes
Bug Fixes 🐞
- [#441] - Fix devcontainer of
devbranch to point to the right image. - [#441] - Fix wrong flow when creating entitlements.
- [#441] - Fix
None Typeerror when service instance is not created.
Other Changes
- Regular update of
btpsa-usecase.jsonand automated documentation due to updates in the service metadata including the latest naming changes introduced by SAP Build - Dependabot updates of dependencies
- [#441] - Fix devcontainer of
Notes
New Features and Enhancements 🚀
- [#429] Introduction of devcontainer and GitHub Codespaces for easier execution of btpsa
Bug Fixes 🐞
- [#431] Fix runtime error for services and service key creation with
"targetenvironment": "sapbtp"). - [#433] Fix for services not requiring the creation of a service instance (
"provisioningMethod": "NONE_REQUIRED").
Other Changes
- Regular update of
btpsa-usecase.jsonand automated documentation due to updates in the service metadata including the latest naming changes introduced by SAP Build - Dependabot updates of dependencies
Notes
Other Changes
- [#424] Refactoring of use case "Build resilient apps" due to refactoring of the btp-build-resilient-apps repository
- Regular update of
btpsa-usecase.jsonand automated documentation due to updates in the service metadata including the latest naming changes introduced by SAP Build - Dependabot updates of dependencies
Notes
Breaking Changes 🛠
- [#419] - Removal of the build for
linux/arm64platform due to incompatibilities of dependencies.
Other Changes
- Regular update of
btpsa-usecase.jsonand automated documentation due to updates in the service metadata including the latest naming changes introduced by SAP Build - Dependabot updates of dependencies
- [#419] - Removal of the build for
Notes
New Features and Enhancements 🚀
- [#399] - Establishing Trust for XSUAA in plan
apiaccessis now configurable
Other Changes
- [#385] - Version updates in Dockerfile of several CLIs and images
- [#389] - Consistent linting of Python files with Black
- [#393] - Update of documentation for option to configure JSON schema source in VS Code
- Regular update of
btpsa-usecase.jsonand automated documentation due to updates in the service metadata - Dependabot updates of dependencies
- Infrastructure update for handling broken links: an automated issue is created whenever the scheduled check fails (see [#391])
- [#399] - Establishing Trust for XSUAA in plan
Notes
Bug Fixes 🐞
- [#405] - Bump json5 from 1.0.1 to 1.0.2 in /.github/scripts. Resolves CVE-2022-46175
Notes
New Features and Enhancements 🚀
- [#372] - New setup for Discovery Center mission Extend SAP S/4HANA Business Processes on SAP BTP, Kyma Runtime
- [#378] - Added PR template
Bug Fixes 🐞
- [#381] - Fix of issue with
cf loginand skipping of space creation. - [#382] - Correction of documentation for executing
btpsain interactive mode.
Other Changes
- Regular update of
btpsa-usecase.jsonand automated documentation due to updates in the service metadata - Dependabot updates of dependencies
Notes
New Features and Enhancements 🚀
- [#319] and - [#342] - Support of custom IdPs in role assignment (incl. CF roles)
- [#329] - Support of labels for resources
- [#338] - Cf api endpoint hardening
- [#340] - Make accountMetadata available as env variables
- [#343] - Subaccount enable beta features
- [#330] and [#345] - Support of parameters when subscribing to applications
- [#347] - Enhance fetching of remote parameters and usecase files
Bug Fixes 🐞
- [#327] - remove deletion of apps that are only entitled
- [#346] and [#351] - Fix the wrong role collection assignment
Other Changes
- Regular update of
btpsa-usecase.jsonand automated documentation due to updates in the service metadata - Bump of dependency updates (see overview)
- Cleanup of code base [#353]
Community Contributions
@pirnz
Notes
New Features and Enhancements 🚀
- [#319] - Support of IdPs in role assignment
- [#320] - Enhancement of Dependabot configuration for package ecosystem
npm
Bug Fixes 🐞
- [aab7f53] - Bug fix for parameter handling in service creation
Other Changes
- Regular update of
btpsa-usecase.jsonand automated documentation due to updates in the service metadata
Notes
New Features and Enhancements 🚀
- Update of
btpsa-usecase.jsonand automated documentation due to renaming of services at SAP TechEd 2022. See also SAP TechEd News Guide 2022
Other Changes
- Update of
Notes
🎉 Welcome to release 1.0.0 of the btp-setup-automator! 🎉
New Features and Enhancements 🚀
We decided to adjust the development procedure for the
btp-setup-automatorby switching to releases. This change should make your life easier as you can now clearly see which changes namely bug fixes and enhancements are part of a release.Releases will consequently not be created daily, but whenever it is reasonable to create one – we do not want to flood you with a version every other day.
In case you want to stay on the latest and greatest version of the
btp-setup-automatorwe also create a dev image will be created more often and an image will be available in the registry calledbtp-setup-automator-devBreaking Changes 🛠
Due to the switch, we also changed the tagging of the container images. You will now find:
- the release image as
ghcr.io/sap-samples/btp-setup-automator:latest- as you can see themaintag is no longer available - the dev images available via
ghcr.io/sap-samples/btp-setup-automator-dev:dev
These changes are also reflected in the
runscripts shipped with thebtp-setup-automator. Instead of one parameter you now have two parameters to instruct the scripts which image to pull. You find more information in the README.- the release image as
Others providing
Compare all 7 on the Account provisioning page →- SAP Cloud Management Service for SAP BTPSAP Cloud Management Service for SAP BTPREST APIs for the administration of a BTP account: directories and subaccounts, entitlements and quotas, subscriptions to multitenant applications, environment instances, and the events those operations raise.sap official, btpREST APIs for administering a BTP accountfrom BTP/BAIP
- SAP Service ManagerSAP Service ManagerThe BTP registry for service brokers and environments: consumes SAP BTP services from any connected runtime environment, tracks the service instances created, and shares them between environments.sap official, btpRegistry for service brokers, instances and environments on SAP BTPfrom BTP/BAIP
- BTP MCP ServerBTP MCP ServerBTP Core Services as MCP tools, and the only server in this corner that renders dashboards inside the chat — a subaccount overview with drill-down, a geomap of data-centre locations, consumption and users.independent, btpBTP Core Services as MCP tools with in-chat dashboardsfrom BTP/BAIP
- auth-transportauth-transportA UI5 app and a CAP service that copy custom role collections from one SAP BTP subaccount to another over the Authorization and Trust Management API, published by its author as a proof of concept rather than for productive use.independent, btpUI5 app and CAP service copying role collections between subaccountsfrom BTP/BAIP
- MCP Server for SAP BTP AdministrationMCP Server for SAP BTP AdministrationSAP-hosted MCP endpoint that exposes BTP account administration — accounts, security, services and connectivity — as tools an AI client discovers and calls on your behalf.sap official, btpSAP-hosted MCP endpoint for BTP account administrationfrom BTP/BAIP
- Terraform Provider for SAP BTPTerraform Provider for SAP BTPThe plugin that lets a Terraform or OpenTofu configuration manage the resources of an SAP BTP global account, from directories and subaccounts to entitlements, role collections and subscriptions.sap official, btpTerraform and OpenTofu provider for SAP BTP global accountsfrom BTP/BAIP
Details
Sources
Sources are graph entities: the same page may back several entries, and an unreachable source flags every row that rests on it.
Compatibility and provenance
Contributors
History in the atlas
- First seen.
For your agent
- Ref
artifact:sap-btp-setup-automator- JSON
- /artifacts/sap-btp-setup-automator.json
- MCP
- Connecting an agent