)]}'
{"ironic/api/controllers/v1/utils.py":[{"author":{"_account_id":7386,"name":"Tzu-Mainn Chen","email":"tzumainn@redhat.com","username":"tzumainn"},"change_message_id":"de0a91aa676d8fbbb2b5c297460ef296ed0685e7","unresolved":true,"context_lines":[{"line_number":1788,"context_line":""},{"line_number":1789,"context_line":""},{"line_number":1790,"context_line":"def check_volume_list_policy(parent_node\u003dNone):"},{"line_number":1791,"context_line":"    \"\"\"Check if the specified policy authorizes this request on a port."},{"line_number":1792,"context_line":""},{"line_number":1793,"context_line":"    :param parent_node: The UUID of a node, if any, to apply a policy"},{"line_number":1794,"context_line":"                        check to as well before applying other policy"}],"source_content_type":"text/x-python","patch_set":7,"id":"27c88505_fcd4ac2e","line":1791,"updated":"2021-03-04 18:17:34.000000000","message":"\"volume\"","commit_id":"e870bd34d0ccacbaef7f4e4def2535eb28f822b9"},{"author":{"_account_id":7386,"name":"Tzu-Mainn Chen","email":"tzumainn@redhat.com","username":"tzumainn"},"change_message_id":"de0a91aa676d8fbbb2b5c297460ef296ed0685e7","unresolved":true,"context_lines":[{"line_number":1831,"context_line":"        policy.authorize(\u0027baremetal:volume:list_all\u0027,"},{"line_number":1832,"context_line":"                         cdict, api.request.context)"},{"line_number":1833,"context_line":"    except exception.HTTPForbidden:"},{"line_number":1834,"context_line":"        owner \u003d cdict.get(\u0027project_id\u0027)"},{"line_number":1835,"context_line":"        if not owner:"},{"line_number":1836,"context_line":"            raise"},{"line_number":1837,"context_line":"        policy.authorize(\u0027baremetal:volume:list\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"e867ba2f_d510de67","line":1834,"updated":"2021-03-04 18:17:34.000000000","message":"this could technically also be the lessee, I think... ?","commit_id":"e870bd34d0ccacbaef7f4e4def2535eb28f822b9"},{"author":{"_account_id":7386,"name":"Tzu-Mainn Chen","email":"tzumainn@redhat.com","username":"tzumainn"},"change_message_id":"6c2c4b1b16d1f2ecb1f15cfc6c2fe8d38e994778","unresolved":true,"context_lines":[{"line_number":1831,"context_line":"        policy.authorize(\u0027baremetal:volume:list_all\u0027,"},{"line_number":1832,"context_line":"                         cdict, api.request.context)"},{"line_number":1833,"context_line":"    except exception.HTTPForbidden:"},{"line_number":1834,"context_line":"        owner \u003d cdict.get(\u0027project_id\u0027)"},{"line_number":1835,"context_line":"        if not owner:"},{"line_number":1836,"context_line":"            raise"},{"line_number":1837,"context_line":"        policy.authorize(\u0027baremetal:volume:list\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"e32a436f_c6c8089a","line":1834,"in_reply_to":"d93646ca_9f509561","updated":"2021-03-05 02:02:43.000000000","message":"Would it make sense to change the \u0027owner\u0027 variable to \u0027project\u0027 then?","commit_id":"e870bd34d0ccacbaef7f4e4def2535eb28f822b9"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"44d58d4db990505f154893f47574b9cd2aa3089b","unresolved":false,"context_lines":[{"line_number":1831,"context_line":"        policy.authorize(\u0027baremetal:volume:list_all\u0027,"},{"line_number":1832,"context_line":"                         cdict, api.request.context)"},{"line_number":1833,"context_line":"    except exception.HTTPForbidden:"},{"line_number":1834,"context_line":"        owner \u003d cdict.get(\u0027project_id\u0027)"},{"line_number":1835,"context_line":"        if not owner:"},{"line_number":1836,"context_line":"            raise"},{"line_number":1837,"context_line":"        policy.authorize(\u0027baremetal:volume:list\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"7279b8fe_f8841e0e","line":1834,"in_reply_to":"e32a436f_c6c8089a","updated":"2021-03-08 19:01:59.000000000","message":"Done","commit_id":"e870bd34d0ccacbaef7f4e4def2535eb28f822b9"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"87f7cdad151fc6aa29650dc4fba999cefaa70259","unresolved":true,"context_lines":[{"line_number":1831,"context_line":"        policy.authorize(\u0027baremetal:volume:list_all\u0027,"},{"line_number":1832,"context_line":"                         cdict, api.request.context)"},{"line_number":1833,"context_line":"    except exception.HTTPForbidden:"},{"line_number":1834,"context_line":"        owner \u003d cdict.get(\u0027project_id\u0027)"},{"line_number":1835,"context_line":"        if not owner:"},{"line_number":1836,"context_line":"            raise"},{"line_number":1837,"context_line":"        policy.authorize(\u0027baremetal:volume:list\u0027,"}],"source_content_type":"text/x-python","patch_set":7,"id":"d93646ca_9f509561","line":1834,"in_reply_to":"e867ba2f_d510de67","updated":"2021-03-04 23:14:26.000000000","message":"or either. In this case it is extracting the requests project ID to use to determine the project id to filter the request by.","commit_id":"e870bd34d0ccacbaef7f4e4def2535eb28f822b9"},{"author":{"_account_id":7386,"name":"Tzu-Mainn Chen","email":"tzumainn@redhat.com","username":"tzumainn"},"change_message_id":"de0a91aa676d8fbbb2b5c297460ef296ed0685e7","unresolved":true,"context_lines":[{"line_number":1840,"context_line":""},{"line_number":1841,"context_line":""},{"line_number":1842,"context_line":"def check_volume_policy_and_retrieve(policy_name, vol_ident, target\u003dFalse):"},{"line_number":1843,"context_line":"    \"\"\"Check if the specified policy authorizes this request on a port."},{"line_number":1844,"context_line":""},{"line_number":1845,"context_line":"    :param: policy_name: Name of the policy to check."},{"line_number":1846,"context_line":"    :param: vol_ident: The name, uuid, or other valid ID value to find"}],"source_content_type":"text/x-python","patch_set":7,"id":"e047e8df_f17a4a7c","line":1843,"updated":"2021-03-04 18:17:34.000000000","message":"\"volume\"","commit_id":"e870bd34d0ccacbaef7f4e4def2535eb28f822b9"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"44d58d4db990505f154893f47574b9cd2aa3089b","unresolved":false,"context_lines":[{"line_number":1840,"context_line":""},{"line_number":1841,"context_line":""},{"line_number":1842,"context_line":"def check_volume_policy_and_retrieve(policy_name, vol_ident, target\u003dFalse):"},{"line_number":1843,"context_line":"    \"\"\"Check if the specified policy authorizes this request on a port."},{"line_number":1844,"context_line":""},{"line_number":1845,"context_line":"    :param: policy_name: Name of the policy to check."},{"line_number":1846,"context_line":"    :param: vol_ident: The name, uuid, or other valid ID value to find"}],"source_content_type":"text/x-python","patch_set":7,"id":"c47ce5ce_7f6cdb76","line":1843,"in_reply_to":"e047e8df_f17a4a7c","updated":"2021-03-08 19:01:59.000000000","message":"Done","commit_id":"e870bd34d0ccacbaef7f4e4def2535eb28f822b9"},{"author":{"_account_id":7386,"name":"Tzu-Mainn Chen","email":"tzumainn@redhat.com","username":"tzumainn"},"change_message_id":"de0a91aa676d8fbbb2b5c297460ef296ed0685e7","unresolved":true,"context_lines":[{"line_number":1844,"context_line":""},{"line_number":1845,"context_line":"    :param: policy_name: Name of the policy to check."},{"line_number":1846,"context_line":"    :param: vol_ident: The name, uuid, or other valid ID value to find"},{"line_number":1847,"context_line":"                        a port or portgroup by."},{"line_number":1848,"context_line":"    :param: target: Boolean value to indicate if the check is for a volume"},{"line_number":1849,"context_line":"                    target or connector. Default value is False, implying"},{"line_number":1850,"context_line":"                    connector."}],"source_content_type":"text/x-python","patch_set":7,"id":"95b78c48_914fa4ee","line":1847,"updated":"2021-03-04 18:17:34.000000000","message":"\"volume\"","commit_id":"e870bd34d0ccacbaef7f4e4def2535eb28f822b9"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"44d58d4db990505f154893f47574b9cd2aa3089b","unresolved":false,"context_lines":[{"line_number":1844,"context_line":""},{"line_number":1845,"context_line":"    :param: policy_name: Name of the policy to check."},{"line_number":1846,"context_line":"    :param: vol_ident: The name, uuid, or other valid ID value to find"},{"line_number":1847,"context_line":"                        a port or portgroup by."},{"line_number":1848,"context_line":"    :param: target: Boolean value to indicate if the check is for a volume"},{"line_number":1849,"context_line":"                    target or connector. Default value is False, implying"},{"line_number":1850,"context_line":"                    connector."}],"source_content_type":"text/x-python","patch_set":7,"id":"c727a4c2_5a2760bd","line":1847,"in_reply_to":"95b78c48_914fa4ee","updated":"2021-03-08 19:01:59.000000000","message":"Done","commit_id":"e870bd34d0ccacbaef7f4e4def2535eb28f822b9"},{"author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"change_message_id":"c5f3a31c234e56b7e3eae466ecd2ca7d823be6a9","unresolved":true,"context_lines":[{"line_number":1864,"context_line":"        else:"},{"line_number":1865,"context_line":"            rpc_vol \u003d objects.VolumeTarget.get(context, vol_ident)"},{"line_number":1866,"context_line":"    except (exception.VolumeConnectorNotFound, exception.VolumeTargetNotFound):"},{"line_number":1867,"context_line":"        # don\u0027t expose non-existence of port unless requester"},{"line_number":1868,"context_line":"        # has generic access to policy"},{"line_number":1869,"context_line":"        raise"},{"line_number":1870,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"f5b2fab0_583f265b","line":1867,"updated":"2021-03-08 01:22:38.000000000","message":"\"volume\" ?","commit_id":"e870bd34d0ccacbaef7f4e4def2535eb28f822b9"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"44d58d4db990505f154893f47574b9cd2aa3089b","unresolved":false,"context_lines":[{"line_number":1864,"context_line":"        else:"},{"line_number":1865,"context_line":"            rpc_vol \u003d objects.VolumeTarget.get(context, vol_ident)"},{"line_number":1866,"context_line":"    except (exception.VolumeConnectorNotFound, exception.VolumeTargetNotFound):"},{"line_number":1867,"context_line":"        # don\u0027t expose non-existence of port unless requester"},{"line_number":1868,"context_line":"        # has generic access to policy"},{"line_number":1869,"context_line":"        raise"},{"line_number":1870,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"95c938f0_3d0e9a42","line":1867,"in_reply_to":"f5b2fab0_583f265b","updated":"2021-03-08 19:01:59.000000000","message":"Done","commit_id":"e870bd34d0ccacbaef7f4e4def2535eb28f822b9"}]}
