)]}'
{"patrole_tempest_plugin/tests/api/network/test_segments_rbac.py":[{"author":{"_account_id":23186,"name":"Felipe Monteiro","email":"felipe.carneiro.monteiro@gmail.com","username":"felipe.monteiro"},"change_message_id":"a24902b9fd4e44625ec06903f74d421a47b3cb37","unresolved":false,"context_lines":[{"line_number":52,"context_line":""},{"line_number":53,"context_line":"        return segmentation_id"},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"    @classmethod"},{"line_number":56,"context_line":"    def create_segment(cls, network):"},{"line_number":57,"context_line":"        segmentation_id \u003d cls.get_free_segmentation_id()"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"        seg \u003d cls.ntp_client.create_segment("},{"line_number":60,"context_line":"            network_id\u003dnetwork[\u0027id\u0027], network_type\u003d\"gre\","},{"line_number":61,"context_line":"            segmentation_id\u003dsegmentation_id)"},{"line_number":62,"context_line":"        cls.addClassResourceCleanup("},{"line_number":63,"context_line":"            test_utils.call_and_ignore_notfound_exc,"},{"line_number":64,"context_line":"            cls.ntp_client.delete_segment, seg[\u0027segment\u0027][\u0027id\u0027])"},{"line_number":65,"context_line":""},{"line_number":66,"context_line":"        return seg"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"    @decorators.idempotent_id(\u0027c02618e7-bb20-1a3a-83c8-6eec2af08126\u0027)"},{"line_number":69,"context_line":"    @rbac_rule_validation.action(service\u003d\"neutron\","}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_c92b3330","line":66,"range":{"start_line":55,"start_character":0,"end_line":66,"end_character":18},"updated":"2018-08-03 01:45:59.000000000","message":"Logs should this for test_delete_segment:\n\nft1.2: patrole_tempest_plugin.tests.api.network.test_segments_rbac.SegmentsPluginRbacTest.test_delete_segment[id-c02618e7-bb20-1a3a-83c8-6eec2af08129]_StringException: pythonlogging:\u0027\u0027: {{{\n2018-08-02 22:53:40,127 8746 DEBUG    [patrole_tempest_plugin.rbac_rule_validation] [Policy action]: get_segment, [Role]: member is NOT allowed!\n2018-08-02 22:53:40,135 8746 DEBUG    [patrole_tempest_plugin.rbac_rule_validation] [Policy action]: delete_segment, [Role]: member is NOT allowed!\n2018-08-02 22:53:40,136 8746 DEBUG    [patrole_tempest_plugin.rbac_rule_validation] test_delete_segment: Expecting 404 to be raised for policy name: get_segment\n2018-08-02 22:53:40,166 8746 INFO     [tempest.lib.common.rest_client] Request (SegmentsPluginRbacTest:test_delete_segment): 200 GET https://10.4.70.31:9696/v2.0/segments 0.030s\n2018-08-02 22:53:40,167 8746 DEBUG    [tempest.lib.common.rest_client] Request - Headers: {\u0027Content-Type\u0027: \u0027application/json\u0027, \u0027X-Auth-Token\u0027: \u0027\u003comitted\u003e\u0027, \u0027Accept\u0027: \u0027application/json\u0027}\n        Body: None\n    Response - Headers: {u\u0027server\u0027: \u0027Apache/2.4.18 (Ubuntu)\u0027, u\u0027content-length\u0027: \u002716\u0027, u\u0027x-openstack-request-id\u0027: \u0027req-e031ea24-bbe2-4786-b32e-c1ea7dbbd6f6\u0027, u\u0027date\u0027: \u0027Thu, 02 Aug 2018 22:53:40 GMT\u0027, u\u0027content-type\u0027: \u0027application/json\u0027, u\u0027connection\u0027: \u0027close\u0027, \u0027content-location\u0027: \u0027https://10.4.70.31:9696/v2.0/segments\u0027, \u0027status\u0027: \u0027200\u0027}\n        Body: {\"segments\": []}\n2018-08-02 22:53:40,182 8746 INFO     [tempest.lib.common.rest_client] Request (SegmentsPluginRbacTest:test_delete_segment): 403 POST https://10.4.70.31:9696/v2.0/segments 0.014s\n\n1) GET /segments is called -- this is L57 where you call list segments to find a free segmentation id\n2) POST /segments is called -- here a 403 is raised\n3) ... thus we never even hit L121-122 where the policy under test happens\n\nIt\u0027s clear from this that the test is failing here, which is where the bug is.","commit_id":"1fca8e7ec8538c44684b2833da0072c5d16238b3"}]}
