)]}'
{"id":"openstack%2Fironic~970270","triplet_id":"openstack%2Fironic~bugfix%2F33.0~Iaf756f634832310431020abd758b59c749aecb21","project":"openstack/ironic","branch":"bugfix/33.0","attention_set":{},"removed_from_attention_set":{"5890":{"account":{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},"last_update":"2025-12-09 22:03:17.000000000","reason":"Change was submitted"}},"hashtags":["ironic-week-prio"],"change_id":"Iaf756f634832310431020abd758b59c749aecb21","subject":"fix: ensure that the bootloader path exists","status":"MERGED","created":"2025-12-09 15:38:53.000000000","updated":"2025-12-09 22:04:24.000000000","submitted":"2025-12-09 22:03:17.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":1,"unresolved_comment_count":1,"has_review_started":true,"submission_id":"970270","cherry_pick_of_change":968418,"cherry_pick_of_patch_set":2,"meta_rev_id":"44b4fb9839c9e103b3629a98d66920e854e25625","_number":970270,"virtual_id_number":970270,"owner":{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":14228,"name":"Clif Houck","email":"me@clifhouck.com","username":"clif_h"},{"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":"2025-12-09 22:03:17.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":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"recommended":{"_account_id":14228,"name":"Clif Houck","email":"me@clifhouck.com","username":"clif_h"},"all":[{"value":1,"date":"2025-12-09 21:20:26.000000000","permitted_voting_range":{"min":1,"max":2},"_account_id":14228,"name":"Clif Houck","email":"me@clifhouck.com","username":"clif_h"},{"value":2,"date":"2025-12-09 21:32:28.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":"","value":1,"default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"all":[{"value":0,"_account_id":14228,"name":"Clif Houck","email":"me@clifhouck.com","username":"clif_h"},{"value":1,"date":"2025-12-09 21:32:28.000000000","permitted_voting_range":{"min":1,"max":1},"_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":14228,"name":"Clif Houck","email":"me@clifhouck.com","username":"clif_h"},{"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":[],"reviewers":{"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"},{"_account_id":14228,"name":"Clif Houck","email":"me@clifhouck.com","username":"clif_h"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2025-12-09 16:06:27.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":"2025-12-09 21:20:26.000000000","updated_by":{"_account_id":14228,"name":"Clif Houck","email":"me@clifhouck.com","username":"clif_h"},"reviewer":{"_account_id":14228,"name":"Clif Houck","email":"me@clifhouck.com","username":"clif_h"},"state":"REVIEWER"},{"updated":"2025-12-09 21:32:28.000000000","updated_by":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"},"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"}],"messages":[{"id":"e91309240d48b1e2bd099648d4c6573807f38127","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},"date":"2025-12-09 15:38:53.000000000","message":"Patch Set 1: Cherry Picked from branch master.","accounts_in_message":[],"_revision_number":1},{"id":"185271b6f31004fe2472a06f9d071eff16b9a955","tag":"autogenerated:gerrit:setHashtag","author":{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},"date":"2025-12-09 15:39:18.000000000","message":"Hashtag added: ironic-week-prio","accounts_in_message":[],"_revision_number":1},{"id":"0955393f4bdbc7e2adb469f137159d7d9e5c61bb","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-12-09 16:06:27.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/3e7e0466b6bb4d91a15260a7ace2aa2f\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/a886ccb3f42e4548b8d42e271d13c064 : SUCCESS in 8m 25s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/0b8da8bf19cb4cfa82a55c2576ce8d95 : SUCCESS in 5m 48s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/9d86baaa9947489783592bf10b47682c : SUCCESS in 18m 09s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/c9ae8b13f7204571bb035089337852e8 : SUCCESS in 19m 55s\n- ironic-tox-unit-mysql-migrations https://zuul.opendev.org/t/openstack/build/14785e989e38438c87aedc9047e4f13e : SUCCESS in 5m 31s\n- ironic-tox-unit-with-driver-libs https://zuul.opendev.org/t/openstack/build/6d88cb7fed4e4f41a79305a60533c648 : SUCCESS in 8m 57s\n- ironic-cross-sushy https://zuul.opendev.org/t/openstack/build/52293f93b2a84b2d97f8d94f8ad997f1 : SUCCESS in 9m 10s (non-voting)\n- metal3-ironic-standalone-operator-functional https://zuul.opendev.org/t/openstack/build/95e284432c8140b1896c125ae734b112 : FAILURE in 8m 50s (non-voting)","accounts_in_message":[],"_revision_number":1},{"id":"70c19c135c454c18dedc0c80893e3511d7898f73","author":{"_account_id":14228,"name":"Clif Houck","email":"me@clifhouck.com","username":"clif_h"},"date":"2025-12-09 21:20:26.000000000","message":"Patch Set 1: Code-Review+1","accounts_in_message":[],"_revision_number":1},{"id":"735f7b09e5cd2d7e32df5f1adcf3b83fe9e41b7f","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":"2025-12-09 21:32:28.000000000","message":"Patch Set 1: Code-Review+2 Workflow+1\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"5ef5117fb7c7c274f45512ab9297d50f3758c4d1","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-12-09 21:33:37.000000000","message":"Patch Set 1: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":1},{"id":"48d770fca164b2e36b43c038642610c2a55cfb05","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-12-09 22:03:17.000000000","message":"Patch Set 1: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/04306e3327534b4cb557be3b5caa6894\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/8c40ba9fdec64d999d3acc5b962cfed8 : SUCCESS in 6m 59s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/1ae4ce2360654bb6bba7018a98f8d756 : SUCCESS in 16m 56s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/791f7306ba0541d7ac2d1aa0d9333567 : SUCCESS in 21m 47s\n- ironic-tox-unit-mysql-migrations https://zuul.opendev.org/t/openstack/build/6a91a847872c412f820449124e0f21af : SUCCESS in 5m 25s\n- ironic-tox-unit-with-driver-libs https://zuul.opendev.org/t/openstack/build/e3f51038133b4fc88d86be0f31bfceec : SUCCESS in 9m 01s","accounts_in_message":[],"_revision_number":1},{"id":"a363ee3a5c3cb8a6b9dbc41f65587c09b719c408","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-12-09 22:03:17.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":1},{"id":"44b4fb9839c9e103b3629a98d66920e854e25625","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2025-12-09 22:04:24.000000000","message":"Patch Set 1:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/cfe569cfa84943948752ba4db9098f30\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/371f6f782e2f4e93ba7fb107f987ebc5 : SUCCESS in 53s\n- promote-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/72b962d08c26453e8d999420e09a121d : SUCCESS in 44s","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"cb1ae4641ca821b4490a7fd5c9449eb346239b52","revisions":{"cb1ae4641ca821b4490a7fd5c9449eb346239b52":{"kind":"REWORK","_number":1,"created":"2025-12-09 15:38:53.000000000","uploader":{"_account_id":5890,"name":"Doug Goldstein","email":"cardoe@cardoe.com","username":"cardoe"},"ref":"refs/changes/70/970270/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/ironic","ref":"refs/changes/70/970270/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/ironic refs/changes/70/970270/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/ironic refs/changes/70/970270/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/ironic refs/changes/70/970270/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/ironic refs/changes/70/970270/1"}}},"commit":{"parents":[{"commit":"f5b4bf4795ce6d02feef3dd345577b09f71ff13c","subject":"Disable metal3 integration job","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic/commit/f5b4bf4795ce6d02feef3dd345577b09f71ff13c"}]}],"author":{"name":"Doug Goldstein","email":"cardoe@cardoe.com","date":"2025-11-25 23:05:23.000000000","tz":-360},"committer":{"name":"Doug Goldstein","email":"cardoe@cardoe.com","date":"2025-12-09 15:38:53.000000000","tz":0},"subject":"fix: ensure that the bootloader path exists","message":"fix: ensure that the bootloader path exists\n\nEnsure that the path where we are copying the bootloader into exists\nbefore we copy the file in. Unfortunately the existing code wouldn\u0027t\nwork in the intended case because os.path.split(\"snponly.efi\") returns\n(\"\", \"snponly.efi\") so we would never pass the first check so we would\nnot create the path. This keeps the same behavior of allowing a nested\npath structure to not change the behavior so that this can be\nbackportable while fixing the issue and switching the pathlib to provide\na safer interface going forward.\n\nChange-Id: Iaf756f634832310431020abd758b59c749aecb21\nSigned-off-by: Doug Goldstein \u003ccardoe@cardoe.com\u003e\n(cherry picked from commit 7a0a9ef784a45451dac2562507482c84d033b39e)\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic/commit/cb1ae4641ca821b4490a7fd5c9449eb346239b52"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic/commit/cb1ae4641ca821b4490a7fd5c9449eb346239b52"}]},"branch":"refs/heads/bugfix/33.0"}},"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":14228,"name":"Clif Houck","email":"me@clifhouck.com","username":"clif_h"}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":10342,"name":"Jay Faulkner","display_name":"JayF","email":"jay@jvf.cc","username":"JayF","status":"youtube.com/@oss-gr / podcast.gr-oss.io"}},{"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":{}}},{"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":{}}},{"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":{}}}]}
