)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"change_message_id":"56d11a99489e1736fba2b3fbaa2210fb34ece679","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add default values for domain related options"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Keystone V3 requires to be set os_user_domain_id/os_user_domain_name and"},{"line_number":10,"context_line":"os_project_domain_id/os_project_domain_name options. These options do not"},{"line_number":11,"context_line":"have default values and novaclient will failed if they are not set by user."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This patch adds default values for os_project_domain_id and"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5aef4532_b903f40e","line":10,"range":{"start_line":9,"start_character":0,"end_line":10,"end_character":51},"updated":"2016-03-07 16:58:29.000000000","message":"\"to be set\" is an awkward phrasing in English; try:\n\n    Keystone V3 requires that the options os_user_domain_id/\n    os_user_domain_name and os_project_domain_id/\n    os_project_domain_name be set.","commit_id":"a599ac4d2fdcca54758f4bd190972f2aaffc2843"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"04309abe06e33015ace026171dc5f362ff26be67","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add default values for domain related options"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Keystone V3 requires to be set os_user_domain_id/os_user_domain_name and"},{"line_number":10,"context_line":"os_project_domain_id/os_project_domain_name options. These options do not"},{"line_number":11,"context_line":"have default values and novaclient will failed if they are not set by user."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This patch adds default values for os_project_domain_id and"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5aef4532_8aa5ee05","line":10,"range":{"start_line":9,"start_character":0,"end_line":10,"end_character":51},"in_reply_to":"5aef4532_b903f40e","updated":"2016-03-07 19:20:44.000000000","message":"Done","commit_id":"a599ac4d2fdcca54758f4bd190972f2aaffc2843"},{"author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"change_message_id":"56d11a99489e1736fba2b3fbaa2210fb34ece679","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Keystone V3 requires to be set os_user_domain_id/os_user_domain_name and"},{"line_number":10,"context_line":"os_project_domain_id/os_project_domain_name options. These options do not"},{"line_number":11,"context_line":"have default values and novaclient will failed if they are not set by user."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This patch adds default values for os_project_domain_id and"},{"line_number":14,"context_line":"os_user_domain_id in case of Keystone V3 env."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5aef4532_211e8a63","line":11,"range":{"start_line":11,"start_character":40,"end_line":11,"end_character":46},"updated":"2016-03-07 16:58:29.000000000","message":"s/failed/fail/","commit_id":"a599ac4d2fdcca54758f4bd190972f2aaffc2843"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"04309abe06e33015ace026171dc5f362ff26be67","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Keystone V3 requires to be set os_user_domain_id/os_user_domain_name and"},{"line_number":10,"context_line":"os_project_domain_id/os_project_domain_name options. These options do not"},{"line_number":11,"context_line":"have default values and novaclient will failed if they are not set by user."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This patch adds default values for os_project_domain_id and"},{"line_number":14,"context_line":"os_user_domain_id in case of Keystone V3 env."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5aef4532_2aa01af4","line":11,"range":{"start_line":11,"start_character":40,"end_line":11,"end_character":46},"in_reply_to":"5aef4532_211e8a63","updated":"2016-03-07 19:20:44.000000000","message":"Done","commit_id":"a599ac4d2fdcca54758f4bd190972f2aaffc2843"},{"author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"change_message_id":"56d11a99489e1736fba2b3fbaa2210fb34ece679","unresolved":false,"context_lines":[{"line_number":13,"context_line":"This patch adds default values for os_project_domain_id and"},{"line_number":14,"context_line":"os_user_domain_id in case of Keystone V3 env."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Also, two functional tests are added to chec authentification via"},{"line_number":17,"context_line":"Keystone V2 and V3."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Change-Id: Ieb41a7fbf24107f7250ef34218604fba96531195"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5aef4532_4152b614","line":16,"range":{"start_line":16,"start_character":40,"end_line":16,"end_character":61},"updated":"2016-03-07 16:58:29.000000000","message":"s/chec/check/\n\ns/authentification/authentication/","commit_id":"a599ac4d2fdcca54758f4bd190972f2aaffc2843"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"04309abe06e33015ace026171dc5f362ff26be67","unresolved":false,"context_lines":[{"line_number":13,"context_line":"This patch adds default values for os_project_domain_id and"},{"line_number":14,"context_line":"os_user_domain_id in case of Keystone V3 env."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Also, two functional tests are added to chec authentification via"},{"line_number":17,"context_line":"Keystone V2 and V3."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Change-Id: Ieb41a7fbf24107f7250ef34218604fba96531195"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5aef4532_aaac2aee","line":16,"range":{"start_line":16,"start_character":40,"end_line":16,"end_character":61},"in_reply_to":"5aef4532_4152b614","updated":"2016-03-07 19:20:44.000000000","message":"Done","commit_id":"a599ac4d2fdcca54758f4bd190972f2aaffc2843"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"9e2e9d78170df8542916c7f927ee0c762e5867ed","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Also, two functional tests are added to chec authentification via"},{"line_number":17,"context_line":"Keystone V2 and V3."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Change-Id: Ieb41a7fbf24107f7250ef34218604fba96531195"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5aef4532_345ed3e9","line":18,"updated":"2016-03-07 14:57:53.000000000","message":"Partial-Bug: #1522402","commit_id":"a599ac4d2fdcca54758f4bd190972f2aaffc2843"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"04309abe06e33015ace026171dc5f362ff26be67","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Also, two functional tests are added to chec authentification via"},{"line_number":17,"context_line":"Keystone V2 and V3."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Change-Id: Ieb41a7fbf24107f7250ef34218604fba96531195"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5aef4532_6aaa22d6","line":18,"in_reply_to":"5aef4532_345ed3e9","updated":"2016-03-07 19:20:44.000000000","message":"Done","commit_id":"a599ac4d2fdcca54758f4bd190972f2aaffc2843"}],"novaclient/shell.py":[{"author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"change_message_id":"56d11a99489e1736fba2b3fbaa2210fb34ece679","unresolved":false,"context_lines":[{"line_number":773,"context_line":"            # be more user-friendly, i.e provide default values for domains"},{"line_number":774,"context_line":"            if (not args.os_project_domain_id and"},{"line_number":775,"context_line":"                    not args.os_project_domain_name):"},{"line_number":776,"context_line":"                setattr(args, \"os_project_domain_id\", \"default\")"},{"line_number":777,"context_line":"            if not args.os_user_domain_id and not args.os_user_domain_name:"},{"line_number":778,"context_line":"                setattr(args, \"os_user_domain_id\", \"default\")"},{"line_number":779,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"5aef4532_018eee77","line":776,"updated":"2016-03-07 16:58:29.000000000","message":"Does \"default\" even make sense?  I would have expected the value of os_project_name or project_id to be used.  Or does Keystone V3 take \"default\" to mean \"use whatever os_project_name is set to\"?","commit_id":"a599ac4d2fdcca54758f4bd190972f2aaffc2843"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"04309abe06e33015ace026171dc5f362ff26be67","unresolved":false,"context_lines":[{"line_number":773,"context_line":"            # be more user-friendly, i.e provide default values for domains"},{"line_number":774,"context_line":"            if (not args.os_project_domain_id and"},{"line_number":775,"context_line":"                    not args.os_project_domain_name):"},{"line_number":776,"context_line":"                setattr(args, \"os_project_domain_id\", \"default\")"},{"line_number":777,"context_line":"            if not args.os_user_domain_id and not args.os_user_domain_name:"},{"line_number":778,"context_line":"                setattr(args, \"os_user_domain_id\", \"default\")"},{"line_number":779,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"5aef4532_6a81824a","line":776,"in_reply_to":"5aef4532_018eee77","updated":"2016-03-07 19:20:44.000000000","message":"\"default\" is a default value for devstack","commit_id":"a599ac4d2fdcca54758f4bd190972f2aaffc2843"}],"novaclient/tests/functional/test_auth.py":[{"author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"change_message_id":"56d11a99489e1736fba2b3fbaa2210fb34ece679","unresolved":false,"context_lines":[{"line_number":20,"context_line":"        url \u003d parse.urlparse(self.cli_clients.uri)"},{"line_number":21,"context_line":"        parts \u003d (url.scheme, url.netloc, \"/\", url.params, url.query,"},{"line_number":22,"context_line":"                 url.fragment)"},{"line_number":23,"context_line":"        url \u003d \"v%s\" % parse.urlunparse(parts)"},{"line_number":24,"context_line":"        creds \u003d (\u0027--os-username %s --os-tenant-name %s --os-password %s \u0027"},{"line_number":25,"context_line":"                 \u0027--os-auth-url %s\u0027 % (self.username,"},{"line_number":26,"context_line":"                                       self.tenant_name,"}],"source_content_type":"text/x-python","patch_set":1,"id":"5aef4532_4163d6b1","line":23,"updated":"2016-03-07 16:58:29.000000000","message":"Er, why the \"v\" prefix?  That\u0027ll change the url to \"vhttps://…\", which doesn\u0027t exactly make sense to me :)","commit_id":"a599ac4d2fdcca54758f4bd190972f2aaffc2843"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"04309abe06e33015ace026171dc5f362ff26be67","unresolved":false,"context_lines":[{"line_number":20,"context_line":"        url \u003d parse.urlparse(self.cli_clients.uri)"},{"line_number":21,"context_line":"        parts \u003d (url.scheme, url.netloc, \"/\", url.params, url.query,"},{"line_number":22,"context_line":"                 url.fragment)"},{"line_number":23,"context_line":"        url \u003d \"v%s\" % parse.urlunparse(parts)"},{"line_number":24,"context_line":"        creds \u003d (\u0027--os-username %s --os-tenant-name %s --os-password %s \u0027"},{"line_number":25,"context_line":"                 \u0027--os-auth-url %s\u0027 % (self.username,"},{"line_number":26,"context_line":"                                       self.tenant_name,"}],"source_content_type":"text/x-python","patch_set":1,"id":"5aef4532_5609d694","line":23,"in_reply_to":"5aef4532_4163d6b1","updated":"2016-03-07 19:20:44.000000000","message":"oh...","commit_id":"a599ac4d2fdcca54758f4bd190972f2aaffc2843"},{"author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"change_message_id":"816086f121179420bb0ab411c5ec80e5b6ea9a65","unresolved":false,"context_lines":[{"line_number":21,"context_line":"        url \u003d parse.urlparse(self.cli_clients.uri)"},{"line_number":22,"context_line":"        parts \u003d (url.scheme, url.netloc, \"/\", url.params, url.query,"},{"line_number":23,"context_line":"                 url.fragment)"},{"line_number":24,"context_line":"        url \u003d \"%sv%s\" % (parse.urlunparse(parts), identity_api_version)"},{"line_number":25,"context_line":"        flags \u003d (\u0027--os-username %s --os-tenant-name %s --os-password %s \u0027"},{"line_number":26,"context_line":"                 \u0027--os-auth-url %s  --endpoint-type publicURL\u0027 % ("},{"line_number":27,"context_line":"                     self.cli_clients.username,"}],"source_content_type":"text/x-python","patch_set":8,"id":"5aef4532_055ebf75","line":24,"updated":"2016-03-08 16:56:05.000000000","message":"The problem with this construction is that, if the original URL has params, query, or fragment, this will result in an incorrect URL.  Let me suggest putting the API version directly in the path, e.g.:\n\n    url \u003d parse.urlparse(self.cli_clients.uri)\n    url \u003d parse.urlunparse((url.scheme, url.netloc,\n                            \u0027/v%s\u0027 % identity_api_version,\n                            url.params, url.query,\n                            url.fragment))\n\nAnd yeah, it\u0027s highly unlikely that params, query, or fragment will appear in the URL, but you allow for them, so you should also compensate for them :)","commit_id":"34c58c476b02c9ebf4e2019f5eacfecb2947bc47"},{"author":{"_account_id":9545,"name":"Andriy Kurilin","email":"andr.kurilin@gmail.com","username":"akurilin"},"change_message_id":"f0f2ce540fd935ed27537bcb4e04e01772c7ed90","unresolved":false,"context_lines":[{"line_number":21,"context_line":"        url \u003d parse.urlparse(self.cli_clients.uri)"},{"line_number":22,"context_line":"        parts \u003d (url.scheme, url.netloc, \"/\", url.params, url.query,"},{"line_number":23,"context_line":"                 url.fragment)"},{"line_number":24,"context_line":"        url \u003d \"%sv%s\" % (parse.urlunparse(parts), identity_api_version)"},{"line_number":25,"context_line":"        flags \u003d (\u0027--os-username %s --os-tenant-name %s --os-password %s \u0027"},{"line_number":26,"context_line":"                 \u0027--os-auth-url %s  --endpoint-type publicURL\u0027 % ("},{"line_number":27,"context_line":"                     self.cli_clients.username,"}],"source_content_type":"text/x-python","patch_set":8,"id":"5aef4532_993877a2","line":24,"in_reply_to":"5aef4532_055ebf75","updated":"2016-03-08 18:17:19.000000000","message":"Done","commit_id":"34c58c476b02c9ebf4e2019f5eacfecb2947bc47"}]}
