An Azure managed application package consists of two required elements which are then packaged into a .zip file:
- Resource template: The resource template (mainTemplate.json) is a .json file which has no differences to a standard ARM template as described in Chapter 2, Azure Resource Manager and Tools. This file describes the resources and their parameters for deployment.
- User interface definition: The user interface definition (createUiDefinition.json) is used by the Azure portal to generate the user interface when users are deploying a managed application.
Be aware that the names of these files are case sensitive.
Besides those required parts, a managed application can contain optional elements and files necessary for the ARM template like images, scripts and other artifacts.
Those files are then packaged into a single .zip file. The ZIP file must contain the required files on top-level and can contain the optional files (also in folders):
...