Kubernetes is the baseline of cloud-native infrastructures. The code (and documentation in this repo) are going to take you on a fast-forward journey towards a business service live and kicking on Kubernetes (SAP BTP, Kyma Runtime). This sample project shows the integration points into the SaaS Application Registry to be consumed from within the BTP Cockpit.
This scenario does not cover the steps required to commercialize the service. However, it provides the necessary preconditions to start the process within SAP.
The FAQ management service is built on SAP BTP using the Cloud Application Programming Model (CAP). It allows customers to manage a list of Frequently Asked Questions through an SAP Fiori interface. Overall, this is a simple and yet powerful multi-tenant service that allows each subscriber to configure roles and add users who can access the isolated data of the respective tenant.
Make sure you have the following tools installed and services provisioned:
You can complete all steps in production as well as in trial accounts.
- Create an SAP BTP Trial account in the region EU10
- Deploy SAP HANA Cloud
- Enable SAP BTP, Kyma Runtime
- Install the Kubernetes Command Line Interface (CLI)
- Install the Cloud Foundry CLI
We will use a few SAP BTP services during the deployment. Please make sure you see the following services in the SAP BTP Cockpit service marketplace:
- SAP HANA Schemas & HDI Containers (
hdi-shared
plan) - SaaS Provisioning (
container
andapplication
plans) - XSUAA: Authorization & Trust Management (
broker
plan)
Install the following tools if you would like to run the individual components on your local machine and build your own images:
- Install Docker and log in with your Docker ID (or use another Docker registry of your choosing)
- Install Golang
- Install Node.js
- Install @sap/cds-dk
- Set up the provider subaccount, which will offer the service to other subaccounts.
- Subscribe to the SaaS solution in the consumer subaccount.
This sample project has been created to sketch specific ideas to demonstrate how to build multi-tenant apps on SAP BTP, Kyma runtime. Please be aware that this project still contains a few workarounds and takes "technical shortcuts" like:
- SAP HANA Cloud is currently not natively available in the Kyma runtime. Here we use the workaround and provision the instance in the Cloud Foundry environment.
- As of now, this project doesn't enforce access restrictions on the admin endpoint of the services. To keep things simple, we hide some UI elements when the user doesn't have sufficient scope. The only data separation in this sample happens on a tenant level.
Please use the GitHub bug tracking system to post questions and bug reports.
None so far
This project is only updated by SAP employees and only accepts bug reports but no other contribution.
Copyright (c) 2021 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.