Multitarget Applications for the Cloud Foundry Environment
A Multitarget Application (MTA) is a package comprised of multiple application and resource modules, which have been created using different technologies and deployed to different runtimes, but have a common lifecycle. You bundle the modules together, describe them along with their interdependencies to other modules, services, and interfaces, and package them in an MTA.
Complex business applications are composed of multiple parts developed with focus on micro-service design principles, API-management, usage of the OData protocol, increased usage of application modules developed with different languages, IDEs, and build methodologies. Thus, development, deployment, and configuration of separate elements introduce a variety of lifecycle and orchestration challenges. To address these challenges, SAP introduces the Multitarget Application (MTA) concept. It addresses the complexity of continuous deployment by employing a formal target-independent application model.
An MTA comprises of multiple modules created with different technologies, deployed to different target runtimes, but having a common lifecycle. Initially, developers describe the modules of the application, the interdependencies to other modules and services, and required and exposed interfaces. Afterward, the SAP Cloud Platform validates, orchestrates, and automates the deployment of the MTA.
For more information about the Multitarget Application model, see the official The Multitarget Application Model specification.
You can create and deploy a Multitarget Application for the Cloud Foundry environment as described below:
- Using the SAP Web IDE for Full-Stack Development as described in Developing Multitarget Applications - both the
development descriptor mta.yaml and the deployment descriptor
mtad.yaml are created automatically. The
mta.yaml is generated when you create the application project,
and the mtad.yaml file is created when you build the
Development descriptors are used to generate MTA deployment descriptors, which define the required deployment data. That is, the MTA development descriptor data specifies what you want to build, how to build it, while the deployment descriptor data specifies as what and how to deploy it.
- Using the Multitarget Application Archive Builder tool - as described in Multitarget Application Archive Builder. Afterward you deploy the MTA using the Cloud Foundry Command Line Interface.
- Manually - create the required files manually and deploy them using the Cloud
Command Line Interface
To learn more about See Multitarget Application deployment descriptor Defining MTA Deployment Descriptors for Cloud Foundry Multitarget Application archive Defining Multitarget Application Archives Multitarget Application extension descriptor Defining MTA Extension Descriptors Multitarget Application module types and parameters MTA Module Types, Resource Types, and Parameters for Applications in the Cloud Foundry Environment How to deploy the Multitarget Application Cloud Foundry Command Line Interface
Prerequisites and RestrictionsYou have to consider the following limits for the MTA artifacts, which can be handled by the Cloud Foundry deploy service:
- Maximum size of the MTA archive: 4 GB
- Maximum size of MTA module content: 4 GB
- Maximum size of MTA resource content: 1 GB
- Maximum size of MTA descriptors (mtad.yaml and MANIFEST.MF): 1 MB