Cloud Foundry
BTP & Integrationbeginner

BTP Cloud Foundry Part 1: Orgs, Spaces, Apps and Services

Key takeaway

Cloud Foundry is BTP's application runtime for buildpack-based apps. Learn orgs and spaces, space roles, how cf push turns code into a running app with buildpacks and routes, and how apps consume BTP services through service instances and bindings.

What this complete series covers

Learn Cloud Foundry in a clear, practical sequence — from the basic idea to real project use, troubleshooting, and interview-ready understanding.

Who it is for
Best for SAP consultants, developers, and learners who want a practical understanding of Cloud Foundry.
Prerequisites
A basic understanding of SAP BTP helps. Hands-on steps may require a BTP subaccount and access to the relevant Integration Suite or BTP service.
Final outcome
By the end, you should be able to explain Cloud Foundry clearly, follow the main end-to-end flow, apply it in a project scenario, and troubleshoot the most common issues.
  1. Part 1: BTP Cloud Foundry Part 1: Orgs, Spaces, Apps and Services

    Learn why SAP BTP uses Cloud Foundry as a runtime, how orgs and spaces map to subaccounts, and how entitlements and quotas control what you can deploy.

  2. Part 2: BTP Cloud Foundry Part 2: Deploying with Manifests and Multitarget Applications

    Learn how to structure a manifest.yml, push and scale applications, bind service instances, and understand how VCAPSERVICES and environment variables drive runtime configuration.

  3. Part 3: BTP Cloud Foundry Part 3: Lifecycle, Service Bindings and Configuration

    Learn how applications, service instances, and service bindings work together in SAP BTP Cloud Foundry, including how bound credentials reach an application at runtime and how to m

System and release assumptions: SAP BTP services evolve regularly. Capability names, screens, and setup steps can differ by region, entitlement, and tenant version; the core design principles remain the same.

Explanation

📌 KEY POINTS
✅ Each subaccount with Cloud Foundry has one org; spaces inside separate apps and services.

✅ Space roles (e.g. Space Developer) control who can deploy and manage apps.

✅ cf push uploads code; a buildpack builds and runs it; a route gives it a URL.

✅ Apps use services (XSUAA, destination, HANA) via service instances bound to the app (credentials in VCAP_SERVICES).

⚠️ Service credentials belong in bindings, not in code or config files.

━━━━━━━━━━━━━━━━━━━━
▶ WHAT THIS SERIES COVERS

Part 1: Orgs, spaces, apps, services

Part 2: Deploying with manifests and MTAs

Part 3: Lifecycle, bindings and configuration

━━━━━━━━━━━━━━━━━━━━
▶ 1. ORG & SPACES

  • Org per subaccount; spaces for teams/stages.

━━━━━━━━━━━━━━━━━━━━
▶ 2. ROLES

  • Org Manager, Space Manager, Space Developer, Space Auditor.

━━━━━━━━━━━━━━━━━━━━
▶ 3. PUSH & BUILDPACKS

  • Node.js, Java, Python buildpacks.

━━━━━━━━━━━━━━━━━━━━
▶ 4. ROUTES

  • URL mapping to app instances.

━━━━━━━━━━━━━━━━━━━━
▶ 5. SERVICES

  • Instances, bindings, environment variables.

━━━━━━━━━━━━━━━━━━━━
▶ STEP BY STEP

  1. Log in with cf login and target a space.
  2. Push a sample app.
  3. Create and bind a service instance.

✅ CHECKPOINT: app shows service credentials in its environment.

Code example

ABAP Code
===== CF CLI =====cf login -a https://api.cf.eu10.hana.ondemand.comcf target -o acme-dev -s devcf push my-appcf create-service xsuaa application my-xsuaacf bind-service my-app my-xsuaa && cf restage my-appcf env my-app   # shows VCAP_SERVICEScf apps | cf services | cf logs my-app --recent

Real project scenario

A new developer put database credentials into a config file in Git. Moving to a bound HANA service instance with credentials read from VCAP_SERVICES removed the secret from source control.

Common mistakes

  • Secrets in code.
  • Wide production roles.
  • Forgetting restage after bind.
  • One space for everything.
  • Ignoring logs.

Best practices

  • Use bindings.
  • Least-privilege roles.
  • Restage after binding changes.
  • Spaces per stage/team.
  • Check logs.

Interview angle

Questions: "Org vs space?", "What does a buildpack do?", "How does an app get service credentials?"
Strong answer: org/space/roles, push and buildpacks, routes, services and bindings.

Practice this lesson

Quick check

1. How many Cloud Foundry orgs does a BTP subaccount have when Cloud Foundry is enabled?

2. Which Cloud Foundry space role grants a user permission to push applications, manage service instances, and view logs within a specific space, without granting org-wide administrative rights?

3. In Cloud Foundry, what determines the URL through which an external client can reach a deployed application?

Interview questions

1. What are the core concepts of Cloud Foundry, and how would you explain them clearly in an SAP interview?

Answer it in your own words first, then compare.

2. A new developer stored database credentials in a config file. Explain how Cloud Foundry apps should get service credentials.

Answer it in your own words first, then compare.

Practice more with Interview AI →

Reference-verified: the steps are checked against official SAP documentation and tutorials, and object and field names in the sample code are checked for consistency. The code has not been compiled or run on an SAP system by ERPClimb. Syntax marked release-dependent varies by SAP release, so check it in your own system.

More lessons in this topic

Interview questions on this topic

Related SAP topics