)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"9d9dbaa7a8dcf4b708365db96547bad426ac432c","unresolved":false,"context_lines":[{"line_number":9,"context_line":"In certain configurations, like when setting [service_user]"},{"line_number":10,"context_line":"config, and not setting [glance]/api_servers, the KSA adapter"},{"line_number":11,"context_line":"get endpoint code (new in Queens) will return a versioned URL"},{"line_number":12,"context_line":"which glanceclient doesn\u0027t handle (due to bug 1707995) so we"},{"line_number":13,"context_line":"need to workaround that by parsing the URL to strip the version"},{"line_number":14,"context_line":"from the endpoint URL we got from KSA."},{"line_number":15,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"3fa0c359_132c9000","line":12,"range":{"start_line":12,"start_character":46,"end_line":12,"end_character":53},"updated":"2018-02-08 13:47:09.000000000","message":"Add Related-Bug tag please","commit_id":"b59035b08f01e568ef688fee7a69e3ebcbf319e9"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"1e6b1095be2e1f04ff8e24be563ed4daa5a1899c","unresolved":false,"context_lines":[{"line_number":9,"context_line":"In certain configurations, like when setting [service_user]"},{"line_number":10,"context_line":"config, and not setting [glance]/api_servers, the KSA adapter"},{"line_number":11,"context_line":"get endpoint code (new in Queens) will return a versioned URL"},{"line_number":12,"context_line":"which glanceclient doesn\u0027t handle (due to bug 1707995) so we"},{"line_number":13,"context_line":"need to workaround that by parsing the URL to strip the version"},{"line_number":14,"context_line":"from the endpoint URL we got from KSA."},{"line_number":15,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"3fa0c359_d95ac928","line":12,"range":{"start_line":12,"start_character":46,"end_line":12,"end_character":53},"in_reply_to":"3fa0c359_132c9000","updated":"2018-02-08 14:10:59.000000000","message":"Done","commit_id":"b59035b08f01e568ef688fee7a69e3ebcbf319e9"}],"nova/image/glance.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"6dff0477f3bb5690b185e5d516c1ffd74c47a629","unresolved":false,"context_lines":[{"line_number":131,"context_line":""},{"line_number":132,"context_line":"        api_servers \u003d [endpoint]"},{"line_number":133,"context_line":"        if api_servers:"},{"line_number":134,"context_line":"            LOG.info(\u0027Using glance API servers: %s\u0027, api_servers)"},{"line_number":135,"context_line":"        else:"},{"line_number":136,"context_line":"            LOG.exception(\u0027Unable to determine glance API servers.\u0027)"},{"line_number":137,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"3fa0c359_f2125358","line":134,"updated":"2018-02-07 20:24:14.000000000","message":"It doesn\u0027t look like it actually stripped the version:\n\nhttp://logs.openstack.org/08/541008/5/check/legacy-tempest-dsvm-neutron-nova-next-full/d7da048/logs/screen-n-api.txt.gz#_Feb_07_18_40_20_642521\n\nFeb 07 18:40:20.642521 ubuntu-xenial-rax-dfw-0002429681 devstack@n-api.service[18425]: INFO nova.image.glance [None req-16738591-8693-418d-afa4-474af4427f62 tempest-AggregatesAdminTestJSON-1645989857 tempest-AggregatesAdminTestJSON-1645989857] Using glance API servers: [u\u0027http://23.253.94.203/image/v2\u0027]\n\nYeah same problem:\n\nhttp://logs.openstack.org/08/541008/5/check/legacy-tempest-dsvm-neutron-nova-next-full/d7da048/logs/screen-g-api.txt.gz#_Feb_07_18_40_20_902972\n\nFeb 07 18:40:20.902972 ubuntu-xenial-rax-dfw-0002429681 devstack@g-api.service[17633]: [pid: 17636|app: 0|req: 5/11] 127.0.0.1 () {40 vars in 1010 bytes} [Wed Feb  7 18:40:20 2018] GET /v2/v2/images/042f56ac-62f9-4580-bbe6-6211f060fb35 \u003d\u003e generated 154 bytes in 120 msecs (HTTP/1.1 404) 4 headers in 172 bytes (1 switches on core 0)","commit_id":"6f5faabed9011fe534b9a8f8f49fbd052220afe3"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"881b17e1751451a1ef553ccadc557ad50118cf69","unresolved":false,"context_lines":[{"line_number":131,"context_line":""},{"line_number":132,"context_line":"        api_servers \u003d [endpoint]"},{"line_number":133,"context_line":"        if api_servers:"},{"line_number":134,"context_line":"            LOG.info(\u0027Using glance API servers: %s\u0027, api_servers)"},{"line_number":135,"context_line":"        else:"},{"line_number":136,"context_line":"            LOG.exception(\u0027Unable to determine glance API servers.\u0027)"},{"line_number":137,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"3fa0c359_126fbf92","line":134,"in_reply_to":"3fa0c359_f2125358","updated":"2018-02-07 20:35:12.000000000","message":"The problem is that strip_version() doesn\u0027t handle the \u0027image\u0027 prefix in the path:\n\n\u003e\u003e\u003e from glanceclient.common import utils\n\u003e\u003e\u003e url \u003d \u0027http://23.253.94.203/image/v2\u0027\n\u003e\u003e\u003e utils.strip_version(url)\n(\u0027http://23.253.94.203/image/v2\u0027, None)\n\u003e\u003e\u003e url \u003d \u0027http://23.253.94.203/v2\u0027\n\u003e\u003e\u003e url_parts \u003d urlparse.urlparse(url)\n\u003e\u003e\u003e url_parts\nParseResult(scheme\u003d\u0027http\u0027, netloc\u003d\u002723.253.94.203\u0027, path\u003d\u0027/v2\u0027, params\u003d\u0027\u0027, query\u003d\u0027\u0027, fragment\u003d\u0027\u0027)\n\u003e\u003e\u003e utils.strip_version(url)\n(\u0027http://23.253.94.203\u0027, 2.0)","commit_id":"6f5faabed9011fe534b9a8f8f49fbd052220afe3"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"de85fee96a594dc652f4a49ff9a8fb67e7d26254","unresolved":false,"context_lines":[{"line_number":130,"context_line":"            endpoint \u003d re.sub(r\u0027/v\\d+(\\.\\d+)?/?$\u0027, \u0027/\u0027, endpoint)"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"        api_servers \u003d [endpoint]"},{"line_number":133,"context_line":"        if api_servers:"},{"line_number":134,"context_line":"            LOG.info(\u0027Using glance API servers: %s\u0027, api_servers)"},{"line_number":135,"context_line":"        else:"},{"line_number":136,"context_line":"            LOG.exception(\u0027Unable to determine glance API servers.\u0027)"},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"    return itertools.cycle(api_servers)"},{"line_number":139,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"3fa0c359_db79732f","line":136,"range":{"start_line":133,"start_character":8,"end_line":136,"end_character":68},"updated":"2018-02-07 21:42:29.000000000","message":"I\u0027m not married to the log messages here, they were mostly for debug reasons and we could remove them.","commit_id":"addbe884b3e3ab297f2647d518f102fa24c3718d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"8a37db3b440eaeff87c521793c3c3e9464ec9b51","unresolved":false,"context_lines":[{"line_number":130,"context_line":"            endpoint \u003d re.sub(r\u0027/v\\d+(\\.\\d+)?/?$\u0027, \u0027/\u0027, endpoint)"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"        api_servers \u003d [endpoint]"},{"line_number":133,"context_line":"        if api_servers:"},{"line_number":134,"context_line":"            LOG.info(\u0027Using glance API servers: %s\u0027, api_servers)"},{"line_number":135,"context_line":"        else:"},{"line_number":136,"context_line":"            LOG.exception(\u0027Unable to determine glance API servers.\u0027)"},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"    return itertools.cycle(api_servers)"},{"line_number":139,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"3fa0c359_075bfcf6","line":136,"range":{"start_line":133,"start_character":8,"end_line":136,"end_character":68},"in_reply_to":"3fa0c359_db79732f","updated":"2018-02-08 00:49:15.000000000","message":"The INFO message shows up 410 times in n-api in a successful CI run so yeah we need to remove this. It also indicates that we\u0027re looking up this information wayyyyy to often.","commit_id":"addbe884b3e3ab297f2647d518f102fa24c3718d"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"9d9dbaa7a8dcf4b708365db96547bad426ac432c","unresolved":false,"context_lines":[{"line_number":125,"context_line":"            min_version\u003d\u00272.0\u0027, max_version\u003d\u00272.latest\u0027)"},{"line_number":126,"context_line":"        endpoint \u003d utils.get_endpoint(ksa_adap)"},{"line_number":127,"context_line":"        if endpoint:"},{"line_number":128,"context_line":"            # NOTE(mriedem): Due to python-glanceclient bug 1707995 we have"},{"line_number":129,"context_line":"            # to massage the endpoint URL otherwise it won\u0027t work properly."},{"line_number":130,"context_line":"            endpoint \u003d re.sub(r\u0027/v\\d+(\\.\\d+)?/?$\u0027, \u0027/\u0027, endpoint)"},{"line_number":131,"context_line":"        api_servers \u003d [endpoint]"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"    return itertools.cycle(api_servers)"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa0c359_f3ed648b","line":130,"range":{"start_line":128,"start_character":0,"end_line":130,"end_character":65},"updated":"2018-02-08 13:47:09.000000000","message":"Why aren\u0027t we using glanceclient.common.utils.strip_version for this?  We should either do so, or include a comment explaining why not.","commit_id":"b59035b08f01e568ef688fee7a69e3ebcbf319e9"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"1e6b1095be2e1f04ff8e24be563ed4daa5a1899c","unresolved":false,"context_lines":[{"line_number":125,"context_line":"            min_version\u003d\u00272.0\u0027, max_version\u003d\u00272.latest\u0027)"},{"line_number":126,"context_line":"        endpoint \u003d utils.get_endpoint(ksa_adap)"},{"line_number":127,"context_line":"        if endpoint:"},{"line_number":128,"context_line":"            # NOTE(mriedem): Due to python-glanceclient bug 1707995 we have"},{"line_number":129,"context_line":"            # to massage the endpoint URL otherwise it won\u0027t work properly."},{"line_number":130,"context_line":"            endpoint \u003d re.sub(r\u0027/v\\d+(\\.\\d+)?/?$\u0027, \u0027/\u0027, endpoint)"},{"line_number":131,"context_line":"        api_servers \u003d [endpoint]"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"    return itertools.cycle(api_servers)"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa0c359_f94d4572","line":130,"range":{"start_line":128,"start_character":0,"end_line":130,"end_character":65},"in_reply_to":"3fa0c359_be000369","updated":"2018-02-08 14:10:59.000000000","message":"Done","commit_id":"b59035b08f01e568ef688fee7a69e3ebcbf319e9"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"5a6cf937645f8b5a04645027978da7b73693105c","unresolved":false,"context_lines":[{"line_number":125,"context_line":"            min_version\u003d\u00272.0\u0027, max_version\u003d\u00272.latest\u0027)"},{"line_number":126,"context_line":"        endpoint \u003d utils.get_endpoint(ksa_adap)"},{"line_number":127,"context_line":"        if endpoint:"},{"line_number":128,"context_line":"            # NOTE(mriedem): Due to python-glanceclient bug 1707995 we have"},{"line_number":129,"context_line":"            # to massage the endpoint URL otherwise it won\u0027t work properly."},{"line_number":130,"context_line":"            endpoint \u003d re.sub(r\u0027/v\\d+(\\.\\d+)?/?$\u0027, \u0027/\u0027, endpoint)"},{"line_number":131,"context_line":"        api_servers \u003d [endpoint]"},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"    return itertools.cycle(api_servers)"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa0c359_be000369","line":130,"range":{"start_line":128,"start_character":0,"end_line":130,"end_character":65},"in_reply_to":"3fa0c359_f3ed648b","updated":"2018-02-08 13:57:54.000000000","message":"[Later] Okay, I see the history in PS5.  So yeah, please add a comment to that effect.  Save future me some head-scratching.","commit_id":"b59035b08f01e568ef688fee7a69e3ebcbf319e9"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"383bf6d15bac1390474c07cbc51c38c72025ee90","unresolved":false,"context_lines":[{"line_number":128,"context_line":"            # NOTE(mriedem): Due to python-glanceclient bug 1707995 we have"},{"line_number":129,"context_line":"            # to massage the endpoint URL otherwise it won\u0027t work properly."},{"line_number":130,"context_line":"            # We can\u0027t use glanceclient.common.utils.strip_version because"},{"line_number":131,"context_line":"            # of bug 1748009."},{"line_number":132,"context_line":"            endpoint \u003d re.sub(r\u0027/v\\d+(\\.\\d+)?/?$\u0027, \u0027/\u0027, endpoint)"},{"line_number":133,"context_line":"        api_servers \u003d [endpoint]"},{"line_number":134,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"3fa0c359_990e8130","line":131,"range":{"start_line":131,"start_character":21,"end_line":131,"end_character":28},"updated":"2018-02-08 14:12:18.000000000","message":"Dig","commit_id":"62ef6cfcf01d84813f71d1e8252b86c170ee39f0"}],"nova/tests/unit/image/test_glance.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"a04b6ce86aebc5da4d664b3bdfaf80e279551f4e","unresolved":false,"context_lines":[{"line_number":1625,"context_line":"               \u0027http://158.69.92.100/image/\u0027],"},{"line_number":1626,"context_line":"              [\u0027http://158.69.92.100/image/\u0027,"},{"line_number":1627,"context_line":"               \u0027http://158.69.92.100/image/\u0027],"},{"line_number":1628,"context_line":"              [\u0027http://158.69.92.100/image\u0027,"},{"line_number":1629,"context_line":"               \u0027http://158.69.92.100/image\u0027],"},{"line_number":1630,"context_line":"              [\u0027http://158.69.92.100/v2\u0027,"},{"line_number":1631,"context_line":"               \u0027http://158.69.92.100/\u0027],"},{"line_number":1632,"context_line":"              [\u0027http://thing.novav2.0oh.v2.foo/image/v2/\u0027,"}],"source_content_type":"text/x-python","patch_set":9,"id":"3fa0c359_c484200f","line":1629,"range":{"start_line":1628,"start_character":1,"end_line":1629,"end_character":45},"updated":"2018-02-08 15:03:56.000000000","message":"Will it cause any problem that we add a / to the end of the url inconsistently? E.g. if there was something we replaced then we will always add a / at the end but if the original url had no version and no / at the end then we will not add it.\n\nAfter a bit a googling [1] I feel that http://158.69.92.100/image/ is a base url and as such it is more correct to have the / at the end.\n\n[1]https://stackoverflow.com/questions/5948659/when-should-i-use-a-trailing-slash-in-my-url/16445016#16445016","commit_id":"62ef6cfcf01d84813f71d1e8252b86c170ee39f0"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"a02f913449cb0f0cf04bc8c46f32b3c00a51ecf8","unresolved":false,"context_lines":[{"line_number":1625,"context_line":"               \u0027http://158.69.92.100/image/\u0027],"},{"line_number":1626,"context_line":"              [\u0027http://158.69.92.100/image/\u0027,"},{"line_number":1627,"context_line":"               \u0027http://158.69.92.100/image/\u0027],"},{"line_number":1628,"context_line":"              [\u0027http://158.69.92.100/image\u0027,"},{"line_number":1629,"context_line":"               \u0027http://158.69.92.100/image\u0027],"},{"line_number":1630,"context_line":"              [\u0027http://158.69.92.100/v2\u0027,"},{"line_number":1631,"context_line":"               \u0027http://158.69.92.100/\u0027],"},{"line_number":1632,"context_line":"              [\u0027http://thing.novav2.0oh.v2.foo/image/v2/\u0027,"}],"source_content_type":"text/x-python","patch_set":9,"id":"3fa0c359_ff068586","line":1629,"range":{"start_line":1628,"start_character":1,"end_line":1629,"end_character":45},"in_reply_to":"3fa0c359_bf28fd33","updated":"2018-02-08 15:26:26.000000000","message":"Thanks for the explanation.","commit_id":"62ef6cfcf01d84813f71d1e8252b86c170ee39f0"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b85a0f9a4da0cd37fa97455331fbe3752da87ca3","unresolved":false,"context_lines":[{"line_number":1625,"context_line":"               \u0027http://158.69.92.100/image/\u0027],"},{"line_number":1626,"context_line":"              [\u0027http://158.69.92.100/image/\u0027,"},{"line_number":1627,"context_line":"               \u0027http://158.69.92.100/image/\u0027],"},{"line_number":1628,"context_line":"              [\u0027http://158.69.92.100/image\u0027,"},{"line_number":1629,"context_line":"               \u0027http://158.69.92.100/image\u0027],"},{"line_number":1630,"context_line":"              [\u0027http://158.69.92.100/v2\u0027,"},{"line_number":1631,"context_line":"               \u0027http://158.69.92.100/\u0027],"},{"line_number":1632,"context_line":"              [\u0027http://thing.novav2.0oh.v2.foo/image/v2/\u0027,"}],"source_content_type":"text/x-python","patch_set":9,"id":"3fa0c359_3f92ad9f","line":1629,"range":{"start_line":1628,"start_character":1,"end_line":1629,"end_character":45},"in_reply_to":"3fa0c359_c484200f","updated":"2018-02-08 15:12:49.000000000","message":"I think it\u0027s probably fine. The only place we use this elsewhere is \"generate_image_url\" and we append an \"/images/{id}\" to the end of the URL for a location header in the createImage API response, and in a rebuild notification.","commit_id":"62ef6cfcf01d84813f71d1e8252b86c170ee39f0"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"f0e9cfd5090f70c58111dfb60a727cce9214a63b","unresolved":false,"context_lines":[{"line_number":1625,"context_line":"               \u0027http://158.69.92.100/image/\u0027],"},{"line_number":1626,"context_line":"              [\u0027http://158.69.92.100/image/\u0027,"},{"line_number":1627,"context_line":"               \u0027http://158.69.92.100/image/\u0027],"},{"line_number":1628,"context_line":"              [\u0027http://158.69.92.100/image\u0027,"},{"line_number":1629,"context_line":"               \u0027http://158.69.92.100/image\u0027],"},{"line_number":1630,"context_line":"              [\u0027http://158.69.92.100/v2\u0027,"},{"line_number":1631,"context_line":"               \u0027http://158.69.92.100/\u0027],"},{"line_number":1632,"context_line":"              [\u0027http://thing.novav2.0oh.v2.foo/image/v2/\u0027,"}],"source_content_type":"text/x-python","patch_set":9,"id":"3fa0c359_bf28fd33","line":1629,"range":{"start_line":1628,"start_character":1,"end_line":1629,"end_character":45},"in_reply_to":"3fa0c359_c484200f","updated":"2018-02-08 15:18:52.000000000","message":"Less important what SO thinks and more important that it works.  There used to be a couple of bugs in ksa [1][2] where this actually mattered, but they got fixed in 3.0.1 [3] and 3.2.0 [4] (Pike).\n\n[1] https://bugs.launchpad.net/keystonemiddleware/+bug/1705770\n[2] https://bugs.launchpad.net/keystoneauth/+bug/1709658\n[3] https://review.openstack.org/#/c/486276/\n[4] https://review.openstack.org/#/c/492484/","commit_id":"62ef6cfcf01d84813f71d1e8252b86c170ee39f0"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"cf1c17126c18f8258f2fe3dc33741c9ffa9e042e","unresolved":false,"context_lines":[{"line_number":1625,"context_line":"               \u0027http://158.69.92.100/image/\u0027],"},{"line_number":1626,"context_line":"              [\u0027http://158.69.92.100/image/\u0027,"},{"line_number":1627,"context_line":"               \u0027http://158.69.92.100/image/\u0027],"},{"line_number":1628,"context_line":"              [\u0027http://158.69.92.100/image\u0027,"},{"line_number":1629,"context_line":"               \u0027http://158.69.92.100/image\u0027],"},{"line_number":1630,"context_line":"              [\u0027http://158.69.92.100/v2\u0027,"},{"line_number":1631,"context_line":"               \u0027http://158.69.92.100/\u0027],"},{"line_number":1632,"context_line":"              [\u0027http://thing.novav2.0oh.v2.foo/image/v2/\u0027,"}],"source_content_type":"text/x-python","patch_set":9,"id":"3fa0c359_1bad7e87","line":1629,"range":{"start_line":1628,"start_character":1,"end_line":1629,"end_character":45},"in_reply_to":"3fa0c359_ff068586","updated":"2018-02-08 19:05:07.000000000","message":"The RE should only end up with a double slash if they end with one I think, so I think what we have here is right.","commit_id":"62ef6cfcf01d84813f71d1e8252b86c170ee39f0"}],"releasenotes/notes/bug-1747511-glance-api-servers-1e17757b901a76d8.yaml":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"9d9dbaa7a8dcf4b708365db96547bad426ac432c","unresolved":false,"context_lines":[{"line_number":8,"context_line":"    If ``[glance]/api_servers`` is not set in nova.conf, and there is a"},{"line_number":9,"context_line":"    versioned endpoint URL in the service catalog, nova makes a best attempt"},{"line_number":10,"context_line":"    at parsing and stripping the version from the URL in order to make"},{"line_number":11,"context_line":"    API requests to the image service. If this does not work for the image"},{"line_number":12,"context_line":"    service endpoint URL in the service catalog, set the"},{"line_number":13,"context_line":"    ``[glance]/api_servers`` configuration option as a workaround."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"3fa0c359_9e93c7a3","line":11,"range":{"start_line":11,"start_character":39,"end_line":11,"end_character":60},"updated":"2018-02-08 13:47:09.000000000","message":"How do we know it doesn\u0027t work?  \"Stuff fails with symptom XYZ\" would be useful here.\n\nBut more realistically, unless you can think of an actual example where we\u0027re still broken, I\u0027m not sure there\u0027s a reason to muddy the waters with this reno at all.","commit_id":"b59035b08f01e568ef688fee7a69e3ebcbf319e9"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"383bf6d15bac1390474c07cbc51c38c72025ee90","unresolved":false,"context_lines":[{"line_number":8,"context_line":"    If ``[glance]/api_servers`` is not set in nova.conf, and there is a"},{"line_number":9,"context_line":"    versioned endpoint URL in the service catalog, nova makes a best attempt"},{"line_number":10,"context_line":"    at parsing and stripping the version from the URL in order to make"},{"line_number":11,"context_line":"    API requests to the image service. If this does not work for the image"},{"line_number":12,"context_line":"    service endpoint URL in the service catalog, set the"},{"line_number":13,"context_line":"    ``[glance]/api_servers`` configuration option as a workaround."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"3fa0c359_39b96d2d","line":11,"range":{"start_line":11,"start_character":39,"end_line":11,"end_character":60},"in_reply_to":"3fa0c359_9e8427b3","updated":"2018-02-08 14:12:18.000000000","message":"Okay; I\u0027m just concerned this will cause unnecessary panic/confusion.  I\u0027m guessing the guy reading the release note is going to have no context about why we would need to be \"stripping the version from the URL\" in the first place.  There\u0027s probably four people total who have the background on that.\n\nAnyway, if you \u0026 Dan agreed on it, I\u0027m not going to make a stank.","commit_id":"b59035b08f01e568ef688fee7a69e3ebcbf319e9"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"1dac34d656378b2391a8e39ce790fd0960f1fd17","unresolved":false,"context_lines":[{"line_number":8,"context_line":"    If ``[glance]/api_servers`` is not set in nova.conf, and there is a"},{"line_number":9,"context_line":"    versioned endpoint URL in the service catalog, nova makes a best attempt"},{"line_number":10,"context_line":"    at parsing and stripping the version from the URL in order to make"},{"line_number":11,"context_line":"    API requests to the image service. If this does not work for the image"},{"line_number":12,"context_line":"    service endpoint URL in the service catalog, set the"},{"line_number":13,"context_line":"    ``[glance]/api_servers`` configuration option as a workaround."}],"source_content_type":"text/x-yaml","patch_set":8,"id":"3fa0c359_9e8427b3","line":11,"range":{"start_line":11,"start_character":39,"end_line":11,"end_character":60},"in_reply_to":"3fa0c359_9e93c7a3","updated":"2018-02-08 14:03:30.000000000","message":"Dan and I talked about the release note as a sort of heads up that we\u0027re doing our best at parsing the URL but if that fails, you can workaround it.\n\nIf the last sentence is confusing, I could just remove it, but I still think the rest of the release note is useful.","commit_id":"b59035b08f01e568ef688fee7a69e3ebcbf319e9"}]}
