Bug 838611
Summary: | JBoss Tools Plugin: Error message during removing an embedded cartridge | ||||||
---|---|---|---|---|---|---|---|
Product: | OKD | Reporter: | Attila Nagy <anagy> | ||||
Component: | Master | Assignee: | Krishna Raman <kraman> | ||||
Status: | CLOSED CURRENTRELEASE | QA Contact: | libra bugs <libra-bugs> | ||||
Severity: | medium | Docs Contact: | |||||
Priority: | medium | ||||||
Version: | 2.x | CC: | abhgupta, adietish, admiller, mfisher, mshao, rmillner | ||||
Target Milestone: | --- | Keywords: | Triaged | ||||
Target Release: | --- | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Whiteboard: | |||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||
Doc Text: | Story Points: | --- | |||||
Clone Of: | |||||||
: | 911322 (view as bug list) | Environment: | |||||
Last Closed: | 2012-07-13 23:43:23 UTC | Type: | Bug | ||||
Regression: | --- | Mount Type: | --- | ||||
Documentation: | --- | CRM: | |||||
Verified Versions: | Category: | --- | |||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
Cloudforms Team: | --- | Target Upstream Version: | |||||
Embargoed: | |||||||
Attachments: |
|
Description
Attila Nagy
2012-07-09 15:25:37 UTC
Note: I need more information on what, if anything, needs to be changed/fixed on the backend side. The REST API does return the 'DELETE' link for the cartridge, whether one is querying for a single cartridge or the entire list of cartridges. The links are also returned when the cartridge structure is returned at the time of embedding it in the application. I have pasted below the link structure for both json and xml. "DELETE":{"required_params":[],"optional_params":[],"rel":"Delete embedded cartridge","method":"DELETE","href":"https://localhost/broker/rest/domains/agupta130/applications/app1/cartridges/mysql-5.1"} <link> <required-params/> <rel>Delete embedded cartridge</rel> <optional-params/> <method>DELETE</method> <href>https://localhost/broker/rest/domains/agupta130/applications/app1/cartridges/mysql-5.1</href> </link> Max Anderson: Can you please look into this bug and comment? I sent email to JBoss tools team to take a look at this bug. From broker log: Started GET "/broker/rest/domains/myd2012071101/applications/redmine2/cartridges" for 209.132.186.34 at Wed Jul 11 04:25:39 -0400 2012 Processing by EmbCartController#index as JSON Parameters: {"application_id"=>"redmine2", "domain_id"=>"myd2012071101"} MongoDataStore.find(CloudUser, anagy+2012071101, anagy+2012071101) Getting cartridges for application redmine2 under domain myd2012071101 [REQ_ID=cceaccc552b64786a79d369826d19e43] ACTION=LIST_APP_CARTRIDGES Listing cartridges for application redmine2 under domain myd2012071101 Completed 200 OK in 60ms (Views: 17.4ms) In the response I could find a link about deletion. ... <links> <link> <href>https://ec2-23-22-173-85.compute-1.amazonaws.com/broker/rest/domains/myd2012071101/applications/redmine2/cartridges/mysql-5.1</href> <optional-params/> <rel>Delete embedded cartridge</rel> <method>DELETE</method> <required-params/> </link> ... I'll attached the full response in XML format. Created attachment 597508 [details]
full response
I could track the problem down to a semantical change in the REST responses in the latest DEVENV: if you request the embedded cartridges for a given app, you'll get the application type, too, which is not the case in PROD now. Example: I have an application "tata" with no embedded cartridges running on my DEVENV: { ... "name" => "tata", ... "framework" => "jbossas-7", ... } If I request it's embedded cartridges, I'll GET the following link and get the list of embedded cartridges: "LIST_CARTRIDGES" => { "href" => "https://ec2-23-22-173-85.compute-1.amazonaws.com/broker/rest/domains/holymoly/applications/tata/cartridges", "optional_params" => [], "rel" => "List embedded cartridges", "method" => "GET", "required_params" => [] }, In PROD, I'll get an empty list. In my DEVENV, I get a list with a single entry, the appliction type (cartridge): { "type":"cartridges", "status":"ok", ... "data":[ { ... "name":"jbossas-7", "type":"standalone", ... On the other hand, if we request the available embeddable cartridges on the API resource, we'll only get the embeddable cartridges, no application type (cartridges). There's no problem for us to handle this change, but we can't do that for our existing userbase. They would be stuck in a Eclipse tooling that is not able to add/remove cartridges. We'd have to update their client. IMHO with this change in place you'd have to bump up the protocol version and make sure our userbase would still get the prior protocol. I double checked, we still send "Accept: application/json; version=1.0". Merged. Verified against ami-ab72ddc2. |