Skip to Content
Technical Articles
Author's profile photo Uwe Klinger

Run and Deploy a CAP Business Application on the Kyma Runtime

This blog is outdated. Please read my new blog post CAP on Kyma – Deploy your CAP apps to SAP BTP, Kyma Runtime.


You might have already heard about the SAP BTP, Kyma runtime, and how you can use events and “functions as a service” to extend your applications. But you wonder how to build business applications for the Kyma runtime?
With this blog post, I want to give you an introduction on how to deploy and run business applications built with SAP Cloud Application Programming Model (CAP) on the Kyma runtime.

Kyma is a platform to extend applications with serverless functions and microservices
(https://kyma-project.io/)

…and it gives you a full-fledged Kubernetes cluster as well. Basically, you can run all applications on Kyma that can be packaged into a Docker Image. This works for Java and Node.js CAP applications as well.

But what about all the useful services that SAP provides for the Cloud Foundry runtime? The good news is, that you can use many* of these services on the Kyma runtime as well. These services are exposed by SAP Service Manager using the Open Service Broker API. Kyma implements this API and the Kyma runtime is wired with the SAP Service Manager for your Subaccount. You can create service instances and inject the credentials into your Kubernetes pods based on your SAP BTP subaccount’s entitlements.

Kyma%20Console%20-%20The%20Graphical%20User%20Interface%20for%20Kyma

Kyma Console – The Graphical User Interface for Kyma

My colleagues and I from the SAP BTP Extension team created a tutorial to give you a first impression of CAP on Kyma. You can complete it with no prior knowledge about Kyma and Kubernetes.

The tutorial is based on a Node.js CAP example application (“Risk Management”). It already contains two CAP services and an SAP Fiori UI. So you don’t need to start from scratch.
If you’re interested in CAP on Kyma, then I encourage you to try it out. My colleagues and I would be happy to get your feedback. Just leave a comment here or create an issue for the tutorial.
To do the tutorial, create an SAP BTP Trial account or use your own SAP BTP  subaccount and follow the instructions of the tutorial.

Screenshot%20from%20Risk%20Management%20example

Screenshot from Risk Management example

Additional Information

Footnotes

* Not all SAP BTP services are available for the Kyma runtime at the time this blog has been written.

Assigned Tags

      16 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Pierre Dominique
      Pierre Dominique

      Hi Uwe,

      What would be the pros and cons of running a CAP application on Kyma vs CF?

      Cheers,

      Pierre

      Author's profile photo Uwe Klinger
      Uwe Klinger
      Blog Post Author

      Hi Pierre,

      I think this depends on the specific requirements of a project.

      As soon as CAP supports Kyma officially (This is not a product commitment), you have the choice to pick the runtime that fits best for your needs.

      Best Regards,
      Uwe

      Author's profile photo Gregor Wolf
      Gregor Wolf

      Hi Uwe,

      thank you for the great tutorial. I've just got it working in my Kyma Trial on SAP CP. Would be great if you would add also authentication to the tutorial. I've seen that "Authorization & Trust Management" is listed in the Kyma Service Catalog.

      Best regards
      Gregor

      Author's profile photo Uwe Klinger
      Uwe Klinger
      Blog Post Author

      Hi Gregor,

      Thanks for the feedback.

      Yes, the XSUAA service is available. Unfortunately, you can't use the AppRouter right now, because it requires JSESSIONID based session stickiness which is not supported by Kyma's Envoy proxy. So it will not work with an AppRouter deployment that uses more than one pod.

      There are different possibilities for a solution. Hopefully, we I come back with one soon.

      Best regards,

      Uwe

      Author's profile photo Gregor Wolf
      Gregor Wolf

      Hi Uwe,

      are there any news regarding authentication?

      Best regards
      Gregor

      Author's profile photo Jamie Cawley
      Jamie Cawley

      HI Gregor,

      We have a sample auth app that you could try if you would like at

      https://github.com/SAP-samples/kyma-runtime-extension-samples/tree/master/app-auth-proxy

      Regards,

      Jamie

      Author's profile photo Uwe Klinger
      Uwe Klinger
      Blog Post Author

      Hi Gregor,

      Currently, there are still two different options in discussion. Sorry, we still need to figure out which one we want to suggest.

      Best regards,
      Uwe

      Author's profile photo Rohan Luthra
      Rohan Luthra

      Hi All

       

      Is there any future to having SAP Cloud Application Programming for the SAP Commerce platform.?

       

      Author's profile photo Gregor Wolf
      Gregor Wolf

      Hi Rohan,

      can you provide more background to your question?

      CU
      Gregor

      Author's profile photo Rohan Luthra
      Rohan Luthra

      Hi Gregor,

       

      looking for if there is any roadmap with regards to SAP Commerce cloud for development.

      Or understand How SAP Cloud Application Programming can help in SAP Commerce Cloud development.

      Author's profile photo Uwe Klinger
      Uwe Klinger
      Blog Post Author

      Hi Rohan,

      With respect to SAP Commerce Cloud specifiy questions you may check their community. With CAP you can create your own service with persistency and integrate it with other cloud solutions. OData is the best supported protocol by CAP right now. Further you can receive events using SAP Event Mesh. You should be also able to receive events using Kyma's messaging. However, this is not documented.

      Best regards,
      Uwe

       

      Author's profile photo Hamza Masood
      Hamza Masood

      Hi,

      The 'Node.js CAP example application' link results in a 404 for me.

      Regards,

      Hamza Masood

      Author's profile photo Uwe Klinger
      Uwe Klinger
      Blog Post Author

      Hi Hamza Masood,

      Thanks for making me aware of this. The link has changes. You will find the code here: https://github.com/SAP-samples/cloud-cap-risk-management/tree/create-ui-freestyle-sapui5

      However, I would recommend to wait a few days. Because we plan to provide an updated and extended version of the tutorial.

      Best regards,

      Uwe

       

       

      Author's profile photo Gregor Wolf
      Gregor Wolf

      You can follow the development via:

      https://github.com/SAP-samples/cap-sflight/pull/227

      Author's profile photo Hamza Masood
      Hamza Masood

      It seems like it is merged now.

      Where can I view the tutorial for it?

      Is the actual tutorial still in development?

      Author's profile photo Gregor Wolf
      Gregor Wolf

      Check out README-Kyma-Runtime.md