)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"fa861b3d16cd84e3a7b265449f39dc80832ce449","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"f5a156bc_341c402c","updated":"2022-08-24 13:12:00.000000000","message":"PS3 was all passing and later PS4 was rebased and it started failing with this strange error. let me try to rebase the series on master.","commit_id":"d8a983d52d9faa1df398167c7aafd4455a20ba0e"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"3d006f90084288fa2c96240be6400cdab401638c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"21b8a55a_5c91546a","updated":"2022-08-24 09:40:32.000000000","message":"recheck refresh log","commit_id":"d8a983d52d9faa1df398167c7aafd4455a20ba0e"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"5d33ee2d945c50134e8107f0f5f6651859482223","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"d2012595_52bfb5db","updated":"2022-08-24 20:04:33.000000000","message":"I spot checked a bunch of this and it looks okay to me. Most of it should be simple s\u0026r. I\u0027ll just +2 it so we can get some more eyes on it.","commit_id":"909b0b02470dc795fd3d2775ee33864b055dd678"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a896cfe1210adc45fb88282304ca786aec7f4f07","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"4aaa60f4_3e1d9a9c","updated":"2022-08-24 17:14:26.000000000","message":"im less confident with this, i belvie it looks correct \ni proably shoudl look at this again tomrrow and i cernetly want gibi or others to reveiw too.\n\n\nsome of the bolicy default seam wrong to me but we should not change thos in this patch. i have noted thos inline mainly so that we can discuss them next cycle and raise awareness fo the sligt odd defaults.\n\ni dont expect those to be adress by this patch.","commit_id":"909b0b02470dc795fd3d2775ee33864b055dd678"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"18ccfe7d3db0dae75dc7d07d7162abeea94ec12b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"785b7a97_e0071be2","updated":"2022-08-25 07:45:56.000000000","message":"looks good","commit_id":"909b0b02470dc795fd3d2775ee33864b055dd678"}],"nova/policies/admin_password.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"71e41cd12ffc0e26f73d18fcf0006686012cf5c0","unresolved":true,"context_lines":[{"line_number":24,"context_line":"admin_password_policies \u003d ["},{"line_number":25,"context_line":"    policy.DocumentedRuleDefault("},{"line_number":26,"context_line":"        name\u003dBASE_POLICY_NAME,"},{"line_number":27,"context_line":"        check_str\u003dbase.PROJECT_MEMBER_OR_ADMIN,"},{"line_number":28,"context_line":"        description\u003d\"Change the administrative password for a server\","},{"line_number":29,"context_line":"        operations\u003d["},{"line_number":30,"context_line":"            {"}],"source_content_type":"text/x-python","patch_set":6,"id":"db2491d8_721446fe","line":27,"range":{"start_line":27,"start_character":18,"end_line":27,"end_character":47},"updated":"2022-08-24 17:23:03.000000000","message":"as an aside im not 100% convince a normal admin shoudl be able to do this by the way,\n\nbut it was the old behavior.\n\nan admin could jsut give them self project member so its proably not worth trying to protect agaisnst malious admins anyway.\n\nthis just feels like somehting that a user/proejct member shoudl use and admins should avoid.\n\nagain not really related to our default just feels odd.","commit_id":"909b0b02470dc795fd3d2775ee33864b055dd678"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"5d33ee2d945c50134e8107f0f5f6651859482223","unresolved":true,"context_lines":[{"line_number":24,"context_line":"admin_password_policies \u003d ["},{"line_number":25,"context_line":"    policy.DocumentedRuleDefault("},{"line_number":26,"context_line":"        name\u003dBASE_POLICY_NAME,"},{"line_number":27,"context_line":"        check_str\u003dbase.PROJECT_MEMBER_OR_ADMIN,"},{"line_number":28,"context_line":"        description\u003d\"Change the administrative password for a server\","},{"line_number":29,"context_line":"        operations\u003d["},{"line_number":30,"context_line":"            {"}],"source_content_type":"text/x-python","patch_set":6,"id":"79726473_15f42556","line":27,"range":{"start_line":27,"start_character":18,"end_line":27,"end_character":47},"in_reply_to":"db2491d8_721446fe","updated":"2022-08-24 20:04:33.000000000","message":"If you take the view that admin can do everything member can (which is the fully-contained set-view approach of admin, member, reader) then this should be doable by admin. I can certainly see that not being ideal or desired for some clouds, but for simplicity, it makes sense.","commit_id":"909b0b02470dc795fd3d2775ee33864b055dd678"}],"nova/policies/base.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"80774d555edd5dcd1248b068891219ca007f686f","unresolved":true,"context_lines":[{"line_number":36,"context_line":"    deprecated_reason\u003dDEPRECATED_REASON,"},{"line_number":37,"context_line":"    deprecated_since\u003d\u002721.0.0\u0027"},{"line_number":38,"context_line":")"},{"line_number":39,"context_line":"PROJECT_ADMIN \u003d \u0027rule:project_admin_api\u0027"},{"line_number":40,"context_line":"PROJECT_MEMBER \u003d \u0027rule:project_member_api\u0027"},{"line_number":41,"context_line":"PROJECT_READER \u003d \u0027rule:project_reader_api\u0027"},{"line_number":42,"context_line":"PROJECT_READER_OR_ADMIN \u003d \u0027rule:project_reader_or_admin\u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"c4a31508_bead093f","side":"PARENT","line":39,"updated":"2022-08-24 13:06:26.000000000","message":"this is still referenced causing tests to fail\n\n File \"/home/zuul/src/opendev.org/openstack/nova/nova/policies/shelve.py\", line 49, in \u003cmodule\u003e\n2022-08-24 09:48:41.558325 | ubuntu-focal |     check_str\u003dbase.PROJECT_ADMIN,","commit_id":"db9c12f4ec3520612e7bcb0fc80c8e02ecf92157"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"18ccfe7d3db0dae75dc7d07d7162abeea94ec12b","unresolved":false,"context_lines":[{"line_number":36,"context_line":"    deprecated_reason\u003dDEPRECATED_REASON,"},{"line_number":37,"context_line":"    deprecated_since\u003d\u002721.0.0\u0027"},{"line_number":38,"context_line":")"},{"line_number":39,"context_line":"PROJECT_ADMIN \u003d \u0027rule:project_admin_api\u0027"},{"line_number":40,"context_line":"PROJECT_MEMBER \u003d \u0027rule:project_member_api\u0027"},{"line_number":41,"context_line":"PROJECT_READER \u003d \u0027rule:project_reader_api\u0027"},{"line_number":42,"context_line":"PROJECT_READER_OR_ADMIN \u003d \u0027rule:project_reader_or_admin\u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"50ae4505_78718ba9","side":"PARENT","line":39,"in_reply_to":"9fb15313_546e6ea3","updated":"2022-08-25 07:45:56.000000000","message":"it needed a rebase to pick up a change from master that added new policy (zuul rebased it in the check queue). Rebased now.","commit_id":"db9c12f4ec3520612e7bcb0fc80c8e02ecf92157"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"f834f01997c1cc7f144dd48361e7f6e847bb292b","unresolved":true,"context_lines":[{"line_number":36,"context_line":"    deprecated_reason\u003dDEPRECATED_REASON,"},{"line_number":37,"context_line":"    deprecated_since\u003d\u002721.0.0\u0027"},{"line_number":38,"context_line":")"},{"line_number":39,"context_line":"PROJECT_ADMIN \u003d \u0027rule:project_admin_api\u0027"},{"line_number":40,"context_line":"PROJECT_MEMBER \u003d \u0027rule:project_member_api\u0027"},{"line_number":41,"context_line":"PROJECT_READER \u003d \u0027rule:project_reader_api\u0027"},{"line_number":42,"context_line":"PROJECT_READER_OR_ADMIN \u003d \u0027rule:project_reader_or_admin\u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"9fb15313_546e6ea3","side":"PARENT","line":39,"in_reply_to":"c4a31508_bead093f","updated":"2022-08-24 13:09:33.000000000","message":"that is what strange is and I did not get why it is failing, there is no reference of PROJECT_ADMIN in shelve.py or in any other file - https://review.opendev.org/c/openstack/nova/+/849209/4/nova/policies/shelve.py\n\nI did grep that and also all test passing locally.","commit_id":"db9c12f4ec3520612e7bcb0fc80c8e02ecf92157"}],"nova/policies/servers.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a896cfe1210adc45fb88282304ca786aec7f4f07","unresolved":true,"context_lines":[{"line_number":312,"context_line":"        scope_types\u003d[\u0027project\u0027]),"},{"line_number":313,"context_line":"    policy.DocumentedRuleDefault("},{"line_number":314,"context_line":"        name\u003dNETWORK_ATTACH_EXTERNAL,"},{"line_number":315,"context_line":"        check_str\u003dbase.ADMIN,"},{"line_number":316,"context_line":"        description\u003d\"Attach an unshared external network to a server\","},{"line_number":317,"context_line":"        operations\u003d["},{"line_number":318,"context_line":"            # Create a server with a requested network or port."}],"source_content_type":"text/x-python","patch_set":6,"id":"c05c39e2_11f6d2b3","line":315,"range":{"start_line":315,"start_character":18,"end_line":315,"end_character":28},"updated":"2022-08-24 17:14:26.000000000","message":"nit this should actully be project_member.\nits unreated to this change but the reason is neutron has its own check for this\nand hte port bining will fail there is a bug/rfe for this somewhere\n\nanyway thats a seperate change but jucs calling this out becasue we shoudl fix that at some point.\n\nnova shoudld baskcially not be checking this anymore and we shoud drop it form our policy in the futrue.","commit_id":"909b0b02470dc795fd3d2775ee33864b055dd678"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"1ebc517ed97a7b86a1d1af593508e16501f6f6b2","unresolved":true,"context_lines":[{"line_number":312,"context_line":"        scope_types\u003d[\u0027project\u0027]),"},{"line_number":313,"context_line":"    policy.DocumentedRuleDefault("},{"line_number":314,"context_line":"        name\u003dNETWORK_ATTACH_EXTERNAL,"},{"line_number":315,"context_line":"        check_str\u003dbase.ADMIN,"},{"line_number":316,"context_line":"        description\u003d\"Attach an unshared external network to a server\","},{"line_number":317,"context_line":"        operations\u003d["},{"line_number":318,"context_line":"            # Create a server with a requested network or port."}],"source_content_type":"text/x-python","patch_set":6,"id":"0c6dfa0b_5d753db4","line":315,"range":{"start_line":315,"start_character":18,"end_line":315,"end_character":28},"in_reply_to":"c05c39e2_11f6d2b3","updated":"2022-08-25 13:19:59.000000000","message":"ack.","commit_id":"909b0b02470dc795fd3d2775ee33864b055dd678"}],"nova/policies/shelve.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a896cfe1210adc45fb88282304ca786aec7f4f07","unresolved":true,"context_lines":[{"line_number":46,"context_line":"        scope_types\u003d[\u0027project\u0027]),"},{"line_number":47,"context_line":"    policy.DocumentedRuleDefault("},{"line_number":48,"context_line":"        name\u003dPOLICY_ROOT % \u0027unshelve_to_host\u0027,"},{"line_number":49,"context_line":"        check_str\u003dbase.PROJECT_ADMIN,"},{"line_number":50,"context_line":"        description\u003d\"Unshelve (restore) shelve offloaded server to a \""},{"line_number":51,"context_line":"                    \"specific host\","},{"line_number":52,"context_line":"        operations\u003d["}],"source_content_type":"text/x-python","patch_set":5,"id":"91b84e7b_82b2f748","line":49,"range":{"start_line":49,"start_character":17,"end_line":49,"end_character":37},"updated":"2022-08-24 17:14:26.000000000","message":"so as gibi noted this was the ci failures","commit_id":"ba3e870661850139f8f1e93bc67d18bb8ebb3e57"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"1ebc517ed97a7b86a1d1af593508e16501f6f6b2","unresolved":true,"context_lines":[{"line_number":46,"context_line":"        scope_types\u003d[\u0027project\u0027]),"},{"line_number":47,"context_line":"    policy.DocumentedRuleDefault("},{"line_number":48,"context_line":"        name\u003dPOLICY_ROOT % \u0027unshelve_to_host\u0027,"},{"line_number":49,"context_line":"        check_str\u003dbase.PROJECT_ADMIN,"},{"line_number":50,"context_line":"        description\u003d\"Unshelve (restore) shelve offloaded server to a \""},{"line_number":51,"context_line":"                    \"specific host\","},{"line_number":52,"context_line":"        operations\u003d["}],"source_content_type":"text/x-python","patch_set":5,"id":"a1ea4132_df3e6159","line":49,"range":{"start_line":49,"start_character":17,"end_line":49,"end_character":37},"in_reply_to":"91b84e7b_82b2f748","updated":"2022-08-25 13:19:59.000000000","message":"yes, this was new policy merged in between of this patch propsoed. gerrit and zuul did not complain about merge conflict as there is no code merge in file but test failed which is good thing which caught it.","commit_id":"ba3e870661850139f8f1e93bc67d18bb8ebb3e57"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a896cfe1210adc45fb88282304ca786aec7f4f07","unresolved":true,"context_lines":[{"line_number":58,"context_line":"        scope_types\u003d[\u0027project\u0027]),"},{"line_number":59,"context_line":"    policy.DocumentedRuleDefault("},{"line_number":60,"context_line":"        name\u003dPOLICY_ROOT % \u0027shelve_offload\u0027,"},{"line_number":61,"context_line":"        check_str\u003dbase.ADMIN,"},{"line_number":62,"context_line":"        description\u003d\"Shelf-offload (remove) server\","},{"line_number":63,"context_line":"        operations\u003d["},{"line_number":64,"context_line":"            {"}],"source_content_type":"text/x-python","patch_set":6,"id":"94a234d7_44a26842","line":61,"range":{"start_line":61,"start_character":17,"end_line":61,"end_character":28},"updated":"2022-08-24 17:14:26.000000000","message":"this also feels like somthign that hsould be project_member\n\n\nthe default for shelve it to automatical offload\n\nthere currently exist config driven api behavior that allows an admin to add \ntimeer for when offload will happen.\n\nthis break interoperatbleity as the default behavior and the reason expctiaotn is when you call shelve the end state will be shelve offloaded.\n\nthat is the obseveable behavior for any default configured cloud.\n\nso for billing reasons a user shoudl be able to force the offload in a not default configured cloud.\n\nagain thsi is a sperate change form this but we should fix this next cycle.\n\nthis should not require admin and evenutally we shoudl fix the confgi driven api behavior either by removing the config and providing a differnt way to discover this or makign shelve_offload the defautl in a new api microverison ingoring the config if that microversion is used so that we can get consitent behavior across clouds.","commit_id":"909b0b02470dc795fd3d2775ee33864b055dd678"},{"author":{"_account_id":8556,"name":"Ghanshyam Maan","display_name":"Ghanshyam Maan","email":"gmaan.os14@gmail.com","username":"ghanshyam"},"change_message_id":"1ebc517ed97a7b86a1d1af593508e16501f6f6b2","unresolved":true,"context_lines":[{"line_number":58,"context_line":"        scope_types\u003d[\u0027project\u0027]),"},{"line_number":59,"context_line":"    policy.DocumentedRuleDefault("},{"line_number":60,"context_line":"        name\u003dPOLICY_ROOT % \u0027shelve_offload\u0027,"},{"line_number":61,"context_line":"        check_str\u003dbase.ADMIN,"},{"line_number":62,"context_line":"        description\u003d\"Shelf-offload (remove) server\","},{"line_number":63,"context_line":"        operations\u003d["},{"line_number":64,"context_line":"            {"}],"source_content_type":"text/x-python","patch_set":6,"id":"4c97ca38_e8167479","line":61,"range":{"start_line":61,"start_character":17,"end_line":61,"end_character":28},"in_reply_to":"7061fa7b_1bc5dc52","updated":"2022-08-25 13:19:59.000000000","message":"agree that we can discuss/change it in separate patch. I am not sure why it was admin and different from shelve.","commit_id":"909b0b02470dc795fd3d2775ee33864b055dd678"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"5d33ee2d945c50134e8107f0f5f6651859482223","unresolved":true,"context_lines":[{"line_number":58,"context_line":"        scope_types\u003d[\u0027project\u0027]),"},{"line_number":59,"context_line":"    policy.DocumentedRuleDefault("},{"line_number":60,"context_line":"        name\u003dPOLICY_ROOT % \u0027shelve_offload\u0027,"},{"line_number":61,"context_line":"        check_str\u003dbase.ADMIN,"},{"line_number":62,"context_line":"        description\u003d\"Shelf-offload (remove) server\","},{"line_number":63,"context_line":"        operations\u003d["},{"line_number":64,"context_line":"            {"}],"source_content_type":"text/x-python","patch_set":6,"id":"d233e532_3b3f1a87","line":61,"range":{"start_line":61,"start_character":17,"end_line":61,"end_character":28},"in_reply_to":"94a234d7_44a26842","updated":"2022-08-24 20:04:33.000000000","message":"AFAIK, the intent is that shelved and shelved_offloaded should be the same \"cost\" to the user, so it shouldn\u0027t matter to them if it\u0027s offloaded or not.\n\nI can see the argument both ways, but unless this has changed, I see no reason to wrap it up in this refactor patch.","commit_id":"909b0b02470dc795fd3d2775ee33864b055dd678"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"81299b409ec520086aaeb9ed7f9446b992ab524f","unresolved":true,"context_lines":[{"line_number":58,"context_line":"        scope_types\u003d[\u0027project\u0027]),"},{"line_number":59,"context_line":"    policy.DocumentedRuleDefault("},{"line_number":60,"context_line":"        name\u003dPOLICY_ROOT % \u0027shelve_offload\u0027,"},{"line_number":61,"context_line":"        check_str\u003dbase.ADMIN,"},{"line_number":62,"context_line":"        description\u003d\"Shelf-offload (remove) server\","},{"line_number":63,"context_line":"        operations\u003d["},{"line_number":64,"context_line":"            {"}],"source_content_type":"text/x-python","patch_set":6,"id":"7061fa7b_1bc5dc52","line":61,"range":{"start_line":61,"start_character":17,"end_line":61,"end_character":28},"in_reply_to":"d233e532_3b3f1a87","updated":"2022-08-25 10:58:17.000000000","message":"ya maybe i did not want this to be adresed in this patch.\n\njust noted it as odd from my perspective to talk about again in the future.","commit_id":"909b0b02470dc795fd3d2775ee33864b055dd678"}]}
