)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"553dcf9f19b6a204a71b2f33b03f3b842600bfd2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"449a6615_66f5f232","updated":"2022-03-03 19:56:21.000000000","message":"recheck refresh log","commit_id":"4978361ab9a11fb096aae024bfde75b760f199a0"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"832c903a75de6742c1e29d9674db6a52316b8ade","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"54ba12c6_2f35f088","updated":"2022-03-04 01:55:38.000000000","message":"test is passing in nova-next job https://zuul.opendev.org/t/openstack/build/9d5fbad1cd3e4d5d930c291d6a16b657/log/job-output.txt#57131\n\nWaiting for melwitt reply on my question to promote my vote","commit_id":"4978361ab9a11fb096aae024bfde75b760f199a0"},{"author":{"_account_id":22873,"name":"Martin Kopec","email":"mkopec@redhat.com","username":"mkopec"},"change_message_id":"e9359ff34697ebf38890ed75f85a5ef40515e066","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"1516583d_b7d93e9c","updated":"2022-03-04 08:41:28.000000000","message":"lgtm, the test is passing in the nova-next job, nicely written test - very easy to read, +A","commit_id":"badb24c546f59277a90fbcd5e517525d58591615"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"7fee97e7b8ee660b185f0831fb5f6bca6b36909b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"2a676f16_9dd1cf43","updated":"2022-03-04 06:27:02.000000000","message":"recheck","commit_id":"badb24c546f59277a90fbcd5e517525d58591615"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"2d881d63eca38a4dbecbb35b4219a9c358d39693","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"014d916b_010156ea","updated":"2022-03-04 23:49:47.000000000","message":"recheck [ERROR] /opt/stack/devstack/lib/neutron_plugins/ovn_agent:178 Socket /var/run/openvswitch/ovnnb_db.sock not found","commit_id":"badb24c546f59277a90fbcd5e517525d58591615"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"b42d71186093b35f4b0dc1e1316d5531d10d291b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"842963c6_ecc88c74","updated":"2022-03-04 17:51:13.000000000","message":"recheck ssh timeout","commit_id":"badb24c546f59277a90fbcd5e517525d58591615"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"24d1b2a6e685121207f1d010262ef65308db30a3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"a11697f3_8713b527","updated":"2022-03-04 06:27:15.000000000","message":"test is passing here in nova-next job https://zuul.opendev.org/t/openstack/build/9d54879682164f05a317ea23f92cda11/log/job-output.txt#57353","commit_id":"badb24c546f59277a90fbcd5e517525d58591615"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"cb25f9fdbaa4a9ea8ad8716fb9af08ba75ae8ec7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"66fd6da6_dc228408","updated":"2022-03-04 06:23:24.000000000","message":"unrelated error, need to check why but not related to this patch\n\n./stack.sh:1282:start_ovn_services\n/opt/stack/devstack/lib/neutron-legacy:516:start_ovn\n/opt/stack/devstack/lib/neutron_plugins/ovn_agent:698:wait_for_sock_file\n/opt/stack/devstack/lib/neutron_plugins/ovn_agent:178:die\n[ERROR] /opt/stack/devstack/lib/neutron_plugins/ovn_agent:178 Socket /var/run/openvswitch/ovnnb_db.sock not found\nexit_trap: cleaning up child processes\n","commit_id":"badb24c546f59277a90fbcd5e517525d58591615"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"e56fab433ed0622c6b86a3fc67af45bbd4987a1b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"12d00b31_d6949541","in_reply_to":"842963c6_ecc88c74","updated":"2022-03-04 19:26:40.000000000","message":"Looks like this was bug 1950310","commit_id":"badb24c546f59277a90fbcd5e517525d58591615"}],"tempest/scenario/test_compute_unified_limits.py":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"d82e1e493b9621b8b79bf9a6afbd732394722b37","unresolved":true,"context_lines":[{"line_number":311,"context_line":"        # expect failure."},{"line_number":312,"context_line":"        personality2 \u003d ["},{"line_number":313,"context_line":"            {\u0027path\u0027: \u0027/test1.txt\u0027, \u0027contents\u0027: contents},"},{"line_number":314,"context_line":"            {\u0027path\u0027: \u0027/test2.txt\u0027, \u0027contents\u0027: \u0027more stuff\u0027}]"},{"line_number":315,"context_line":"        self.assertRaises(lib_exc.Forbidden,"},{"line_number":316,"context_line":"                          self.create_server,"},{"line_number":317,"context_line":"                          name\u003d\u0027second\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"f83fa29e_3957fea6","line":314,"updated":"2021-08-31 14:23:14.000000000","message":"Content needs to be base64 encoded.","commit_id":"528060773bc80065cab3167d03f9dbbb0c073862"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"4d4719e06c21463ca3bf322d36507936f47c4646","unresolved":true,"context_lines":[{"line_number":325,"context_line":"        self._update_limit(\u0027server_injected_files\u0027, 1)"},{"line_number":326,"context_line":""},{"line_number":327,"context_line":"        # Create a server."},{"line_number":328,"context_line":"        contents \u003d base64.encode_as_text(\u0027stuff\u0027)"},{"line_number":329,"context_line":"        personality1 \u003d [{\u0027path\u0027: \u0027/test.txt\u0027, \u0027contents\u0027: contents}]"},{"line_number":330,"context_line":"        first \u003d self.create_server(name\u003d\u0027first\u0027, personality\u003dpersonality1)"},{"line_number":331,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"efa4bf18_3f240ac9","line":328,"range":{"start_line":328,"start_character":36,"end_line":328,"end_character":40},"updated":"2021-09-16 03:41:45.000000000","message":"bytes?","commit_id":"9a57d5306173cc114a9d8cc033835aea61516e38"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"4d4719e06c21463ca3bf322d36507936f47c4646","unresolved":true,"context_lines":[{"line_number":331,"context_line":""},{"line_number":332,"context_line":"        # Create a second server that tries to use two injected files and"},{"line_number":333,"context_line":"        # expect failure."},{"line_number":334,"context_line":"        more_contents \u003d base64.encode_as_text(\u0027more stuff\u0027)"},{"line_number":335,"context_line":"        personality2 \u003d ["},{"line_number":336,"context_line":"            {\u0027path\u0027: \u0027/test1.txt\u0027, \u0027contents\u0027: contents},"},{"line_number":337,"context_line":"            {\u0027path\u0027: \u0027/test2.txt\u0027, \u0027contents\u0027: more_contents}]"}],"source_content_type":"text/x-python","patch_set":7,"id":"6d74216e_c87e2750","line":334,"range":{"start_line":334,"start_character":41,"end_line":334,"end_character":45},"updated":"2021-09-16 03:41:45.000000000","message":"bytes?","commit_id":"9a57d5306173cc114a9d8cc033835aea61516e38"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"4d4719e06c21463ca3bf322d36507936f47c4646","unresolved":true,"context_lines":[{"line_number":384,"context_line":""},{"line_number":385,"context_line":"        # Create another server that tries to use a 14 byte content and expect"},{"line_number":386,"context_line":"        # failure."},{"line_number":387,"context_line":"        other_contents \u003d base64.encode_as_text(\u0027too much stuff\u0027)"},{"line_number":388,"context_line":"        personality6 \u003d [{\u0027path\u0027: \u0027/t.txt\u0027, \u0027contents\u0027: other_contents}]"},{"line_number":389,"context_line":"        self.assertRaises(lib_exc.Forbidden,"},{"line_number":390,"context_line":"                          self.create_server,"}],"source_content_type":"text/x-python","patch_set":7,"id":"c5a749e4_b8de35c4","line":387,"range":{"start_line":387,"start_character":42,"end_line":387,"end_character":46},"updated":"2021-09-16 03:41:45.000000000","message":"bytes?","commit_id":"9a57d5306173cc114a9d8cc033835aea61516e38"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"129ad4b64fef9a99011afc4a8e308a9476ae0dbe","unresolved":true,"context_lines":[{"line_number":28,"context_line":""},{"line_number":29,"context_line":"@testtools.skipUnless(CONF.compute_feature_enabled.unified_limits,"},{"line_number":30,"context_line":"                      \u0027Compute unified limits are not enabled\u0027)"},{"line_number":31,"context_line":"class ComputeDefaultQuotaTest(manager.ScenarioTest):"},{"line_number":32,"context_line":"    \"\"\"The test base class for compute default quota unified limits tests."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"    There is a set of quotas in nova that do not represent consumption of"}],"source_content_type":"text/x-python","patch_set":9,"id":"576b3af2_3d39700a","line":31,"range":{"start_line":31,"start_character":6,"end_line":31,"end_character":29},"updated":"2021-09-17 01:54:47.000000000","message":"These are too much of a mess ... would have to synchronize them with many common resource usages by other tests. Tests for global quotas probably have to go in a post test hook.","commit_id":"53aa40dda7329f36552b3cb95b877d1f1e942525"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"553dcf9f19b6a204a71b2f33b03f3b842600bfd2","unresolved":true,"context_lines":[{"line_number":30,"context_line":"class ComputeProjectQuotaTest(manager.ScenarioTest):"},{"line_number":31,"context_line":"    \"\"\"The test base class for compute unified limits tests."},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    Dynamic credentials (unique tenants) are created on a per-class basis, so"},{"line_number":34,"context_line":"    we test different quota limits in separate test classes to prevent a quota"},{"line_number":35,"context_line":"    limit update in one test from affecting a test run in another test running"},{"line_number":36,"context_line":"    in parallel."},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"    https://docs.openstack.org/tempest/latest/configuration.html#dynamic-credentials"},{"line_number":39,"context_line":"    \"\"\""},{"line_number":40,"context_line":"    credentials \u003d [\u0027primary\u0027, \u0027system_admin\u0027]"}],"source_content_type":"text/x-python","patch_set":13,"id":"79433bc5_70dddcf7","line":37,"range":{"start_line":33,"start_character":4,"end_line":37,"end_character":0},"updated":"2022-03-03 19:56:21.000000000","message":"you mean to avoid tests conflicts from different test class right? I mean all the tests in single test class run in serial always and irrespective of dynamic creds or pre-provisioned creds as they run serially it would not impact limits of same projects.\n\nand if it is separate class then anyways we are going to have separate project to set limits on, (as you explained above).\n\nTo make it work for both configuration (dynamic or pre-provisioned class), we can set force_tenant_isolation to true.\n\n    force_tenant_isolation \u003d True\n\n\nBut as this patch adds only single class test so it works fine but in future if we would like to add more test class to test limits then we need to set force_tenant_isolation to make it work for pre-provisioned class.\n\nI am ok with doing it here in this patch or later when new test class are added. whatever you prefer?","commit_id":"4978361ab9a11fb096aae024bfde75b760f199a0"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"8d89da05828713182b78235ac6954f4daa7d0e2c","unresolved":true,"context_lines":[{"line_number":30,"context_line":"class ComputeProjectQuotaTest(manager.ScenarioTest):"},{"line_number":31,"context_line":"    \"\"\"The test base class for compute unified limits tests."},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"    Dynamic credentials (unique tenants) are created on a per-class basis, so"},{"line_number":34,"context_line":"    we test different quota limits in separate test classes to prevent a quota"},{"line_number":35,"context_line":"    limit update in one test from affecting a test run in another test running"},{"line_number":36,"context_line":"    in parallel."},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"    https://docs.openstack.org/tempest/latest/configuration.html#dynamic-credentials"},{"line_number":39,"context_line":"    \"\"\""},{"line_number":40,"context_line":"    credentials \u003d [\u0027primary\u0027, \u0027system_admin\u0027]"}],"source_content_type":"text/x-python","patch_set":13,"id":"01736b9b_195f0435","line":37,"range":{"start_line":33,"start_character":4,"end_line":37,"end_character":0},"in_reply_to":"79433bc5_70dddcf7","updated":"2022-03-04 03:08:24.000000000","message":"\u003e you mean to avoid tests conflicts from different test class right? I mean all the tests in single test class run in serial always and irrespective of dynamic creds or pre-provisioned creds as they run serially it would not impact limits of same projects.\n\nYes, from different test classes ... but I\u0027m realizing this docstring is old from much earlier patchsets where I had a ComputeQuotaTest base class that I intended to derive from to test different quota limits. But I ended up having only one class because booting a server hits all of the project-scoped limits like servers, cores, ram, and disk. So trying to separate them into different classes didn\u0027t seem to make sense.\n\nI think I need to update the docstring here.\n\n\u003e and if it is separate class then anyways we are going to have separate project to set limits on, (as you explained above).\n\u003e \n\u003e To make it work for both configuration (dynamic or pre-provisioned class), we can set force_tenant_isolation to true.\n\u003e \n\u003e     force_tenant_isolation \u003d True\n\nAh OK, thanks for pointing this out. I didn\u0027t know about the pre-provisioned. I will add it.\n\n\u003e But as this patch adds only single class test so it works fine but in future if we would like to add more test class to test limits then we need to set force_tenant_isolation to make it work for pre-provisioned class.\n\u003e \n\u003e I am ok with doing it here in this patch or later when new test class are added. whatever you prefer?","commit_id":"4978361ab9a11fb096aae024bfde75b760f199a0"}],"tempest/scenario/test_unified_limits.py":[{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"ebc2a017409cdd9eadf034bff06af1d97a6acf28","unresolved":true,"context_lines":[{"line_number":493,"context_line":"        server \u003d self.create_server(name\u003d\u0027first\u0027)"},{"line_number":494,"context_line":""},{"line_number":495,"context_line":"        # Second server would put us over quota, so expect failure."},{"line_number":496,"context_line":"        self.assertRaises(lib_exc.OverLimit,"},{"line_number":497,"context_line":"                          self.create_server,"},{"line_number":498,"context_line":"                          name\u003d\u0027second\u0027)"},{"line_number":499,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"ad830a57_0729efbd","line":496,"updated":"2021-08-12 04:33:47.000000000","message":"This needs to be Forbidden for nova.","commit_id":"9761464cba79d67340fbceaf966644d33484bf92"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"ebc2a017409cdd9eadf034bff06af1d97a6acf28","unresolved":true,"context_lines":[{"line_number":504,"context_line":"        self.create_server(name\u003d\u0027second\u0027)"},{"line_number":505,"context_line":""},{"line_number":506,"context_line":"        # Third server would put us over quota, so expect failure."},{"line_number":507,"context_line":"        self.assertRaises(lib_exc.OverLimit,"},{"line_number":508,"context_line":"                          self.create_server,"},{"line_number":509,"context_line":"                          name\u003d\u0027third\u0027)"},{"line_number":510,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"6019c4d9_6ae90565","line":507,"updated":"2021-08-12 04:33:47.000000000","message":"Ditto.","commit_id":"9761464cba79d67340fbceaf966644d33484bf92"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"b7f1fa58c7a8437caec8cc3a6f738d46b9d79d4b","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"866af966_d43077be","line":558,"updated":"2021-08-29 04:03:03.000000000","message":"TODO: add tests for local nova resources like server_metadata_items, key_pairs, etc.","commit_id":"0bf36bd42d88fe0dd9e63d564cd7dcb0cdca5620"}]}
