Created attachment 748072 [details] Returned content in step 2 Description of problem: After an application is created with a cartridge url, when it's being retrieved via /application/<app>/cartridges, the url of the cartridge is NOT displayed. Version-Release number of selected component (if applicable): On devenv_3227 How reproducible: Always Steps to Reproduce: 1. Create an application with a manifest from an url: curl -s -k -H 'Content-Type: Application/json' --user jhou:x https://ec2-50-17-3-43.compute-1.amazonaws.com/broker/rest/domains/jhou/applications/ -X POST -d '{"name":"app1", "cartridge":{"url":"https://raw.github.com/jhou1/v2php/master/metadata/manifest.yml"}} | json_reformat 2. After the app is created, retrieve the cartridge info via /application/app1/cartridges curl -s -k -H 'Content-Type: Application/json' --user jhou:x https://ec2-50-17-3-43.compute-1.amazonaws.com/broker/rest/domains/jhou/applications/app1/cartridges/ -X GET|json_reformat 3. Retrieve its info via cartridge name - /application/app1/cartridges/jhouphp-5.3 curl -s -k -H 'Content-Type: Application/json' --user jhou:x https://ec2-50-17-3-43.compute-1.amazonaws.com/broker/rest/domains/jhou/applications/app1/cartridges/jhouphp-5.3 -X GET|json_reformat Actual results: In step 2 and 3, none of them displayed the url of the provided manifest.yml of the cartridge. Expected results: The url of the provided manifest should be displayed when retrieved via REST API, eg: "url": "https: //raw.github.com/jhou1/v2php/master/metadata/manifest.yml" Additional info: Added attachment of the returned content by REST API
Created attachment 748073 [details] Returned content in step 3
Fixed with rev#6964cf019bf6316b53f6fe5dc1f33350c8db48cc
Tested it on devenv_3238, created an app with https://raw.github.com/openshift/downloadable-mock/master/metadata/manifest.yml, but the url is null: #curl -s -k -H 'Content-Type: Application/json' --user xtian+t1:12 https://localhost/broker/rest/domains/domx1/applications/mockapp/cartridges/downloadable-mock-0.1 -X GET|python -m json.tool|grep url "license_url": "", "url": null, # curl -s -k -H 'Content-Type: Application/json' --user xtian+t1:12 https://localhost/broker/rest/domains/domx1/applications/mockapp/cartridges -X GET|python -m json.tool |grep url "license_url": "", "url": null, # curl -s -k -H 'Content-Type: Application/json' --user xtian+t1:12 https://localhost/broker/rest/domains/domx1/applications/mockapp/cartridges -X GET|python -m json.tool { "data": [ { "additional_gear_storage": 0, "base_gear_storage": 1, "collocated_with": [], "current_scale": 1, "description": "A downloadable mock cartridge for development use only.", "display_name": "Downloadable Mock Cartridge 0.1", "gear_profile": "small", "help_topics": {}, "license": "ASL 2.0", "license_url": "", "links": { "DELETE": { '''''''' "tags": [ "service", "web_framework" ], "type": "standalone", "url": null, "usage_rates": [], "version": "0.1", "website": # curl -s -k -H 'Content-Type: Application/json' --user xtian+t1:12 https://localhost/broker/rest/domains/domx1/applications/mockapp/cartridges/downloadable-mock-0.1 -X GET|python -m json.tool { "data": { "additional_gear_storage": 0, "base_gear_storage": 1, "collocated_with": [], "current_scale": 1, "description": "A downloadable mock cartridge for development use only.", "display_name": "Downloadable Mock Cartridge 0.1", "gear_profile": "small", "help_topics": {}, "license": "ASL 2.0", "license_url": "", "links": { "DELETE": { "href": "https://localhost/broker/rest/domains/domx1/applications/mockapp/cartridges/downloadable-mock-0.1", "method": "DELETE", ''''''''' "scales_from": 1, "scales_to": 1, "scales_with": null, "status_messages": null, "supported_scales_from": 1, "supported_scales_to": 1, "tags": [ "service", "web_framework" ], "type": "standalone", "url": null, "usage_rates": [], "version": "0.1", "website": ""
refixed in pull request#2531
Verified on devenv_3247 steps: 1. Create an app with a cartridge url curl -s -k -H 'Content-Type: Application/json' --user jhou:redhat https://ec2-107-22-114-11.compute-1.amazonaws.com/broker/rest/domains/jhou/applications/ -X POST -d '{"name":"app1", "cartridge":{"url":"https://raw.github.com/xltian/perltestonly/master/metadata/manifest.yml"}}' 2. After app is created, retrieve it's info with REST API curl -s -k -H 'Content-Type: Application/json' --user jhou:x https://ec2-107-22-114-11.compute-1.amazonaws.com/broker/rest/domains/jhou/applications/app1/cartridges -X GET |json_reformat <------------------------------> "type": "standalone", "url": "https://raw.github.com/xltian/perltestonly/master/metadata/manifest.yml", "usage_rates": [ ..... <------------------------------> 3. Repeat step 2 with "/cartridges/perlv2-5.10" curl -s -k -H 'Content-Type: Application/json' --user jhou:x https://ec2-107-22-114-11.compute-1.amazonaws.com/broker/rest/domains/jhou/applications/app1/cartridges/perlv2-5.10 -X GET |json_reformat <------------------------------> "type": "standalone", "url": "https://raw.github.com/xltian/perltestonly/master/metadata/manifest.yml", "usage_rates": [ ..... <------------------------------>