Each application declares a type implementing the APS core Application type described here. APS controller creates a resource based on this type during provisioning of an application instance. So, such a resource presents an instance of the application.
In this document:
Application resource schema: download
{
"apsVersion": "2.0",
"name": "Application",
"id": "http://aps-standard.org/types/core/application/1.0",
"implements": [ "http://aps-standard.org/types/core/resource/1.0" ],
"operations": {
"upgrade": {
"verb": "POST",
"path": "/upgrade",
"parameters": {
"version": {
"type": "string",
"kind": "query"
}
}
}
}
}
The only additional method declared in the application type is upgrade()
.
See Upgrade for details.
All other methods of application instances are inherited from the base resource type.
Application provisioning is an operation similar to the resource provisioning, but the resource should be of the application type. It leads to creation of an application instance.
Like for a usual resource, application provisioning consists of the following steps:
If any allocation of a required resource or the provision()
call failed,
then all operations are rolled back (the allocated resources freed up/removed).
Get more details in the Install Application Instance document.
Application upgrade is a procedure which is performed when a user asks the controller to upgrade the application package (meaning bits and meta-data).
The workflow of the upgrade procedure is shown below:
If any of the allocations failed or if the upgrade() call failed, then all operations are rolled back (the newly allocated resources freed up/removed).
Get more details in the Application Upgrade document.