)]}'
{"nova/tests/unit/virt/libvirt/test_driver.py":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"3458a9210b6600aa177e19028b1b90d54aaa83f9","unresolved":false,"context_lines":[{"line_number":7159,"context_line":"        mock_get_metadata.assert_not_called()"},{"line_number":7160,"context_line":"        mock_get_encryptor.assert_not_called()"},{"line_number":7161,"context_line":"        crt_scrt.assert_called_once_with("},{"line_number":7162,"context_line":"            \u0027volume\u0027, uuids.serial, password\u003dkey)"},{"line_number":7163,"context_line":""},{"line_number":7164,"context_line":"    @mock.patch(\u0027os_brick.encryptors.get_encryption_metadata\u0027)"},{"line_number":7165,"context_line":"    @mock.patch(\u0027nova.virt.libvirt.driver.LibvirtDriver._get_volume_encryptor\u0027)"}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa0c359_07700aa5","line":7162,"updated":"2018-02-06 17:21:37.000000000","message":"yay \\o/","commit_id":"cafe3d066ef7021c18961d4b239a10f61db23f2d"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"3458a9210b6600aa177e19028b1b90d54aaa83f9","unresolved":false,"context_lines":[{"line_number":10520,"context_line":"                    }"},{"line_number":10521,"context_line":"                }),"},{"line_number":10522,"context_line":"                \u0027device_name\u0027: \u0027/dev/sda\u0027,"},{"line_number":10523,"context_line":"                \u0027volume_id\u0027: uuids.volume1,"},{"line_number":10524,"context_line":"                \u0027source_type\u0027: \u0027volume\u0027,"},{"line_number":10525,"context_line":"                \u0027destination_type\u0027: \u0027volume\u0027"},{"line_number":10526,"context_line":"            }),"}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa0c359_e7663eee","line":10523,"range":{"start_line":10523,"start_character":29,"end_line":10523,"end_character":43},"updated":"2018-02-06 17:21:37.000000000","message":"should be the same value than serial, ie. 12345 nope ?","commit_id":"cafe3d066ef7021c18961d4b239a10f61db23f2d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"fb38c9ef7989989b9a794d019cf7b35bc02575ee","unresolved":false,"context_lines":[{"line_number":10520,"context_line":"                    }"},{"line_number":10521,"context_line":"                }),"},{"line_number":10522,"context_line":"                \u0027device_name\u0027: \u0027/dev/sda\u0027,"},{"line_number":10523,"context_line":"                \u0027volume_id\u0027: uuids.volume1,"},{"line_number":10524,"context_line":"                \u0027source_type\u0027: \u0027volume\u0027,"},{"line_number":10525,"context_line":"                \u0027destination_type\u0027: \u0027volume\u0027"},{"line_number":10526,"context_line":"            }),"}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa0c359_e7ccfe8a","line":10523,"range":{"start_line":10523,"start_character":29,"end_line":10523,"end_character":43},"in_reply_to":"3fa0c359_e7663eee","updated":"2018-02-06 17:31:55.000000000","message":"I specifically want them to be different here so that we pick the volume_id from connection_info if both are present, given the logic in the new utility method.","commit_id":"cafe3d066ef7021c18961d4b239a10f61db23f2d"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"40f9b76d2dbc5deca87f23b2032898f50c207b1f","unresolved":false,"context_lines":[{"line_number":10520,"context_line":"                    }"},{"line_number":10521,"context_line":"                }),"},{"line_number":10522,"context_line":"                \u0027device_name\u0027: \u0027/dev/sda\u0027,"},{"line_number":10523,"context_line":"                \u0027volume_id\u0027: uuids.volume1,"},{"line_number":10524,"context_line":"                \u0027source_type\u0027: \u0027volume\u0027,"},{"line_number":10525,"context_line":"                \u0027destination_type\u0027: \u0027volume\u0027"},{"line_number":10526,"context_line":"            }),"}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa0c359_478a921b","line":10523,"range":{"start_line":10523,"start_character":29,"end_line":10523,"end_character":43},"in_reply_to":"3fa0c359_e7ccfe8a","updated":"2018-02-06 17:34:02.000000000","message":"Well, okay, chances are that in theory both are identical (if the code works...) but I understand your point. Fair enough.","commit_id":"cafe3d066ef7021c18961d4b239a10f61db23f2d"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"3458a9210b6600aa177e19028b1b90d54aaa83f9","unresolved":false,"context_lines":[{"line_number":10686,"context_line":"                        }"},{"line_number":10687,"context_line":"                    }),"},{"line_number":10688,"context_line":"                    \u0027device_name\u0027: \u0027/dev/sda\u0027,"},{"line_number":10689,"context_line":"                    \u0027volume_id\u0027: uuids.volume1,"},{"line_number":10690,"context_line":"                    \u0027source_type\u0027: \u0027volume\u0027,"},{"line_number":10691,"context_line":"                    \u0027destination_type\u0027: \u0027volume\u0027"},{"line_number":10692,"context_line":"                }),"}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa0c359_a76036d0","line":10689,"range":{"start_line":10689,"start_character":32,"end_line":10689,"end_character":47},"updated":"2018-02-06 17:21:37.000000000","message":"same point","commit_id":"cafe3d066ef7021c18961d4b239a10f61db23f2d"}],"nova/tests/unit/virt/test_block_device.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"ffa39b0ed1730a9a7fefba4d2756793aeec7faca","unresolved":false,"context_lines":[{"line_number":1293,"context_line":"                         driver_block_device.get_volume_id("},{"line_number":1294,"context_line":"                             {\u0027serial\u0027: uuids.serial}))"},{"line_number":1295,"context_line":""},{"line_number":1296,"context_line":"    def test_get_volume_id_found_both(self):"},{"line_number":1297,"context_line":"        # volume_id is taken over serial"},{"line_number":1298,"context_line":"        self.assertEqual(uuids.volume_id,"},{"line_number":1299,"context_line":"                         driver_block_device.get_volume_id("},{"line_number":1300,"context_line":"                             {\u0027serial\u0027: uuids.serial,"},{"line_number":1301,"context_line":"                              \u0027data\u0027: {\u0027volume_id\u0027: uuids.volume_id}}))"}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa0c359_27b0a6f4","line":1301,"range":{"start_line":1296,"start_character":4,"end_line":1301,"end_character":71},"updated":"2018-02-06 17:33:35.000000000","message":"Sylvain, this is the same test wrinkle.","commit_id":"cafe3d066ef7021c18961d4b239a10f61db23f2d"}],"nova/virt/block_device.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"16505b7068cafffb84845278e9dfa93575c81089","unresolved":false,"context_lines":[{"line_number":422,"context_line":"        connection_info \u003d volume_api.initialize_connection(context,"},{"line_number":423,"context_line":"                                                           volume_id,"},{"line_number":424,"context_line":"                                                           connector)"},{"line_number":425,"context_line":"        if \u0027serial\u0027 not in connection_info:"},{"line_number":426,"context_line":"            connection_info[\u0027serial\u0027] \u003d self.volume_id"},{"line_number":427,"context_line":"        self._preserve_multipath_id(connection_info)"},{"line_number":428,"context_line":""},{"line_number":429,"context_line":"        # If do_driver_attach is False, we will attach a volume to an instance"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f93b717_c85aa781","line":426,"range":{"start_line":425,"start_character":8,"end_line":426,"end_character":54},"updated":"2018-02-01 00:14:45.000000000","message":"This.","commit_id":"99a6d5d36cd55f732efc9ba9337627838c52a362"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"16505b7068cafffb84845278e9dfa93575c81089","unresolved":false,"context_lines":[{"line_number":507,"context_line":"        connection_info \u003d volume_api.attachment_update("},{"line_number":508,"context_line":"            context, attachment_id, connector,"},{"line_number":509,"context_line":"            self[\u0027mount_device\u0027])[\u0027connection_info\u0027]"},{"line_number":510,"context_line":"        if \u0027serial\u0027 not in connection_info:"},{"line_number":511,"context_line":"            connection_info[\u0027serial\u0027] \u003d self.volume_id"},{"line_number":512,"context_line":"        self._preserve_multipath_id(connection_info)"},{"line_number":513,"context_line":"        if vol_multiattach:"},{"line_number":514,"context_line":"            # This will be used by the volume driver to determine the proper"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f93b717_e85d2379","line":511,"range":{"start_line":510,"start_character":8,"end_line":511,"end_character":54},"updated":"2018-02-01 00:14:45.000000000","message":"And this.","commit_id":"99a6d5d36cd55f732efc9ba9337627838c52a362"}],"nova/virt/libvirt/driver.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"ad06f24cf90e46e8ece8b92054a1b8e42627422a","unresolved":false,"context_lines":[{"line_number":1274,"context_line":"        \"\"\"Get the encryption metadata dict if it is not provided"},{"line_number":1275,"context_line":"        \"\"\""},{"line_number":1276,"context_line":"        encryption \u003d {}"},{"line_number":1277,"context_line":"        if connection_info.get(\u0027data\u0027, {}).get(\u0027volume_id\u0027):"},{"line_number":1278,"context_line":"            volume_id \u003d connection_info[\u0027data\u0027][\u0027volume_id\u0027]"},{"line_number":1279,"context_line":"            encryption \u003d encryptors.get_encryption_metadata(context,"},{"line_number":1280,"context_line":"                            self._volume_api, volume_id, connection_info)"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f93b717_8b2a59d8","line":1277,"updated":"2018-02-01 01:38:40.000000000","message":"Need to handle this as well.","commit_id":"99a6d5d36cd55f732efc9ba9337627838c52a362"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"10bbb47b9ed01d3b9d51601f428924a86a7eb51f","unresolved":false,"context_lines":[{"line_number":1323,"context_line":"            # NOTE(lyarwood): Store the passphrase as a libvirt secret locally"},{"line_number":1324,"context_line":"            # on the compute node. This secret is used later when generating"},{"line_number":1325,"context_line":"            # the volume config."},{"line_number":1326,"context_line":"            volume_id \u003d driver_block_device.get_volume_id(connection_info)"},{"line_number":1327,"context_line":"            self._host.create_secret(\u0027volume\u0027, volume_id, password\u003dpassphrase)"},{"line_number":1328,"context_line":"        elif encryption:"},{"line_number":1329,"context_line":"            encryptor \u003d self._get_volume_encryptor(connection_info,"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f93b717_79af9929","line":1326,"updated":"2018-02-01 13:59:10.000000000","message":"Should we fail here if we can\u0027t find a volume_id? We\u0027ll eventually fail anyway on detach. Failing here if we can\u0027t find a volume_id would at least be more obvious. Maybe a follow up cleanup?","commit_id":"7b6d7beefc701d5cb39214b44fbfd9bfb2c95827"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e360caf1ff29d5a4b0d83602d98718073334e74f","unresolved":false,"context_lines":[{"line_number":1323,"context_line":"            # NOTE(lyarwood): Store the passphrase as a libvirt secret locally"},{"line_number":1324,"context_line":"            # on the compute node. This secret is used later when generating"},{"line_number":1325,"context_line":"            # the volume config."},{"line_number":1326,"context_line":"            volume_id \u003d driver_block_device.get_volume_id(connection_info)"},{"line_number":1327,"context_line":"            self._host.create_secret(\u0027volume\u0027, volume_id, password\u003dpassphrase)"},{"line_number":1328,"context_line":"        elif encryption:"},{"line_number":1329,"context_line":"            encryptor \u003d self._get_volume_encryptor(connection_info,"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f93b717_bca0af43","line":1326,"in_reply_to":"5f93b717_1c3443dd","updated":"2018-02-01 14:31:22.000000000","message":"True, we do ensure the serial is in the connection_info, and yeah that happens both during BFV and normal volume attach.","commit_id":"7b6d7beefc701d5cb39214b44fbfd9bfb2c95827"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"099a91c3ee2125336c52bbaaf990ec12bbf9a07f","unresolved":false,"context_lines":[{"line_number":1323,"context_line":"            # NOTE(lyarwood): Store the passphrase as a libvirt secret locally"},{"line_number":1324,"context_line":"            # on the compute node. This secret is used later when generating"},{"line_number":1325,"context_line":"            # the volume config."},{"line_number":1326,"context_line":"            volume_id \u003d driver_block_device.get_volume_id(connection_info)"},{"line_number":1327,"context_line":"            self._host.create_secret(\u0027volume\u0027, volume_id, password\u003dpassphrase)"},{"line_number":1328,"context_line":"        elif encryption:"},{"line_number":1329,"context_line":"            encryptor \u003d self._get_volume_encryptor(connection_info,"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f93b717_1c3443dd","line":1326,"in_reply_to":"5f93b717_79af9929","updated":"2018-02-01 14:06:30.000000000","message":"Would we ever fail here given we are always ensuring connection_info at least contains the serial for the volume during attach? Are we not doing the same during BFV?","commit_id":"7b6d7beefc701d5cb39214b44fbfd9bfb2c95827"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"82c9820c5edb07baa1cce5dc4aa0ef4708c8cd91","unresolved":false,"context_lines":[{"line_number":1340,"context_line":"        If native LUKS decryption is enabled then delete previously created"},{"line_number":1341,"context_line":"        Libvirt volume secret from the host."},{"line_number":1342,"context_line":"        \"\"\""},{"line_number":1343,"context_line":"        volume_id \u003d connection_info.get(\u0027data\u0027, {}).get(\u0027volume_id\u0027)"},{"line_number":1344,"context_line":"        if volume_id and self._host.find_secret(\u0027volume\u0027, volume_id):"},{"line_number":1345,"context_line":"            return self._host.delete_secret(\u0027volume\u0027, volume_id)"},{"line_number":1346,"context_line":"        if encryption is None:"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f93b717_cf892d75","line":1343,"updated":"2018-02-02 01:06:58.000000000","message":"Should we call the new get_volume_id method here too?","commit_id":"7b6d7beefc701d5cb39214b44fbfd9bfb2c95827"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b4a3b4bf16c3a6622ff7f2477128abcd88a2c517","unresolved":false,"context_lines":[{"line_number":1340,"context_line":"        If native LUKS decryption is enabled then delete previously created"},{"line_number":1341,"context_line":"        Libvirt volume secret from the host."},{"line_number":1342,"context_line":"        \"\"\""},{"line_number":1343,"context_line":"        volume_id \u003d connection_info.get(\u0027data\u0027, {}).get(\u0027volume_id\u0027)"},{"line_number":1344,"context_line":"        if volume_id and self._host.find_secret(\u0027volume\u0027, volume_id):"},{"line_number":1345,"context_line":"            return self._host.delete_secret(\u0027volume\u0027, volume_id)"},{"line_number":1346,"context_line":"        if encryption is None:"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f93b717_97c9f326","line":1343,"in_reply_to":"5f93b717_cf892d75","updated":"2018-02-02 14:02:25.000000000","message":"Yeah probably.","commit_id":"7b6d7beefc701d5cb39214b44fbfd9bfb2c95827"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"82c9820c5edb07baa1cce5dc4aa0ef4708c8cd91","unresolved":false,"context_lines":[{"line_number":7427,"context_line":"                bdmi.type \u003d disk_info[\u0027type\u0027]"},{"line_number":7428,"context_line":"                bdmi.format \u003d disk_info.get(\u0027format\u0027)"},{"line_number":7429,"context_line":"                bdmi.boot_index \u003d disk_info.get(\u0027boot_index\u0027)"},{"line_number":7430,"context_line":"                volume_id \u003d connection_info.get(\u0027volume_id\u0027)"},{"line_number":7431,"context_line":"                volume_secret \u003d None"},{"line_number":7432,"context_line":"                if volume_id:"},{"line_number":7433,"context_line":"                    volume_secret \u003d self._host.find_secret(\u0027volume\u0027, volume_id)"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f93b717_ef8f4972","line":7430,"updated":"2018-02-02 01:06:58.000000000","message":"What about here? This is different in that it\u0027s doing a connection_info.get(\u0027volume_id\u0027) instead of a connection_info.get(\u0027data\u0027, {}).get(\u0027volume_id\u0027) though. Is that right?","commit_id":"7b6d7beefc701d5cb39214b44fbfd9bfb2c95827"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4e9e42f8b99de87110d0f43e7febc2df55c6073f","unresolved":false,"context_lines":[{"line_number":7427,"context_line":"                bdmi.type \u003d disk_info[\u0027type\u0027]"},{"line_number":7428,"context_line":"                bdmi.format \u003d disk_info.get(\u0027format\u0027)"},{"line_number":7429,"context_line":"                bdmi.boot_index \u003d disk_info.get(\u0027boot_index\u0027)"},{"line_number":7430,"context_line":"                volume_id \u003d connection_info.get(\u0027volume_id\u0027)"},{"line_number":7431,"context_line":"                volume_secret \u003d None"},{"line_number":7432,"context_line":"                if volume_id:"},{"line_number":7433,"context_line":"                    volume_secret \u003d self._host.find_secret(\u0027volume\u0027, volume_id)"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f93b717_d7577b25","line":7430,"in_reply_to":"5f93b717_37d81fed","updated":"2018-02-02 14:08:51.000000000","message":"Looks like this was also added in Lee\u0027s change:\n\nIbfa64f18bbd2fb70db7791330ed1a64fe61c1355\n\nAs far as I can tell, it\u0027s not getting set in there anyway, so this likely doesn\u0027t actually work.","commit_id":"7b6d7beefc701d5cb39214b44fbfd9bfb2c95827"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b4a3b4bf16c3a6622ff7f2477128abcd88a2c517","unresolved":false,"context_lines":[{"line_number":7427,"context_line":"                bdmi.type \u003d disk_info[\u0027type\u0027]"},{"line_number":7428,"context_line":"                bdmi.format \u003d disk_info.get(\u0027format\u0027)"},{"line_number":7429,"context_line":"                bdmi.boot_index \u003d disk_info.get(\u0027boot_index\u0027)"},{"line_number":7430,"context_line":"                volume_id \u003d connection_info.get(\u0027volume_id\u0027)"},{"line_number":7431,"context_line":"                volume_secret \u003d None"},{"line_number":7432,"context_line":"                if volume_id:"},{"line_number":7433,"context_line":"                    volume_secret \u003d self._host.find_secret(\u0027volume\u0027, volume_id)"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f93b717_37d81fed","line":7430,"in_reply_to":"5f93b717_ef8f4972","updated":"2018-02-02 14:02:25.000000000","message":"I\u0027d have to dig into what added this, since this looks wrong. In here we can simply get the volume_id off the bdm.","commit_id":"7b6d7beefc701d5cb39214b44fbfd9bfb2c95827"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"3458a9210b6600aa177e19028b1b90d54aaa83f9","unresolved":false,"context_lines":[{"line_number":7427,"context_line":"                bdmi.type \u003d disk_info[\u0027type\u0027]"},{"line_number":7428,"context_line":"                bdmi.format \u003d disk_info.get(\u0027format\u0027)"},{"line_number":7429,"context_line":"                bdmi.boot_index \u003d disk_info.get(\u0027boot_index\u0027)"},{"line_number":7430,"context_line":"                volume_id \u003d connection_info.get(\u0027volume_id\u0027)"},{"line_number":7431,"context_line":"                volume_secret \u003d None"},{"line_number":7432,"context_line":"                if volume_id:"},{"line_number":7433,"context_line":"                    volume_secret \u003d self._host.find_secret(\u0027volume\u0027, volume_id)"}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa0c359_8735fadc","side":"PARENT","line":7430,"updated":"2018-02-06 17:21:37.000000000","message":"honestly, if we never had volume_id as a key in the connection_info dict, volume_id was always set to None and accordingly, we never set volume_secret.","commit_id":"c1442d3c8cf9ab8a3cc6fe7e169c71e39abe1faf"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"3458a9210b6600aa177e19028b1b90d54aaa83f9","unresolved":false,"context_lines":[{"line_number":7427,"context_line":"                bdmi.type \u003d disk_info[\u0027type\u0027]"},{"line_number":7428,"context_line":"                bdmi.format \u003d disk_info.get(\u0027format\u0027)"},{"line_number":7429,"context_line":"                bdmi.boot_index \u003d disk_info.get(\u0027boot_index\u0027)"},{"line_number":7430,"context_line":"                volume_secret \u003d self._host.find_secret(\u0027volume\u0027, vol.volume_id)"},{"line_number":7431,"context_line":"                if volume_secret:"},{"line_number":7432,"context_line":"                    bdmi.encryption_secret_uuid \u003d volume_secret.UUIDString()"},{"line_number":7433,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa0c359_e73ddebb","line":7430,"updated":"2018-02-06 17:21:37.000000000","message":"here, we\u0027re now sure that since the BDM object always has a volume_id attribute, we will correctly query the volume secret.\n\nI just feel that since that codepath was never tested, we fix two things at once : \n- the fact that 3rd-party volume drivers are broken if they don\u0027t pass volume_id in the date information\n- the fact that live-migration never worked for an encrypted volume\n\nCool.","commit_id":"cafe3d066ef7021c18961d4b239a10f61db23f2d"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"1b74fe6ded7b67a868aac633c8d852236dbbadfd","unresolved":false,"context_lines":[{"line_number":7427,"context_line":"                bdmi.type \u003d disk_info[\u0027type\u0027]"},{"line_number":7428,"context_line":"                bdmi.format \u003d disk_info.get(\u0027format\u0027)"},{"line_number":7429,"context_line":"                bdmi.boot_index \u003d disk_info.get(\u0027boot_index\u0027)"},{"line_number":7430,"context_line":"                volume_secret \u003d self._host.find_secret(\u0027volume\u0027, vol.volume_id)"},{"line_number":7431,"context_line":"                if volume_secret:"},{"line_number":7432,"context_line":"                    bdmi.encryption_secret_uuid \u003d volume_secret.UUIDString()"},{"line_number":7433,"context_line":""},{"line_number":7434,"context_line":"                migrate_data.bdms.append(bdmi)"},{"line_number":7435,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"5f93b717_16db9b4e","line":7432,"range":{"start_line":7430,"start_character":0,"end_line":7432,"end_character":76},"updated":"2018-02-02 22:15:38.000000000","message":"So there\u0027s still nothing testing that encryption_secret_uuid is set on LibvirtLiveMigrateBDMInfo for each volume with an associated secret AFAICT.","commit_id":"cafe3d066ef7021c18961d4b239a10f61db23f2d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"6bd1e3fe765698f895fcd72d30a4516e48f8f33b","unresolved":false,"context_lines":[{"line_number":7427,"context_line":"                bdmi.type \u003d disk_info[\u0027type\u0027]"},{"line_number":7428,"context_line":"                bdmi.format \u003d disk_info.get(\u0027format\u0027)"},{"line_number":7429,"context_line":"                bdmi.boot_index \u003d disk_info.get(\u0027boot_index\u0027)"},{"line_number":7430,"context_line":"                volume_secret \u003d self._host.find_secret(\u0027volume\u0027, vol.volume_id)"},{"line_number":7431,"context_line":"                if volume_secret:"},{"line_number":7432,"context_line":"                    bdmi.encryption_secret_uuid \u003d volume_secret.UUIDString()"},{"line_number":7433,"context_line":""},{"line_number":7434,"context_line":"                migrate_data.bdms.append(bdmi)"},{"line_number":7435,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"3fa0c359_57d7c4c0","line":7432,"range":{"start_line":7430,"start_character":0,"end_line":7432,"end_character":76},"in_reply_to":"5f93b717_16db9b4e","updated":"2018-02-05 14:41:25.000000000","message":"I\u0027m happy to leave your additional refactor + test patch on top of this separately since I don\u0027t really want to hold this fix up as it\u0027s blocking some Cinder 3rd party CIs.","commit_id":"cafe3d066ef7021c18961d4b239a10f61db23f2d"}]}
