Skip to content

Commit c83f8d0

Browse files
committed
docs: refinement after review comments
1 parent 51fccf3 commit c83f8d0

File tree

5 files changed

+32
-12
lines changed

5 files changed

+32
-12
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
## Description
88

9-
This repository provides samples based on the recommendations given in the [SAP BTP Administrator's Guide](https://help.sap.com/docs/btp/btp-admin-guide/btp-admin-guide) on [help.sap.com](https://help.sap.com/docs/).
9+
This repository provides samples based on the recommendations given in the [SAP BTP Administrator's Guide](https://help.sap.com/docs/btp/btp-admin-guide/btp-admin-guide) specifically the section ["Setting Up Your Account Model"](https://help.sap.com/docs/btp/btp-admin-guide/setting-up-your-account-model).
1010

1111
These samples show the implementation of the recommendations using Infrastructure as Code, namely [Terraform](https://www.terraform.io/) or [OpenTofu](https://opentofu.org/). They help you getting started with a sustainable setup of your SAP BTP accounts following our best practices.
1212

1.89 MB
Binary file not shown.

assets/basic-setup-overview.png

160 KB
Loading

sample-setups/README.md

Lines changed: 27 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,13 @@ We follow the paradigms of a simple and clear Terraform configuration as laid ou
1313
- Name with underscores, not dashes.
1414
- Using locals makes code descriptive and maintainable.
1515

16-
## Naming Conventions and Labeling
16+
Another important paradigm is avoiding a monolithic Terraform state (*"Terralith"*). Hence, there is no single Terraform configuration for a complete SAP BTP account. Instead, we split the setup in configurations that are provisioned and managed seperately.
1717

18-
Consistent naming conventions are one import aspect when provisioning and managing your SAP BTP account. Our samples follow the [Naming Conventions for SAP BTP Accounts](https://help.sap.com/docs/btp/btp-admin-guide/naming-conventions-for-sap-btp-accounts).
18+
## Overview
1919

20-
To ensure consistent naming of your resources, we encapsulate the guidelines in a dedicated module. Besides the naming, we also include the labels that can be attached to some resources on SAP BTP.
20+
The basic setup showcases the setup of directories and subaccounts as given in this overview:
2121

22-
We have created one module for the level of the [directory](./modules/sap-btp-naming-conventions-directory/README.md) and one for the level of the [subaccount](./modules/sap-btp-naming-conventions-subaccount/README.md).
22+
![Overview Basic Setup](../assets/basic-setup-overview.png)
2323

2424
## Setup of Directories
2525

@@ -28,3 +28,26 @@ The folder `basic-setup/directory-setup` contains the setup of directories as a
2828
## Setup of Subaccounts
2929

3030
The folder `basic-setup/subaccount-setup` contains the setup of subaccounts. For details, see the [README.md](./basic-setup/subaccount-setup/README.md) file.
31+
32+
## Modules
33+
34+
We have created a set of modules to encapsulate the reusable parts of the setup. The modules are located in the folder `modules`. Each module has its own README file that describes the module and its usage.
35+
36+
### Naming Conventions and Labeling
37+
38+
Consistent naming conventions are one import aspect when provisioning and managing your SAP BTP account. Our samples follow the [Naming Conventions for SAP BTP Accounts](https://help.sap.com/docs/btp/btp-admin-guide/naming-conventions-for-sap-btp-accounts).
39+
40+
To ensure consistent naming of your resources, we encapsulate the guidelines in a dedicated module. Besides the naming, we also include the labels that can be attached to some resources on SAP BTP.
41+
42+
We have created one module for the level of the [directory](./modules/sap-btp-naming-conventions-directory/README.md) and one for the level of the [subaccount](./modules/sap-btp-naming-conventions-subaccount/README.md).
43+
44+
### Directory Setup
45+
46+
The module [base-directory-setup](./modules/base-directory-setup/README.md) is used to create the directories. It combines the corresponding module containing the naming and labeling conventions for a directory, and calls the Terraform resource [btp_directory](https://registry.terraform.io/providers/SAP/btp/latest/docs/resources/directory).
47+
48+
### Subaccount Setup
49+
50+
The reusable parts of the subaccount setup are:
51+
52+
- The module [SAP BTP - Default Subaccount Entitlements](./modules/sap-btp-subaccount-default-entitlements/README.md) encapsulates the default entitlements for SAP BTP subaccounts. It distinguishes between the different development stages of the environment (Dev, Test, Prod, Shared) and provides the default data of entitlements for each stage. The entitlement is executed in the configuration of the [basic setup of the subaccount](./basic-setup/directory-setup/README.md)
53+
- The creation of the different SAP BTP environemnts are encapsulated in modules for [Cloud Foundry](./modules/sap-btp-environment/cloudfoundry/README.md) and [Kyma](./modules/sap-btp-environment/kyma/README.md).

sample-setups/basic-setup/directory-setup/README.md

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,10 @@
11
# Sample Setup for a Basic Directory Structure
22

3-
## Assumptions
4-
5-
- We assume that we use the directories as structuring element for the subaccounts; that is, in an unmanaged fashion.
6-
- We assume that we do the directory setup in one run for all involved departments.
7-
83
## Design Decisions
94

10-
We decouple the directory creation (the setup of the basic structure) from the creation of the operational units (the subaccounts within the directories). Typically, changes on directory level happen less frequently than changes in the subaccounts additionally depending on their stage. We want to avoid side effects as well as lengthy state refreshes and keep the state of the directories separate.
5+
- We use the directories as structuring element for the subaccounts; that is, in an unmanaged fashion.
6+
- We decouple the directory creation (the setup of the basic structure) from the creation of the operational units (the subaccounts within the directories). Typically, changes on directory level happen less frequently than changes in the subaccounts additionally depending on their stage. We want to avoid side effects as well as lengthy state refreshes and keep the state of the directories separate.
7+
- We do the directory provisioning and management as one unit for all involved departments.
118

129
## Directory Setup
1310

@@ -32,7 +29,7 @@ directories = {
3229
"business_unit" = "HR"
3330
"costcenter" = "123456"
3431
"id" = "cf12345f-1234567890"
35-
"name" = "Sales-EMEA"
32+
"name" = "HR-EMEA"
3633
"region" = "EMEA"
3734
}
3835
}

0 commit comments

Comments
 (0)