)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":30615,"name":"Tushar Trambak Gite","email":"tushargite96@gmail.com","username":"tushargite96"},"change_message_id":"070c571cb4d53c1e25e8bb4dd4e099be52a21810","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"63f1f488_25f49c47","updated":"2022-07-13 08:34:20.000000000","message":"Looks good","commit_id":"cce49d9ab399d25f1cc58c8778e5049d9af1c1da"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"1ffbc62fcde64415406c16f7e7968e29cb30192d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"dce69f9f_ce74357e","updated":"2022-07-18 16:11:53.000000000","message":"This looks broken for luks2 encrypted types, it assumes all encrypted types are luks1.  It should handle luks2 types and reject cryptsetup encrypted types.\n","commit_id":"cce49d9ab399d25f1cc58c8778e5049d9af1c1da"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"4b230168564c11ddba329d48b2bc02e5d52d3e42","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"be55247e_4297e252","updated":"2022-09-06 19:39:32.000000000","message":":-1: \nCo-Author-By: Eric Harney \u003ceharney@redhat.com\u003e","commit_id":"e823aad6978d070fb9e27413b19d242cb27d99a6"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"ac26cce5a9c949116dd4c9987ec9e5db47c444ae","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"ec2741b9_3e497f8e","updated":"2022-09-06 21:30:17.000000000","message":"recheck\n","commit_id":"e823aad6978d070fb9e27413b19d242cb27d99a6"},{"author":{"_account_id":13425,"name":"Simon Dodsley","email":"simon@purestorage.com","username":"sdodsley"},"change_message_id":"d367275ed889f09b54d85d56aac383cddf2025be","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":17,"id":"30dfbbc6_c42d6014","updated":"2022-12-19 18:24:04.000000000","message":"run Pure Storage CI","commit_id":"3e8f04127dfe597a16e68d39a7930e67c4b28efc"},{"author":{"_account_id":30615,"name":"Tushar Trambak Gite","email":"tushargite96@gmail.com","username":"tushargite96"},"change_message_id":"b8862546dd60e609e27e03e07d9d8562957baf01","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":19,"id":"d1252b2b_47305245","updated":"2023-03-15 10:56:18.000000000","message":"Looks good to me","commit_id":"39c5e0d035346bf2e70fd71bb160e11e34c36d48"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"37599c24508ba9b4f69deaa1d69161797f2b24c7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":19,"id":"9e6603ec_75c71971","updated":"2023-02-07 17:11:51.000000000","message":"recheck","commit_id":"39c5e0d035346bf2e70fd71bb160e11e34c36d48"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"9705777d555f247338e3739654b81d30746bc4bc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":19,"id":"f78afa98_f96e0dba","updated":"2023-02-01 17:51:29.000000000","message":"recheck cinder-grenade-mn-sub-volbak","commit_id":"39c5e0d035346bf2e70fd71bb160e11e34c36d48"}],"cinder/image/image_utils.py":[{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"99edab840e30190be3ae2c90c64a3746f40578d2","unresolved":true,"context_lines":[{"line_number":284,"context_line":"    if out_format \u003d\u003d \u0027qcow2\u0027:"},{"line_number":285,"context_line":"        if cipher_spec:"},{"line_number":286,"context_line":"            cmd +\u003d (\u0027-o\u0027,"},{"line_number":287,"context_line":"                    \u0027encrypt.format\u003dluks,encrypt.key-secret\u003dluks_sec,\u0027 +"},{"line_number":288,"context_line":"                    \u0027encrypt.cipher-alg\u003d%s,\u0027 % cipher_spec[\u0027cipher_alg\u0027] +"},{"line_number":289,"context_line":"                    \u0027encrypt.cipher-mode\u003d%s,\u0027 % cipher_spec[\u0027cipher_mode\u0027] +"},{"line_number":290,"context_line":"                    \u0027encrypt.ivgen-alg\u003d%s\u0027 % cipher_spec[\u0027ivgen_alg\u0027])"}],"source_content_type":"text/x-python","patch_set":11,"id":"1a4056e1_caedd295","line":287,"range":{"start_line":287,"start_character":21,"end_line":287,"end_character":40},"updated":"2022-09-06 19:45:20.000000000","message":"This doesn\u0027t handle cases where the encryption spec indicates a provider other than luks -- need to check for that somehow.","commit_id":"e823aad6978d070fb9e27413b19d242cb27d99a6"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"06fba40f43c9af1286c3d613f790db9305a00ba7","unresolved":false,"context_lines":[{"line_number":284,"context_line":"    if out_format \u003d\u003d \u0027qcow2\u0027:"},{"line_number":285,"context_line":"        if cipher_spec:"},{"line_number":286,"context_line":"            cmd +\u003d (\u0027-o\u0027,"},{"line_number":287,"context_line":"                    \u0027encrypt.format\u003dluks,encrypt.key-secret\u003dluks_sec,\u0027 +"},{"line_number":288,"context_line":"                    \u0027encrypt.cipher-alg\u003d%s,\u0027 % cipher_spec[\u0027cipher_alg\u0027] +"},{"line_number":289,"context_line":"                    \u0027encrypt.cipher-mode\u003d%s,\u0027 % cipher_spec[\u0027cipher_mode\u0027] +"},{"line_number":290,"context_line":"                    \u0027encrypt.ivgen-alg\u003d%s\u0027 % cipher_spec[\u0027ivgen_alg\u0027])"}],"source_content_type":"text/x-python","patch_set":11,"id":"a81cecd9_50721817","line":287,"range":{"start_line":287,"start_character":21,"end_line":287,"end_character":40},"in_reply_to":"1a4056e1_caedd295","updated":"2022-10-04 15:45:08.000000000","message":"Done","commit_id":"e823aad6978d070fb9e27413b19d242cb27d99a6"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"99edab840e30190be3ae2c90c64a3746f40578d2","unresolved":true,"context_lines":[{"line_number":288,"context_line":"                    \u0027encrypt.cipher-alg\u003d%s,\u0027 % cipher_spec[\u0027cipher_alg\u0027] +"},{"line_number":289,"context_line":"                    \u0027encrypt.cipher-mode\u003d%s,\u0027 % cipher_spec[\u0027cipher_mode\u0027] +"},{"line_number":290,"context_line":"                    \u0027encrypt.ivgen-alg\u003d%s\u0027 % cipher_spec[\u0027ivgen_alg\u0027])"},{"line_number":291,"context_line":"        cmd +\u003d (\u0027--object\u0027,"},{"line_number":292,"context_line":"                \u0027secret,id\u003dluks_sec,format\u003draw,file\u003d%s\u0027 % passphrase_file)"},{"line_number":293,"context_line":""},{"line_number":294,"context_line":"    # NOTE(lyarwood): When converting to LUKS add the cipher spec if present"}],"source_content_type":"text/x-python","patch_set":11,"id":"e69e2b74_08a2f056","line":291,"updated":"2022-09-06 19:45:20.000000000","message":"Should only occur if cipher_spec is specified.","commit_id":"e823aad6978d070fb9e27413b19d242cb27d99a6"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"06fba40f43c9af1286c3d613f790db9305a00ba7","unresolved":false,"context_lines":[{"line_number":288,"context_line":"                    \u0027encrypt.cipher-alg\u003d%s,\u0027 % cipher_spec[\u0027cipher_alg\u0027] +"},{"line_number":289,"context_line":"                    \u0027encrypt.cipher-mode\u003d%s,\u0027 % cipher_spec[\u0027cipher_mode\u0027] +"},{"line_number":290,"context_line":"                    \u0027encrypt.ivgen-alg\u003d%s\u0027 % cipher_spec[\u0027ivgen_alg\u0027])"},{"line_number":291,"context_line":"        cmd +\u003d (\u0027--object\u0027,"},{"line_number":292,"context_line":"                \u0027secret,id\u003dluks_sec,format\u003draw,file\u003d%s\u0027 % passphrase_file)"},{"line_number":293,"context_line":""},{"line_number":294,"context_line":"    # NOTE(lyarwood): When converting to LUKS add the cipher spec if present"}],"source_content_type":"text/x-python","patch_set":11,"id":"7332f466_27d7e0f0","line":291,"in_reply_to":"e69e2b74_08a2f056","updated":"2022-10-04 15:45:08.000000000","message":"Done","commit_id":"e823aad6978d070fb9e27413b19d242cb27d99a6"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"c0e98818c6129c7188e70d2521582657b7adbcac","unresolved":true,"context_lines":[{"line_number":362,"context_line":"    :param compress: compress w/ qemu-img when possible (best effort)"},{"line_number":363,"context_line":"    :param src_passphrase_file: filename containing source volume\u0027s"},{"line_number":364,"context_line":"                                luks passphrase"},{"line_number":365,"context_line":"    \"\"\""},{"line_number":366,"context_line":""},{"line_number":367,"context_line":"    # Check whether O_DIRECT is supported and set \u0027-t none\u0027 if it is"},{"line_number":368,"context_line":"    # This is needed to ensure that all data hit the device before"}],"source_content_type":"text/x-python","patch_set":14,"id":"d49e0bab_e40420fe","line":365,"range":{"start_line":365,"start_character":4,"end_line":365,"end_character":7},"updated":"2022-10-10 15:50:33.000000000","message":"Needs\n  :param encrypt_format:","commit_id":"fd1ad8ef9a5e9be1d62b94fd70b0326c94fa7993"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"2a83e0cc992830fca8bd8d67c309e6c9e04cadf4","unresolved":false,"context_lines":[{"line_number":362,"context_line":"    :param compress: compress w/ qemu-img when possible (best effort)"},{"line_number":363,"context_line":"    :param src_passphrase_file: filename containing source volume\u0027s"},{"line_number":364,"context_line":"                                luks passphrase"},{"line_number":365,"context_line":"    \"\"\""},{"line_number":366,"context_line":""},{"line_number":367,"context_line":"    # Check whether O_DIRECT is supported and set \u0027-t none\u0027 if it is"},{"line_number":368,"context_line":"    # This is needed to ensure that all data hit the device before"}],"source_content_type":"text/x-python","patch_set":14,"id":"a1ec10b0_1aade5cd","line":365,"range":{"start_line":365,"start_character":4,"end_line":365,"end_character":7},"in_reply_to":"d49e0bab_e40420fe","updated":"2022-10-17 18:11:11.000000000","message":"Done","commit_id":"fd1ad8ef9a5e9be1d62b94fd70b0326c94fa7993"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"a863791b78ac668fde107d3c4dd2e4e639575282","unresolved":true,"context_lines":[{"line_number":294,"context_line":""},{"line_number":295,"context_line":"    # NOTE(lyarwood): When converting to LUKS add the cipher spec if present"},{"line_number":296,"context_line":"    # and create a secret for the passphrase, written to a temp file"},{"line_number":297,"context_line":"    if out_format \u003d\u003d \u0027luks\u0027:"},{"line_number":298,"context_line":"        check_qemu_img_version(QEMU_IMG_MIN_CONVERT_LUKS_VERSION)"},{"line_number":299,"context_line":"        if cipher_spec:"},{"line_number":300,"context_line":"            cmd +\u003d (\u0027-o\u0027, \u0027cipher-alg\u003d%s,cipher-mode\u003d%s,ivgen-alg\u003d%s\u0027 %"}],"source_content_type":"text/x-python","patch_set":15,"id":"0ab9ed2a_706e0bbc","line":297,"range":{"start_line":297,"start_character":4,"end_line":297,"end_character":6},"updated":"2022-12-07 15:16:21.000000000","message":"\"elif\" for better readability","commit_id":"8019db13ce8b0b04721b771faa491fe4f419540d"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"83fd3caf394849d62595d22c37f0b425ccc76147","unresolved":false,"context_lines":[{"line_number":294,"context_line":""},{"line_number":295,"context_line":"    # NOTE(lyarwood): When converting to LUKS add the cipher spec if present"},{"line_number":296,"context_line":"    # and create a secret for the passphrase, written to a temp file"},{"line_number":297,"context_line":"    if out_format \u003d\u003d \u0027luks\u0027:"},{"line_number":298,"context_line":"        check_qemu_img_version(QEMU_IMG_MIN_CONVERT_LUKS_VERSION)"},{"line_number":299,"context_line":"        if cipher_spec:"},{"line_number":300,"context_line":"            cmd +\u003d (\u0027-o\u0027, \u0027cipher-alg\u003d%s,cipher-mode\u003d%s,ivgen-alg\u003d%s\u0027 %"}],"source_content_type":"text/x-python","patch_set":15,"id":"cc4f9ae1_eabe51e8","line":297,"range":{"start_line":297,"start_character":4,"end_line":297,"end_character":6},"in_reply_to":"0ab9ed2a_706e0bbc","updated":"2022-12-12 17:17:00.000000000","message":"Done","commit_id":"8019db13ce8b0b04721b771faa491fe4f419540d"}],"cinder/volume/drivers/nfs.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"1af49cea7003dc98678b3dd9f5001a3c8d980d6a","unresolved":false,"context_lines":[{"line_number":26,"context_line":"from oslo_config import cfg"},{"line_number":27,"context_line":"from oslo_log import log as logging"},{"line_number":28,"context_line":"from oslo_utils import units"},{"line_number":29,"context_line":"from oslo_utils import fileutils"},{"line_number":30,"context_line":"import six"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"from cinder import coordination"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_2503b4c0","line":29,"updated":"2020-08-31 23:22:11.000000000","message":"pep8: H306: imports not in alphabetical order (oslo_utils.units, oslo_utils.fileutils)","commit_id":"d26e0079f5b365526c0268a5344d8bbff34c636f"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"1af49cea7003dc98678b3dd9f5001a3c8d980d6a","unresolved":false,"context_lines":[{"line_number":662,"context_line":""},{"line_number":663,"context_line":"        self._set_rw_permissions_for_all(path_to_new_vol)"},{"line_number":664,"context_line":""},{"line_number":665,"context_line":"    def copy_image_to_encrypted_volume(self, context, volume, image_service, image_id):"},{"line_number":666,"context_line":"        tmp_dir \u003d volume_utils.image_conversion_dir()"},{"line_number":667,"context_line":"        with tempfile.NamedTemporaryFile(dir\u003dtmp_dir) as tmp:"},{"line_number":668,"context_line":"            image_utils.fetch_to_raw(context, image_service, image_id,"}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_050830d7","line":665,"updated":"2020-08-31 23:22:11.000000000","message":"pep8: E501 line too long (87 \u003e 79 characters)","commit_id":"d26e0079f5b365526c0268a5344d8bbff34c636f"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"4bc71b83528bd52d4ed99366f57821a0addbef48","unresolved":true,"context_lines":[{"line_number":725,"context_line":"                f.write(passphrase)"},{"line_number":726,"context_line":""},{"line_number":727,"context_line":"            # Convert the raw image to luks v1 inside qcow2"},{"line_number":728,"context_line":"            dest_image_path \u003d src_image_path + \u0027.luks\u0027"},{"line_number":729,"context_line":"            try:"},{"line_number":730,"context_line":"                image_utils.convert_image(src_image_path,"},{"line_number":731,"context_line":"                                          dest_image_path,"}],"source_content_type":"text/x-python","patch_set":11,"id":"e07aadf0_1a644c85","line":728,"range":{"start_line":728,"start_character":12,"end_line":728,"end_character":54},"updated":"2022-09-08 22:41:07.000000000","message":"Well... of course, this is not working... The destination path should be the volume path, not a random one. Should be something like:\n```\ndest_image_path \u003d self.local_path(volume)\n```\n\nOr in line 738 I should rename to the right file:\n```\nvolume_path \u003d self.local_path(volume)\nos.rename(dest_image_path, volume_path)\n```","commit_id":"e823aad6978d070fb9e27413b19d242cb27d99a6"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"06fba40f43c9af1286c3d613f790db9305a00ba7","unresolved":false,"context_lines":[{"line_number":725,"context_line":"                f.write(passphrase)"},{"line_number":726,"context_line":""},{"line_number":727,"context_line":"            # Convert the raw image to luks v1 inside qcow2"},{"line_number":728,"context_line":"            dest_image_path \u003d src_image_path + \u0027.luks\u0027"},{"line_number":729,"context_line":"            try:"},{"line_number":730,"context_line":"                image_utils.convert_image(src_image_path,"},{"line_number":731,"context_line":"                                          dest_image_path,"}],"source_content_type":"text/x-python","patch_set":11,"id":"ffeeebec_32500ae3","line":728,"range":{"start_line":728,"start_character":12,"end_line":728,"end_character":54},"in_reply_to":"d69d2922_d5ac2387","updated":"2022-10-04 15:45:08.000000000","message":"Done","commit_id":"e823aad6978d070fb9e27413b19d242cb27d99a6"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"dcc90a3fd1a0faf680290ba56c37c59e6c4d5c87","unresolved":true,"context_lines":[{"line_number":725,"context_line":"                f.write(passphrase)"},{"line_number":726,"context_line":""},{"line_number":727,"context_line":"            # Convert the raw image to luks v1 inside qcow2"},{"line_number":728,"context_line":"            dest_image_path \u003d src_image_path + \u0027.luks\u0027"},{"line_number":729,"context_line":"            try:"},{"line_number":730,"context_line":"                image_utils.convert_image(src_image_path,"},{"line_number":731,"context_line":"                                          dest_image_path,"}],"source_content_type":"text/x-python","patch_set":11,"id":"d69d2922_d5ac2387","line":728,"range":{"start_line":728,"start_character":12,"end_line":728,"end_character":54},"in_reply_to":"e07aadf0_1a644c85","updated":"2022-09-08 22:42:33.000000000","message":"```\n1   {0} cinder_tempest_plugin.scenario.test_volume_encrypted.TestEncryptedCinderVolumes.test_boot_cloned_encrypted_volume [123.403725s] ... ok                \n  1                                                                                                                                                           \n  2 \u003d\u003d\u003d\u003d\u003d\u003d                                                                                                                                                    \n  3 Totals                                                                                                                                                    \n  4 \u003d\u003d\u003d\u003d\u003d\u003d                                                                                                                                                    \n  5 Ran: 1 tests in 123.4037 sec.                                                                                                                             \n  6  - Passed: 1                                                                                                                                              \n  7  - Skipped: 0                                                                                                                                             \n  8  - Expected Fail: 0                                                                                                                                       \n  9  - Unexpected Success: 0                                                                                                                                  \n 10  - Failed: 0                                                                                                                                              \n 11 Sum of execute time for each test: 123.4037 sec. \n```","commit_id":"e823aad6978d070fb9e27413b19d242cb27d99a6"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"c0e98818c6129c7188e70d2521582657b7adbcac","unresolved":true,"context_lines":[{"line_number":721,"context_line":"                with open(pass_file.name, \u0027w\u0027) as f:"},{"line_number":722,"context_line":"                    f.write(passphrase)"},{"line_number":723,"context_line":""},{"line_number":724,"context_line":"                    image_utils.convert_image(src_image_path.name,"},{"line_number":725,"context_line":"                                              volume_path,"},{"line_number":726,"context_line":"                                              src_format\u003d\u0027raw\u0027,"},{"line_number":727,"context_line":"                                              out_format\u003d\u0027qcow2\u0027,"}],"source_content_type":"text/x-python","patch_set":14,"id":"73f5f813_c9ee41bd","line":724,"updated":"2022-10-10 15:50:33.000000000","message":"Should be outside of the \"with open\" block, so the pass_file is closed when this command is run.","commit_id":"fd1ad8ef9a5e9be1d62b94fd70b0326c94fa7993"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"2a83e0cc992830fca8bd8d67c309e6c9e04cadf4","unresolved":false,"context_lines":[{"line_number":721,"context_line":"                with open(pass_file.name, \u0027w\u0027) as f:"},{"line_number":722,"context_line":"                    f.write(passphrase)"},{"line_number":723,"context_line":""},{"line_number":724,"context_line":"                    image_utils.convert_image(src_image_path.name,"},{"line_number":725,"context_line":"                                              volume_path,"},{"line_number":726,"context_line":"                                              src_format\u003d\u0027raw\u0027,"},{"line_number":727,"context_line":"                                              out_format\u003d\u0027qcow2\u0027,"}],"source_content_type":"text/x-python","patch_set":14,"id":"7aaa4398_3508c242","line":724,"in_reply_to":"73f5f813_c9ee41bd","updated":"2022-10-17 18:11:11.000000000","message":"Done","commit_id":"fd1ad8ef9a5e9be1d62b94fd70b0326c94fa7993"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"a863791b78ac668fde107d3c4dd2e4e639575282","unresolved":true,"context_lines":[{"line_number":688,"context_line":"        \"\"\"Copy Glance image to LUKS volume."},{"line_number":689,"context_line":""},{"line_number":690,"context_line":"        This method fetches the image to raw and then converts it to"},{"line_number":691,"context_line":"        LUKSv1 inside qcow2."},{"line_number":692,"context_line":"        \"\"\""},{"line_number":693,"context_line":""},{"line_number":694,"context_line":"        # NOTE: A new empty volume is created for this operation so if the"}],"source_content_type":"text/x-python","patch_set":15,"id":"1bb536c8_ee377458","line":691,"range":{"start_line":691,"start_character":8,"end_line":691,"end_character":28},"updated":"2022-12-07 15:16:21.000000000","message":"I don\u0027t think this method can assume that the encryption spec indicates luksv1?","commit_id":"8019db13ce8b0b04721b771faa491fe4f419540d"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"effaa92e1ebcd26aad60d23a0744e18a20b40bba","unresolved":false,"context_lines":[{"line_number":688,"context_line":"        \"\"\"Copy Glance image to LUKS volume."},{"line_number":689,"context_line":""},{"line_number":690,"context_line":"        This method fetches the image to raw and then converts it to"},{"line_number":691,"context_line":"        LUKSv1 inside qcow2."},{"line_number":692,"context_line":"        \"\"\""},{"line_number":693,"context_line":""},{"line_number":694,"context_line":"        # NOTE: A new empty volume is created for this operation so if the"}],"source_content_type":"text/x-python","patch_set":15,"id":"9ef134e3_4b6fdda3","line":691,"range":{"start_line":691,"start_character":8,"end_line":691,"end_character":28},"in_reply_to":"00f6e7dc_3d91f8c5","updated":"2023-02-13 15:05:46.000000000","message":"Done","commit_id":"8019db13ce8b0b04721b771faa491fe4f419540d"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"83fd3caf394849d62595d22c37f0b425ccc76147","unresolved":true,"context_lines":[{"line_number":688,"context_line":"        \"\"\"Copy Glance image to LUKS volume."},{"line_number":689,"context_line":""},{"line_number":690,"context_line":"        This method fetches the image to raw and then converts it to"},{"line_number":691,"context_line":"        LUKSv1 inside qcow2."},{"line_number":692,"context_line":"        \"\"\""},{"line_number":693,"context_line":""},{"line_number":694,"context_line":"        # NOTE: A new empty volume is created for this operation so if the"}],"source_content_type":"text/x-python","patch_set":15,"id":"00f6e7dc_3d91f8c5","line":691,"range":{"start_line":691,"start_character":8,"end_line":691,"end_character":28},"in_reply_to":"1bb536c8_ee377458","updated":"2022-12-12 17:17:00.000000000","message":"I\u0027m not sure I understood this comment correctly. I\u0027ve updated the docstring.","commit_id":"8019db13ce8b0b04721b771faa491fe4f419540d"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"ecdee9d86742da1462f631f90aaee9557ef1a452","unresolved":true,"context_lines":[{"line_number":695,"context_line":"        # convert operation fall should not affect the data in the volume."},{"line_number":696,"context_line":"        volume_path \u003d self.local_path(volume)"},{"line_number":697,"context_line":"        tmp_dir \u003d volume_utils.image_conversion_dir()"},{"line_number":698,"context_line":"        encrypt_format \u003d \u0027luks\u0027"},{"line_number":699,"context_line":"        src_format \u003d \u0027raw\u0027"},{"line_number":700,"context_line":"        out_format \u003d \u0027qcow2\u0027"},{"line_number":701,"context_line":"        encryption \u003d volume_utils.check_encryption_provider(volume, context)"}],"source_content_type":"text/x-python","patch_set":16,"id":"666c9017_a5ca4464","line":698,"range":{"start_line":698,"start_character":8,"end_line":698,"end_character":31},"updated":"2022-12-12 17:19:01.000000000","message":"This doesn\u0027t produce the right result if the volume type specifies luksv2.  This method can\u0027t hard-code use of luksv1.","commit_id":"866787577747efd65b5276eab616928587b08e73"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"c5e5d456b5d200fd639c56d69d7c86c907bcaa64","unresolved":false,"context_lines":[{"line_number":695,"context_line":"        # convert operation fall should not affect the data in the volume."},{"line_number":696,"context_line":"        volume_path \u003d self.local_path(volume)"},{"line_number":697,"context_line":"        tmp_dir \u003d volume_utils.image_conversion_dir()"},{"line_number":698,"context_line":"        encrypt_format \u003d \u0027luks\u0027"},{"line_number":699,"context_line":"        src_format \u003d \u0027raw\u0027"},{"line_number":700,"context_line":"        out_format \u003d \u0027qcow2\u0027"},{"line_number":701,"context_line":"        encryption \u003d volume_utils.check_encryption_provider(volume, context)"}],"source_content_type":"text/x-python","patch_set":16,"id":"f9a0331d_cee07676","line":698,"range":{"start_line":698,"start_character":8,"end_line":698,"end_character":31},"in_reply_to":"666c9017_a5ca4464","updated":"2023-01-31 16:06:14.000000000","message":"Updated to use\n\n`encrypt_format \u003d encryption[\u0027provider\u0027]`","commit_id":"866787577747efd65b5276eab616928587b08e73"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"1fd00dc3be3f311d1f6e9fd873d09eb193d1df06","unresolved":true,"context_lines":[{"line_number":699,"context_line":"        tmp_dir \u003d volume_utils.image_conversion_dir()"},{"line_number":700,"context_line":"        encryption \u003d volume_utils.check_encryption_provider(volume, context)"},{"line_number":701,"context_line":"        encrypt_format \u003d encryption[\u0027provider\u0027]"},{"line_number":702,"context_line":"        out_format \u003d \u0027qcow2\u0027"},{"line_number":703,"context_line":""},{"line_number":704,"context_line":"        # Fetch the key associated with the volume and decode the passphrase"},{"line_number":705,"context_line":"        keymgr \u003d key_manager.API(CONF)"}],"source_content_type":"text/x-python","patch_set":18,"id":"60f6bef1_b81b356c","line":702,"range":{"start_line":702,"start_character":8,"end_line":702,"end_character":28},"updated":"2023-01-27 21:50:04.000000000","message":":-1:  This should be (like in L637)\n\n```\n        if self.configuration.nfs_qcow2_volumes:\n            out_format \u003d \u0027qcow2\u0027\n        else:\n            out_format \u003d \u0027raw\u0027\n\n        if out_format \u003d\u003d \u0027raw\u0027:\n                message \u003d _(\"Can\u0027t create an encrypted volume %(format)s \"\n                            \"from an encrypted source. \"\n                            \"Encryption requires qcow2 volumes.\"\n                            ) % {\u0027format\u0027: out_format}\n                LOG.error(message)\n                raise exception.NfsException(message)\n```","commit_id":"48ec749d2972a737bf9e2cd638612404f36066c6"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"c5e5d456b5d200fd639c56d69d7c86c907bcaa64","unresolved":false,"context_lines":[{"line_number":699,"context_line":"        tmp_dir \u003d volume_utils.image_conversion_dir()"},{"line_number":700,"context_line":"        encryption \u003d volume_utils.check_encryption_provider(volume, context)"},{"line_number":701,"context_line":"        encrypt_format \u003d encryption[\u0027provider\u0027]"},{"line_number":702,"context_line":"        out_format \u003d \u0027qcow2\u0027"},{"line_number":703,"context_line":""},{"line_number":704,"context_line":"        # Fetch the key associated with the volume and decode the passphrase"},{"line_number":705,"context_line":"        keymgr \u003d key_manager.API(CONF)"}],"source_content_type":"text/x-python","patch_set":18,"id":"1ecf2bce_ab04657e","line":702,"range":{"start_line":702,"start_character":8,"end_line":702,"end_character":28},"in_reply_to":"60f6bef1_b81b356c","updated":"2023-01-31 16:06:14.000000000","message":"The previous comment is not correct. After talking with Eric, Failing here is not necessary -- qcow2 is required for the case when the new volume is encrypted, so just make it be qcow2 instead of failing.","commit_id":"48ec749d2972a737bf9e2cd638612404f36066c6"}],"releasenotes/notes/bug-1888680-copy-encrypted-image-NFS-generic-9e104a54a77e3b1c.yaml":[{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"b98b302914b059e4166a7f1e50d1273e28230ff5","unresolved":true,"context_lines":[{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    NFS Generic driver `bug #1888680"},{"line_number":5,"context_line":"    \u003chttps://bugs.launchpad.net/cinder/+bug/1888680\u003e`_: Fix"},{"line_number":6,"context_line":"    NFS LUKSv1 volume creation from an image incorrectly reformats"},{"line_number":7,"context_line":"    volume as plain LUKSv1 instead of an encrypted QCOW2 volume."}],"source_content_type":"text/x-yaml","patch_set":15,"id":"59f15fb5_b1b08557","line":5,"range":{"start_line":5,"start_character":56,"end_line":5,"end_character":59},"updated":"2022-10-17 18:13:27.000000000","message":"Fixed","commit_id":"8019db13ce8b0b04721b771faa491fe4f419540d"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"83fd3caf394849d62595d22c37f0b425ccc76147","unresolved":false,"context_lines":[{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    NFS Generic driver `bug #1888680"},{"line_number":5,"context_line":"    \u003chttps://bugs.launchpad.net/cinder/+bug/1888680\u003e`_: Fix"},{"line_number":6,"context_line":"    NFS LUKSv1 volume creation from an image incorrectly reformats"},{"line_number":7,"context_line":"    volume as plain LUKSv1 instead of an encrypted QCOW2 volume."}],"source_content_type":"text/x-yaml","patch_set":15,"id":"bd68fb50_f394e40b","line":5,"range":{"start_line":5,"start_character":56,"end_line":5,"end_character":59},"in_reply_to":"59f15fb5_b1b08557","updated":"2022-12-12 17:17:00.000000000","message":"Done","commit_id":"8019db13ce8b0b04721b771faa491fe4f419540d"}]}
