)]}'
{"devstack/local.conf":[{"author":{"_account_id":7665,"name":"Travis Tripp","email":"os.travis.tripp@gmail.com","username":"travis.tripp"},"change_message_id":"f38a3e3be9bead142aa9b59f86d61c68763cdc68","unresolved":false,"context_lines":[{"line_number":178,"context_line":"#resource_group_name \u003d searchlight"},{"line_number":179,"context_line":""},{"line_number":180,"context_line":"[service_credentials:nova]"},{"line_number":181,"context_line":"compute_api_version \u003d 2.1"},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"[resource_plugin:os_nova_server]"},{"line_number":184,"context_line":"enabled \u003d True"}],"source_content_type":"text/plain","patch_set":28,"id":"7aa08908_014cc640","line":181,"updated":"2016-06-17 16:12:08.000000000","message":"For devstack example, what do you guys think about going ahead with setting this to latest that we support in searchlight? Also should we allow a way for us to specify \u0027latest\u0027 and override default of 2.1?","commit_id":"21042fd7f4740cb006d1887cedab150c41882a62"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"470940487dd091a80a1598a5e7b549ed1738adfb","unresolved":false,"context_lines":[{"line_number":178,"context_line":"#resource_group_name \u003d searchlight"},{"line_number":179,"context_line":""},{"line_number":180,"context_line":"[service_credentials:nova]"},{"line_number":181,"context_line":"compute_api_version \u003d 2.1"},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"[resource_plugin:os_nova_server]"},{"line_number":184,"context_line":"enabled \u003d True"}],"source_content_type":"text/plain","patch_set":28,"id":"5a9d85d2_bee8ce7d","line":181,"in_reply_to":"5a9d85d2_462bf482","updated":"2016-06-20 22:00:12.000000000","message":"Maybe if there\u0027s another patch set up to 2.26 but otherwise I\u0027m fine with this going in as-is; the recommended devstack version is a pretty minor detail","commit_id":"21042fd7f4740cb006d1887cedab150c41882a62"},{"author":{"_account_id":7665,"name":"Travis Tripp","email":"os.travis.tripp@gmail.com","username":"travis.tripp"},"change_message_id":"d4db2d91b25bf03af484b6025e47a9aac42b5c64","unresolved":false,"context_lines":[{"line_number":178,"context_line":"#resource_group_name \u003d searchlight"},{"line_number":179,"context_line":""},{"line_number":180,"context_line":"[service_credentials:nova]"},{"line_number":181,"context_line":"compute_api_version \u003d 2.1"},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"[resource_plugin:os_nova_server]"},{"line_number":184,"context_line":"enabled \u003d True"}],"source_content_type":"text/plain","patch_set":28,"id":"5a9d85d2_462bf482","line":181,"in_reply_to":"5a9d85d2_4a1dd20e","updated":"2016-06-20 15:15:48.000000000","message":"So, this file is just for the devstack sample conf for people to develop latest against.  I\u0027m okay with the default being 2.1 in code and won\u0027t really block on this, but if devstack is meant to develop against latest it seems maybe we should use latest in devstack?","commit_id":"21042fd7f4740cb006d1887cedab150c41882a62"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"e2f2cb4abfc200a296b068842117cf8718435433","unresolved":false,"context_lines":[{"line_number":178,"context_line":"#resource_group_name \u003d searchlight"},{"line_number":179,"context_line":""},{"line_number":180,"context_line":"[service_credentials:nova]"},{"line_number":181,"context_line":"compute_api_version \u003d 2.1"},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"[resource_plugin:os_nova_server]"},{"line_number":184,"context_line":"enabled \u003d True"}],"source_content_type":"text/plain","patch_set":28,"id":"7aa08908_b6dd3716","line":181,"in_reply_to":"7aa08908_014cc640","updated":"2016-06-17 17:22:09.000000000","message":"I\u0027m fine setting it to 2.26. I would imagine most people are running modified local.confs in any case so this is more of a suggestion than to be used verbatim","commit_id":"21042fd7f4740cb006d1887cedab150c41882a62"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"c722882b544380147f18d2921dc6c97cf0fee732","unresolved":false,"context_lines":[{"line_number":178,"context_line":"#resource_group_name \u003d searchlight"},{"line_number":179,"context_line":""},{"line_number":180,"context_line":"[service_credentials:nova]"},{"line_number":181,"context_line":"compute_api_version \u003d 2.1"},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"[resource_plugin:os_nova_server]"},{"line_number":184,"context_line":"enabled \u003d True"}],"source_content_type":"text/plain","patch_set":28,"id":"5a9d85d2_4a1dd20e","line":181,"in_reply_to":"7aa08908_b6dd3716","updated":"2016-06-20 01:21:19.000000000","message":"Hmm, I\u0027m not sure, this may cause problem if user use latest searchlight on their already deployed Kilo release etc, this will be a very common case if we want to advertise Searchlight to commercial users, as no one acutally uses the latest realease. I think we can leave it like this and put information in the docs to let the user configure this.","commit_id":"21042fd7f4740cb006d1887cedab150c41882a62"}],"searchlight/elasticsearch/plugins/nova/base.py":[{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"a97a99af2836bb41116bc3dcb9f9ebcada9fe474","unresolved":false,"context_lines":[{"line_number":29,"context_line":"         \u0027Compute API versions can be checked using: \u0027"},{"line_number":30,"context_line":"         \u0027nova version-list.\u0027)"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"GROUP \u003d \"nova_plugin\""},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"cfg.CONF.register_opt(compute_api_version, group\u003dGROUP)"},{"line_number":35,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"9abb7d3a_6d43b56c","line":32,"range":{"start_line":32,"start_character":9,"end_line":32,"end_character":20},"updated":"2016-06-01 19:12:34.000000000","message":"I\u0027m on the fence about recommending calling this \u0027service_apis\u0027 to allow us to put cinder in here too, but i have a feeling at some point we may end up allowing different auth params for each plugin and so nova_plugin would make more sense.","commit_id":"16a0218a24ebcf1b31a404346389036890a7daf9"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"f7009673cfe0524c443d82ce02370078dca8fec6","unresolved":false,"context_lines":[{"line_number":29,"context_line":"         \u0027Compute API versions can be checked using: \u0027"},{"line_number":30,"context_line":"         \u0027nova version-list.\u0027)"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"GROUP \u003d \"nova_plugin\""},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"cfg.CONF.register_opt(compute_api_version, group\u003dGROUP)"},{"line_number":35,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"9abb7d3a_b8330213","line":32,"range":{"start_line":32,"start_character":9,"end_line":32,"end_character":20},"in_reply_to":"9abb7d3a_6d43b56c","updated":"2016-06-02 07:12:36.000000000","message":"Hm... lets keep it this way now and fix it according to further plans before we merge it. :)","commit_id":"16a0218a24ebcf1b31a404346389036890a7daf9"}],"searchlight/elasticsearch/plugins/nova/servers.py":[{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"a97a99af2836bb41116bc3dcb9f9ebcada9fe474","unresolved":false,"context_lines":[{"line_number":117,"context_line":"            },"},{"line_number":118,"context_line":"        }"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"        if self.version \u003e\u003d 2.9:"},{"line_number":121,"context_line":"            mapping[\u0027properties\u0027].update("},{"line_number":122,"context_line":"                {\u0027locked\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027}})"},{"line_number":123,"context_line":"        if self.version \u003e\u003d 2.16:"}],"source_content_type":"text/x-python","patch_set":8,"id":"9abb7d3a_28299b8a","line":120,"range":{"start_line":120,"start_character":16,"end_line":120,"end_character":23},"updated":"2016-06-01 19:12:34.000000000","message":"This will not work. Searchlight API requests plugin mappings for faceting operations. It has no connectivity with the nova API at present and I don\u0027t want to introduce one. There seems no harm mapping all fields we might know about, and if some aren\u0027t available that\u0027s fine.","commit_id":"16a0218a24ebcf1b31a404346389036890a7daf9"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"f7009673cfe0524c443d82ce02370078dca8fec6","unresolved":false,"context_lines":[{"line_number":117,"context_line":"            },"},{"line_number":118,"context_line":"        }"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"        if self.version \u003e\u003d 2.9:"},{"line_number":121,"context_line":"            mapping[\u0027properties\u0027].update("},{"line_number":122,"context_line":"                {\u0027locked\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027}})"},{"line_number":123,"context_line":"        if self.version \u003e\u003d 2.16:"}],"source_content_type":"text/x-python","patch_set":8,"id":"9abb7d3a_b3284587","line":120,"range":{"start_line":120,"start_character":16,"end_line":120,"end_character":23},"in_reply_to":"9abb7d3a_28299b8a","updated":"2016-06-02 07:12:36.000000000","message":"OK, then maybe we can add a field that says this was added in microversion 2.xx ?","commit_id":"16a0218a24ebcf1b31a404346389036890a7daf9"},{"author":{"_account_id":4428,"name":"Liyingjun","email":"yinjalee@163.com","username":"liyingjun"},"change_message_id":"5e90c90a049b99adcc0b89bc1afc1fb2d183d9d2","unresolved":false,"context_lines":[{"line_number":101,"context_line":"                \u0027host_status\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":102,"context_line":"                # Added in microversion 2.19"},{"line_number":103,"context_line":"                \u0027server_description\u0027: {\u0027type\u0027: \u0027string\u0027,"},{"line_number":104,"context_line":"                                       \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":105,"context_line":"                # Added in microversion 2.26"},{"line_number":106,"context_line":"                \u0027server_tags\u0027: {\u0027type\u0027: \u0027string\u0027,"},{"line_number":107,"context_line":"                                \u0027index\u0027: \u0027not_analyzed\u0027}"}],"source_content_type":"text/x-python","patch_set":17,"id":"7aa08908_56a0d690","line":104,"updated":"2016-06-06 01:23:19.000000000","message":"It is `description` in the API,  so better to change to description.","commit_id":"53b9f17a4860c4d99901dfba9d1d687f04cca38e"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"08f2ee7afd01138d37f5a23434b2a8ca6f6d9f45","unresolved":false,"context_lines":[{"line_number":101,"context_line":"                \u0027host_status\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":102,"context_line":"                # Added in microversion 2.19"},{"line_number":103,"context_line":"                \u0027server_description\u0027: {\u0027type\u0027: \u0027string\u0027,"},{"line_number":104,"context_line":"                                       \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":105,"context_line":"                # Added in microversion 2.26"},{"line_number":106,"context_line":"                \u0027server_tags\u0027: {\u0027type\u0027: \u0027string\u0027,"},{"line_number":107,"context_line":"                                \u0027index\u0027: \u0027not_analyzed\u0027}"}],"source_content_type":"text/x-python","patch_set":17,"id":"7aa08908_b11dc468","line":104,"in_reply_to":"7aa08908_56a0d690","updated":"2016-06-06 01:40:56.000000000","message":"it seams conflicted with the description and tags with Glance resource here, how should we manage this kind of issue?","commit_id":"53b9f17a4860c4d99901dfba9d1d687f04cca38e"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"5756cad9a1e6fae69c94d9778ec73dbb024b8c57","unresolved":false,"context_lines":[{"line_number":101,"context_line":"                \u0027host_status\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":102,"context_line":"                # Added in microversion 2.19"},{"line_number":103,"context_line":"                \u0027server_description\u0027: {\u0027type\u0027: \u0027string\u0027,"},{"line_number":104,"context_line":"                                       \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":105,"context_line":"                # Added in microversion 2.26"},{"line_number":106,"context_line":"                \u0027server_tags\u0027: {\u0027type\u0027: \u0027string\u0027,"},{"line_number":107,"context_line":"                                \u0027index\u0027: \u0027not_analyzed\u0027}"}],"source_content_type":"text/x-python","patch_set":17,"id":"7aa08908_fbbfb8a7","line":104,"in_reply_to":"7aa08908_b11dc468","updated":"2016-06-07 17:09:39.000000000","message":"If they\u0027re the same types, it\u0027s ok to use the same names. Description i think should probably be analyzed since it\u0027s free text (and thus you\u0027d want a search for \"server nginx\" to match a description \"a server running nginx\")?\n\nFor tags we may want to change the glance definition to be not_analyzed since i think those typically would want to be exact matches. Maybe for now mark just as \"type\": \"string\" and we can change both in future?","commit_id":"53b9f17a4860c4d99901dfba9d1d687f04cca38e"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"ed9bb3fb026ebee77f8aea10d2f7fbb8ea917993","unresolved":false,"context_lines":[{"line_number":101,"context_line":"                \u0027host_status\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":102,"context_line":"                # Added in microversion 2.19"},{"line_number":103,"context_line":"                \u0027server_description\u0027: {\u0027type\u0027: \u0027string\u0027,"},{"line_number":104,"context_line":"                                       \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":105,"context_line":"                # Added in microversion 2.26"},{"line_number":106,"context_line":"                \u0027server_tags\u0027: {\u0027type\u0027: \u0027string\u0027,"},{"line_number":107,"context_line":"                                \u0027index\u0027: \u0027not_analyzed\u0027}"}],"source_content_type":"text/x-python","patch_set":17,"id":"7aa08908_ee2f029f","line":104,"in_reply_to":"7aa08908_fbbfb8a7","updated":"2016-06-12 08:57:27.000000000","message":"Sure, Done","commit_id":"53b9f17a4860c4d99901dfba9d1d687f04cca38e"},{"author":{"_account_id":7665,"name":"Travis Tripp","email":"os.travis.tripp@gmail.com","username":"travis.tripp"},"change_message_id":"bed3a0e0d700254d46c7e642b9bc54adef7f5db4","unresolved":false,"context_lines":[{"line_number":95,"context_line":"                # maintains compatibility with both"},{"line_number":96,"context_line":"                \u0027security_groups\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":97,"context_line":"                \u0027status\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":98,"context_line":"                # NOTE: do we have a way to show the microversion?"},{"line_number":99,"context_line":"                # Added in microversion 2.9"},{"line_number":100,"context_line":"                \u0027locked\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":101,"context_line":"                # Added in microversion 2.16"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_2297e43a","line":98,"updated":"2016-06-14 23:51:48.000000000","message":"we could add it as a field in the _meta below.   Since fields can in theory come and go in microversions (right?), might need to consider a way to represent the versions it is in.","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"877f1f1f1643988cc3b8b74aba11ce52d6b8f15b","unresolved":false,"context_lines":[{"line_number":95,"context_line":"                # maintains compatibility with both"},{"line_number":96,"context_line":"                \u0027security_groups\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":97,"context_line":"                \u0027status\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":98,"context_line":"                # NOTE: do we have a way to show the microversion?"},{"line_number":99,"context_line":"                # Added in microversion 2.9"},{"line_number":100,"context_line":"                \u0027locked\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":101,"context_line":"                # Added in microversion 2.16"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_afc0dce0","line":98,"in_reply_to":"7aa08908_2297e43a","updated":"2016-06-15 01:23:37.000000000","message":"Will check it","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"7f9819379f56d2d3c90fab66dc9c216a50826a35","unresolved":false,"context_lines":[{"line_number":95,"context_line":"                # maintains compatibility with both"},{"line_number":96,"context_line":"                \u0027security_groups\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":97,"context_line":"                \u0027status\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":98,"context_line":"                # NOTE: do we have a way to show the microversion?"},{"line_number":99,"context_line":"                # Added in microversion 2.9"},{"line_number":100,"context_line":"                \u0027locked\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":101,"context_line":"                # Added in microversion 2.16"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_348fbf2f","line":98,"in_reply_to":"7aa08908_438101fb","updated":"2016-06-16 16:56:23.000000000","message":"Adding it to the /facets response would involve looking it up from nova since we\u0027ve nowhere to store it, so I think we should add that as a separate patch. Other services are adopting microversioning i think so it\u0027s not specific to nova.","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":7665,"name":"Travis Tripp","email":"os.travis.tripp@gmail.com","username":"travis.tripp"},"change_message_id":"3b2dda371dda039333be1bfd37792bc23b9c61c7","unresolved":false,"context_lines":[{"line_number":95,"context_line":"                # maintains compatibility with both"},{"line_number":96,"context_line":"                \u0027security_groups\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":97,"context_line":"                \u0027status\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":98,"context_line":"                # NOTE: do we have a way to show the microversion?"},{"line_number":99,"context_line":"                # Added in microversion 2.9"},{"line_number":100,"context_line":"                \u0027locked\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":101,"context_line":"                # Added in microversion 2.16"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_cd525e68","line":98,"in_reply_to":"7aa08908_afc0dce0","updated":"2016-06-15 21:44:28.000000000","message":"Also, we could return this in the facet info: https://review.openstack.org/#/c/317167/\n\nWe\u0027ve been trying to also determine how to best show this in the plugin endpoint.\n\nhttp://{{IP}}:{{SEARCHLIGHT_V1_PORT}}/v1/search/plugins","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"233c01a51e94822eac2b115ed132a079a2200cf4","unresolved":false,"context_lines":[{"line_number":95,"context_line":"                # maintains compatibility with both"},{"line_number":96,"context_line":"                \u0027security_groups\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":97,"context_line":"                \u0027status\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":98,"context_line":"                # NOTE: do we have a way to show the microversion?"},{"line_number":99,"context_line":"                # Added in microversion 2.9"},{"line_number":100,"context_line":"                \u0027locked\u0027: {\u0027type\u0027: \u0027string\u0027, \u0027index\u0027: \u0027not_analyzed\u0027},"},{"line_number":101,"context_line":"                # Added in microversion 2.16"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_438101fb","line":98,"in_reply_to":"7aa08908_cd525e68","updated":"2016-06-16 11:55:00.000000000","message":"Hi, I dont quite get you here, could you explain more?","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":7665,"name":"Travis Tripp","email":"os.travis.tripp@gmail.com","username":"travis.tripp"},"change_message_id":"3b2dda371dda039333be1bfd37792bc23b9c61c7","unresolved":false,"context_lines":[{"line_number":103,"context_line":"                # Added in microversion 2.19"},{"line_number":104,"context_line":"                \u0027description\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":105,"context_line":"                # Added in microversion 2.26"},{"line_number":106,"context_line":"                \u0027tags\u0027: {\u0027type\u0027: \u0027string\u0027},"},{"line_number":107,"context_line":"            },"},{"line_number":108,"context_line":"            \"_meta\": {"},{"line_number":109,"context_line":"                \"image.id\": {"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_ad7272e1","line":106,"updated":"2016-06-15 21:44:28.000000000","message":"Adding a comment in the code to this URL would be helpful:\n\nhttp://git.openstack.org/cgit/openstack/nova/tree/nova/api/openstack/rest_api_version_history.rst","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":7665,"name":"Travis Tripp","email":"os.travis.tripp@gmail.com","username":"travis.tripp"},"change_message_id":"bed3a0e0d700254d46c7e642b9bc54adef7f5db4","unresolved":false,"context_lines":[{"line_number":136,"context_line":"        return ServerIndex.ADMIN_ONLY_FIELDS + from_conf"},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"    @property"},{"line_number":139,"context_line":"    def facets_with_options(self):"},{"line_number":140,"context_line":"        return (\u0027OS-EXT-AZ:availability_zone\u0027,"},{"line_number":141,"context_line":"                \u0027status\u0027, \u0027image.id\u0027, \u0027flavor.id\u0027, \u0027networks.name\u0027,"},{"line_number":142,"context_line":"                \u0027networks.OS-EXT-IPS:type\u0027, \u0027networks.version\u0027,"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_228084f6","line":139,"updated":"2016-06-14 23:51:48.000000000","message":"host_status should be added here.\n\nI think locked also should be added here.","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"877f1f1f1643988cc3b8b74aba11ce52d6b8f15b","unresolved":false,"context_lines":[{"line_number":136,"context_line":"        return ServerIndex.ADMIN_ONLY_FIELDS + from_conf"},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"    @property"},{"line_number":139,"context_line":"    def facets_with_options(self):"},{"line_number":140,"context_line":"        return (\u0027OS-EXT-AZ:availability_zone\u0027,"},{"line_number":141,"context_line":"                \u0027status\u0027, \u0027image.id\u0027, \u0027flavor.id\u0027, \u0027networks.name\u0027,"},{"line_number":142,"context_line":"                \u0027networks.OS-EXT-IPS:type\u0027, \u0027networks.version\u0027,"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_cfbd6869","line":139,"in_reply_to":"7aa08908_228084f6","updated":"2016-06-15 01:23:37.000000000","message":"Hmm, what I really want is that host_status is an admin only field, how shoul it be implemented?","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":7665,"name":"Travis Tripp","email":"os.travis.tripp@gmail.com","username":"travis.tripp"},"change_message_id":"3b2dda371dda039333be1bfd37792bc23b9c61c7","unresolved":false,"context_lines":[{"line_number":136,"context_line":"        return ServerIndex.ADMIN_ONLY_FIELDS + from_conf"},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"    @property"},{"line_number":139,"context_line":"    def facets_with_options(self):"},{"line_number":140,"context_line":"        return (\u0027OS-EXT-AZ:availability_zone\u0027,"},{"line_number":141,"context_line":"                \u0027status\u0027, \u0027image.id\u0027, \u0027flavor.id\u0027, \u0027networks.name\u0027,"},{"line_number":142,"context_line":"                \u0027networks.OS-EXT-IPS:type\u0027, \u0027networks.version\u0027,"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_a8e260ff","line":139,"in_reply_to":"7aa08908_cfbd6869","updated":"2016-06-15 21:44:28.000000000","message":"You already have that part done up on line 32.  You can still add it here and it will be excluded from facets unless you are an admin.  I just tested out doing this and verified it will work using the searchlight ui plugin for horizon.\n\nhttp://imgur.com/a/ShM3m\n\nSee the screenshots.  In the top one, I am logged in as admin and I was given the host status facet.  In the lower one I am not admin and I don\u0027t get that facet.","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"}],"searchlight/elasticsearch/plugins/openstack_clients.py":[{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"a97a99af2836bb41116bc3dcb9f9ebcada9fe474","unresolved":false,"context_lines":[{"line_number":36,"context_line":"               help\u003d\u0027Type of endpoint in Identity service catalog to \u0027"},{"line_number":37,"context_line":"                    \u0027use for communication with OpenStack services.\u0027),"},{"line_number":38,"context_line":"]"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"GROUP \u003d \"service_credentials\""},{"line_number":42,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"9abb7d3a_a86bcbb5","line":39,"updated":"2016-06-01 19:12:34.000000000","message":"Why not put the nova API version in here? It\u0027s only going to be relevant when connecting to nova","commit_id":"16a0218a24ebcf1b31a404346389036890a7daf9"},{"author":{"_account_id":4428,"name":"Liyingjun","email":"yinjalee@163.com","username":"liyingjun"},"change_message_id":"5e90c90a049b99adcc0b89bc1afc1fb2d183d9d2","unresolved":false,"context_lines":[{"line_number":104,"context_line":"    max_version \u003d do_get_client().versions.list()[-1].version"},{"line_number":105,"context_line":"    if version \u003e float(max_version):"},{"line_number":106,"context_line":"        raise exception.InvalidAPIVersionProvidedMax("},{"line_number":107,"context_line":"            service\u003d\u0027compute service\u0027, version\u003dmax_version)"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"    return do_get_client(version)"},{"line_number":110,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"7aa08908_36838ace","line":107,"updated":"2016-06-06 01:23:19.000000000","message":"I\u0027d prefer make just one exception with a range of supported version here. Otherwise one will need to keep trying to get the supported api versions.","commit_id":"53b9f17a4860c4d99901dfba9d1d687f04cca38e"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"08f2ee7afd01138d37f5a23434b2a8ca6f6d9f45","unresolved":false,"context_lines":[{"line_number":104,"context_line":"    max_version \u003d do_get_client().versions.list()[-1].version"},{"line_number":105,"context_line":"    if version \u003e float(max_version):"},{"line_number":106,"context_line":"        raise exception.InvalidAPIVersionProvidedMax("},{"line_number":107,"context_line":"            service\u003d\u0027compute service\u0027, version\u003dmax_version)"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"    return do_get_client(version)"},{"line_number":110,"context_line":""}],"source_content_type":"text/x-python","patch_set":17,"id":"7aa08908_36126a63","line":107,"in_reply_to":"7aa08908_36838ace","updated":"2016-06-06 01:40:56.000000000","message":"Done","commit_id":"53b9f17a4860c4d99901dfba9d1d687f04cca38e"},{"author":{"_account_id":7665,"name":"Travis Tripp","email":"os.travis.tripp@gmail.com","username":"travis.tripp"},"change_message_id":"bed3a0e0d700254d46c7e642b9bc54adef7f5db4","unresolved":false,"context_lines":[{"line_number":38,"context_line":"               help\u003d\u0027Type of endpoint in Identity service catalog to \u0027"},{"line_number":39,"context_line":"                    \u0027use for communication with OpenStack services.\u0027),"},{"line_number":40,"context_line":"]"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"compute_api_version \u003d cfg.StrOpt("},{"line_number":43,"context_line":"    \u0027compute_api_version\u0027,"},{"line_number":44,"context_line":"    default\u003d\u00272.1\u0027,"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_c216e0a5","line":41,"updated":"2016-06-14 23:51:48.000000000","message":"Can we move this into the nova plugin?  Do it similarly to the way we do swift:\n\nhttps://github.com/openstack/searchlight/blob/7f566031a7ca393744c3b178bd161890a1afb59a/searchlight/elasticsearch/plugins/swift/objects.py#L24-L30\n\nhttps://github.com/openstack/searchlight/blob/7f566031a7ca393744c3b178bd161890a1afb59a/searchlight/elasticsearch/plugins/swift/accounts.py#L25-L31\n\nI\u0027d probably just call it api_version and then we\u0027d use the config option in other plugins.\n\nIt then should also be added to the nova plugin rst.\n\nhttps://github.com/openstack/searchlight/blob/7f566031a7ca393744c3b178bd161890a1afb59a/doc/source/plugins/nova.rst\n\nAnd we could put an example in the devstack local.conf:\n\nhttps://github.com/openstack/searchlight/blob/7f566031a7ca393744c3b178bd161890a1afb59a/devstack/local.conf#L188","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"7f9819379f56d2d3c90fab66dc9c216a50826a35","unresolved":false,"context_lines":[{"line_number":38,"context_line":"               help\u003d\u0027Type of endpoint in Identity service catalog to \u0027"},{"line_number":39,"context_line":"                    \u0027use for communication with OpenStack services.\u0027),"},{"line_number":40,"context_line":"]"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"compute_api_version \u003d cfg.StrOpt("},{"line_number":43,"context_line":"    \u0027compute_api_version\u0027,"},{"line_number":44,"context_line":"    default\u003d\u00272.1\u0027,"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_0f3a6ce7","line":41,"in_reply_to":"7aa08908_4a80068c","updated":"2016-06-16 16:56:23.000000000","message":"I\u0027d be ok with a separate group (and I think ultimately service_credentials may need to be overridable per service client anyway). Putting it in nova/servers.py i still disagree with because it restricts it to a single plugin - if we take neutron as an example it wouldn\u0027t make sense to pick one of the plugins as where the client api version is configured. We could add it in nova/__init__.py but honestly i think it\u0027s better to keep it all here.\n\nRight now, I would say that I\u0027m ok introducing a new group for this that can contain nova-client specific things, and as a later patch we can allow things in there to override [service_credentials] (like a separate nova user)","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"877f1f1f1643988cc3b8b74aba11ce52d6b8f15b","unresolved":false,"context_lines":[{"line_number":38,"context_line":"               help\u003d\u0027Type of endpoint in Identity service catalog to \u0027"},{"line_number":39,"context_line":"                    \u0027use for communication with OpenStack services.\u0027),"},{"line_number":40,"context_line":"]"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"compute_api_version \u003d cfg.StrOpt("},{"line_number":43,"context_line":"    \u0027compute_api_version\u0027,"},{"line_number":44,"context_line":"    default\u003d\u00272.1\u0027,"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_cfc8c824","line":41,"in_reply_to":"7aa08908_c216e0a5","updated":"2016-06-15 01:23:37.000000000","message":"OK, this was also my first idea to put it in nova_plugin, but steve suggest to put it here, I will look deeper to find the best way; For the second, are you suggeting we add this \"api_version\" for group(section in searchligh.conf) [nova_plugins] ? because diffrent service will have different microversion, we should have different config for different services.","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"e7ae123f8d9ed1229ed4340667224e7e12a2230e","unresolved":false,"context_lines":[{"line_number":38,"context_line":"               help\u003d\u0027Type of endpoint in Identity service catalog to \u0027"},{"line_number":39,"context_line":"                    \u0027use for communication with OpenStack services.\u0027),"},{"line_number":40,"context_line":"]"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"compute_api_version \u003d cfg.StrOpt("},{"line_number":43,"context_line":"    \u0027compute_api_version\u0027,"},{"line_number":44,"context_line":"    default\u003d\u00272.1\u0027,"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_4a80068c","line":41,"in_reply_to":"7aa08908_c86b6c1e","updated":"2016-06-16 06:21:32.000000000","message":"Sure","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":7665,"name":"Travis Tripp","email":"os.travis.tripp@gmail.com","username":"travis.tripp"},"change_message_id":"3b2dda371dda039333be1bfd37792bc23b9c61c7","unresolved":false,"context_lines":[{"line_number":38,"context_line":"               help\u003d\u0027Type of endpoint in Identity service catalog to \u0027"},{"line_number":39,"context_line":"                    \u0027use for communication with OpenStack services.\u0027),"},{"line_number":40,"context_line":"]"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"compute_api_version \u003d cfg.StrOpt("},{"line_number":43,"context_line":"    \u0027compute_api_version\u0027,"},{"line_number":44,"context_line":"    default\u003d\u00272.1\u0027,"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_c86b6c1e","line":41,"in_reply_to":"7aa08908_cfc8c824","updated":"2016-06-15 21:44:28.000000000","message":"So, I was actually suggesting that this go into \n\n[resource_plugin:os_nova_server]\n\nand define it in\n\nhttps://github.com/openstack/searchlight/blob/master/searchlight/elasticsearch/plugins/nova/servers.py\n\nHowever, I do see Steve\u0027s comment[0] about putting in here. Maybe it make sense in this file so that any calls to nova will use this specified version.  However if we leave it here, I\u0027d rather it be in a group of something like:\n\n[resource_client:os_nova]\napi_version\n\nI\u0027ll ping Steve and ask his opinion.\n\nhttps://review.openstack.org/#/c/322370/8/searchlight/elasticsearch/plugins/openstack_clients.py","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":7665,"name":"Travis Tripp","email":"os.travis.tripp@gmail.com","username":"travis.tripp"},"change_message_id":"3b2dda371dda039333be1bfd37792bc23b9c61c7","unresolved":false,"context_lines":[{"line_number":41,"context_line":""},{"line_number":42,"context_line":"compute_api_version \u003d cfg.StrOpt("},{"line_number":43,"context_line":"    \u0027compute_api_version\u0027,"},{"line_number":44,"context_line":"    default\u003d\u00272.1\u0027,"},{"line_number":45,"context_line":"    help\u003d\u0027The compute API (micro)version, the provided \u0027"},{"line_number":46,"context_line":"         \u0027compute API (micro)version should be not smaller \u0027"},{"line_number":47,"context_line":"         \u0027than 2.1 and not larger than the max supported \u0027"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_ed2aba8f","line":44,"updated":"2016-06-15 21:44:28.000000000","message":"I wonder if the default should be whatever is the last microversion that we\u0027ve added mapping support (e.g. 2.26)","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"5117e7047bcb342810648aeb67f12cd0f4b0f8a8","unresolved":false,"context_lines":[{"line_number":41,"context_line":""},{"line_number":42,"context_line":"compute_api_version \u003d cfg.StrOpt("},{"line_number":43,"context_line":"    \u0027compute_api_version\u0027,"},{"line_number":44,"context_line":"    default\u003d\u00272.1\u0027,"},{"line_number":45,"context_line":"    help\u003d\u0027The compute API (micro)version, the provided \u0027"},{"line_number":46,"context_line":"         \u0027compute API (micro)version should be not smaller \u0027"},{"line_number":47,"context_line":"         \u0027than 2.1 and not larger than the max supported \u0027"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_7525a55a","line":44,"in_reply_to":"7aa08908_4a12a259","updated":"2016-06-17 06:42:29.000000000","message":"Actually the code will support the latest version, but the API calls should include microversion information, if not send, the default will be 2.1; Besides, as Searchlight is a quite new project compare to Nova etc. and we are quickly adding new plugins for a lot of services, our users may use N version of searchlight on their already deployed Kilo version of Nova for example, so changing default value for each version is not good.\n\nBesides, it is a config option, users can change according to their needs.","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"7f9819379f56d2d3c90fab66dc9c216a50826a35","unresolved":false,"context_lines":[{"line_number":41,"context_line":""},{"line_number":42,"context_line":"compute_api_version \u003d cfg.StrOpt("},{"line_number":43,"context_line":"    \u0027compute_api_version\u0027,"},{"line_number":44,"context_line":"    default\u003d\u00272.1\u0027,"},{"line_number":45,"context_line":"    help\u003d\u0027The compute API (micro)version, the provided \u0027"},{"line_number":46,"context_line":"         \u0027compute API (micro)version should be not smaller \u0027"},{"line_number":47,"context_line":"         \u0027than 2.1 and not larger than the max supported \u0027"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_4a12a259","line":44,"in_reply_to":"7aa08908_8a614e14","updated":"2016-06-16 16:56:23.000000000","message":"I did ask this at the summit but wasn\u0027t clear on the answer - if someone deploys mitaka openstack, they would presumably deploy nova version 2.26 (or whatever is current at that time)? Or can they choose to deploy an older mitaka-cycle version? Or even keep nova running from liberty or kilo with an even older version?\n\nA minimum version is fine with me as long as the serialization code is aware that some fields may not be present","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"e7ae123f8d9ed1229ed4340667224e7e12a2230e","unresolved":false,"context_lines":[{"line_number":41,"context_line":""},{"line_number":42,"context_line":"compute_api_version \u003d cfg.StrOpt("},{"line_number":43,"context_line":"    \u0027compute_api_version\u0027,"},{"line_number":44,"context_line":"    default\u003d\u00272.1\u0027,"},{"line_number":45,"context_line":"    help\u003d\u0027The compute API (micro)version, the provided \u0027"},{"line_number":46,"context_line":"         \u0027compute API (micro)version should be not smaller \u0027"},{"line_number":47,"context_line":"         \u0027than 2.1 and not larger than the max supported \u0027"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_8a614e14","line":44,"in_reply_to":"7aa08908_ed2aba8f","updated":"2016-06-16 06:21:32.000000000","message":"I think the min version will be better, because we cannot guarantee that all the Searchlight user upgrades their Nove to the latest version all the time, if they didn\u0027t our call to novaclient will fail.","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"7f9819379f56d2d3c90fab66dc9c216a50826a35","unresolved":false,"context_lines":[{"line_number":52,"context_line":"GROUP \u003d \"service_credentials\""},{"line_number":53,"context_line":""},{"line_number":54,"context_line":"cfg.CONF.register_opts(client_opts, group\u003dGROUP)"},{"line_number":55,"context_line":"cfg.CONF.register_opt(compute_api_version, group\u003d\"nova_plugin\")"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"ks_session.Session.register_conf_options(cfg.CONF, GROUP)"},{"line_number":58,"context_line":""}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_0a6d3acc","line":55,"range":{"start_line":55,"start_character":50,"end_line":55,"end_character":61},"updated":"2016-06-16 16:56:23.000000000","message":"I think something like [resource_client:nova] would be ok, or even [service_credentials:nova] to keep naming consistent.","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"7f9819379f56d2d3c90fab66dc9c216a50826a35","unresolved":false,"context_lines":[{"line_number":60,"context_line":""},{"line_number":61,"context_line":"_session \u003d None"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"MIN_API_VERSION \u003d 2.1"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"def _get_session():"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_ca9fb263","line":63,"range":{"start_line":63,"start_character":0,"end_line":63,"end_character":15},"updated":"2016-06-16 16:56:23.000000000","message":"NOVA_MIN_API_VERSION? https://docs.python.org/2/library/argparse.html#type might be a neater solution though; you can validate credentials as part of argparse","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"7f9819379f56d2d3c90fab66dc9c216a50826a35","unresolved":false,"context_lines":[{"line_number":99,"context_line":"    version \u003d float(cfg.CONF.nova_plugin.compute_api_version)"},{"line_number":100,"context_line":"    # Check whether Nova can support the provided microversion."},{"line_number":101,"context_line":"    max_version \u003d do_get_client().versions.list()[-1].version"},{"line_number":102,"context_line":"    if version \u003e float(max_version) or version \u003c MIN_API_VERSION:"},{"line_number":103,"context_line":"        raise exception.InvalidAPIVersionProvided("},{"line_number":104,"context_line":"            service\u003d\u0027compute service\u0027, min_version\u003dMIN_API_VERSION,"},{"line_number":105,"context_line":"            max_version\u003dmax_version)"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_ea842ed4","line":102,"range":{"start_line":102,"start_character":17,"end_line":102,"end_character":22},"updated":"2016-06-16 16:56:23.000000000","message":"Converting to float might be a bit dicey (float(2.0) \u003e\u003d 2.0 may not necessarily pass). Take a look at http://stackoverflow.com/questions/11887762/compare-version-strings. This functionality might also be part of the argument parsing","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":7665,"name":"Travis Tripp","email":"os.travis.tripp@gmail.com","username":"travis.tripp"},"change_message_id":"f38a3e3be9bead142aa9b59f86d61c68763cdc68","unresolved":false,"context_lines":[{"line_number":61,"context_line":""},{"line_number":62,"context_line":"_session \u003d None"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"NOVA_MIN_API_VERSION \u003d \u00272.1\u0027"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"def _get_session():"}],"source_content_type":"text/x-python","patch_set":28,"id":"7aa08908_21a742a8","line":64,"updated":"2016-06-17 16:12:08.000000000","message":"Do we need to also set a MAX API VERSION that searchlight supports?","commit_id":"21042fd7f4740cb006d1887cedab150c41882a62"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"e2f2cb4abfc200a296b068842117cf8718435433","unresolved":false,"context_lines":[{"line_number":61,"context_line":""},{"line_number":62,"context_line":"_session \u003d None"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"NOVA_MIN_API_VERSION \u003d \u00272.1\u0027"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"def _get_session():"}],"source_content_type":"text/x-python","patch_set":28,"id":"7aa08908_76746ffd","line":64,"in_reply_to":"7aa08908_21a742a8","updated":"2016-06-17 17:22:09.000000000","message":"Mmmm... not sure. I don\u0027t know what we\u0027d set it to; we\u0027d have to preemptively know when a future version wouldn\u0027t work. I\u0027m fine leaving it out.","commit_id":"21042fd7f4740cb006d1887cedab150c41882a62"}],"searchlight/tests/functional/__init__.py":[{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"7f9819379f56d2d3c90fab66dc9c216a50826a35","unresolved":false,"context_lines":[{"line_number":446,"context_line":""},{"line_number":447,"context_line":"        self.api_server.dump_log(\u0027api_server\u0027)"},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"    @mock.patch(nova_version_getter, return_value\u003dfake_version_list)"},{"line_number":450,"context_line":"    def _index(self, plugin, docs, mock_version, refresh_index\u003dTrue):"},{"line_number":451,"context_line":"        \"\"\"Index data exactly as the plugin would under searchlight-manage."},{"line_number":452,"context_line":"        docs must be an iterable of whatever the plugin\u0027s \u0027get_objects\u0027 call"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_6517cf45","line":449,"range":{"start_line":449,"start_character":16,"end_line":449,"end_character":35},"updated":"2016-06-16 16:56:23.000000000","message":"Be better to mock this in the nova test code, otherwise it\u0027ll create problems as more services support microversions","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"7c547fce6955bb9846eb983ca5b873e4aa793a7d","unresolved":false,"context_lines":[{"line_number":446,"context_line":""},{"line_number":447,"context_line":"        self.api_server.dump_log(\u0027api_server\u0027)"},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"    @mock.patch(nova_version_getter, return_value\u003dfake_version_list)"},{"line_number":450,"context_line":"    def _index(self, plugin, docs, mock_version, refresh_index\u003dTrue):"},{"line_number":451,"context_line":"        \"\"\"Index data exactly as the plugin would under searchlight-manage."},{"line_number":452,"context_line":"        docs must be an iterable of whatever the plugin\u0027s \u0027get_objects\u0027 call"}],"source_content_type":"text/x-python","patch_set":24,"id":"7aa08908_53436113","line":449,"range":{"start_line":449,"start_character":16,"end_line":449,"end_character":35},"in_reply_to":"7aa08908_6517cf45","updated":"2016-06-17 07:42:47.000000000","message":"Done","commit_id":"0c1a9297c98cb235afe0433561055295fd22e195"}]}
