)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":8106,"name":"Haomeng,Wang","email":"wanghaomeng@gmail.com","username":"whaom"},"change_message_id":"d4c997b580e667652d4f7351212b62faa58630d2","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Hadi Bannazadeh \u003chadi@savinetwork.ca\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-01-18 21:12:24 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix for bug# 1412238"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Region parameter is missing in selecting other components endpoint. (nova, neutron)."},{"line_number":10,"context_line":"This causes problem if there are multiple service endpoints available in keystone service catalog for different regions."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3a961159_c734cfe0","line":7,"updated":"2015-01-19 02:27:48.000000000","message":"See my last comment and can we have a more clear title here?","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"},{"author":{"_account_id":14678,"name":"Hadi Bannazadeh","email":"hadi@savinetwork.ca","username":"hqdib"},"change_message_id":"98bb0b674df56a5a95c727c19e60a76091dfd755","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Hadi Bannazadeh \u003chadi@savinetwork.ca\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-01-18 21:12:24 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix for bug# 1412238"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Region parameter is missing in selecting other components endpoint. (nova, neutron)."},{"line_number":10,"context_line":"This causes problem if there are multiple service endpoints available in keystone service catalog for different regions."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3a961159_08224a02","line":7,"in_reply_to":"3a961159_ac8de337","updated":"2015-01-19 23:53:17.000000000","message":"Done","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"},{"author":{"_account_id":14678,"name":"Hadi Bannazadeh","email":"hadi@savinetwork.ca","username":"hqdib"},"change_message_id":"98bb0b674df56a5a95c727c19e60a76091dfd755","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Hadi Bannazadeh \u003chadi@savinetwork.ca\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-01-18 21:12:24 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix for bug# 1412238"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Region parameter is missing in selecting other components endpoint. (nova, neutron)."},{"line_number":10,"context_line":"This causes problem if there are multiple service endpoints available in keystone service catalog for different regions."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3a961159_e80dfe90","line":7,"in_reply_to":"3a961159_c734cfe0","updated":"2015-01-19 23:53:17.000000000","message":"Done","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"87f46d726bebf242cfe4cdfae70ec043b400cd13","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Hadi Bannazadeh \u003chadi@savinetwork.ca\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-01-18 21:12:24 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix for bug# 1412238"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Region parameter is missing in selecting other components endpoint. (nova, neutron)."},{"line_number":10,"context_line":"This causes problem if there are multiple service endpoints available in keystone service catalog for different regions."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3a961159_ac8de337","line":7,"in_reply_to":"3a961159_c734cfe0","updated":"2015-01-19 09:48:34.000000000","message":"Hi Hadi,\n\nFor the commit message, please take a look at https://wiki.openstack.org/wiki/GitCommitMessages","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"},{"author":{"_account_id":7882,"name":"Yuiko Takada Mori","email":"yuiko-mori@nec.com","username":"YuikoTakada"},"change_message_id":"8e27df1122e83e81048b123e6ac80ee152898607","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix for bug# 1412238"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Region parameter is missing in selecting other components endpoint. (nova, neutron)."},{"line_number":10,"context_line":"This causes problem if there are multiple service endpoints available in keystone service catalog for different regions."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I64697863ef7e3d57d84d9681cc4c54a9a2a06478"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3a961159_d43b9bc5","line":9,"updated":"2015-01-19 00:34:29.000000000","message":"Subsequent lines should be wrapped at 72 characters.\nPlease see this page.\nhttps://wiki.openstack.org/wiki/GitCommitMessages","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"},{"author":{"_account_id":14678,"name":"Hadi Bannazadeh","email":"hadi@savinetwork.ca","username":"hqdib"},"change_message_id":"98bb0b674df56a5a95c727c19e60a76091dfd755","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix for bug# 1412238"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Region parameter is missing in selecting other components endpoint. (nova, neutron)."},{"line_number":10,"context_line":"This causes problem if there are multiple service endpoints available in keystone service catalog for different regions."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I64697863ef7e3d57d84d9681cc4c54a9a2a06478"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3a961159_481c52c3","line":9,"in_reply_to":"3a961159_d43b9bc5","updated":"2015-01-19 23:53:17.000000000","message":"Done","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"},{"author":{"_account_id":7882,"name":"Yuiko Takada Mori","email":"yuiko-mori@nec.com","username":"YuikoTakada"},"change_message_id":"8e27df1122e83e81048b123e6ac80ee152898607","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Fix for bug# 1412238"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Region parameter is missing in selecting other components endpoint. (nova, neutron)."},{"line_number":10,"context_line":"This causes problem if there are multiple service endpoints available in keystone service catalog for different regions."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I64697863ef7e3d57d84d9681cc4c54a9a2a06478"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3a961159_f446d74e","line":10,"updated":"2015-01-19 00:34:29.000000000","message":"ditto.","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"},{"author":{"_account_id":14678,"name":"Hadi Bannazadeh","email":"hadi@savinetwork.ca","username":"hqdib"},"change_message_id":"98bb0b674df56a5a95c727c19e60a76091dfd755","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Fix for bug# 1412238"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Region parameter is missing in selecting other components endpoint. (nova, neutron)."},{"line_number":10,"context_line":"This causes problem if there are multiple service endpoints available in keystone service catalog for different regions."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I64697863ef7e3d57d84d9681cc4c54a9a2a06478"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3a961159_68190ed1","line":10,"in_reply_to":"3a961159_f446d74e","updated":"2015-01-19 23:53:17.000000000","message":"Done","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"},{"author":{"_account_id":8106,"name":"Haomeng,Wang","email":"wanghaomeng@gmail.com","username":"whaom"},"change_message_id":"d4c997b580e667652d4f7351212b62faa58630d2","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Region parameter is missing in selecting other components endpoint. (nova, neutron)."},{"line_number":10,"context_line":"This causes problem if there are multiple service endpoints available in keystone service catalog for different regions."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I64697863ef7e3d57d84d9681cc4c54a9a2a06478"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3a961159_67531b16","line":11,"updated":"2015-01-19 02:27:48.000000000","message":"We should include close-bug tag as below to identfy which bug is fixed with this patch.\n\n  Closes-Bug: #1412238","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"},{"author":{"_account_id":14678,"name":"Hadi Bannazadeh","email":"hadi@savinetwork.ca","username":"hqdib"},"change_message_id":"98bb0b674df56a5a95c727c19e60a76091dfd755","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Region parameter is missing in selecting other components endpoint. (nova, neutron)."},{"line_number":10,"context_line":"This causes problem if there are multiple service endpoints available in keystone service catalog for different regions."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I64697863ef7e3d57d84d9681cc4c54a9a2a06478"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3a961159_88755a02","line":11,"in_reply_to":"3a961159_67531b16","updated":"2015-01-19 23:53:17.000000000","message":"Done","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"}],"etc/ironic/ironic.conf.sample":[{"author":{"_account_id":8106,"name":"Haomeng,Wang","email":"wanghaomeng@gmail.com","username":"whaom"},"change_message_id":"d4c997b580e667652d4f7351212b62faa58630d2","unresolved":false,"context_lines":[{"line_number":187,"context_line":""},{"line_number":188,"context_line":"#The default region used in getting endpoints of other services"},{"line_number":189,"context_line":"#region_name \u003d RegionOne"},{"line_number":190,"context_line":""},{"line_number":191,"context_line":"#"},{"line_number":192,"context_line":"# Options defined in ironic.netconf"},{"line_number":193,"context_line":"#"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"3a961159_676a3bb6","line":190,"updated":"2015-01-19 02:27:48.000000000","message":"This sample can be auto-generated, so it will match the latest code, however you define help string is \u0027Ironic keystone region name.\u0027 in ironic/common/keystone.py#L28, so need to be synced.","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"},{"author":{"_account_id":14678,"name":"Hadi Bannazadeh","email":"hadi@savinetwork.ca","username":"hqdib"},"change_message_id":"98bb0b674df56a5a95c727c19e60a76091dfd755","unresolved":false,"context_lines":[{"line_number":187,"context_line":""},{"line_number":188,"context_line":"#The default region used in getting endpoints of other services"},{"line_number":189,"context_line":"#region_name \u003d RegionOne"},{"line_number":190,"context_line":""},{"line_number":191,"context_line":"#"},{"line_number":192,"context_line":"# Options defined in ironic.netconf"},{"line_number":193,"context_line":"#"}],"source_content_type":"application/octet-stream","patch_set":1,"id":"3a961159_a861363a","line":190,"in_reply_to":"3a961159_676a3bb6","updated":"2015-01-19 23:53:17.000000000","message":"Done","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"}],"ironic/common/keystone.py":[{"author":{"_account_id":8106,"name":"Haomeng,Wang","email":"wanghaomeng@gmail.com","username":"whaom"},"change_message_id":"d4c997b580e667652d4f7351212b62faa58630d2","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"region_opts \u003d ["},{"line_number":27,"context_line":"    cfg.StrOpt(\u0027region_name\u0027,"},{"line_number":28,"context_line":"               help\u003d\u0027Ironic keystone region name.\u0027),"},{"line_number":29,"context_line":"]"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"CONF.register_opts(region_opts)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a961159_876d67cd","line":28,"updated":"2015-01-19 02:27:48.000000000","message":"how about to provide a default value here?\n\n  default\u003d\u0027RegionOne\u0027","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"87f46d726bebf242cfe4cdfae70ec043b400cd13","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"region_opts \u003d ["},{"line_number":27,"context_line":"    cfg.StrOpt(\u0027region_name\u0027,"},{"line_number":28,"context_line":"               help\u003d\u0027Ironic keystone region name.\u0027),"},{"line_number":29,"context_line":"]"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"CONF.register_opts(region_opts)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a961159_cc9a2f6f","line":28,"in_reply_to":"3a961159_876d67cd","updated":"2015-01-19 09:48:34.000000000","message":"+1","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"},{"author":{"_account_id":14678,"name":"Hadi Bannazadeh","email":"hadi@savinetwork.ca","username":"hqdib"},"change_message_id":"98bb0b674df56a5a95c727c19e60a76091dfd755","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"region_opts \u003d ["},{"line_number":27,"context_line":"    cfg.StrOpt(\u0027region_name\u0027,"},{"line_number":28,"context_line":"               help\u003d\u0027Ironic keystone region name.\u0027),"},{"line_number":29,"context_line":"]"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"CONF.register_opts(region_opts)"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a961159_68474ea4","line":28,"in_reply_to":"3a961159_876d67cd","updated":"2015-01-19 23:53:17.000000000","message":"Default needs to be None, so that it could work as before (with service catalogs with one endpoint)","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"87f46d726bebf242cfe4cdfae70ec043b400cd13","unresolved":false,"context_lines":[{"line_number":28,"context_line":"               help\u003d\u0027Ironic keystone region name.\u0027),"},{"line_number":29,"context_line":"]"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"CONF.register_opts(region_opts)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"def _is_apiv3(auth_url, auth_version):"},{"line_number":34,"context_line":"    \"\"\"Checks if V3 version of API is being used or not."}],"source_content_type":"text/x-python","patch_set":1,"id":"3a961159_4c955f31","line":31,"updated":"2015-01-19 09:48:34.000000000","message":"Also please add it to a specific group, like \"keystone\"","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"},{"author":{"_account_id":14678,"name":"Hadi Bannazadeh","email":"hadi@savinetwork.ca","username":"hqdib"},"change_message_id":"98bb0b674df56a5a95c727c19e60a76091dfd755","unresolved":false,"context_lines":[{"line_number":28,"context_line":"               help\u003d\u0027Ironic keystone region name.\u0027),"},{"line_number":29,"context_line":"]"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"CONF.register_opts(region_opts)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"def _is_apiv3(auth_url, auth_version):"},{"line_number":34,"context_line":"    \"\"\"Checks if V3 version of API is being used or not."}],"source_content_type":"text/x-python","patch_set":1,"id":"3a961159_9b4e826d","line":31,"in_reply_to":"3a961159_4c955f31","updated":"2015-01-19 23:53:17.000000000","message":"Done","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"},{"author":{"_account_id":8106,"name":"Haomeng,Wang","email":"wanghaomeng@gmail.com","username":"whaom"},"change_message_id":"d4c997b580e667652d4f7351212b62faa58630d2","unresolved":false,"context_lines":[{"line_number":92,"context_line":"    return parse.urljoin(auth_url.rstrip(\u0027/\u0027), api_version)"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"def get_service_url(service_type\u003d\u0027baremetal\u0027, endpoint_type\u003d\u0027internal\u0027, region_name\u003dCONF.region_name):"},{"line_number":96,"context_line":"    \"\"\"Wrapper for get service url from keystone service catalog."},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"    Given a service_type and an endpoint_type, this method queries keystone"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a961159_67a15bf6","line":95,"updated":"2015-01-19 02:27:48.000000000","message":"Seems too long, should be \u003c80 chars for each line.","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"},{"author":{"_account_id":14678,"name":"Hadi Bannazadeh","email":"hadi@savinetwork.ca","username":"hqdib"},"change_message_id":"98bb0b674df56a5a95c727c19e60a76091dfd755","unresolved":false,"context_lines":[{"line_number":92,"context_line":"    return parse.urljoin(auth_url.rstrip(\u0027/\u0027), api_version)"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"def get_service_url(service_type\u003d\u0027baremetal\u0027, endpoint_type\u003d\u0027internal\u0027, region_name\u003dCONF.region_name):"},{"line_number":96,"context_line":"    \"\"\"Wrapper for get service url from keystone service catalog."},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"    Given a service_type and an endpoint_type, this method queries keystone"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a961159_bb533e15","line":95,"in_reply_to":"3a961159_67a15bf6","updated":"2015-01-19 23:53:17.000000000","message":"Done","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"},{"author":{"_account_id":8106,"name":"Haomeng,Wang","email":"wanghaomeng@gmail.com","username":"whaom"},"change_message_id":"d4c997b580e667652d4f7351212b62faa58630d2","unresolved":false,"context_lines":[{"line_number":99,"context_line":"    service catalog and provides the url for the desired endpoint."},{"line_number":100,"context_line":""},{"line_number":101,"context_line":"    :param service_type: the keystone service for which url is required."},{"line_number":102,"context_line":"    :param endpoint_type: the type of endpoint for the service."},{"line_number":103,"context_line":"    :returns: an http/https url for the desired endpoint."},{"line_number":104,"context_line":"    \"\"\""},{"line_number":105,"context_line":"    ksclient \u003d _get_ksclient()"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a961159_e7b46b37","line":102,"updated":"2015-01-19 02:27:48.000000000","message":":param region_name: the keystone region name.","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"},{"author":{"_account_id":14678,"name":"Hadi Bannazadeh","email":"hadi@savinetwork.ca","username":"hqdib"},"change_message_id":"98bb0b674df56a5a95c727c19e60a76091dfd755","unresolved":false,"context_lines":[{"line_number":99,"context_line":"    service catalog and provides the url for the desired endpoint."},{"line_number":100,"context_line":""},{"line_number":101,"context_line":"    :param service_type: the keystone service for which url is required."},{"line_number":102,"context_line":"    :param endpoint_type: the type of endpoint for the service."},{"line_number":103,"context_line":"    :returns: an http/https url for the desired endpoint."},{"line_number":104,"context_line":"    \"\"\""},{"line_number":105,"context_line":"    ksclient \u003d _get_ksclient()"}],"source_content_type":"text/x-python","patch_set":1,"id":"3a961159_7b70f6a7","line":102,"in_reply_to":"3a961159_e7b46b37","updated":"2015-01-19 23:53:17.000000000","message":"Done","commit_id":"ed5a9382e033c1710d2c0e349cd3a9973b478b68"},{"author":{"_account_id":7882,"name":"Yuiko Takada Mori","email":"yuiko-mori@nec.com","username":"YuikoTakada"},"change_message_id":"fea90957aa2a3e0a1719e4078f7c2d53aea7afb9","unresolved":false,"context_lines":[{"line_number":29,"context_line":"]"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"CONF.register_opts(keystone_opts, group\u003d\u0027keystone\u0027)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"def _is_apiv3(auth_url, auth_version):"},{"line_number":34,"context_line":"    \"\"\"Checks if V3 version of API is being used or not."},{"line_number":35,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3a961159_70b56c31","line":32,"updated":"2015-01-20 06:12:10.000000000","message":"one more line is necessary here. Have you try to execute \"tox -epep8\" command?\n\nhttp://docs.openstack.org/developer/ironic/dev/dev-quickstart.html","commit_id":"cbb3a3d3c9052e8a645644ce884595e1ba8ed92a"},{"author":{"_account_id":6773,"name":"Lucas Alvares Gomes","email":"lucasagomes@gmail.com","username":"lucasagomes"},"change_message_id":"9efe6b6ef97a61ed8fc0c8a95d132f833228bfbe","unresolved":false,"context_lines":[{"line_number":29,"context_line":"]"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"CONF.register_opts(keystone_opts, group\u003d\u0027keystone\u0027)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"def _is_apiv3(auth_url, auth_version):"},{"line_number":34,"context_line":"    \"\"\"Checks if V3 version of API is being used or not."},{"line_number":35,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"3a961159_8a7d43b5","line":32,"in_reply_to":"3a961159_70b56c31","updated":"2015-01-20 10:32:25.000000000","message":"+1","commit_id":"cbb3a3d3c9052e8a645644ce884595e1ba8ed92a"},{"author":{"_account_id":14678,"name":"Hadi Bannazadeh","email":"hadi@savinetwork.ca","username":"hqdib"},"change_message_id":"776ac3b4e53cfd011e3925d2bc803ca2d077874b","unresolved":false,"context_lines":[{"line_number":29,"context_line":"]"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"CONF.register_opts(keystone_opts, group\u003d\u0027keystone\u0027)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"def _is_apiv3(auth_url, auth_version):"},{"line_number":34,"context_line":"    \"\"\"Checks if V3 version of API is being used or not."},{"line_number":35,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"1a930d6b_a0aec0e5","line":32,"in_reply_to":"3a961159_70b56c31","updated":"2015-01-21 00:11:49.000000000","message":"Done","commit_id":"cbb3a3d3c9052e8a645644ce884595e1ba8ed92a"},{"author":{"_account_id":14678,"name":"Hadi Bannazadeh","email":"hadi@savinetwork.ca","username":"hqdib"},"change_message_id":"776ac3b4e53cfd011e3925d2bc803ca2d077874b","unresolved":false,"context_lines":[{"line_number":29,"context_line":"]"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"CONF.register_opts(keystone_opts, group\u003d\u0027keystone\u0027)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"def _is_apiv3(auth_url, auth_version):"},{"line_number":34,"context_line":"    \"\"\"Checks if V3 version of API is being used or not."},{"line_number":35,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"1a930d6b_c0abccd4","line":32,"in_reply_to":"3a961159_8a7d43b5","updated":"2015-01-21 00:11:49.000000000","message":"Done","commit_id":"cbb3a3d3c9052e8a645644ce884595e1ba8ed92a"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"87c55ac7323539967d8126afa6a8720b6e7a8514","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"keystone_opts \u003d ["},{"line_number":27,"context_line":"    cfg.StrOpt(\u0027region_name\u0027,"},{"line_number":28,"context_line":"               help\u003d\u0027The region used in getting endpoints of other services\u0027),"},{"line_number":29,"context_line":"]"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"CONF.register_opts(keystone_opts, group\u003d\u0027keystone\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa81d914_c4fe7238","line":28,"updated":"2015-01-27 21:14:47.000000000","message":"Is this clear to people? I thought \u0027other services\u0027 meant non-Ironic services, but this can also be used to get the endpoint for Ironic.","commit_id":"ae221f1e961e684144a2e7bfd73ff314e471e1f6"},{"author":{"_account_id":14678,"name":"Hadi Bannazadeh","email":"hadi@savinetwork.ca","username":"hqdib"},"change_message_id":"135d7e41ff96e369af836ba8cc4cc6561dc5e309","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"keystone_opts \u003d ["},{"line_number":27,"context_line":"    cfg.StrOpt(\u0027region_name\u0027,"},{"line_number":28,"context_line":"               help\u003d\u0027The region used in getting endpoints of other services\u0027),"},{"line_number":29,"context_line":"]"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"CONF.register_opts(keystone_opts, group\u003d\u0027keystone\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"da86d52c_def001cc","line":28,"in_reply_to":"da86d52c_fde30f31","updated":"2015-01-31 00:02:54.000000000","message":"Done","commit_id":"ae221f1e961e684144a2e7bfd73ff314e471e1f6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"394f523306a9321674d47e203ca6fad48817c1b9","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"keystone_opts \u003d ["},{"line_number":27,"context_line":"    cfg.StrOpt(\u0027region_name\u0027,"},{"line_number":28,"context_line":"               help\u003d\u0027The region used in getting endpoints of other services\u0027),"},{"line_number":29,"context_line":"]"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"CONF.register_opts(keystone_opts, group\u003d\u0027keystone\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"da86d52c_fde30f31","line":28,"in_reply_to":"fa81d914_142e6392","updated":"2015-01-30 21:42:16.000000000","message":"Right, I think we\u0027re talking about the actual wording at this point. This is also used to get the endpoint for Ironic. Perhaps \"The region used for getting endpoints of OpenStack services.\" would be best.","commit_id":"ae221f1e961e684144a2e7bfd73ff314e471e1f6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"b2419435d8ba8095d2b362e0fa9283d095078b7c","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"keystone_opts \u003d ["},{"line_number":27,"context_line":"    cfg.StrOpt(\u0027region_name\u0027,"},{"line_number":28,"context_line":"               help\u003d\u0027The region used in getting endpoints of other services\u0027),"},{"line_number":29,"context_line":"]"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"CONF.register_opts(keystone_opts, group\u003d\u0027keystone\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa81d914_8992a355","line":28,"in_reply_to":"fa81d914_2379e12f","updated":"2015-01-28 18:23:27.000000000","message":"Ah, I see, fair point! :)","commit_id":"ae221f1e961e684144a2e7bfd73ff314e471e1f6"},{"author":{"_account_id":14678,"name":"Hadi Bannazadeh","email":"hadi@savinetwork.ca","username":"hqdib"},"change_message_id":"6ef798995b4096182821663fd78691246a8709de","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"keystone_opts \u003d ["},{"line_number":27,"context_line":"    cfg.StrOpt(\u0027region_name\u0027,"},{"line_number":28,"context_line":"               help\u003d\u0027The region used in getting endpoints of other services\u0027),"},{"line_number":29,"context_line":"]"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"CONF.register_opts(keystone_opts, group\u003d\u0027keystone\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa81d914_142e6392","line":28,"in_reply_to":"fa81d914_8992a355","updated":"2015-01-30 17:57:35.000000000","message":"for instance, irnoic needs to get endpoint of nova and neutron services for different operations. if keystone service catalog contains endpoint for many regions for the same service, we need to specify what region to use. Hope this clarifies the need.","commit_id":"ae221f1e961e684144a2e7bfd73ff314e471e1f6"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"3ebe2dc58727645c5f052453c27e9131278bbc89","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"keystone_opts \u003d ["},{"line_number":27,"context_line":"    cfg.StrOpt(\u0027region_name\u0027,"},{"line_number":28,"context_line":"               help\u003d\u0027The region used in getting endpoints of other services\u0027),"},{"line_number":29,"context_line":"]"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"CONF.register_opts(keystone_opts, group\u003d\u0027keystone\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa81d914_2379e12f","line":28,"in_reply_to":"fa81d914_96d669c4","updated":"2015-01-28 14:33:18.000000000","message":"Sorry, I should have clarified. The endpoint for the ironic api is retrieved from Keystone if it isn\u0027t specified in the conductor.api_url config. I guess this is needed by some drivers, eg the agent [1] ;)\n\n[1] https://github.com/openstack/ironic/blob/master/ironic/drivers/modules/agent.py#L83","commit_id":"ae221f1e961e684144a2e7bfd73ff314e471e1f6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"5b8d17cc976edca170c8a392561095f2154babc4","unresolved":false,"context_lines":[{"line_number":25,"context_line":""},{"line_number":26,"context_line":"keystone_opts \u003d ["},{"line_number":27,"context_line":"    cfg.StrOpt(\u0027region_name\u0027,"},{"line_number":28,"context_line":"               help\u003d\u0027The region used in getting endpoints of other services\u0027),"},{"line_number":29,"context_line":"]"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"CONF.register_opts(keystone_opts, group\u003d\u0027keystone\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa81d914_96d669c4","line":28,"in_reply_to":"fa81d914_c4fe7238","updated":"2015-01-28 01:57:51.000000000","message":"Why would ironic need to know the ironic endpoint? :) This should be fine.","commit_id":"ae221f1e961e684144a2e7bfd73ff314e471e1f6"},{"author":{"_account_id":6618,"name":"Ruby Loo","email":"opensrloo@gmail.com","username":"rloo"},"change_message_id":"87c55ac7323539967d8126afa6a8720b6e7a8514","unresolved":false,"context_lines":[{"line_number":114,"context_line":"    try:"},{"line_number":115,"context_line":"        endpoint \u003d ksclient.service_catalog.url_for(service_type\u003dservice_type,"},{"line_number":116,"context_line":"                                                endpoint_type\u003dendpoint_type,"},{"line_number":117,"context_line":"                                                region_name\u003dregion_name)"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"    except ksexception.EndpointNotFound:"},{"line_number":120,"context_line":"        raise exception.CatalogNotFound(service_type\u003dservice_type,"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa81d914_24790efd","line":117,"updated":"2015-01-27 21:14:47.000000000","message":"This is probably fine but since I don\u0027t know keystone, thought I\u0027d mention it and maybe someone else knows the answer. The call above to _get_ksclient() creates a keystoneClient with region_name specified (with value from config).\n\nThis call here could have a different value for region_name -- I\u0027m assuming that will work (that keystone will return the endpoint url in the correct region).","commit_id":"ae221f1e961e684144a2e7bfd73ff314e471e1f6"},{"author":{"_account_id":14678,"name":"Hadi Bannazadeh","email":"hadi@savinetwork.ca","username":"hqdib"},"change_message_id":"135d7e41ff96e369af836ba8cc4cc6561dc5e309","unresolved":false,"context_lines":[{"line_number":114,"context_line":"    try:"},{"line_number":115,"context_line":"        endpoint \u003d ksclient.service_catalog.url_for(service_type\u003dservice_type,"},{"line_number":116,"context_line":"                                                endpoint_type\u003dendpoint_type,"},{"line_number":117,"context_line":"                                                region_name\u003dregion_name)"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"    except ksexception.EndpointNotFound:"},{"line_number":120,"context_line":"        raise exception.CatalogNotFound(service_type\u003dservice_type,"}],"source_content_type":"text/x-python","patch_set":4,"id":"da86d52c_1eba99e1","line":117,"in_reply_to":"da86d52c_ddbd6b04","updated":"2015-01-31 00:02:54.000000000","message":"Done","commit_id":"ae221f1e961e684144a2e7bfd73ff314e471e1f6"},{"author":{"_account_id":14678,"name":"Hadi Bannazadeh","email":"hadi@savinetwork.ca","username":"hqdib"},"change_message_id":"6ef798995b4096182821663fd78691246a8709de","unresolved":false,"context_lines":[{"line_number":114,"context_line":"    try:"},{"line_number":115,"context_line":"        endpoint \u003d ksclient.service_catalog.url_for(service_type\u003dservice_type,"},{"line_number":116,"context_line":"                                                endpoint_type\u003dendpoint_type,"},{"line_number":117,"context_line":"                                                region_name\u003dregion_name)"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"    except ksexception.EndpointNotFound:"},{"line_number":120,"context_line":"        raise exception.CatalogNotFound(service_type\u003dservice_type,"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa81d914_f44f0f69","line":117,"in_reply_to":"fa81d914_16f9994d","updated":"2015-01-30 17:57:35.000000000","message":"I agree. there may not be a value. I put it here, in case it is needed in future. I can remove it in next patch.","commit_id":"ae221f1e961e684144a2e7bfd73ff314e471e1f6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"5b8d17cc976edca170c8a392561095f2154babc4","unresolved":false,"context_lines":[{"line_number":114,"context_line":"    try:"},{"line_number":115,"context_line":"        endpoint \u003d ksclient.service_catalog.url_for(service_type\u003dservice_type,"},{"line_number":116,"context_line":"                                                endpoint_type\u003dendpoint_type,"},{"line_number":117,"context_line":"                                                region_name\u003dregion_name)"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"    except ksexception.EndpointNotFound:"},{"line_number":120,"context_line":"        raise exception.CatalogNotFound(service_type\u003dservice_type,"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa81d914_16f9994d","line":117,"in_reply_to":"fa81d914_24790efd","updated":"2015-01-28 01:57:51.000000000","message":"Yeah, I almost tend to think this line should just have the CONF option and not allow it to be passed to get_service_url. Not really sure if there\u0027s value in allowing it as an argument.","commit_id":"ae221f1e961e684144a2e7bfd73ff314e471e1f6"},{"author":{"_account_id":10343,"name":"Jim Rollenhagen","email":"jim@jimrollenhagen.com","username":"jimrollenhagen"},"change_message_id":"394f523306a9321674d47e203ca6fad48817c1b9","unresolved":false,"context_lines":[{"line_number":114,"context_line":"    try:"},{"line_number":115,"context_line":"        endpoint \u003d ksclient.service_catalog.url_for(service_type\u003dservice_type,"},{"line_number":116,"context_line":"                                                endpoint_type\u003dendpoint_type,"},{"line_number":117,"context_line":"                                                region_name\u003dregion_name)"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"    except ksexception.EndpointNotFound:"},{"line_number":120,"context_line":"        raise exception.CatalogNotFound(service_type\u003dservice_type,"}],"source_content_type":"text/x-python","patch_set":4,"id":"da86d52c_ddbd6b04","line":117,"in_reply_to":"fa81d914_f44f0f69","updated":"2015-01-30 21:42:16.000000000","message":"+1, please do","commit_id":"ae221f1e961e684144a2e7bfd73ff314e471e1f6"}]}
