)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"129bd97b755131570cae5195f047fa24a8ab8d5c","unresolved":true,"context_lines":[{"line_number":10,"context_line":"operator and such custom role should have granted persmission to"},{"line_number":11,"context_line":"send project_id, other than own project_id in the request body, like for"},{"line_number":12,"context_line":"example \"network_admin\" role who should be able to create networks on"},{"line_number":13,"context_line":"behalv of every project in the cloud, it was not possible to achieve so far."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"The problem was that for all non-admin and not service users, function"},{"line_number":16,"context_line":"``neutron_lib.api.attributes._validate_privileges`` had hardcoded that"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"34063df1_642bfec6","line":13,"range":{"start_line":13,"start_character":0,"end_line":13,"end_character":6},"updated":"2025-12-03 21:32:17.000000000","message":"behalf","commit_id":"8b705405367bbe4383ec6e085e8468d93969e813"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"1dad3fd5dd33abe99bcba559c67222bb2fc178b8","unresolved":false,"context_lines":[{"line_number":10,"context_line":"operator and such custom role should have granted persmission to"},{"line_number":11,"context_line":"send project_id, other than own project_id in the request body, like for"},{"line_number":12,"context_line":"example \"network_admin\" role who should be able to create networks on"},{"line_number":13,"context_line":"behalv of every project in the cloud, it was not possible to achieve so far."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"The problem was that for all non-admin and not service users, function"},{"line_number":16,"context_line":"``neutron_lib.api.attributes._validate_privileges`` had hardcoded that"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"afa6694f_45f2a8bc","line":13,"range":{"start_line":13,"start_character":0,"end_line":13,"end_character":6},"in_reply_to":"34063df1_642bfec6","updated":"2025-12-04 09:30:44.000000000","message":"Done","commit_id":"8b705405367bbe4383ec6e085e8468d93969e813"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"129bd97b755131570cae5195f047fa24a8ab8d5c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"19b2a747_e05194f4","updated":"2025-12-03 21:32:17.000000000","message":"Soft -1, the code is good IMO","commit_id":"8b705405367bbe4383ec6e085e8468d93969e813"}],"neutron_lib/policy/_engine.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"129bd97b755131570cae5195f047fa24a8ab8d5c","unresolved":true,"context_lines":[{"line_number":44,"context_line":"        \u0027!\u0027,"},{"line_number":45,"context_line":"        description\u003d\u0027Rule for context with global access to the resources\u0027),"},{"line_number":46,"context_line":"    policy.RuleDefault("},{"line_number":47,"context_line":"        # By default, no one except admincan send project id in the request"},{"line_number":48,"context_line":"        # body."},{"line_number":49,"context_line":"        # That is special meaning of the \"!\" in rule, see"},{"line_number":50,"context_line":"        # https://docs.openstack.org/oslo.policy/latest/admin/policy-yaml-file.html#examples."}],"source_content_type":"text/x-python","patch_set":1,"id":"6c685f4c_9a6cafe9","line":47,"range":{"start_line":47,"start_character":36,"end_line":47,"end_character":44},"updated":"2025-12-03 21:32:17.000000000","message":"admin can","commit_id":"8b705405367bbe4383ec6e085e8468d93969e813"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"1dad3fd5dd33abe99bcba559c67222bb2fc178b8","unresolved":false,"context_lines":[{"line_number":44,"context_line":"        \u0027!\u0027,"},{"line_number":45,"context_line":"        description\u003d\u0027Rule for context with global access to the resources\u0027),"},{"line_number":46,"context_line":"    policy.RuleDefault("},{"line_number":47,"context_line":"        # By default, no one except admincan send project id in the request"},{"line_number":48,"context_line":"        # body."},{"line_number":49,"context_line":"        # That is special meaning of the \"!\" in rule, see"},{"line_number":50,"context_line":"        # https://docs.openstack.org/oslo.policy/latest/admin/policy-yaml-file.html#examples."}],"source_content_type":"text/x-python","patch_set":1,"id":"e2c6b893_9e0374b2","line":47,"range":{"start_line":47,"start_character":36,"end_line":47,"end_character":44},"in_reply_to":"6c685f4c_9a6cafe9","updated":"2025-12-04 09:30:44.000000000","message":"Done","commit_id":"8b705405367bbe4383ec6e085e8468d93969e813"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"129bd97b755131570cae5195f047fa24a8ab8d5c","unresolved":true,"context_lines":[{"line_number":50,"context_line":"        # https://docs.openstack.org/oslo.policy/latest/admin/policy-yaml-file.html#examples."},{"line_number":51,"context_line":"        # This policy rule should be overridden by the cloud administrator if"},{"line_number":52,"context_line":"        # there is need to have any custom role with privileges to send"},{"line_number":53,"context_line":"        # project_id in the request body of the POST requests to create"},{"line_number":54,"context_line":"        # resources for other projects."},{"line_number":55,"context_line":"        _CAN_SET_PROJECT_ID_CTX_POLICY,"},{"line_number":56,"context_line":"        \u0027!\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"30b8ae32_da815c6d","line":53,"range":{"start_line":53,"start_character":65,"end_line":53,"end_character":71},"updated":"2025-12-03 21:32:17.000000000","message":"create/modify/list","commit_id":"8b705405367bbe4383ec6e085e8468d93969e813"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"1dad3fd5dd33abe99bcba559c67222bb2fc178b8","unresolved":true,"context_lines":[{"line_number":50,"context_line":"        # https://docs.openstack.org/oslo.policy/latest/admin/policy-yaml-file.html#examples."},{"line_number":51,"context_line":"        # This policy rule should be overridden by the cloud administrator if"},{"line_number":52,"context_line":"        # there is need to have any custom role with privileges to send"},{"line_number":53,"context_line":"        # project_id in the request body of the POST requests to create"},{"line_number":54,"context_line":"        # resources for other projects."},{"line_number":55,"context_line":"        _CAN_SET_PROJECT_ID_CTX_POLICY,"},{"line_number":56,"context_line":"        \u0027!\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"80c19199_9e351e84","line":53,"range":{"start_line":53,"start_character":65,"end_line":53,"end_character":71},"in_reply_to":"30b8ae32_da815c6d","updated":"2025-12-04 09:30:44.000000000","message":"Technically speaking you are correct that here it applies to both POST and PUT but AFAIK we don\u0027t allow to update project_id for any of the resources. At least I didn\u0027t found any in the API definitions. That\u0027s why I wrote only about POST requests to create resources.","commit_id":"8b705405367bbe4383ec6e085e8468d93969e813"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"cd9a5af7825c7649f49458f2c4d3638ac4402c04","unresolved":false,"context_lines":[{"line_number":50,"context_line":"        # https://docs.openstack.org/oslo.policy/latest/admin/policy-yaml-file.html#examples."},{"line_number":51,"context_line":"        # This policy rule should be overridden by the cloud administrator if"},{"line_number":52,"context_line":"        # there is need to have any custom role with privileges to send"},{"line_number":53,"context_line":"        # project_id in the request body of the POST requests to create"},{"line_number":54,"context_line":"        # resources for other projects."},{"line_number":55,"context_line":"        _CAN_SET_PROJECT_ID_CTX_POLICY,"},{"line_number":56,"context_line":"        \u0027!\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"82315880_b7b865fd","line":53,"range":{"start_line":53,"start_character":65,"end_line":53,"end_character":71},"in_reply_to":"80c19199_9e351e84","updated":"2025-12-04 17:52:28.000000000","message":"You are right!","commit_id":"8b705405367bbe4383ec6e085e8468d93969e813"}],"releasenotes/notes/add-can_set_project_id-to-the-context-object-8a244a003b833314.yaml":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"129bd97b755131570cae5195f047fa24a8ab8d5c","unresolved":true,"context_lines":[{"line_number":6,"context_line":"    ``context_can_set_project_id`` and should be used in case when there are"},{"line_number":7,"context_line":"    custom roles with granted permission to send project_id in the request body of the"},{"line_number":8,"context_line":"    POST requests to create resources for other projects."},{"line_number":9,"context_line":"    For example,"},{"line_number":10,"context_line":"    ``network_admin`` role which should have persmission to created networks for"},{"line_number":11,"context_line":"    all projects in the cloud."},{"line_number":12,"context_line":"    By default ``context.can_set_project_id`` is granted to no one and only admin and"},{"line_number":13,"context_line":"    service users can send project_id in the request body."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"dca72bb6_4f2324b2","line":10,"range":{"start_line":9,"start_character":4,"end_line":10,"end_character":21},"updated":"2025-12-03 21:32:17.000000000","message":"nit: shouldn\u0027t this be in the same line?","commit_id":"8b705405367bbe4383ec6e085e8468d93969e813"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"1dad3fd5dd33abe99bcba559c67222bb2fc178b8","unresolved":false,"context_lines":[{"line_number":6,"context_line":"    ``context_can_set_project_id`` and should be used in case when there are"},{"line_number":7,"context_line":"    custom roles with granted permission to send project_id in the request body of the"},{"line_number":8,"context_line":"    POST requests to create resources for other projects."},{"line_number":9,"context_line":"    For example,"},{"line_number":10,"context_line":"    ``network_admin`` role which should have persmission to created networks for"},{"line_number":11,"context_line":"    all projects in the cloud."},{"line_number":12,"context_line":"    By default ``context.can_set_project_id`` is granted to no one and only admin and"},{"line_number":13,"context_line":"    service users can send project_id in the request body."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"ca217264_44e09021","line":10,"range":{"start_line":9,"start_character":4,"end_line":10,"end_character":21},"in_reply_to":"dca72bb6_4f2324b2","updated":"2025-12-04 09:30:44.000000000","message":"Done","commit_id":"8b705405367bbe4383ec6e085e8468d93969e813"}]}
