Bug 812046
Summary: | [REST_API] Provide credentials and connection url in the application cartridges | ||
---|---|---|---|
Product: | OKD | Reporter: | Xavier Coulon <xcoulon> |
Component: | Master | Assignee: | Abhishek Gupta <abhgupta> |
Status: | CLOSED CURRENTRELEASE | QA Contact: | libra bugs <libra-bugs> |
Severity: | low | Docs Contact: | |
Priority: | high | ||
Version: | 2.x | CC: | abhgupta, adietish, dmcphers, lnader, rmillner, xtian |
Target Milestone: | --- | Keywords: | Triaged |
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2012-06-25 18:26:59 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: | |||
Bug Depends On: | |||
Bug Blocks: | 916268 |
Description
Xavier Coulon
2012-04-12 15:42:00 UTC
As a complement: when querying for cartridges; the current response is : { "version":"1.0", "messages":[ ], "type":"cartridge", "status":"ok", "data":{ "name":"mongodb-2.0", "type":"embedded", "links":{ ... } the issue is about adding the connection url and the credentials along with the 'name' and the 'type', unless the credentials data is too sensitive. Yet, this could be very useful for our tooling, once we have the port-forwarding implemented in Eclipse. the main problem with the current reporting strategy is that the connection url is not present in the cartridge-resource, it is only present in the application-resource. This forces the openshift-java-client to hand those from the application to the cartridge. This furthermore only works for cartridges that were present when the application was queried. Cartridges added to the application afterwards are of course not present in the application. See here: https://issues.jboss.org/browse/JBIDE-12076?focusedCommentId=12698129&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-12698129 We code-freezed CR1 last friday which will become GA mid june. This means that we now have a release that will get to users officially. We'd therefore ask you to keep the json responses as compatible as possible so that our installation base wont break. Thanks! (In reply to comment #4) > https://github.com/openshift/crankcase/pull/130 Tested this on the latest INT(devenv_1850), result is as following, most part is fixed, but still having 3 problems: 1. Credentials for rockmongo is still not added; 2. Jenkins credentials is not shown in either jenkins-client or jenkins server information. 3. Seems there's one more "\n" at the end of each info url. "embedded": { "mysql-5.1": { "database_name": "jbosseapapp1", "password": "U1pHtXrzBy6c", "connection_url": "mysql://127.6.135.129:3306/", "info": "Connection URL: mysql://127.6.135.129:3306/\n", "username": "admin" }, "phpmyadmin-3.4": { "password": "U1pHtXrzBy6c", "connection_url": "https://jbosseapapp1-domainint2.int.rhcloud.com/phpmyadmin/", "info": "URL: https://jbosseapapp1-domainint2.int.rhcloud.com/phpmyadmin/\n", "username": "admin" }, "mongodb-2.0": { "database_name": "jbosseapapp1", "password": "aDa-mXTaCyI3", "connection_url": "mongodb://127.6.135.129:27017/", "info": "Connection URL: mongodb://127.6.135.129:27017/\n", "username": "admin" }, "jenkins-client-1.4": { "job_url": "https://jenkins1-domainint2.int.rhcloud.com/job/jbosseapapp1-build/", "info": "Job URL: https://jenkins1-domainint2.int.rhcloud.com/job/jbosseapapp1-build/\n" }, "rockmongo-1.1": { "info": "URL: https://jbosseapapp1-domainint2.int.rhcloud.com/rockmongo/\n" } Jenkins server app information: "git_url": "ssh://501280355f504b248c98c3560d2062c8.rhcloud.com/~/git/jenkins1.git/", "framework": "jenkins-1.4", "health_check_path": "health", "embedded": { }, "app_url": "http://jenkins1-domainint2.int.rhcloud.com/", "gear_profile": "small", "creation_time": "2012-06-18T06:34:44-04:00" 1. Jenkins credentials are already present and can be access through the .../gears and .../gear_groups urls. They will not be included as part of the application response or within the embedded jenkins client properties 2. Added url and credentials for rockmongo, phpmoadmin and the url for metrics cartridges 3. There is already a separate bug (Bug 796458) tracking the "\n" at the end of the connection url in the "Info" tag. Tested it on devenv_1857 again For jenkins: curl -k -H "Accept: application/json" --user "xtian+b101:123456" https://localhost/broker/rest/domains/domainbill004/applications/jenkins/gear_groups "data": [ { "cartridges": [ { "name": "jenkins-1.4", "username": "system_builder", "password": "Lw9FQxhgpgXK" } ], "gear_profile": "small", "name": "@@app/cart-jenkins-1.4", "gears": [ { "id": "022eaf3090e244b29e384a1a97d1ca8c", "state": "started" } ] } ], For Rockmongo: "embedded": { "mongodb-2.0": { "database_name": "phpappjenkins", "username": "admin", "info": "Connection URL: mongodb://127.0.253.1:27017/\n", "password": "g1qCdE96waPz", "connection_url": "mongodb://127.0.253.1:27017/" }, "rockmongo-1.1": { "username": "admin", "info": "URL: https://phpappjenkins-domainbill004.dev.rhcloud.com/rockmongo/\n", "password": "g1qCdE96waPz", "connection_url": "https://phpappjenkins-domainbill004.dev.rhcloud.com/rockmongo/" }, Unfortunately this is not what I see in PROD. When curl'in my app I get the following: "embedded":{ "mongodb-2.2":{ "info":{ } }, "rockmongo-1.1":{ "info":{ } }, "phpmyadmin-3.4":{ "info":{ } }, "jenkins-client-1.4":{ "info":{ } } } Unfortunately this is worse than what we had before: In prior version the output was an empty string to "info": "rockmongo-1.1":{ "info":"" }, We catched this by checked for the "info" being undefined. We then went for the creation log (the log that is being reported when the cartridge is added) and tried to extract the url from there. Unfortunately the above is breaking our check since "info" now is defined, it has an empty object. In consequence all our existing users now dont get any URLs for their cartridges any more. See here: https://issues.jboss.org/browse/JBIDE-1363 |