Now we are not allow to update the cartridge with the adding cartridge REST
method. We have introduced following PUT method to update the existing
cartridges.


HTTP MethodResource Path
PUT        /
<https://cwiki.apache.org/confluence/display/STRATOS/4.1.0+Describing+an+Auto-scaling+Policy+via+REST+API>cartridges

Sample CURL request:

curl -X PUT -H "Content-Type: application/json" -d
@'<cartridge_definition_json>' -k -v -u admin:admin https://
<stratos_server_ip>:9443/api/cartridges

Thanks,
Gayan


On Fri, Jan 23, 2015 at 6:26 PM, Imesh Gunaratne <[email protected]> wrote:

> +1 Yes will add an api method to update a cartridge.
>
> Thanks
>
> On Fri, Jan 23, 2015 at 5:18 PM, Udara Liyanage <[email protected]> wrote:
>
>>
>>
>> On Fri, Jan 23, 2015 at 5:02 PM, Gayan Gunarathne <[email protected]>
>> wrote:
>>
>>>
>>> I think we can define two REST API operations with POST and PUT http
>>> methods.
>>> POST to create resource and PUT to update resource.
>>> (I will suggested to use PUT to update resource as we are update a
>>> resource(cartridge) completely)
>>>
>>> +1
>>
>>> Thanks,
>>> Gayan
>>>
>>>
>>> On Fri, Jan 23, 2015 at 4:40 PM, Lakmal Warusawithana <[email protected]>
>>> wrote:
>>>
>>>>
>>>>
>>>> On Fri, Jan 23, 2015 at 4:17 PM, Imesh Gunaratne <[email protected]>
>>>> wrote:
>>>>
>>>>> I think with the terminology change "Deploy cartridge" -> "Add
>>>>> cartridge" this functionality might not valid. We may need to raise an
>>>>> error if the cartridge is already added with the HTTP status code 409.
>>>>>
>>>>>
>>>> And we may need to add "update cartridge" as well.
>>>>
>>>>
>>>>> Thanks
>>>>>
>>>>> On Fri, Jan 23, 2015 at 3:32 PM, Udara Liyanage <[email protected]>
>>>>> wrote:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> When a new cartridge with an existing name is added, it overwrites
>>>>>> the existing one. So the behavior you got is the expected behavior.
>>>>>>
>>>>>> On Fri, Jan 23, 2015 at 3:28 PM, Mariangela Hills <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> I was expecting to get 409 when I added the same cartridge
>>>>>>> definition twice, but I did not get an error. Is this meant to be this 
>>>>>>> way?
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> *Admin16s-MacBook-Air:artifacts Admin16$ curl -X POST -H
>>>>>>> "Content-Type: application/json" -d @'tomcat.json' -k -v -u admin:admin
>>>>>>> https://localhost:9443/api/cartridges
>>>>>>> <https://localhost:9443/api/cartridges>*
>>>>>>> * About to connect() to localhost port 9443 (#0)
>>>>>>> *   Trying ::1...
>>>>>>> * connected
>>>>>>> * Connected to localhost (::1) port 9443 (#0)
>>>>>>> * SSLv3, TLS handshake, Client hello (1):
>>>>>>> * SSLv3, TLS handshake, Server hello (2):
>>>>>>> * SSLv3, TLS handshake, CERT (11):
>>>>>>> * SSLv3, TLS handshake, Server key exchange (12):
>>>>>>> * SSLv3, TLS handshake, Server finished (14):
>>>>>>> * SSLv3, TLS handshake, Client key exchange (16):
>>>>>>> * SSLv3, TLS change cipher, Client hello (1):
>>>>>>> * SSLv3, TLS handshake, Finished (20):
>>>>>>> * SSLv3, TLS change cipher, Client hello (1):
>>>>>>> * SSLv3, TLS handshake, Finished (20):
>>>>>>> * SSL connection using DHE-RSA-AES256-SHA
>>>>>>> * Server certificate:
>>>>>>> *  subject: C=US; ST=CA; L=Mountain View; O=WSO2; CN=localhost
>>>>>>> *  start date: 2010-02-19 07:02:26 GMT
>>>>>>> *  expire date: 2035-02-13 07:02:26 GMT
>>>>>>> *  common name: localhost (matched)
>>>>>>> *  issuer: C=US; ST=CA; L=Mountain View; O=WSO2; CN=localhost
>>>>>>> *  SSL certificate verify result: unable to get local issuer
>>>>>>> certificate (20), continuing anyway.
>>>>>>> * Server auth using Basic with user 'admin'
>>>>>>> > POST /api/cartridges HTTP/1.1
>>>>>>> > Authorization: Basic YWRtaW46YWRtaW4=
>>>>>>> > User-Agent: curl/7.24.0 (x86_64-apple-darwin12.0) libcurl/7.24.0
>>>>>>> OpenSSL/0.9.8r zlib/1.2.5
>>>>>>> > Host: localhost:9443
>>>>>>> > Accept: */*
>>>>>>> > Content-Type: application/json
>>>>>>> > Content-Length: 1166
>>>>>>> > Expect: 100-continue
>>>>>>> >
>>>>>>> < HTTP/1.1 100 Continue
>>>>>>> *< HTTP/1.1 201 Created*
>>>>>>> < Date: Fri, 23 Jan 2015 09:42:24 GMT
>>>>>>> < Location: https://localhost:9443/api/cartridges/tomcat
>>>>>>> < Content-Length: 0
>>>>>>> < Server: WSO2 Carbon Server
>>>>>>> <
>>>>>>> * Connection #0 to host localhost left intact
>>>>>>> * Closing connection #0
>>>>>>> * SSLv3, TLS alert, Client hello (1):
>>>>>>> *Admin16s-MacBook-Air:artifacts Admin16$ curl -X POST -H
>>>>>>> "Content-Type: application/json" -d @'tomcat.json' -k -v -u admin:admin
>>>>>>> https://localhost:9443/api/cartridges
>>>>>>> <https://localhost:9443/api/cartridges>*
>>>>>>> * About to connect() to localhost port 9443 (#0)
>>>>>>> *   Trying ::1...
>>>>>>> * connected
>>>>>>> * Connected to localhost (::1) port 9443 (#0)
>>>>>>> * SSLv3, TLS handshake, Client hello (1):
>>>>>>> * SSLv3, TLS handshake, Server hello (2):
>>>>>>> * SSLv3, TLS handshake, CERT (11):
>>>>>>> * SSLv3, TLS handshake, Server key exchange (12):
>>>>>>> * SSLv3, TLS handshake, Server finished (14):
>>>>>>> * SSLv3, TLS handshake, Client key exchange (16):
>>>>>>> * SSLv3, TLS change cipher, Client hello (1):
>>>>>>> * SSLv3, TLS handshake, Finished (20):
>>>>>>> * SSLv3, TLS change cipher, Client hello (1):
>>>>>>> * SSLv3, TLS handshake, Finished (20):
>>>>>>> * SSL connection using DHE-RSA-AES256-SHA
>>>>>>> * Server certificate:
>>>>>>> *  subject: C=US; ST=CA; L=Mountain View; O=WSO2; CN=localhost
>>>>>>> *  start date: 2010-02-19 07:02:26 GMT
>>>>>>> *  expire date: 2035-02-13 07:02:26 GMT
>>>>>>> *  common name: localhost (matched)
>>>>>>> *  issuer: C=US; ST=CA; L=Mountain View; O=WSO2; CN=localhost
>>>>>>> *  SSL certificate verify result: unable to get local issuer
>>>>>>> certificate (20), continuing anyway.
>>>>>>> * Server auth using Basic with user 'admin'
>>>>>>> > POST /api/cartridges HTTP/1.1
>>>>>>> > Authorization: Basic YWRtaW46YWRtaW4=
>>>>>>> > User-Agent: curl/7.24.0 (x86_64-apple-darwin12.0) libcurl/7.24.0
>>>>>>> OpenSSL/0.9.8r zlib/1.2.5
>>>>>>> > Host: localhost:9443
>>>>>>> > Accept: */*
>>>>>>> > Content-Type: application/json
>>>>>>> > Content-Length: 1166
>>>>>>> > Expect: 100-continue
>>>>>>> >
>>>>>>> < HTTP/1.1 100 Continue
>>>>>>> *< HTTP/1.1 201 Created*
>>>>>>> < Date: Fri, 23 Jan 2015 09:50:49 GMT
>>>>>>> < Location: https://localhost:9443/api/cartridges/tomcat
>>>>>>> < Content-Length: 0
>>>>>>> < Server: WSO2 Carbon Server
>>>>>>> <
>>>>>>> * Connection #0 to host localhost left intact
>>>>>>> * Closing connection #0
>>>>>>> * SSLv3, TLS alert, Client hello (1):
>>>>>>> Admin16s-MacBook-Air:artifacts Admin16$
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Regards,
>>>>>>> Mariangela
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> *--*
>>>>>>> Mariangela Hills
>>>>>>> Senior Technical Writer
>>>>>>>
>>>>>>> *WSO2, Inc.*lean.enterprise.middleware.
>>>>>>>
>>>>>>> w: http://wso2.com
>>>>>>> <http://wso2.com/events/>
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>>
>>>>>> Udara Liyanage
>>>>>> Software Engineer
>>>>>> WSO2, Inc.: http://wso2.com
>>>>>> lean. enterprise. middleware
>>>>>>
>>>>>> web: http://udaraliyanage.wordpress.com
>>>>>> phone: +94 71 443 6897
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Imesh Gunaratne
>>>>>
>>>>> Technical Lead, WSO2
>>>>> Committer & PMC Member, Apache Stratos
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Lakmal Warusawithana
>>>> Vice President, Apache Stratos
>>>> Director - Cloud Architecture; WSO2 Inc.
>>>> Mobile : +94714289692
>>>> Blog : http://lakmalsview.blogspot.com/
>>>>
>>>>
>>>
>>>
>>> --
>>>
>>> Gayan Gunarathne
>>> Technical Lead
>>> WSO2 Inc. (http://wso2.com)
>>> email  : [email protected]  | mobile : +94 766819985
>>>
>>>
>>
>>
>>
>> --
>>
>> Udara Liyanage
>> Software Engineer
>> WSO2, Inc.: http://wso2.com
>> lean. enterprise. middleware
>>
>> web: http://udaraliyanage.wordpress.com
>> phone: +94 71 443 6897
>>
>
>
>
> --
> Imesh Gunaratne
>
> Technical Lead, WSO2
> Committer & PMC Member, Apache Stratos
>



-- 

Gayan Gunarathne
Technical Lead
WSO2 Inc. (http://wso2.com)
email  : [email protected]  | mobile : +94 766819985

Reply via email to