SampleSampletypeA worked example you read or clone. Evidence: it demonstrates, it never provides.See every one →What this type is →independently maintainedindependently maintainedoriginPublished by one person or a small company outside SAP. Says nothing about quality; the readings say that.See every one →

mtxs-reviews

Multitenant CAP application using cds-mtxs.

Facts

Last push

Where it sits

Lives in
Demonstrates
MultitenancyCAPMultitenancycapabilityServing many tenants from one deployment — onboarding, tenant-isolated data, per-tenant schema deployment and the operational tooling around it. It is decided once, before anything is built, and narrows the artifacts in almost every capability downstream: most sharply in [caching](capability:caching) and anything else holding state in process.Tenant extensibilityCAPTenant extensibilitycapabilityLetting a customer extend the model of a running SaaS application with extra fields and entities per tenant, without forking the application, as distinct from extending the application's code for every customer at once.

Who is behind it

Gregor WolfGregor WolfPersonMaintains this
In the atlas: maintains 17, contributes to 59, wrote 2
@gregorwolf
maintainer

Before choosing this

Signals

LicenceNo licenseNeither the package manifest nor the repository tree declares a licence

Without a licence the default is all rights reserved. Ask the maintainer, or check for terms stated elsewhere, before depending on it.

What it declares

Every artifact

Type
Sample
Origin
Independently maintained

As a sample

Form
A reference application

Connections2

ArchitectureBetaRead from the sample's deployment descriptor. Some of the connections it states are not drawn yet.

as mta.yaml states it at 03a66a4, read
SAP BTP, Cloud Foundry Runtimemtxs-reviewsmta.yaml, module mtxs-reviews-srv, requires mtxs-reviews-authbinding, HTTP, outboundmta.yaml, module mtxs-reviews-srv, requires app-apiapp-apimta.yaml, module mtxs-reviews, requires srv-api; mta.yaml, module mtxs-reviews, requires mtx-apisrv-api, mtx-apimta.yaml, module mtxs-reviews, requires mtxs-reviews-authbindingOAuth 2.0, outbounddocumentedoutboundSAP Authorization and Trust Management service, xsuaa, applicationSAP Authorizationand TrustManagement serviceSAP Destination service, destination, liteSAP Destinationservicemtxs-reviews-srv, nodejsmtxs-reviews-srvmtxs-reviews, approuter.nodejsmtxs-reviewsSAP Service Manager, service-manager, containerSAP ServiceManagermtxs-bookshop-db, service instancemtxs-bookshop-dbSAP Software-as-a-Service Provisioning service, saas-registry, applicationSAPSoftware-as-a-ServiceProvisioningservicemtxs-bookshop-srv-api, service instancemtxs-bookshop-srv-api
SAPnot SAP's, or the project's ownauthenticationstated in the documentdocumented only

Bound, and not drawn

Documented, with no instance in the document

README

quoted from gregorwolf/mtxs-reviews, read
gregorwolf/mtxs-reviews/README.mdOn GitHub

Multitenant CAP Reviews

This project demonstrates the integration to another CAP multitenant application using HANA Synonyms. The application providing the Books entity is mtxs-bookshop. The mtxs-bookshop defines HANA Roles (BOOKSHOP.hdbrole and BOOKSHOP_O.hdbrole) that allow this app to access the HANA Table MY_BOOKSHOP_BOOKS.

To achieve this functionality in a multitenant application we make use of a dynamically defined user provided service that gets its credentials from the service manager instance of the mtxs-bookshop app.

Architecture

excerpt, no licence read, read the rest, on GitHub

Details

Sources3
GitHub APIdiscovered here, gregorwolfchecked
github.com/gregorwolf/mtxs-reviewstree, pushes, contributors, CIchecked
README.mdquoted, and what the entry declareschecked

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
discovered viaGitHub API · gregorwolf
first seen in the atlas
ecosystem and domaincap, operations-and-runtime
History in the atlas2
  1. A sample's domain recorded what kind of thing it is, which artifact_type already says, so it sat under Learning while the capability it demonstrates sat elsewhere — filtering a domain for a worked example returned nothing. Domain now follows the single capability the sample demonstrates; a sample with no single subject stays in Learning.
  2. First seen.
For your agent
Ref
artifact:gregorwolf-mtxs-reviews
JSON
/artifacts/gregorwolf-mtxs-reviews.json
MCP
Connecting an agent