)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b572c806ef8082974c0a11f56c4abf7e38bd70cb","unresolved":false,"context_lines":[{"line_number":18,"context_line":"and it is an important notion for cloud usage, it should be easy for"},{"line_number":19,"context_line":"anyone to filter resources on it."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Implements: non-admin-filter-instance-by-az"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Change-Id: Ia66d3a1ceb74ed521cf44922929b2a502f3ee935"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3fa7e38b_ebd97054","line":21,"range":{"start_line":21,"start_character":12,"end_line":21,"end_character":43},"updated":"2020-01-08 21:12:05.000000000","message":"If you say\n\n blueprint non-admin-filter-instance-by-az\n\ngerrit will render a hyperlink, making the actual blueprint ([1] fmr) easier to find.\n\n[1] https://blueprints.launchpad.net/nova/+spec/non-admin-filter-instance-by-az","commit_id":"311ccf540e86b7437123afe371ec48dfab8b3760"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"e67c194677ce6aec76c08e4321c9d868f9b3c83e","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Non-admin user can filter their instances by AZs"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Microversion bump to allow non-admin user to use"},{"line_number":10,"context_line":"``availability_zone`` filter key when listing instances."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Currently only admin users are able to filter instances per AZ,"},{"line_number":13,"context_line":"and the only way to allow it is to edit the nova policy"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"3fa7e38b_45a396b1","line":10,"range":{"start_line":10,"start_character":2,"end_line":10,"end_character":19},"updated":"2020-01-31 02:49:37.000000000","message":"From the spec, there are need to change below parameters to all non-admin to filter instances.\n\n- ``availability_zone``\n- ``config_drive``\n- ``key_name``\n- ``created_at``\n- ``launched_at``\n- ``terminated_at``\n- ``power_state``\n- ``task_state``\n- ``vm_state``\n- ``progress``\n- ``user_id``\n\nThis patch need to be update.","commit_id":"f8adfea9541a832ce09481a406453327efc71bbb"}],"api-ref/source/parameters.yaml":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"a8bd354804837d3f9726a0678d123501fe11b4f9","unresolved":false,"context_lines":[{"line_number":417,"context_line":"  description: |"},{"line_number":418,"context_line":"    Filter the server list result by server availability zone."},{"line_number":419,"context_line":""},{"line_number":420,"context_line":"    This parameter is only valid when specified by administrators until"},{"line_number":421,"context_line":"    microversion 2.82. If non-admin users specify this parameter before"},{"line_number":422,"context_line":"    microversion 2.82, it is ignored."},{"line_number":423,"context_line":"  in: query"},{"line_number":424,"context_line":"  required: false"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"3fa7e38b_5f9f1a4d","line":421,"range":{"start_line":420,"start_character":66,"end_line":421,"end_character":21},"updated":"2020-02-13 17:27:38.000000000","message":"it sounds after 2.82 admin also cannot use this.\n\n.. and after 2.82, it is valid for non-admin users too.","commit_id":"66e0f9fbc9e9a440c448f15ba588a45d306c7ea8"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"a8bd354804837d3f9726a0678d123501fe11b4f9","unresolved":false,"context_lines":[{"line_number":581,"context_line":"    Filter the server list result by the config drive setting of the server."},{"line_number":582,"context_line":""},{"line_number":583,"context_line":"    This parameter is only valid when specified by administrators until"},{"line_number":584,"context_line":"    microversion 2.82. If non-admin users specify this parameter before"},{"line_number":585,"context_line":"    microversion 2.82, it is ignored."},{"line_number":586,"context_line":"  in: query"},{"line_number":587,"context_line":"  required: false"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"3fa7e38b_9fc27234","line":584,"range":{"start_line":584,"start_character":21,"end_line":584,"end_character":23},"updated":"2020-02-13 17:27:38.000000000","message":"ditto","commit_id":"66e0f9fbc9e9a440c448f15ba588a45d306c7ea8"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"a8bd354804837d3f9726a0678d123501fe11b4f9","unresolved":false,"context_lines":[{"line_number":600,"context_line":"    If you omit the time zone, the UTC time zone is assumed."},{"line_number":601,"context_line":""},{"line_number":602,"context_line":"    This parameter is only valid when specified by administrators until"},{"line_number":603,"context_line":"    microversion 2.82. If non-admin users specify this parameter before"},{"line_number":604,"context_line":"    microversion 2.82, it is ignored."},{"line_number":605,"context_line":"  in: query"},{"line_number":606,"context_line":"  required: false"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"3fa7e38b_1fdc4215","line":603,"range":{"start_line":603,"start_character":21,"end_line":603,"end_character":22},"updated":"2020-02-13 17:27:38.000000000","message":"ditto","commit_id":"66e0f9fbc9e9a440c448f15ba588a45d306c7ea8"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"a8bd354804837d3f9726a0678d123501fe11b4f9","unresolved":false,"context_lines":[{"line_number":892,"context_line":"    Filter the server list result by keypair name."},{"line_number":893,"context_line":""},{"line_number":894,"context_line":"    This parameter is only valid when specified by administrators until"},{"line_number":895,"context_line":"    microversion 2.82. If non-admin users specify this parameter before"},{"line_number":896,"context_line":"    microversion 2.82, it is ignored."},{"line_number":897,"context_line":"  in: query"},{"line_number":898,"context_line":"  required: false"}],"source_content_type":"text/x-yaml","patch_set":6,"id":"3fa7e38b_bfde4e0c","line":895,"range":{"start_line":895,"start_character":21,"end_line":895,"end_character":22},"updated":"2020-02-13 17:27:38.000000000","message":"ditto","commit_id":"66e0f9fbc9e9a440c448f15ba588a45d306c7ea8"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"63bde46348b2e3b9a2bad78acfe7457241c97c61","unresolved":false,"context_lines":[{"line_number":417,"context_line":"  description: |"},{"line_number":418,"context_line":"    Filter the server list result by server availability zone."},{"line_number":419,"context_line":""},{"line_number":420,"context_line":"    This parameter is restricted to administrators until microversion 2.82."},{"line_number":421,"context_line":"    If non-admin users specify this parameter before microversion 2.83, it"},{"line_number":422,"context_line":"    is ignored."},{"line_number":423,"context_line":"  in: query"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"df33271e_ce513ddb","line":420,"range":{"start_line":420,"start_character":0,"end_line":420,"end_character":1},"updated":"2020-03-24 17:19:34.000000000","message":"This is confusingly worded. I know what you were going for but it\u0027s fixed in 2.83. Consider:\n\n  This parameter is restricted to administrators until microversion 2.83.\n  If non-admin users specify this parameter on a microversion less than 2.83,\n  it will be ignored.","commit_id":"4018d6fb71a4e5bb0554ac36479cb217f55a6fcf"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"5d496417b7a3782c6ba20460f7d50b37e7e770d5","unresolved":false,"context_lines":[{"line_number":417,"context_line":"  description: |"},{"line_number":418,"context_line":"    Filter the server list result by server availability zone."},{"line_number":419,"context_line":""},{"line_number":420,"context_line":"    This parameter is restricted to administrators until microversion 2.82."},{"line_number":421,"context_line":"    If non-admin users specify this parameter before microversion 2.83, it"},{"line_number":422,"context_line":"    is ignored."},{"line_number":423,"context_line":"  in: query"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"df33271e_d03b2ece","line":420,"range":{"start_line":420,"start_character":0,"end_line":420,"end_character":1},"in_reply_to":"df33271e_ce513ddb","updated":"2020-04-10 03:46:45.000000000","message":"Done","commit_id":"4018d6fb71a4e5bb0554ac36479cb217f55a6fcf"}],"doc/source/contributor/microversions.rst":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"fe023a276cb2d1f8d2dc4c2af913340daeb28a34","unresolved":false,"context_lines":[{"line_number":372,"context_line":"  \u003ccontributor/microversions\u003e` in python-novaclient for more details."},{"line_number":373,"context_line":""},{"line_number":374,"context_line":"* If the microversion changes the response schema, a new schema and test for"},{"line_number":375,"context_line":"  the microversion must be added to Tempest, and json examples must be added"},{"line_number":376,"context_line":"  to ``doc/api_samples`` directory."},{"line_number":377,"context_line":""},{"line_number":378,"context_line":"* Update the `API Reference`_ documentation as appropriate.  The source is"},{"line_number":379,"context_line":"  located under `api-ref/source/`."}],"source_content_type":"text/x-rst","patch_set":8,"id":"1fa4df85_80019e07","line":376,"range":{"start_line":375,"start_character":45,"end_line":376,"end_character":35},"updated":"2020-03-10 17:33:35.000000000","message":"This is not needed for all cases, like this change where we are changing the sample response but changing the access permission. \n\nI will suggest adding this as a separate item :\n\n* If applicable, add Functional sample tests under ``nova/tests/functional/api_sample_tests``. Also, add JSON examples to ``doc/api_samples`` directory which can be generated automatically via tox env ``api-samples`` or run test with env var ``GENERATE_SAMPLES`` True.","commit_id":"f44a0dd56833274a440672716158ea9b8bd2e77d"},{"author":{"_account_id":28595,"name":"Victor Coutellier","email":"victor.coutellier@gmail.com","username":"alistarle"},"change_message_id":"7d830e377cafde6460fee6ff3909011f2895c7c3","unresolved":false,"context_lines":[{"line_number":372,"context_line":"  \u003ccontributor/microversions\u003e` in python-novaclient for more details."},{"line_number":373,"context_line":""},{"line_number":374,"context_line":"* If the microversion changes the response schema, a new schema and test for"},{"line_number":375,"context_line":"  the microversion must be added to Tempest, and json examples must be added"},{"line_number":376,"context_line":"  to ``doc/api_samples`` directory."},{"line_number":377,"context_line":""},{"line_number":378,"context_line":"* Update the `API Reference`_ documentation as appropriate.  The source is"},{"line_number":379,"context_line":"  located under `api-ref/source/`."}],"source_content_type":"text/x-rst","patch_set":8,"id":"1fa4df85_67c1cf2e","line":376,"range":{"start_line":375,"start_character":45,"end_line":376,"end_character":35},"in_reply_to":"1fa4df85_80019e07","updated":"2020-03-15 16:35:13.000000000","message":"Done","commit_id":"f44a0dd56833274a440672716158ea9b8bd2e77d"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"d2ea62fd552a6ceff457ae3eb17d1cd0dbffe713","unresolved":false,"context_lines":[{"line_number":383,"context_line":"  located under `api-ref/source/`."},{"line_number":384,"context_line":""},{"line_number":385,"context_line":"* If the microversion changes servers related APIs, update the"},{"line_number":386,"context_line":"  `api-guide/source/server_concepts.rst` accordingly."},{"line_number":387,"context_line":""},{"line_number":388,"context_line":".. _API Reference: https://docs.openstack.org/api-ref/compute/"},{"line_number":389,"context_line":""}],"source_content_type":"text/x-rst","patch_set":9,"id":"1fa4df85_d1c4fc42","line":386,"range":{"start_line":386,"start_character":2,"end_line":386,"end_character":3},"updated":"2020-03-16 07:37:33.000000000","message":"nit: ``api-guide/source/server_concepts.rst``","commit_id":"4018d6fb71a4e5bb0554ac36479cb217f55a6fcf"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"5d496417b7a3782c6ba20460f7d50b37e7e770d5","unresolved":false,"context_lines":[{"line_number":383,"context_line":"  located under `api-ref/source/`."},{"line_number":384,"context_line":""},{"line_number":385,"context_line":"* If the microversion changes servers related APIs, update the"},{"line_number":386,"context_line":"  `api-guide/source/server_concepts.rst` accordingly."},{"line_number":387,"context_line":""},{"line_number":388,"context_line":".. _API Reference: https://docs.openstack.org/api-ref/compute/"},{"line_number":389,"context_line":""}],"source_content_type":"text/x-rst","patch_set":9,"id":"df33271e_b0382ad3","line":386,"range":{"start_line":386,"start_character":2,"end_line":386,"end_character":3},"in_reply_to":"1fa4df85_d1c4fc42","updated":"2020-04-10 03:46:45.000000000","message":"Done","commit_id":"4018d6fb71a4e5bb0554ac36479cb217f55a6fcf"}],"nova/api/openstack/api_version_request.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"a8bd354804837d3f9726a0678d123501fe11b4f9","unresolved":false,"context_lines":[{"line_number":219,"context_line":"             ``GET /servers/{server_id}/migrations/{migration_id}``."},{"line_number":220,"context_line":"    * 2.81 - Adds support for image cache management by aggregate by adding"},{"line_number":221,"context_line":"             ``POST /os-aggregates/{aggregate_id}/images``."},{"line_number":222,"context_line":"    * 2.82 - Allow more filter/sort parameter for ``GET /servers/detail`` and"},{"line_number":223,"context_line":"             ``GET /servers`` for non-admin."},{"line_number":224,"context_line":"\"\"\""},{"line_number":225,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"3fa7e38b_7a9304a5","line":222,"range":{"start_line":222,"start_character":30,"end_line":222,"end_character":35},"updated":"2020-02-13 17:27:38.000000000","message":"this is not changing the sort kye. newly added keys are already in valid sort key list- https://github.com/openstack/nova/blob/0d3aeb0287a0619695c9b9e17c2dec49099876a5/nova/api/openstack/compute/schemas/servers.py#L546","commit_id":"66e0f9fbc9e9a440c448f15ba588a45d306c7ea8"}],"nova/api/openstack/compute/rest_api_version_history.rst":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"a8bd354804837d3f9726a0678d123501fe11b4f9","unresolved":false,"context_lines":[{"line_number":1083,"context_line":"2.82"},{"line_number":1084,"context_line":"----"},{"line_number":1085,"context_line":""},{"line_number":1086,"context_line":"Allow the following filters as a filter/sort parameter for"},{"line_number":1087,"context_line":"``GET /servers/detail`` and ``GET /servers`` for non-admin :"},{"line_number":1088,"context_line":""},{"line_number":1089,"context_line":"* ``availability_zone``"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3fa7e38b_fae4d443","line":1086,"range":{"start_line":1086,"start_character":40,"end_line":1086,"end_character":44},"updated":"2020-02-13 17:27:38.000000000","message":"ditto","commit_id":"66e0f9fbc9e9a440c448f15ba588a45d306c7ea8"}],"nova/api/openstack/compute/servers.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b572c806ef8082974c0a11f56c4abf7e38bd70cb","unresolved":false,"context_lines":[{"line_number":1270,"context_line":"        # will be removed later for non-admins. Fixing this would be nice but"},{"line_number":1271,"context_line":"        # probably not trivial."},{"line_number":1272,"context_line":"        opt_list \u003d (\u0027reservation_id\u0027, \u0027name\u0027, \u0027status\u0027, \u0027image\u0027, \u0027flavor\u0027,"},{"line_number":1273,"context_line":"                    \u0027ip\u0027, \u0027changes-since\u0027, \u0027all_tenants\u0027, \u0027availability_zone\u0027)"},{"line_number":1274,"context_line":"        if api_version_request.is_supported(req, min_version\u003d\u00272.5\u0027):"},{"line_number":1275,"context_line":"            opt_list +\u003d (\u0027ip6\u0027,)"},{"line_number":1276,"context_line":"        if api_version_request.is_supported(req, min_version\u003d\u00272.26\u0027):"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_8b923c57","line":1273,"updated":"2020-01-08 21:12:05.000000000","message":"I don\u0027t think you can do this without a microversion. You\u0027ll probably need to add one, with a conditional like those below.","commit_id":"311ccf540e86b7437123afe371ec48dfab8b3760"}],"nova/tests/unit/api/openstack/compute/test_serversV21.py":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"fe023a276cb2d1f8d2dc4c2af913340daeb28a34","unresolved":false,"context_lines":[{"line_number":2748,"context_line":"            return objects.InstanceList("},{"line_number":2749,"context_line":"                objects\u003d[fakes.stub_instance_obj(100, uuid\u003duuids.fake)])"},{"line_number":2750,"context_line":""},{"line_number":2751,"context_line":"        self.policy.set_rules({\u0027os_compute_api:servers:index\u0027: \u0027\u0027})"},{"line_number":2752,"context_line":"        self.mock_get_all.side_effect \u003d fake_get_all"},{"line_number":2753,"context_line":""},{"line_number":2754,"context_line":"        query_str \u003d \"availability_zone\u003daz1\""}],"source_content_type":"text/x-python","patch_set":8,"id":"1fa4df85_0097ee49","line":2751,"range":{"start_line":2751,"start_character":0,"end_line":2751,"end_character":67},"updated":"2020-03-10 17:33:35.000000000","message":"you should not need to change this policy. It defaults to admin or owner so non-admin users which are owner of instance should be able to pass this checks.","commit_id":"f44a0dd56833274a440672716158ea9b8bd2e77d"},{"author":{"_account_id":28595,"name":"Victor Coutellier","email":"victor.coutellier@gmail.com","username":"alistarle"},"change_message_id":"7d830e377cafde6460fee6ff3909011f2895c7c3","unresolved":false,"context_lines":[{"line_number":2748,"context_line":"            return objects.InstanceList("},{"line_number":2749,"context_line":"                objects\u003d[fakes.stub_instance_obj(100, uuid\u003duuids.fake)])"},{"line_number":2750,"context_line":""},{"line_number":2751,"context_line":"        self.policy.set_rules({\u0027os_compute_api:servers:index\u0027: \u0027\u0027})"},{"line_number":2752,"context_line":"        self.mock_get_all.side_effect \u003d fake_get_all"},{"line_number":2753,"context_line":""},{"line_number":2754,"context_line":"        query_str \u003d \"availability_zone\u003daz1\""}],"source_content_type":"text/x-python","patch_set":8,"id":"1fa4df85_c7a9a390","line":2751,"range":{"start_line":2751,"start_character":0,"end_line":2751,"end_character":67},"in_reply_to":"1fa4df85_0097ee49","updated":"2020-03-15 16:35:13.000000000","message":"Indeed the test still work without policy change, but it will for any filter even admin-only (see my other comment about that)","commit_id":"f44a0dd56833274a440672716158ea9b8bd2e77d"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"fe023a276cb2d1f8d2dc4c2af913340daeb28a34","unresolved":false,"context_lines":[{"line_number":2751,"context_line":"        self.policy.set_rules({\u0027os_compute_api:servers:index\u0027: \u0027\u0027})"},{"line_number":2752,"context_line":"        self.mock_get_all.side_effect \u003d fake_get_all"},{"line_number":2753,"context_line":""},{"line_number":2754,"context_line":"        query_str \u003d \"availability_zone\u003daz1\""},{"line_number":2755,"context_line":"        req \u003d fakes.HTTPRequest.blank(self.path_with_query % query_str,"},{"line_number":2756,"context_line":"                                      version\u003d\u00272.83\u0027)"},{"line_number":2757,"context_line":"        servers \u003d self.controller.index(req)[\u0027servers\u0027]"}],"source_content_type":"text/x-python","patch_set":8,"id":"1fa4df85_e0973244","line":2754,"range":{"start_line":2754,"start_character":0,"end_line":2754,"end_character":43},"updated":"2020-03-10 17:33:35.000000000","message":"we need to test the same for all newly allowed filters. may we run the below code for each new filter in loop.","commit_id":"f44a0dd56833274a440672716158ea9b8bd2e77d"},{"author":{"_account_id":28595,"name":"Victor Coutellier","email":"victor.coutellier@gmail.com","username":"alistarle"},"change_message_id":"7d830e377cafde6460fee6ff3909011f2895c7c3","unresolved":false,"context_lines":[{"line_number":2751,"context_line":"        self.policy.set_rules({\u0027os_compute_api:servers:index\u0027: \u0027\u0027})"},{"line_number":2752,"context_line":"        self.mock_get_all.side_effect \u003d fake_get_all"},{"line_number":2753,"context_line":""},{"line_number":2754,"context_line":"        query_str \u003d \"availability_zone\u003daz1\""},{"line_number":2755,"context_line":"        req \u003d fakes.HTTPRequest.blank(self.path_with_query % query_str,"},{"line_number":2756,"context_line":"                                      version\u003d\u00272.83\u0027)"},{"line_number":2757,"context_line":"        servers \u003d self.controller.index(req)[\u0027servers\u0027]"}],"source_content_type":"text/x-python","patch_set":8,"id":"1fa4df85_47c85373","line":2754,"range":{"start_line":2754,"start_character":0,"end_line":2754,"end_character":43},"in_reply_to":"1fa4df85_e0973244","updated":"2020-03-15 16:35:13.000000000","message":"Done","commit_id":"f44a0dd56833274a440672716158ea9b8bd2e77d"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"fe023a276cb2d1f8d2dc4c2af913340daeb28a34","unresolved":false,"context_lines":[{"line_number":2758,"context_line":""},{"line_number":2759,"context_line":"        self.assertEqual(1, len(servers))"},{"line_number":2760,"context_line":"        self.assertEqual(uuids.fake, servers[0][\u0027id\u0027])"},{"line_number":2761,"context_line":""},{"line_number":2762,"context_line":"    def test_get_servers_by_node_fail_non_admin(self):"},{"line_number":2763,"context_line":"        def fake_get_all(context, search_opts\u003dNone, **kwargs):"},{"line_number":2764,"context_line":"            self.assertIsNotNone(search_opts)"}],"source_content_type":"text/x-python","patch_set":8,"id":"1fa4df85_00804ef4","line":2761,"range":{"start_line":2761,"start_character":0,"end_line":2761,"end_character":0},"updated":"2020-03-10 17:33:35.000000000","message":"we need to add tests showing that all newly added filters are not allowed for non-admin users if the request if with 2.82 microversion. \n\nYou can make req with version\u003d\u00272.82\u0027 and check 400 is return or not.\n\ntest_get_servers_new_filters_for_non_admin_old_version\n\nThat will show we are not breaking old microversions.","commit_id":"f44a0dd56833274a440672716158ea9b8bd2e77d"},{"author":{"_account_id":28595,"name":"Victor Coutellier","email":"victor.coutellier@gmail.com","username":"alistarle"},"change_message_id":"7d830e377cafde6460fee6ff3909011f2895c7c3","unresolved":false,"context_lines":[{"line_number":2758,"context_line":""},{"line_number":2759,"context_line":"        self.assertEqual(1, len(servers))"},{"line_number":2760,"context_line":"        self.assertEqual(uuids.fake, servers[0][\u0027id\u0027])"},{"line_number":2761,"context_line":""},{"line_number":2762,"context_line":"    def test_get_servers_by_node_fail_non_admin(self):"},{"line_number":2763,"context_line":"        def fake_get_all(context, search_opts\u003dNone, **kwargs):"},{"line_number":2764,"context_line":"            self.assertIsNotNone(search_opts)"}],"source_content_type":"text/x-python","patch_set":8,"id":"1fa4df85_a7cb4770","line":2761,"range":{"start_line":2761,"start_character":0,"end_line":2761,"end_character":0},"in_reply_to":"1fa4df85_00804ef4","updated":"2020-03-15 16:35:13.000000000","message":"Admin only filter used by user does not return a 400 but is just ignored.\n\nI add the test but if I don\u0027t do a policy change, test are failing I don\u0027t know why","commit_id":"f44a0dd56833274a440672716158ea9b8bd2e77d"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"fe023a276cb2d1f8d2dc4c2af913340daeb28a34","unresolved":false,"context_lines":[{"line_number":2759,"context_line":"        self.assertEqual(1, len(servers))"},{"line_number":2760,"context_line":"        self.assertEqual(uuids.fake, servers[0][\u0027id\u0027])"},{"line_number":2761,"context_line":""},{"line_number":2762,"context_line":"    def test_get_servers_by_node_fail_non_admin(self):"},{"line_number":2763,"context_line":"        def fake_get_all(context, search_opts\u003dNone, **kwargs):"},{"line_number":2764,"context_line":"            self.assertIsNotNone(search_opts)"},{"line_number":2765,"context_line":"            self.assertNotIn(\u0027node\u0027, search_opts)"}],"source_content_type":"text/x-python","patch_set":8,"id":"1fa4df85_80bafebd","line":2762,"range":{"start_line":2762,"start_character":8,"end_line":2762,"end_character":54},"updated":"2020-03-10 17:33:35.000000000","message":"this test is not needed as such. \u0027node\u0027 filter not allowed is checked by existing tests.","commit_id":"f44a0dd56833274a440672716158ea9b8bd2e77d"},{"author":{"_account_id":28595,"name":"Victor Coutellier","email":"victor.coutellier@gmail.com","username":"alistarle"},"change_message_id":"7d830e377cafde6460fee6ff3909011f2895c7c3","unresolved":false,"context_lines":[{"line_number":2759,"context_line":"        self.assertEqual(1, len(servers))"},{"line_number":2760,"context_line":"        self.assertEqual(uuids.fake, servers[0][\u0027id\u0027])"},{"line_number":2761,"context_line":""},{"line_number":2762,"context_line":"    def test_get_servers_by_node_fail_non_admin(self):"},{"line_number":2763,"context_line":"        def fake_get_all(context, search_opts\u003dNone, **kwargs):"},{"line_number":2764,"context_line":"            self.assertIsNotNone(search_opts)"},{"line_number":2765,"context_line":"            self.assertNotIn(\u0027node\u0027, search_opts)"}],"source_content_type":"text/x-python","patch_set":8,"id":"1fa4df85_e7b93fe9","line":2762,"range":{"start_line":2762,"start_character":8,"end_line":2762,"end_character":54},"in_reply_to":"1fa4df85_80bafebd","updated":"2020-03-15 16:35:13.000000000","message":"Actually I didn\u0027t find this case in existing tests, the only test is \"test_get_servers_admin_filters_as_user\", and it only test for unknown_option, not admin_only one.\n\nAnd even more surprising, if you edit the test for checking admin_only filter without policy change, then the test fail, meaning that the admin_only filter work as user.","commit_id":"f44a0dd56833274a440672716158ea9b8bd2e77d"}],"releasenotes/notes/allow-non-admin-filter-instance-more-filter-ea5abad7c32ff328.yaml":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"a8bd354804837d3f9726a0678d123501fe11b4f9","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"  features:"},{"line_number":3,"context_line":"    - |"},{"line_number":4,"context_line":"      Allow the following filters as a filter/sort parameter for"},{"line_number":5,"context_line":"      ``GET /servers/detail`` and ``GET /servers`` for non-admin in"},{"line_number":6,"context_line":"      microversion 2.82:"},{"line_number":7,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":6,"id":"3fa7e38b_baeadc09","line":4,"range":{"start_line":4,"start_character":46,"end_line":4,"end_character":50},"updated":"2020-02-13 17:27:38.000000000","message":"ditto","commit_id":"66e0f9fbc9e9a440c448f15ba588a45d306c7ea8"}]}
