)]}'
{"nova/api/openstack/compute/views/servers.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c0e557ad8000e3d07624fcbfac48d9ebb3d916d3","unresolved":false,"context_lines":[{"line_number":650,"context_line":""},{"line_number":651,"context_line":"        # If request is a POST create server we get the security groups"},{"line_number":652,"context_line":"        # intended for an instance from the request. The reason for this"},{"line_number":653,"context_line":"        # is if using neutron security groups the requested security"},{"line_number":654,"context_line":"        # groups for the instance are not in the db and have not been"},{"line_number":655,"context_line":"        # sent to neutron yet."},{"line_number":656,"context_line":"        # Starting from microversion 2.75, security groups is returned in"}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa7e38b_f46f8b90","line":653,"range":{"start_line":653,"start_character":13,"end_line":653,"end_character":45},"updated":"2019-12-03 15:13:31.000000000","message":"nit: we could remove this to avoid confusion - there is no \"if\" anymore.","commit_id":"3f87ae4c6ba805f837a9c66ef3793e48716b36d8"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"f54da26af8b5b00f61c356291da97ef085bbb25f","unresolved":false,"context_lines":[{"line_number":650,"context_line":""},{"line_number":651,"context_line":"        # If request is a POST create server we get the security groups"},{"line_number":652,"context_line":"        # intended for an instance from the request. The reason for this"},{"line_number":653,"context_line":"        # is if using neutron security groups the requested security"},{"line_number":654,"context_line":"        # groups for the instance are not in the db and have not been"},{"line_number":655,"context_line":"        # sent to neutron yet."},{"line_number":656,"context_line":"        # Starting from microversion 2.75, security groups is returned in"}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa7e38b_cb6e62fd","line":653,"range":{"start_line":653,"start_character":13,"end_line":653,"end_character":45},"in_reply_to":"3fa7e38b_f46f8b90","updated":"2019-12-04 09:55:47.000000000","message":"Done","commit_id":"3f87ae4c6ba805f837a9c66ef3793e48716b36d8"}],"nova/network/security_group/openstack_driver.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c0e557ad8000e3d07624fcbfac48d9ebb3d916d3","unresolved":false,"context_lines":[{"line_number":23,"context_line":"# TODO(stephenfin): Remove this since it\u0027s not needed with nova-net no longer"},{"line_number":24,"context_line":"# screwing things up"},{"line_number":25,"context_line":"def get_openstack_security_group_driver():"},{"line_number":26,"context_line":"    return importutils.import_object(NEUTRON_DRIVER)"}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa7e38b_745cfbef","line":26,"updated":"2019-12-03 15:13:31.000000000","message":"We should make this a singleton:\n\nhttps://bugs.launchpad.net/nova/+bug/1825018\n\nBut that can be done in a follow up change to fix that bug.","commit_id":"3f87ae4c6ba805f837a9c66ef3793e48716b36d8"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"81a9eedec7d65cc6ad822127d5a671b0c95cdc60","unresolved":false,"context_lines":[{"line_number":23,"context_line":"# TODO(stephenfin): Remove this since it\u0027s not needed with nova-net no longer"},{"line_number":24,"context_line":"# screwing things up"},{"line_number":25,"context_line":"def get_openstack_security_group_driver():"},{"line_number":26,"context_line":"    return importutils.import_object(NEUTRON_DRIVER)"}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa7e38b_cfa3dc9a","line":26,"in_reply_to":"3fa7e38b_745cfbef","updated":"2019-12-03 15:58:48.000000000","message":"https://review.opendev.org/697122 is a backportable fix for that bug. We will conflict though.","commit_id":"3f87ae4c6ba805f837a9c66ef3793e48716b36d8"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"7ca22d4af7ae59177d3bb54050b032129869e598","unresolved":false,"context_lines":[{"line_number":21,"context_line":"DRIVER_CACHE \u003d None  # singleton of the driver once loaded"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"# TODO(stephenfin): Remove this since it\u0027s not needed with nova-net no longer"},{"line_number":25,"context_line":"# screwing things up"},{"line_number":26,"context_line":"def get_openstack_security_group_driver():"},{"line_number":27,"context_line":"    global DRIVER_CACHE"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_ea4b7125","line":24,"updated":"2019-12-16 14:45:44.000000000","message":"We still want the cache or a singleton of nova.network.security_group.neutron_driver.SecurityGroupAPI though.","commit_id":"d5c9423e40dc7e70c751baa1c3ea7c8896cb960a"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"be9863be20c41bc46920a9089b2b78e50d3fad8f","unresolved":false,"context_lines":[{"line_number":21,"context_line":"DRIVER_CACHE \u003d None  # singleton of the driver once loaded"},{"line_number":22,"context_line":""},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"# TODO(stephenfin): Remove this since it\u0027s not needed with nova-net no longer"},{"line_number":25,"context_line":"# screwing things up"},{"line_number":26,"context_line":"def get_openstack_security_group_driver():"},{"line_number":27,"context_line":"    global DRIVER_CACHE"}],"source_content_type":"text/x-python","patch_set":8,"id":"3fa7e38b_4e264bce","line":24,"in_reply_to":"3fa7e38b_ea4b7125","updated":"2019-12-17 10:10:24.000000000","message":"I\u0027m hoping [1] addresses this without the need for either\n\n[1] https://review.opendev.org/#/c/696746/10","commit_id":"d5c9423e40dc7e70c751baa1c3ea7c8896cb960a"}],"nova/objects/security_group.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c0e557ad8000e3d07624fcbfac48d9ebb3d916d3","unresolved":false,"context_lines":[{"line_number":49,"context_line":"    @staticmethod"},{"line_number":50,"context_line":"    def _from_db_object(context, secgroup, db_secgroup):"},{"line_number":51,"context_line":"        for field in secgroup.fields:"},{"line_number":52,"context_line":"            if field !\u003d \u0027uuid\u0027:"},{"line_number":53,"context_line":"                setattr(secgroup, field, db_secgroup[field])"},{"line_number":54,"context_line":"        secgroup._context \u003d context"},{"line_number":55,"context_line":"        secgroup.obj_reset_changes()"}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa7e38b_942df746","line":52,"updated":"2019-12-03 15:13:31.000000000","message":"unrelated","commit_id":"3f87ae4c6ba805f837a9c66ef3793e48716b36d8"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c0e557ad8000e3d07624fcbfac48d9ebb3d916d3","unresolved":false,"context_lines":[{"line_number":173,"context_line":"            # This is a neutron security group uuid so store in the uuid field."},{"line_number":174,"context_line":"            secgroup.uuid \u003d sg"},{"line_number":175,"context_line":"        else:"},{"line_number":176,"context_line":"            # This is the special \u0027default\u0027 security group in the case of"},{"line_number":177,"context_line":"            # neutron."},{"line_number":178,"context_line":"            secgroup.name \u003d sg"},{"line_number":179,"context_line":"        secgroups.objects.append(secgroup)"},{"line_number":180,"context_line":"    return secgroups"}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa7e38b_f41d4b10","line":177,"range":{"start_line":176,"start_character":58,"end_line":177,"end_character":22},"updated":"2019-12-03 15:13:31.000000000","message":"this could be removed","commit_id":"3f87ae4c6ba805f837a9c66ef3793e48716b36d8"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"f54da26af8b5b00f61c356291da97ef085bbb25f","unresolved":false,"context_lines":[{"line_number":173,"context_line":"            # This is a neutron security group uuid so store in the uuid field."},{"line_number":174,"context_line":"            secgroup.uuid \u003d sg"},{"line_number":175,"context_line":"        else:"},{"line_number":176,"context_line":"            # This is the special \u0027default\u0027 security group in the case of"},{"line_number":177,"context_line":"            # neutron."},{"line_number":178,"context_line":"            secgroup.name \u003d sg"},{"line_number":179,"context_line":"        secgroups.objects.append(secgroup)"},{"line_number":180,"context_line":"    return secgroups"}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa7e38b_eb423e68","line":177,"range":{"start_line":176,"start_character":58,"end_line":177,"end_character":22},"in_reply_to":"3fa7e38b_f41d4b10","updated":"2019-12-04 09:55:47.000000000","message":"Done","commit_id":"3f87ae4c6ba805f837a9c66ef3793e48716b36d8"}],"nova/test.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"c0e557ad8000e3d07624fcbfac48d9ebb3d916d3","unresolved":false,"context_lines":[{"line_number":285,"context_line":""},{"line_number":286,"context_line":"        self.useFixture(nova_fixtures.PoisonFunctions())"},{"line_number":287,"context_line":""},{"line_number":288,"context_line":"        openstack_driver.DRIVER_CACHE \u003d {}"},{"line_number":289,"context_line":""},{"line_number":290,"context_line":"        self.useFixture(nova_fixtures.ForbidNewLegacyNotificationFixture())"},{"line_number":291,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa7e38b_14dee73b","side":"PARENT","line":288,"updated":"2019-12-03 15:13:31.000000000","message":"Heh this was dead since https://review.opendev.org/#/c/325684/4/nova/network/security_group/openstack_driver.py","commit_id":"9e4b720a2b8acc2271623cbdff9cf3972e2766cd"}]}
