You can update an application using the CLI tool or the REST API as shown below:
Updating an application via the CLI
Overview
CLI command | update-application |
Description | Update an application. |
Command format | update-application -p <JSON_FILE_PATH> The path to the JSON file that defines the application needs to be defined as the |
Parameter definition
Short option | Long option | Description | Required | Example value |
---|---|---|---|---|
-p | --resource-path | Folder path where the JSON file that defines the application policy is stored. | yes |
|
Example
Update the application defined in the <PRIVATE_PAAS_CARTRIDGES>/wso2am/1.9.0/samples/ applications/wso2am-190-application/artifacts/wso2am-190-application.json
file.
update-application -p <PRIVATE_PAAS_CARTRIDGES>/wso2am/1.9.0/samples/applications/wso2am-190-application/artifacts/wso2am-190-application.json
Sample output
Application updated successfully: [application] wso2am-190-application
Updating an application via the REST API
Overview
Description | Update an application definition. |
Resource Path | /applications |
HTTP Method | PUT |
Request/Response Format | application/json |
Command format | curl -X UT -H "Content-Type: application/json" -d @'<JSON_PAYLOAD>' -k -v -u <USERNAME>:<PASSWORD> https://<PRIVATE_PAAS_HOST>:<PRIVATE_PAAS_HTTPS_PORT>/api/applications
|
Example
Update the application defined in the <PRIVATE_PAAS_CARTRIDGES>/wso2am/1.9.0/samples/applications/wso2am-190-application/artifacts/wso2am-190-application.json
file.
cd <PRIVATE_PAAS_CARTRIDGES>/wso2am/1.9.0/samples curl -X PUT -H "Content-Type: application/json" -d @'applications/wso2am-190-application/artifacts/wso2am-190-application.json' -k -v -u admin:admin https://localhost:9443/api/applications
Sample output
> PUT /api/applications HTTP/1.1 > Host: localhost:9443 > Authorization: Basic YWRtaW46YWRtaW4= > User-Agent: curl/7.43.0 > Accept: */* > Content-Type: application/json > Content-Length: 3193 > Expect: 100-continue > < HTTP/1.1 100 Continue < HTTP/1.1 201 Created < Date: Thu, 08 Oct 2015 09:47:29 GMT < Location: https://localhost:9443/api/applications/wso2am-190-application < Content-Type: application/json < Transfer-Encoding: chunked < Server: WSO2 Carbon Server < {"status":"success","message":"Application updated successfully: [application] wso2am-190-application"}
You will come across the following HTTP status codes while updating an application:
HTTP status code | 200, 400, 409, 500 See the descriptions of the HTTP status codes here. |
Location header URL |
|
Sample application definition JSON
{ "applicationId": "wso2am-190-application", "multiTenant": true, "alias": "wso2am-190-application", "components": { "groups": [ { "name": "keymanager-gw-manager-gw-worker", "alias": "keymanager-gw-manager-gw-worker", "groupMinInstances": 1, "groupMaxInstances": 1, "cartridges": [ { "type": "wso2am-190-gw-manager", "cartridgeMin": 1, "cartridgeMax": 1, "subscribableInfo": { "alias": "gateway-manager", "deploymentPolicy": "deployment-policy-1", "autoscalingPolicy": "autoscaling-policy-1" } }, { "type": "wso2am-190-gw-worker", "cartridgeMin": 1, "cartridgeMax": 1, "subscribableInfo": { "alias": "gateway-worker", "deploymentPolicy": "deployment-policy-1", "autoscalingPolicy": "autoscaling-policy-1" } }, { "type": "wso2am-190-km", "cartridgeMin": 1, "cartridgeMax": 1, "subscribableInfo": { "alias": "key-manager", "deploymentPolicy": "deployment-policy-1", "autoscalingPolicy": "autoscaling-policy-1" } } ] }, { "name": "pub-store-grp", "alias": "pub-store-grp", "groupMinInstances": 1, "groupMaxInstances": 1, "cartridges": [ { "type": "wso2am-190-pub", "cartridgeMin": 1, "cartridgeMax": 1, "subscribableInfo": { "alias": "publisher", "deploymentPolicy": "deployment-policy-1", "autoscalingPolicy": "autoscaling-policy-1" } }, { "type": "wso2am-190-store", "cartridgeMin": 1, "cartridgeMax": 1, "subscribableInfo": { "alias": "store", "deploymentPolicy": "deployment-policy-1", "autoscalingPolicy": "autoscaling-policy-1" } } ] } ], "dependencies": { "startupOrders": [ { "aliases": [ "group.keymanager-gw-manager-gw-worker", "group.pub-store-grp" ] } ], "terminationBehaviour": "terminate-none" } } }