)]}'
{"id":"openstack%2Fironic-python-agent~986069","triplet_id":"openstack%2Fironic-python-agent~master~Iba42f0bc2e6f05d215344101bab1a0e810e730b8","project":"openstack/ironic-python-agent","branch":"master","topic":"fix/bug-2098146-fatal-auth-errors","attention_set":{},"removed_from_attention_set":{"10342":{"account":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"last_update":"2026-04-24 20:15:26.000000000","reason":"removed on reply"},"11655":{"account":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"last_update":"2026-04-24 22:32:19.000000000","reason":"Change was submitted"},"38969":{"account":{"_account_id":38969,"name":"IKEH CHUKWUKA FAVOUR","display_name":"Yemi","email":"mrikehchukwuka@gmail.com","username":"0xull"},"last_update":"2026-04-24 22:32:19.000000000","reason":"Change was submitted"},"10239":{"account":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"last_update":"2026-04-24 22:32:19.000000000","reason":"Change was submitted"}},"hashtags":[],"change_id":"Iba42f0bc2e6f05d215344101bab1a0e810e730b8","subject":"Fix 401 auth failures not aborting image download","status":"MERGED","created":"2026-04-24 10:36:57.000000000","updated":"2026-04-24 22:33:25.000000000","submitted":"2026-04-24 22:32:19.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":3,"unresolved_comment_count":1,"has_review_started":true,"submission_id":"986069-fix/bug-2098146-fatal-auth-errors","meta_rev_id":"a2fa6c4042f8a874dca2f8336f98cf28a7aca8f6","_number":986069,"virtual_id_number":986069,"owner":{"_account_id":38969,"name":"IKEH CHUKWUKA FAVOUR","display_name":"Yemi","email":"mrikehchukwuka@gmail.com","username":"0xull"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},{"value":0,"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-04-24 22:32:19.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},"all":[{"value":2,"date":"2026-04-24 20:37:15.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},{"value":2,"date":"2026-04-24 20:15:26.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},"all":[{"value":1,"date":"2026-04-24 20:37:15.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},{"value":0,"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Backport-Candidate":{"all":[{"value":0,"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},{"value":0,"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}],"values":{"-1":"Do Not Backport"," 0":"Backport Review Needed","+1":"Should Backport"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"}],"reviewers":{"REVIEWER":[{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-04-24 10:45:16.000000000","updated_by":{"_account_id":38969,"name":"IKEH CHUKWUKA FAVOUR","display_name":"Yemi","email":"mrikehchukwuka@gmail.com","username":"0xull"},"reviewer":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"state":"REVIEWER"},{"updated":"2026-04-24 10:45:16.000000000","updated_by":{"_account_id":38969,"name":"IKEH CHUKWUKA FAVOUR","display_name":"Yemi","email":"mrikehchukwuka@gmail.com","username":"0xull"},"reviewer":{"_account_id":10239,"name":"Dmitry Tantsur","email":"dtantsur@protonmail.com","username":"dtantsur"},"state":"REVIEWER"},{"updated":"2026-04-24 10:45:16.000000000","updated_by":{"_account_id":38969,"name":"IKEH CHUKWUKA FAVOUR","display_name":"Yemi","email":"mrikehchukwuka@gmail.com","username":"0xull"},"reviewer":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"state":"REVIEWER"},{"updated":"2026-04-24 11:07:43.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"CC"},{"updated":"2026-04-24 11:46:08.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2026-04-24 20:37:15.000000000","updated_by":{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},"reviewer":{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},"state":"REVIEWER"}],"messages":[{"id":"e7d81a4ede392bef8e874e2da83a24e0eed6bfcb","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":38969,"name":"IKEH CHUKWUKA FAVOUR","display_name":"Yemi","email":"mrikehchukwuka@gmail.com","username":"0xull"},"date":"2026-04-24 10:36:57.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"f654f9870f01512a634cebec8189204ceced1c62","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-24 11:07:43.000000000","message":"Patch Set 1:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/6ef80516f5c84b7486b50d1ba5da7641\n\n- openstack-tox-py310-arm64 https://zuul.opendev.org/t/openstack/build/fb6a4fcd2aca463fb0b4dfcf55bba653 : SUCCESS in 5m 22s (non-voting)\n- openstack-tox-py313-arm64 https://zuul.opendev.org/t/openstack/build/e204da5bfb0248d7984c569dcf6a8dfe : SUCCESS in 5m 01s (non-voting)\n- openstack-tox-py314-arm64 https://zuul.opendev.org/t/openstack/build/313c85f03e30406f89334c5e7b9a7909 : SUCCESS in 7m 48s (non-voting)","accounts_in_message":[],"_revision_number":1},{"id":"6b693dcc24511aff08bb239f4e06773df7d71092","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-24 11:46:08.000000000","message":"Patch Set 1: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttps://docs.opendev.org/opendev/infra-manual/latest/developers.html#automated-testing\nand https://docs.openstack.org/project-team-guide/testing.html#how-to-handle-test-failures\n\nhttps://zuul.opendev.org/t/openstack/buildset/06aaa0fdc0e543a1a022d6feb971db9d\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/bb6c6b9eb56c4a8c85074f7b9ab2e8ac : SUCCESS in 5m 43s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/c347ef11c8e846a0b58d7a85b7a2f8dc : SUCCESS in 4m 27s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/386e555f689d4a3db3c2329cadb624de : SUCCESS in 4m 06s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/9aaf8638206e477a850fa986ca8b0a6c : SUCCESS in 4m 01s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/c7e5654c6ee84f2ead7287fb1e5cd002 : SUCCESS in 6m 11s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/11f569ef804648cc9c24299beec39eac : SUCCESS in 9m 01s\n- openstack-tox-functional https://zuul.opendev.org/t/openstack/build/e38e4e29fada4fdcab0784c5e8cfa091 : SUCCESS in 3m 22s\n- ipa-tox-bandit https://zuul.opendev.org/t/openstack/build/bc15c18296a240d797fbb06138be9428 : SUCCESS in 3m 27s\n- ipa-tempest-bios-ipmi-direct-src https://zuul.opendev.org/t/openstack/build/903111aaa1cd4371ac382a773dd4db3d : SUCCESS in 1h 06m 33s\n- ipa-tempest-uefi-redfish-vmedia-src https://zuul.opendev.org/t/openstack/build/dbf37c26e53d4c178eb545d8417f6cde : FAILURE in 43m 33s\n- ironic-standalone-ipa-src https://zuul.opendev.org/t/openstack/build/9418ded8dacb4db9ad833b44b406916c : SUCCESS in 1h 01m 08s\n- ironic-python-agent-check-image-dib-centos9 https://zuul.opendev.org/t/openstack/build/88a9e4e5e5524704877860f75b80f500 : SUCCESS in 10m 19s (non-voting)\n- ironic-python-agent-check-image-dib-debian https://zuul.opendev.org/t/openstack/build/df1e124159b64363922711b092ff4db9 : SUCCESS in 7m 25s (non-voting)","accounts_in_message":[],"_revision_number":1},{"id":"ab9554754a156c6cb69601eeccad6509127926f0","author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"date":"2026-04-24 19:17:57.000000000","message":"Patch Set 1: Code-Review-1\n\n(2 comments)","accounts_in_message":[],"_revision_number":1},{"id":"16abcb9598126086f1c87208bcea7b0f8c0f0fc5","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":38969,"name":"IKEH CHUKWUKA FAVOUR","display_name":"Yemi","email":"mrikehchukwuka@gmail.com","username":"0xull"},"date":"2026-04-24 20:14:43.000000000","message":"Uploaded patch set 2: Commit message was updated.\n\nOutdated Votes:\n* Code-Review-1 (copy condition: \"changekind:TRIVIAL_REBASE OR is:MIN\")\n* Verified-1 (copy condition: \"NEVER\")\n","accounts_in_message":[],"_revision_number":2},{"id":"531444a511e7207a5bdae9b8619bfd32dc8179a0","author":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"date":"2026-04-24 20:15:26.000000000","message":"Patch Set 2: Code-Review+2","accounts_in_message":[],"_revision_number":2},{"id":"018b5a354bbcb99bb2d6daa8845e6914c75da99f","author":{"_account_id":38969,"name":"IKEH CHUKWUKA FAVOUR","display_name":"Yemi","email":"mrikehchukwuka@gmail.com","username":"0xull"},"date":"2026-04-24 20:17:17.000000000","message":"Patch Set 2:\n\n(1 comment)","accounts_in_message":[],"_revision_number":2},{"id":"62dc8b5c3990d4f0ac6cf3f19ce3dfc5cabebf11","tag":"autogenerated:zuul:check-arm64","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-24 20:31:03.000000000","message":"Patch Set 2:\n\nBuild succeeded (ARM64 pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/366341b167cf463a9b37f76f4c23d08f\n\n- openstack-tox-py310-arm64 https://zuul.opendev.org/t/openstack/build/3a0c2f181a4a4141afbc54b6c3f7f542 : SUCCESS in 6m 03s (non-voting)\n- openstack-tox-py313-arm64 https://zuul.opendev.org/t/openstack/build/65edd2e795ef432084914318360dc1c6 : SUCCESS in 4m 06s (non-voting)\n- openstack-tox-py314-arm64 https://zuul.opendev.org/t/openstack/build/c79ef53aac0749079444e3672e4ddf37 : SUCCESS in 7m 57s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"106443ecf794341611a948b9620350e018805de5","author":{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},"date":"2026-04-24 20:37:15.000000000","message":"Patch Set 2: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":2},{"id":"59b876fb4f13a60777c9748b2476ad9c3f43aa0e","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-24 21:28:48.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/d0549965fdd44166a4666e71b361cb27\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/6c1068e59f364a57a8de5660e18cd78c : SUCCESS in 3m 11s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/3002536b03944214bb540b313cbc5d9d : SUCCESS in 5m 11s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/0e933aa681a34c09ab43926680905d5e : SUCCESS in 3m 51s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/0043a004d06b4552b9d7229e00241140 : SUCCESS in 3m 18s\n- openstack-tox-py314 https://zuul.opendev.org/t/openstack/build/729edd8194834db9a5e956f9e3522c55 : SUCCESS in 6m 51s (non-voting)\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/9e97d50cad9d46baa7daa243013de25f : SUCCESS in 4m 26s\n- openstack-tox-functional https://zuul.opendev.org/t/openstack/build/d769b6040b984eeabf2b332a15630052 : SUCCESS in 3m 12s\n- ipa-tox-bandit https://zuul.opendev.org/t/openstack/build/db632976540b4b42a3b00486e520599b : SUCCESS in 3m 32s\n- ipa-tempest-bios-ipmi-direct-src https://zuul.opendev.org/t/openstack/build/a85de3310e7445cc949d18c835232f7a : SUCCESS in 1h 09m 05s\n- ipa-tempest-uefi-redfish-vmedia-src https://zuul.opendev.org/t/openstack/build/291255e309674a6785a3b505f2c832ab : SUCCESS in 46m 30s\n- ironic-standalone-ipa-src https://zuul.opendev.org/t/openstack/build/7b472b2262684dfe985e56afb6936944 : SUCCESS in 56m 10s\n- ironic-python-agent-check-image-dib-centos9 https://zuul.opendev.org/t/openstack/build/41e845f5e1f04b85bd9dd9757ae81d15 : SUCCESS in 6m 35s (non-voting)\n- ironic-python-agent-check-image-dib-debian https://zuul.opendev.org/t/openstack/build/f9212db4c8fe49a1a0b88a3ad81a6326 : SUCCESS in 7m 09s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"7ddb7a44afbc5f72a9e843df71efb2553b1696dc","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-24 21:29:19.000000000","message":"Patch Set 2: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":2},{"id":"8d1f61d89261146fb1094a2b958911b7febf66fe","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-24 22:32:19.000000000","message":"Patch Set 2: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/161d2a68e09f4ad082eea6ac636a28dc\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/bd36a351454341d5bff09b5bc9820055 : SUCCESS in 4m 30s\n- openstack-tox-py311 https://zuul.opendev.org/t/openstack/build/7b5881093ad0416883f079352dd6e192 : SUCCESS in 3m 36s\n- openstack-tox-py313 https://zuul.opendev.org/t/openstack/build/7cdcc05325ed46baae560a486a027f83 : SUCCESS in 2m 27s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/778b5d9377584d25bd1fbc199efbf3e6 : SUCCESS in 3m 49s\n- openstack-tox-functional https://zuul.opendev.org/t/openstack/build/174a6dd64df14d7ab05078b2fa907e98 : SUCCESS in 3m 23s\n- ipa-tox-bandit https://zuul.opendev.org/t/openstack/build/2475d2f721ba49639ceb64a33a8c0f47 : SUCCESS in 5m 02s\n- ipa-tempest-bios-ipmi-direct-src https://zuul.opendev.org/t/openstack/build/d542a0348f5348358c6eb681d04997fd : SUCCESS in 44m 08s\n- ipa-tempest-uefi-redfish-vmedia-src https://zuul.opendev.org/t/openstack/build/31936afa777d45289eeea808fd3397e6 : SUCCESS in 1h 01m 41s\n- ironic-standalone-ipa-src https://zuul.opendev.org/t/openstack/build/f9b72332cf5f47708e9fa6f69dd00ce6 : SUCCESS in 45m 37s","accounts_in_message":[],"_revision_number":2},{"id":"8cf2233043f5cb5cfc9736ce6d7123f668429690","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-24 22:32:19.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":2},{"id":"a2fa6c4042f8a874dca2f8336f98cf28a7aca8f6","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-04-24 22:33:25.000000000","message":"Patch Set 2:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/e86db8507f8b431e91e52bedb5870e0c\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/63009262a7864d418a7b1be702ae69f7 : SUCCESS in 53s","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"bc63e115bdf4fc45e5326e3263846702682409a3","revisions":{"8a1b8e1d9fd5a21b5d96aa59cc0544924ea35bc6":{"kind":"REWORK","_number":1,"created":"2026-04-24 10:36:57.000000000","uploader":{"_account_id":38969,"name":"IKEH CHUKWUKA FAVOUR","display_name":"Yemi","email":"mrikehchukwuka@gmail.com","username":"0xull"},"ref":"refs/changes/69/986069/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/ironic-python-agent","ref":"refs/changes/69/986069/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/69/986069/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/69/986069/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/69/986069/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/ironic-python-agent refs/changes/69/986069/1"}}},"commit":{"parents":[{"commit":"f40094338772c831d73be475489ae5fe88cee9c8","subject":"Merge \"Fix ESP relocation to RAID device using filesystem copy\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/f40094338772c831d73be475489ae5fe88cee9c8"}]}],"author":{"name":"0xull","email":"mrikehchukwuka@gmail.com","date":"2026-04-24 10:24:22.000000000","tz":60},"committer":{"name":"0xull","email":"mrikehchukwuka@gmail.com","date":"2026-04-24 10:35:52.000000000","tz":60},"subject":"Fix 401 auth failures not aborting image download","message":"Fix 401 auth failures not aborting image download\n\nIPA was retrying image downloads on 401 responses instead of\naborting immediately. Auth failures can\u0027t be resolved by\nretrying, so the agent would just spin until retries ran out.\n\nThe fix adds ImageDownloadFatalError for non-retryable errors.\n4xx responses now raise it in _download_with_proxy, and the\nouter retry loops re-raise it without sleeping.\n\nCloses-Bug: #2098146\nChange-Id: Iba42f0bc2e6f05d215344101bab1a0e810e730b8\nSigned-off-by: 0xull \u003cmrikehchukwuka@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/8a1b8e1d9fd5a21b5d96aa59cc0544924ea35bc6"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/8a1b8e1d9fd5a21b5d96aa59cc0544924ea35bc6"}]},"branch":"refs/heads/master"},"bc63e115bdf4fc45e5326e3263846702682409a3":{"kind":"NO_CODE_CHANGE","_number":2,"created":"2026-04-24 20:14:43.000000000","uploader":{"_account_id":38969,"name":"IKEH CHUKWUKA FAVOUR","display_name":"Yemi","email":"mrikehchukwuka@gmail.com","username":"0xull"},"ref":"refs/changes/69/986069/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/ironic-python-agent","ref":"refs/changes/69/986069/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/69/986069/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/69/986069/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/69/986069/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/ironic-python-agent refs/changes/69/986069/2"}}},"commit":{"parents":[{"commit":"f40094338772c831d73be475489ae5fe88cee9c8","subject":"Merge \"Fix ESP relocation to RAID device using filesystem copy\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/f40094338772c831d73be475489ae5fe88cee9c8"}]}],"author":{"name":"0xull","email":"mrikehchukwuka@gmail.com","date":"2026-04-24 10:24:22.000000000","tz":60},"committer":{"name":"0xull","email":"mrikehchukwuka@gmail.com","date":"2026-04-24 20:12:51.000000000","tz":60},"subject":"Fix 401 auth failures not aborting image download","message":"Fix 401 auth failures not aborting image download\n\nIPA was retrying image downloads on 401 responses instead of\naborting immediately. Auth failures can\u0027t be resolved by\nretrying, so the agent would just spin until retries ran out.\n\nThe fix adds ImageDownloadFatalError for non-retryable errors.\n4xx responses now raise it in _download_with_proxy, and the\nouter retry loops re-raise it without sleeping.\n\nCloses-Bug: #2098146\nChange-Id: Iba42f0bc2e6f05d215344101bab1a0e810e730b8\nSigned-off-by: Ikeh Chukwuka Favour \u003cmrikehchukwuka@gmail.com\u003e\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/bc63e115bdf4fc45e5326e3263846702682409a3"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/bc63e115bdf4fc45e5326e3263846702682409a3"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[{"rule_name":"gerrit~DefaultSubmitRule","status":"CLOSED","labels":[{"label":"Verified","status":"MAY","applied_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}},{"label":"Code-Review","status":"MAY","applied_by":{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"}},{"label":"Backport-Candidate","status":"MAY"}]}],"submit_requirements":[{"name":"Verified","description":"Verified in gate by CI","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Verified\u003dMAX AND -label:Verified\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Verified\u003dMAX"],"failing_atoms":["label:Verified\u003dMIN"],"atom_explanations":{"label:Verified\u003dMAX":"","label:Verified\u003dMIN":""}}},{"name":"Backport-Candidate","description":"Backport candidate status","status":"NOT_APPLICABLE","is_legacy":false,"applicability_expression_result":{"fulfilled":false,"status":"FAIL"},"submittability_expression_result":{"expression":"is:true","fulfilled":true,"status":"NOT_EVALUATED","passing_atoms":[],"failing_atoms":[],"atom_explanations":{}}},{"name":"Code-Review","description":"Code reviewed by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Code-Review\u003dMAX AND -label:Code-Review\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Code-Review\u003dMAX"],"failing_atoms":["label:Code-Review\u003dMIN"],"atom_explanations":{"label:Code-Review\u003dMAX":"","label:Code-Review\u003dMIN":""}}},{"name":"Workflow","description":"Approved for gate by core reviewer","status":"SATISFIED","is_legacy":false,"submittability_expression_result":{"expression":"label:Workflow\u003dMAX AND -label:Workflow\u003dMIN","fulfilled":true,"status":"PASS","passing_atoms":["label:Workflow\u003dMAX"],"failing_atoms":["label:Workflow\u003dMIN"],"atom_explanations":{"label:Workflow\u003dMAX":"","label:Workflow\u003dMIN":""}}}]}
