)]}'
{"ironic/drivers/modules/deploy_utils.py":[{"author":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"change_message_id":"8cc0e33f63da4da36b851e1ce39c874b2e94121a","unresolved":false,"context_lines":[{"line_number":1310,"context_line":"                except ValueError as e:"},{"line_number":1311,"context_line":"                    message \u003d (\u0027Error attempting to calculate an MD5 \u0027"},{"line_number":1312,"context_line":"                               \u0027checksum for the image. Will attempt to \u0027"},{"line_number":1313,"context_line":"                               \u0027proceed. Error: {}\u0027).format(str(e))"},{"line_number":1314,"context_line":"                    LOG.warning(message)"},{"line_number":1315,"context_line":"                    md5_okay \u003d False"},{"line_number":1316,"context_line":"                # Populate instance_info with os_hash_algo, os_hash_value"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_52d265d2","line":1313,"updated":"2020-02-19 07:57:54.000000000","message":"Since we don\u0027t LOG below, I feel like extending a bit may provide a better understanding, like: \"...to proceed with sha256\u0027.","commit_id":"649116472d15dfa05fb3953a72c7327d9b8b4bd3"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"e833c4d00c2f4dbd73db78373c64cfaac0ffde68","unresolved":false,"context_lines":[{"line_number":1311,"context_line":"                    message \u003d (\u0027Error attempting to calculate an MD5 \u0027"},{"line_number":1312,"context_line":"                               \u0027checksum for the image. Will attempt to \u0027"},{"line_number":1313,"context_line":"                               \u0027proceed. Error: {}\u0027).format(str(e))"},{"line_number":1314,"context_line":"                    LOG.warning(message)"},{"line_number":1315,"context_line":"                    md5_okay \u003d False"},{"line_number":1316,"context_line":"                # Populate instance_info with os_hash_algo, os_hash_value"},{"line_number":1317,"context_line":"                # if they exists and not md5"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_88a2f0ab","line":1314,"updated":"2020-02-19 09:45:57.000000000","message":"No need for pre-formatting message. But also see below, I think we can simplify the whole thing.","commit_id":"649116472d15dfa05fb3953a72c7327d9b8b4bd3"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"e833c4d00c2f4dbd73db78373c64cfaac0ffde68","unresolved":false,"context_lines":[{"line_number":1321,"context_line":"                                                        os_hash_algo)"},{"line_number":1322,"context_line":"                    instance_info[\u0027image_os_hash_algo\u0027] \u003d os_hash_algo"},{"line_number":1323,"context_line":"                    instance_info[\u0027image_os_hash_value\u0027] \u003d hash_value"},{"line_number":1324,"context_line":"                elif os_hash_algo and not md5_okay:"},{"line_number":1325,"context_line":"                    algo \u003d \u0027sha256\u0027"},{"line_number":1326,"context_line":"                    hash_value \u003d compute_image_checksum(image_path, algo)"},{"line_number":1327,"context_line":"                    instance_info[\u0027image_os_hash_algo\u0027] \u003d algo"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_28be5cce","line":1324,"range":{"start_line":1324,"start_character":21,"end_line":1324,"end_character":34},"updated":"2020-02-19 09:45:57.000000000","message":"Why do we need to check os_hash_algo? Cannot we do it always?\n\nActually, why wouldn\u0027t we just discard the MD5 checksum and calculate SHA256 unconditionally? We know that IPA has supported it for at least a release.","commit_id":"649116472d15dfa05fb3953a72c7327d9b8b4bd3"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"7dd669fbc21fd0c66961692e7a15703d4735b141","unresolved":false,"context_lines":[{"line_number":1321,"context_line":"                                                        os_hash_algo)"},{"line_number":1322,"context_line":"                    instance_info[\u0027image_os_hash_algo\u0027] \u003d os_hash_algo"},{"line_number":1323,"context_line":"                    instance_info[\u0027image_os_hash_value\u0027] \u003d hash_value"},{"line_number":1324,"context_line":"                elif os_hash_algo and not md5_okay:"},{"line_number":1325,"context_line":"                    algo \u003d \u0027sha256\u0027"},{"line_number":1326,"context_line":"                    hash_value \u003d compute_image_checksum(image_path, algo)"},{"line_number":1327,"context_line":"                    instance_info[\u0027image_os_hash_algo\u0027] \u003d algo"}],"source_content_type":"text/x-python","patch_set":1,"id":"3fa7e38b_2fd5f7ec","line":1324,"range":{"start_line":1324,"start_character":21,"end_line":1324,"end_character":34},"in_reply_to":"3fa7e38b_28be5cce","updated":"2020-02-19 21:29:18.000000000","message":"You raise a good point, we don\u0027t need to check it. We should just be able to override.","commit_id":"649116472d15dfa05fb3953a72c7327d9b8b4bd3"},{"author":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"change_message_id":"a5113dad442a32f78356c06dd51911546bd24035","unresolved":false,"context_lines":[{"line_number":1303,"context_line":"                # Standard behavior is for image_checksum to be MD5,"},{"line_number":1304,"context_line":"                # so if the hash algorithm is None, then we will use"},{"line_number":1305,"context_line":"                # sha256."},{"line_number":1306,"context_line":"                os_hash_algo \u003d image_info.get(\u0027os_hash_algo\u0027, \u0027md5\u0027)"},{"line_number":1307,"context_line":"                if os_hash_algo \u003d\u003d \u0027md5\u0027:"},{"line_number":1308,"context_line":"                    os_hash_algo \u003d \u0027sha256\u0027"},{"line_number":1309,"context_line":"                LOG.debug(\u0027Recalculating checksum for image %(image)s due to \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_b55e1112","line":1306,"range":{"start_line":1306,"start_character":47,"end_line":1306,"end_character":59},"updated":"2020-02-20 01:34:42.000000000","message":"this should be always present since stein, we don\u0027t need a default value for it.","commit_id":"bc488285de39590e025bb996aebcf5a7a6d6cdad"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"14e7d262b5a3a28f9edb6f9f52434859c85d5a45","unresolved":false,"context_lines":[{"line_number":1303,"context_line":"                # Standard behavior is for image_checksum to be MD5,"},{"line_number":1304,"context_line":"                # so if the hash algorithm is None, then we will use"},{"line_number":1305,"context_line":"                # sha256."},{"line_number":1306,"context_line":"                os_hash_algo \u003d image_info.get(\u0027os_hash_algo\u0027, \u0027md5\u0027)"},{"line_number":1307,"context_line":"                if os_hash_algo \u003d\u003d \u0027md5\u0027:"},{"line_number":1308,"context_line":"                    os_hash_algo \u003d \u0027sha256\u0027"},{"line_number":1309,"context_line":"                LOG.debug(\u0027Recalculating checksum for image %(image)s due to \u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_2c909097","line":1306,"range":{"start_line":1306,"start_character":47,"end_line":1306,"end_character":59},"in_reply_to":"3fa7e38b_b55e1112","updated":"2020-02-20 19:03:52.000000000","message":"ack. Thanks!","commit_id":"bc488285de39590e025bb996aebcf5a7a6d6cdad"},{"author":{"_account_id":23851,"name":"Riccardo Pittau","email":"elfosardo@gmail.com","username":"elfosardo"},"change_message_id":"7d1d727693d25714d7d218990f60c701ea704491","unresolved":false,"context_lines":[{"line_number":1304,"context_line":"                # so if the hash algorithm is None, then we will use"},{"line_number":1305,"context_line":"                # sha256."},{"line_number":1306,"context_line":"                os_hash_algo \u003d image_info.get(\u0027os_hash_algo\u0027, \u0027md5\u0027)"},{"line_number":1307,"context_line":"                if os_hash_algo \u003d\u003d \u0027md5\u0027:"},{"line_number":1308,"context_line":"                    os_hash_algo \u003d \u0027sha256\u0027"},{"line_number":1309,"context_line":"                LOG.debug(\u0027Recalculating checksum for image %(image)s due to \u0027"},{"line_number":1310,"context_line":"                          \u0027image conversion.\u0027, {\u0027image\u0027: image_path})"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_8c7c2f75","line":1307,"updated":"2020-02-20 09:35:55.000000000","message":"should we add a LOG message to inform of the algorithm conversion ? maybe a warning ?","commit_id":"bc488285de39590e025bb996aebcf5a7a6d6cdad"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"f442b8127a09686ddad1bc0f019de26459c328df","unresolved":false,"context_lines":[{"line_number":1308,"context_line":"                    os_hash_algo \u003d \u0027sha256\u0027"},{"line_number":1309,"context_line":"                LOG.debug(\u0027Recalculating checksum for image %(image)s due to \u0027"},{"line_number":1310,"context_line":"                          \u0027image conversion.\u0027, {\u0027image\u0027: image_path})"},{"line_number":1311,"context_line":"                # Populate... something in the image_"},{"line_number":1312,"context_line":"                instance_info[\u0027image_checksum\u0027] \u003d (\u0027discarded-use-image_\u0027"},{"line_number":1313,"context_line":"                                                   \u0027os_hash_algo\u0027)"},{"line_number":1314,"context_line":"                hash_value \u003d compute_image_checksum(image_path, os_hash_algo)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_209bba65","line":1311,"updated":"2020-02-20 13:52:03.000000000","message":"Do we have hard requirement on it somewhere?","commit_id":"bc488285de39590e025bb996aebcf5a7a6d6cdad"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"14e7d262b5a3a28f9edb6f9f52434859c85d5a45","unresolved":false,"context_lines":[{"line_number":1308,"context_line":"                    os_hash_algo \u003d \u0027sha256\u0027"},{"line_number":1309,"context_line":"                LOG.debug(\u0027Recalculating checksum for image %(image)s due to \u0027"},{"line_number":1310,"context_line":"                          \u0027image conversion.\u0027, {\u0027image\u0027: image_path})"},{"line_number":1311,"context_line":"                # Populate... something in the image_"},{"line_number":1312,"context_line":"                instance_info[\u0027image_checksum\u0027] \u003d (\u0027discarded-use-image_\u0027"},{"line_number":1313,"context_line":"                                                   \u0027os_hash_algo\u0027)"},{"line_number":1314,"context_line":"                hash_value \u003d compute_image_checksum(image_path, os_hash_algo)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_4c062c1c","line":1311,"in_reply_to":"3fa7e38b_209bba65","updated":"2020-02-20 19:03:52.000000000","message":"Yeah, I think it presently is a hard requirement. We should likely scrub it out, but I think that is outside of this patch.","commit_id":"bc488285de39590e025bb996aebcf5a7a6d6cdad"},{"author":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"change_message_id":"a5113dad442a32f78356c06dd51911546bd24035","unresolved":false,"context_lines":[{"line_number":1309,"context_line":"                LOG.debug(\u0027Recalculating checksum for image %(image)s due to \u0027"},{"line_number":1310,"context_line":"                          \u0027image conversion.\u0027, {\u0027image\u0027: image_path})"},{"line_number":1311,"context_line":"                # Populate... something in the image_"},{"line_number":1312,"context_line":"                instance_info[\u0027image_checksum\u0027] \u003d (\u0027discarded-use-image_\u0027"},{"line_number":1313,"context_line":"                                                   \u0027os_hash_algo\u0027)"},{"line_number":1314,"context_line":"                hash_value \u003d compute_image_checksum(image_path, os_hash_algo)"},{"line_number":1315,"context_line":"                instance_info[\u0027image_os_hash_algo\u0027] \u003d os_hash_algo"},{"line_number":1316,"context_line":"                instance_info[\u0027image_os_hash_value\u0027] \u003d hash_value"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_b5d1315d","line":1313,"range":{"start_line":1312,"start_character":51,"end_line":1313,"end_character":64},"updated":"2020-02-20 01:34:42.000000000","message":"Maybe just None here, we place a value with a wrong meaning, feel a bit odd.","commit_id":"bc488285de39590e025bb996aebcf5a7a6d6cdad"},{"author":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"change_message_id":"8598adc8ed93cceb5617d95564f9e7bf407a98bc","unresolved":false,"context_lines":[{"line_number":1309,"context_line":"                LOG.debug(\u0027Recalculating checksum for image %(image)s due to \u0027"},{"line_number":1310,"context_line":"                          \u0027image conversion.\u0027, {\u0027image\u0027: image_path})"},{"line_number":1311,"context_line":"                # Populate... something in the image_"},{"line_number":1312,"context_line":"                instance_info[\u0027image_checksum\u0027] \u003d (\u0027discarded-use-image_\u0027"},{"line_number":1313,"context_line":"                                                   \u0027os_hash_algo\u0027)"},{"line_number":1314,"context_line":"                hash_value \u003d compute_image_checksum(image_path, os_hash_algo)"},{"line_number":1315,"context_line":"                instance_info[\u0027image_os_hash_algo\u0027] \u003d os_hash_algo"},{"line_number":1316,"context_line":"                instance_info[\u0027image_os_hash_value\u0027] \u003d hash_value"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_1e761394","line":1313,"range":{"start_line":1312,"start_character":51,"end_line":1313,"end_character":64},"in_reply_to":"3fa7e38b_6c768895","updated":"2020-02-21 03:08:00.000000000","message":"Yeah, I see CI frowned, we will need to remove this line and change the way retrieving checksum at https://opendev.org/openstack/ironic/src/commit/d86b0f61d7b18a57e6eee6995000b59280b2fbb9/ironic/drivers/modules/agent.py#L211\n\nWe can properly loose the checking here too, this can be in another patch:\nhttps://opendev.org/openstack/ironic/src/commit/d86b0f61d7b18a57e6eee6995000b59280b2fbb9/ironic/drivers/modules/agent.py#L416-L419","commit_id":"bc488285de39590e025bb996aebcf5a7a6d6cdad"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"14e7d262b5a3a28f9edb6f9f52434859c85d5a45","unresolved":false,"context_lines":[{"line_number":1309,"context_line":"                LOG.debug(\u0027Recalculating checksum for image %(image)s due to \u0027"},{"line_number":1310,"context_line":"                          \u0027image conversion.\u0027, {\u0027image\u0027: image_path})"},{"line_number":1311,"context_line":"                # Populate... something in the image_"},{"line_number":1312,"context_line":"                instance_info[\u0027image_checksum\u0027] \u003d (\u0027discarded-use-image_\u0027"},{"line_number":1313,"context_line":"                                                   \u0027os_hash_algo\u0027)"},{"line_number":1314,"context_line":"                hash_value \u003d compute_image_checksum(image_path, os_hash_algo)"},{"line_number":1315,"context_line":"                instance_info[\u0027image_os_hash_algo\u0027] \u003d os_hash_algo"},{"line_number":1316,"context_line":"                instance_info[\u0027image_os_hash_value\u0027] \u003d hash_value"}],"source_content_type":"text/x-python","patch_set":2,"id":"3fa7e38b_6c768895","line":1313,"range":{"start_line":1312,"start_character":51,"end_line":1313,"end_character":64},"in_reply_to":"3fa7e38b_b5d1315d","updated":"2020-02-20 19:03:52.000000000","message":"I guess we can give it a try.... see what breaks","commit_id":"bc488285de39590e025bb996aebcf5a7a6d6cdad"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"59a011ab55ec2ad5a420164c273a1e2cfeb6729f","unresolved":false,"context_lines":[{"line_number":1312,"context_line":"                    os_hash_algo \u003d \u0027sha256\u0027"},{"line_number":1313,"context_line":"                LOG.debug(\u0027Recalculating checksum for image %(image)s due to \u0027"},{"line_number":1314,"context_line":"                          \u0027image conversion.\u0027, {\u0027image\u0027: image_path})"},{"line_number":1315,"context_line":"                instance_info[\u0027image_checksum\u0027] \u003d None"},{"line_number":1316,"context_line":"                hash_value \u003d compute_image_checksum(image_path, os_hash_algo)"},{"line_number":1317,"context_line":"                instance_info[\u0027image_os_hash_algo\u0027] \u003d os_hash_algo"},{"line_number":1318,"context_line":"                instance_info[\u0027image_os_hash_value\u0027] \u003d hash_value"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_785b97f7","line":1315,"range":{"start_line":1315,"start_character":50,"end_line":1315,"end_character":54},"updated":"2020-02-21 12:42:55.000000000","message":"Yeah, it\u0027s seems like we need a value for now :( Let\u0027s maybe use something like \u0027md5-not-supported\u0027?","commit_id":"a2797f372360bf660cc768466668b6de8ead76a6"},{"author":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"change_message_id":"62fdd3f606c0a7e30676ab63bcfe5e7384372ceb","unresolved":false,"context_lines":[{"line_number":1307,"context_line":"                if os_hash_algo \u003d\u003d \u0027md5\u0027:"},{"line_number":1308,"context_line":"                    LOG.debug(\u0027Checksum calculation for image %(image)s is \u0027"},{"line_number":1309,"context_line":"                              \u0027set to \\\u0027%(algo)s\\\u0027, changing to \\\u0027sha256\\\u0027\u0027,"},{"line_number":1310,"context_line":"                              {\u0027algo\u0027: os_hash_algo,"},{"line_number":1311,"context_line":"                               \u0027image\u0027: image_path})"},{"line_number":1312,"context_line":"                    os_hash_algo \u003d \u0027sha256\u0027"},{"line_number":1313,"context_line":"                LOG.debug(\u0027Recalculating checksum for image %(image)s due to \u0027"}],"source_content_type":"text/x-python","patch_set":4,"id":"1fa4df85_3cdef3d9","line":1310,"updated":"2020-03-07 16:11:23.000000000","message":"nit: os_hash_algo is known here","commit_id":"06c59972674f063a84307b2d954f9a6013d66ccb"},{"author":{"_account_id":24828,"name":"Kaifeng Wang","email":"kaifeng.w@gmail.com","username":"wangkf"},"change_message_id":"f5093767efdd472eab617ce1d01ffb23c084e01c","unresolved":false,"context_lines":[{"line_number":1312,"context_line":"                    os_hash_algo \u003d \u0027sha256\u0027"},{"line_number":1313,"context_line":"                LOG.debug(\u0027Recalculating checksum for image %(image)s due to \u0027"},{"line_number":1314,"context_line":"                          \u0027image conversion.\u0027, {\u0027image\u0027: image_path})"},{"line_number":1315,"context_line":"                instance_info[\u0027image_checksum\u0027] \u003d \u0027md5-not-supported\u0027"},{"line_number":1316,"context_line":"                hash_value \u003d compute_image_checksum(image_path, os_hash_algo)"},{"line_number":1317,"context_line":"                instance_info[\u0027image_os_hash_algo\u0027] \u003d os_hash_algo"},{"line_number":1318,"context_line":"                instance_info[\u0027image_os_hash_value\u0027] \u003d hash_value"}],"source_content_type":"text/x-python","patch_set":4,"id":"1fa4df85_0134f491","line":1315,"updated":"2020-03-07 06:05:38.000000000","message":"IPA doesn\u0027t require this now, but let\u0027s keep it for a while then, we need other clean up too.","commit_id":"06c59972674f063a84307b2d954f9a6013d66ccb"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"0e891b1721537000934e31385b6726643bab5198","unresolved":false,"context_lines":[{"line_number":1312,"context_line":"                    os_hash_algo \u003d \u0027sha256\u0027"},{"line_number":1313,"context_line":"                LOG.debug(\u0027Recalculating checksum for image %(image)s due to \u0027"},{"line_number":1314,"context_line":"                          \u0027image conversion.\u0027, {\u0027image\u0027: image_path})"},{"line_number":1315,"context_line":"                instance_info[\u0027image_checksum\u0027] \u003d \u0027md5-not-supported\u0027"},{"line_number":1316,"context_line":"                hash_value \u003d compute_image_checksum(image_path, os_hash_algo)"},{"line_number":1317,"context_line":"                instance_info[\u0027image_os_hash_algo\u0027] \u003d os_hash_algo"},{"line_number":1318,"context_line":"                instance_info[\u0027image_os_hash_value\u0027] \u003d hash_value"}],"source_content_type":"text/x-python","patch_set":4,"id":"1fa4df85_7cceab5a","line":1315,"in_reply_to":"1fa4df85_0134f491","updated":"2020-03-07 15:20:43.000000000","message":"Indeed. I put the cleanup in a new patch which should make things a bit cleaner, 711816.","commit_id":"06c59972674f063a84307b2d954f9a6013d66ccb"}]}
