)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"34a6266aae89f75381712e19f4e6a2bc2f4d7769","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"74adbc6f_abf45b91","updated":"2022-07-12 22:41:54.000000000","message":"So, I kind of like what I\u0027m seeing. I didn\u0027t think of just capturing the exception... and I think that works for us.","commit_id":"a6c3148222f1eabccace46fba8db338ed3d81ae2"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"4bde35832df96a568f27192fa8f019f5a90e4bf3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"951fc404_6ab11d39","updated":"2022-07-12 22:42:38.000000000","message":"recheck so we can get updated test results.","commit_id":"a6c3148222f1eabccace46fba8db338ed3d81ae2"}],"ironic_tempest_plugin/tests/api/rbac_defaults/test_nodes.py":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"34a6266aae89f75381712e19f4e6a2bc2f4d7769","unresolved":true,"context_lines":[{"line_number":34,"context_line":"        self.client \u003d self.os_system_admin.baremetal.BaremetalClient()"},{"line_number":35,"context_line":"        self.reader_client \u003d self.os_project_reader.baremetal.BaremetalClient()"},{"line_number":36,"context_line":"        _, self.chassis \u003d self.create_chassis()"},{"line_number":37,"context_line":"        _, self.node \u003d self.create_node(self.chassis[\u0027uuid\u0027])"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    # Default policy is:"},{"line_number":40,"context_line":"    # (\u0027role:reader and \u0027"}],"source_content_type":"text/x-python","patch_set":8,"id":"9990819f_12440667","line":37,"range":{"start_line":37,"start_character":0,"end_line":37,"end_character":61},"updated":"2022-07-12 22:41:54.000000000","message":"We might want to just note that this is a bare node... no inherent permissions by default for project readers.","commit_id":"a6c3148222f1eabccace46fba8db338ed3d81ae2"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"1978306a7aaca366b4543ebd9a3adb43ebc97cb3","unresolved":false,"context_lines":[{"line_number":34,"context_line":"        self.client \u003d self.os_system_admin.baremetal.BaremetalClient()"},{"line_number":35,"context_line":"        self.reader_client \u003d self.os_project_reader.baremetal.BaremetalClient()"},{"line_number":36,"context_line":"        _, self.chassis \u003d self.create_chassis()"},{"line_number":37,"context_line":"        _, self.node \u003d self.create_node(self.chassis[\u0027uuid\u0027])"},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"    # Default policy is:"},{"line_number":40,"context_line":"    # (\u0027role:reader and \u0027"}],"source_content_type":"text/x-python","patch_set":8,"id":"b1dbfde4_c112dd0b","line":37,"range":{"start_line":37,"start_character":0,"end_line":37,"end_character":61},"in_reply_to":"9990819f_12440667","updated":"2022-08-17 14:21:03.000000000","message":"I added a comment.","commit_id":"a6c3148222f1eabccace46fba8db338ed3d81ae2"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"34a6266aae89f75381712e19f4e6a2bc2f4d7769","unresolved":true,"context_lines":[{"line_number":78,"context_line":""},{"line_number":79,"context_line":"        self.assertEqual(404, resp.status)"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        # doesn\u0027t apply, lower level field filtering logic"},{"line_number":82,"context_line":"        # which only applies when we are a user with rights."},{"line_number":83,"context_line":"        # baremetal:node:get:filter_threshold"},{"line_number":84,"context_line":"        # baremetal:node:get:last_error"},{"line_number":85,"context_line":"        # baremetal:node:get:reservation"},{"line_number":86,"context_line":"        # baremetal:node:get:driver_internal_info"},{"line_number":87,"context_line":"        # baremetal:node:get:driver_info"},{"line_number":88,"context_line":"        #"},{"line_number":89,"context_line":"        # Should all return ?404?"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    def test_reader_cannot_update_node_driver_info(self):"},{"line_number":92,"context_line":"        \"\"\"Reader cannot update node driver_info"}],"source_content_type":"text/x-python","patch_set":8,"id":"5012dfc3_a21c59fb","line":89,"range":{"start_line":81,"start_character":0,"end_line":89,"end_character":33},"updated":"2022-07-12 22:41:54.000000000","message":"redundant?","commit_id":"a6c3148222f1eabccace46fba8db338ed3d81ae2"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"1978306a7aaca366b4543ebd9a3adb43ebc97cb3","unresolved":false,"context_lines":[{"line_number":78,"context_line":""},{"line_number":79,"context_line":"        self.assertEqual(404, resp.status)"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"        # doesn\u0027t apply, lower level field filtering logic"},{"line_number":82,"context_line":"        # which only applies when we are a user with rights."},{"line_number":83,"context_line":"        # baremetal:node:get:filter_threshold"},{"line_number":84,"context_line":"        # baremetal:node:get:last_error"},{"line_number":85,"context_line":"        # baremetal:node:get:reservation"},{"line_number":86,"context_line":"        # baremetal:node:get:driver_internal_info"},{"line_number":87,"context_line":"        # baremetal:node:get:driver_info"},{"line_number":88,"context_line":"        #"},{"line_number":89,"context_line":"        # Should all return ?404?"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"    def test_reader_cannot_update_node_driver_info(self):"},{"line_number":92,"context_line":"        \"\"\"Reader cannot update node driver_info"}],"source_content_type":"text/x-python","patch_set":8,"id":"d5efdb05_c84885b3","line":89,"range":{"start_line":81,"start_character":0,"end_line":89,"end_character":33},"in_reply_to":"5012dfc3_a21c59fb","updated":"2022-08-17 14:21:03.000000000","message":"Done","commit_id":"a6c3148222f1eabccace46fba8db338ed3d81ae2"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"34a6266aae89f75381712e19f4e6a2bc2f4d7769","unresolved":true,"context_lines":[{"line_number":261,"context_line":"        try:"},{"line_number":262,"context_line":"            resp, body \u003d self.reader_client.update_node(self.node[\u0027uuid\u0027],"},{"line_number":263,"context_line":"                                                        patch\u003dpatch)"},{"line_number":264,"context_line":"        except lib_exc.NotFound as e:"},{"line_number":265,"context_line":"            resp \u003d e.resp"},{"line_number":266,"context_line":""},{"line_number":267,"context_line":"        self.assertEqual(404, resp.status)"},{"line_number":268,"context_line":""},{"line_number":269,"context_line":"    def test_reader_cannot_update_instance_info(self):"},{"line_number":270,"context_line":"        \"\"\"Reader cannot update node instance info"},{"line_number":271,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"8ba7e97a_7ebf00b4","line":268,"range":{"start_line":264,"start_character":0,"end_line":268,"end_character":0},"updated":"2022-07-12 22:41:54.000000000","message":"I guess this could work...","commit_id":"a6c3148222f1eabccace46fba8db338ed3d81ae2"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"34a6266aae89f75381712e19f4e6a2bc2f4d7769","unresolved":true,"context_lines":[{"line_number":1020,"context_line":""},{"line_number":1021,"context_line":"        baremetal:node:get_boot_device"},{"line_number":1022,"context_line":"        \"\"\""},{"line_number":1023,"context_line":"        # TODO(hjensas): Should this be allowed?"},{"line_number":1024,"context_line":"        try:"},{"line_number":1025,"context_line":"            resp, body \u003d self.reader_client.get_node_boot_device("},{"line_number":1026,"context_line":"                self.node[\u0027uuid\u0027])"}],"source_content_type":"text/x-python","patch_set":8,"id":"59765c4f_ba7e60a1","line":1023,"range":{"start_line":1023,"start_character":0,"end_line":1023,"end_character":48},"updated":"2022-07-12 22:41:54.000000000","message":"I don\u0027t think so since it can actually trigger a call out to the bmc...","commit_id":"a6c3148222f1eabccace46fba8db338ed3d81ae2"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"1978306a7aaca366b4543ebd9a3adb43ebc97cb3","unresolved":false,"context_lines":[{"line_number":1020,"context_line":""},{"line_number":1021,"context_line":"        baremetal:node:get_boot_device"},{"line_number":1022,"context_line":"        \"\"\""},{"line_number":1023,"context_line":"        # TODO(hjensas): Should this be allowed?"},{"line_number":1024,"context_line":"        try:"},{"line_number":1025,"context_line":"            resp, body \u003d self.reader_client.get_node_boot_device("},{"line_number":1026,"context_line":"                self.node[\u0027uuid\u0027])"}],"source_content_type":"text/x-python","patch_set":8,"id":"2fce6e94_76f4f4ff","line":1023,"range":{"start_line":1023,"start_character":0,"end_line":1023,"end_character":48},"in_reply_to":"59765c4f_ba7e60a1","updated":"2022-08-17 14:21:03.000000000","message":"ack, removing the TODO comment.","commit_id":"a6c3148222f1eabccace46fba8db338ed3d81ae2"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"34a6266aae89f75381712e19f4e6a2bc2f4d7769","unresolved":true,"context_lines":[{"line_number":1297,"context_line":""},{"line_number":1298,"context_line":"        baremetal:node:ipa_heartbeat"},{"line_number":1299,"context_line":"        \"\"\""},{"line_number":1300,"context_line":"        # TODO(hjensas): Is the pollicy not working?"},{"line_number":1301,"context_line":"        try:"},{"line_number":1302,"context_line":"            resp, body \u003d self.reader_client.ipa_heartbeat("},{"line_number":1303,"context_line":"                self.node[\u0027uuid\u0027], callback_url\u003d\u0027http://foo/\u0027,"}],"source_content_type":"text/x-python","patch_set":8,"id":"b2af55de_8e6b922f","line":1300,"range":{"start_line":1300,"start_character":0,"end_line":1300,"end_character":52},"updated":"2022-07-12 22:41:54.000000000","message":"this policy is a noop, but there is underlying logic guarding it.","commit_id":"a6c3148222f1eabccace46fba8db338ed3d81ae2"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"1978306a7aaca366b4543ebd9a3adb43ebc97cb3","unresolved":true,"context_lines":[{"line_number":1297,"context_line":""},{"line_number":1298,"context_line":"        baremetal:node:ipa_heartbeat"},{"line_number":1299,"context_line":"        \"\"\""},{"line_number":1300,"context_line":"        # TODO(hjensas): Is the pollicy not working?"},{"line_number":1301,"context_line":"        try:"},{"line_number":1302,"context_line":"            resp, body \u003d self.reader_client.ipa_heartbeat("},{"line_number":1303,"context_line":"                self.node[\u0027uuid\u0027], callback_url\u003d\u0027http://foo/\u0027,"}],"source_content_type":"text/x-python","patch_set":8,"id":"b2d40bd9_9cac5115","line":1300,"range":{"start_line":1300,"start_character":0,"end_line":1300,"end_character":52},"in_reply_to":"b2af55de_8e6b922f","updated":"2022-08-17 14:21:03.000000000","message":"I figured the policy would deny it here[1], but if memory serves right this test fails at [2]. Should we remove this test?\n\n\n[1] https://opendev.org/openstack/ironic/src/branch/master/ironic/api/controllers/v1/ramdisk.py#L204\n[2] https://opendev.org/openstack/ironic/src/branch/master/ironic/api/controllers/v1/ramdisk.py#L226","commit_id":"a6c3148222f1eabccace46fba8db338ed3d81ae2"}]}
