)]}'
{"id":"openstack%2Fironic-python-agent~998485","triplet_id":"openstack%2Fironic-python-agent~stable%2F2025.1~I595ba9bdc305ea928ac2f6e26ff24338dbd03450","project":"openstack/ironic-python-agent","branch":"stable/2025.1","topic":"security-bootc-stable-2025.1","attention_set":{},"removed_from_attention_set":{"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-07-24 00:23:09.000000000","reason":"Change was submitted"}},"hashtags":["CVE-2026-54422","ironic-week-prio"],"change_id":"I595ba9bdc305ea928ac2f6e26ff24338dbd03450","subject":"Do not expose registry pull secret to bootc container","status":"MERGED","created":"2026-07-23 14:03:07.000000000","updated":"2026-07-24 04:33:49.000000000","submitted":"2026-07-24 00:23:09.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"998485-security-bootc-stable-2025.1","meta_rev_id":"73453cecf51c395c00199466a7d494d7c0c02201","_number":998485,"virtual_id_number":998485,"owner":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"_account_id":36770,"name":"cid","display_name":"cid","email":"cid@gr-oss.io","username":"cidelight","status":"@gr-oss upstream: Doing good IRONIC things..."},{"tag":"autogenerated:zuul:gate","value":2,"date":"2026-07-24 00:23:09.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"}],"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":36770,"name":"cid","display_name":"cid","email":"cid@gr-oss.io","username":"cidelight","status":"@gr-oss upstream: Doing good IRONIC things..."},"all":[{"value":2,"date":"2026-07-23 18:36:12.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":36770,"name":"cid","display_name":"cid","email":"cid@gr-oss.io","username":"cidelight","status":"@gr-oss upstream: Doing good IRONIC things..."},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":2,"date":"2026-07-23 23:04:02.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"}],"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":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"all":[{"value":0,"_account_id":36770,"name":"cid","display_name":"cid","email":"cid@gr-oss.io","username":"cidelight","status":"@gr-oss upstream: Doing good IRONIC things..."},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":1,"date":"2026-07-23 23:04:02.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Backport-Candidate":{"all":[{"value":0,"_account_id":36770,"name":"cid","display_name":"cid","email":"cid@gr-oss.io","username":"cidelight","status":"@gr-oss upstream: Doing good IRONIC things..."},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"}],"values":{"-1":"Do Not Backport"," 0":"Backport Review Needed","+1":"Should Backport"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"CC":[{"_account_id":4571,"name":"Steve Baker","email":"sbaker@redhat.com","username":"steve-stevebaker"}],"REVIEWER":[{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":36770,"name":"cid","display_name":"cid","email":"cid@gr-oss.io","username":"cidelight","status":"@gr-oss upstream: Doing good IRONIC things..."}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2026-07-23 14:03:07.000000000","updated_by":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"reviewer":{"_account_id":4571,"name":"Steve Baker","email":"sbaker@redhat.com","username":"steve-stevebaker"},"state":"CC"},{"updated":"2026-07-23 16:19:34.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-07-23 18:36:12.000000000","updated_by":{"_account_id":36770,"name":"cid","display_name":"cid","email":"cid@gr-oss.io","username":"cidelight","status":"@gr-oss upstream: Doing good IRONIC things..."},"reviewer":{"_account_id":36770,"name":"cid","display_name":"cid","email":"cid@gr-oss.io","username":"cidelight","status":"@gr-oss upstream: Doing good IRONIC things..."},"state":"REVIEWER"},{"updated":"2026-07-23 23:04:02.000000000","updated_by":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"reviewer":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"state":"REVIEWER"}],"messages":[{"id":"521b2c5bd970a9e6851cc31dbd43d70dce5b5d02","tag":"autogenerated:gerrit:newPatchSet","author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"date":"2026-07-23 14:03:07.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"ab666ae83ebe32827d053d2d5f9178269d4c5c61","tag":"autogenerated:gerrit:setHashtag","author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"date":"2026-07-23 14:55:26.000000000","message":"Hashtag added: ironic-week-prio","accounts_in_message":[],"_revision_number":1},{"id":"4ed007378fe471473d097fe4062083afea9e3931","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-23 16:19:34.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/54118412516440b9ae7179796d635da1\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/277fb9196fb9497fafb166fdb26df714 : SUCCESS in 5m 06s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/3964a35f175848e8882bec7d434cf492 : SUCCESS in 4m 42s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/0b16d88054064697bd6f31e4fafec911 : SUCCESS in 5m 33s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/0e8acc4efde64df79bcb25cd72dc1fd1 : SUCCESS in 4m 13s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/050435d14c964147a0f0b4c9b5e5643a : SUCCESS in 7m 32s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/10f2594a0dcf4431bac6242de1ca675b : SUCCESS in 5m 45s\n- openstack-tox-functional https://zuul.opendev.org/t/openstack/build/ef6fac0078ce4075a4e26e99165b56bd : SUCCESS in 4m 04s\n- ipa-tox-bandit https://zuul.opendev.org/t/openstack/build/107d64001f66402488b25af37ad06f6a : SUCCESS in 4m 27s\n- ipa-tempest-bios-ipmi-direct-src https://zuul.opendev.org/t/openstack/build/830d1885f8e4484eb0ccb769d0102ab3 : SUCCESS in 1h 28m 10s\n- ipa-tempest-uefi-redfish-vmedia-src https://zuul.opendev.org/t/openstack/build/0f9b42cc41ce4f43b5a15690a2c89483 : SUCCESS in 1h 22m 15s\n- metalsmith-integration-ipa-src-uefi https://zuul.opendev.org/t/openstack/build/42bf35e3691e4514afb2661f44d8b4a0 : SUCCESS in 1h 38m 24s\n- ironic-standalone-ipa-src https://zuul.opendev.org/t/openstack/build/b6fd730738f14903b9df409d7fd428bd : SUCCESS in 1h 34m 46s\n- ironic-python-agent-check-image-tinyipa https://zuul.opendev.org/t/openstack/build/31660321c80542c3b4d2643c2db47248 : SUCCESS in 20m 41s (non-voting)\n- ironic-python-agent-check-image-dib-centos9 https://zuul.opendev.org/t/openstack/build/258f992f028049b5aea2cf6d5d5f48e5 : SUCCESS in 9m 42s (non-voting)\n- ipa-tempest-ironic-inspector-src https://zuul.opendev.org/t/openstack/build/493521219cc54a939d755d6134233502 : SUCCESS in 2h 10m 27s (non-voting)","accounts_in_message":[],"_revision_number":1},{"id":"f69b181ffc782a2cd65d67573c0ae0ddd5cea6eb","author":{"_account_id":36770,"name":"cid","display_name":"cid","email":"cid@gr-oss.io","username":"cidelight","status":"@gr-oss upstream: Doing good IRONIC things..."},"date":"2026-07-23 18:36:12.000000000","message":"Patch Set 1: Code-Review+2","accounts_in_message":[],"_revision_number":1},{"id":"b4a66b86e8bf75c4b7ec88b6280f48af1028c75f","author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"date":"2026-07-23 23:04:02.000000000","message":"Patch Set 1: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":1},{"id":"7a984e6e21f9900a47a5ccd03e6369178182fb91","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-23 23:04:35.000000000","message":"Patch Set 1: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":1},{"id":"a253281e19b241617a5f5da8c3fb3a83b62aa430","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-24 00:23:09.000000000","message":"Patch Set 1: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/49645b2c25ef4d779c52fef5208eef6c\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/d006da62588540dd942c56e561418898 : SUCCESS in 4m 35s\n- openstack-tox-py39 https://zuul.opendev.org/t/openstack/build/ccd060e6638949c1a166c5448f558458 : SUCCESS in 2m 44s\n- openstack-tox-py312 https://zuul.opendev.org/t/openstack/build/7f73e4ed1ee74545b479bfa2ef2eb5cd : SUCCESS in 6m 26s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/bb4ee5ab24264c21a141f2d0711bb752 : SUCCESS in 4m 56s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/79dfae5ac0ea4781a73bb865b70d123f : SUCCESS in 3m 18s\n- openstack-tox-functional https://zuul.opendev.org/t/openstack/build/a1028acfb2e048169aba261ceeb262aa : SUCCESS in 3m 25s\n- ipa-tox-bandit https://zuul.opendev.org/t/openstack/build/c62ce01ece4247e19e647195b463c12c : SUCCESS in 3m 35s\n- ipa-tempest-bios-ipmi-direct-src https://zuul.opendev.org/t/openstack/build/6e1210b37ae64f7f8e1d4f57af131f94 : SUCCESS in 44m 30s\n- ipa-tempest-uefi-redfish-vmedia-src https://zuul.opendev.org/t/openstack/build/f6f6f51e3acb49ce97fbabc623e5b3cb : SUCCESS in 1h 13m 57s\n- metalsmith-integration-ipa-src-uefi https://zuul.opendev.org/t/openstack/build/dba7eb663c874a6ba4a4630bc146f137 : SUCCESS in 45m 58s\n- ironic-standalone-ipa-src https://zuul.opendev.org/t/openstack/build/e9d0f223459643389075b92cf7bf95a5 : SUCCESS in 41m 45s","accounts_in_message":[],"_revision_number":1},{"id":"9f5d77e11401060323a476ecaf8a9af3451316d6","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-24 00:23:09.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":1},{"id":"1f3002a40508ff60be3edbbac61b156e3dd9fe99","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-24 00:24:07.000000000","message":"Patch Set 1:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/b0045d8b72a64b35b7258dd02a4af031\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/ab67565d171b4b9a90a6d975b2f0287f : SUCCESS in 48s\n- promote-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/3071dce535bc4c73b97f5fa72dcf3741 : SUCCESS in 44s","accounts_in_message":[],"_revision_number":1},{"id":"73453cecf51c395c00199466a7d494d7c0c02201","tag":"autogenerated:gerrit:setHashtag","author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"date":"2026-07-24 04:33:49.000000000","message":"Hashtag added: CVE-2026-54422","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"e548e1867783f1b950c674f72103de1e98092b5f","revisions":{"e548e1867783f1b950c674f72103de1e98092b5f":{"kind":"REWORK","_number":1,"created":"2026-07-23 14:03:07.000000000","uploader":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"ref":"refs/changes/85/998485/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/ironic-python-agent","ref":"refs/changes/85/998485/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/85/998485/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/85/998485/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/85/998485/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/ironic-python-agent refs/changes/85/998485/1"}}},"commit":{"parents":[{"commit":"b0df13dc6e5b8c26e619619ce1c2f486bec2b169","subject":"Add a flag to disable installing bootloaders","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/b0df13dc6e5b8c26e619619ce1c2f486bec2b169"}]}],"author":{"name":"Steve Baker","email":"sbaker@redhat.com","date":"2026-06-11 22:39:18.000000000","tz":0},"committer":{"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","date":"2026-07-07 14:49:21.000000000","tz":-420},"subject":"Do not expose registry pull secret to bootc container","message":"Do not expose registry pull secret to bootc container\n\nDuring bootc deployment, the registry pull secret (authfile) was\nwritten to a well-known path on the host and passed to\n\u0027podman run --privileged --pid\u003dhost --authfile\u003d...\u0027. Because the\ncontainer runs with host PID namespace visibility, tenant-controlled\ncode in the bootc image could read the credential via\n/proc/1/root/\u003cauthfile-path\u003e.\n\nWhen the pull secret originates from an operator/admin source\n(driver_info.image_pull_secret, [deploy] image_server_user/password,\nor [oci] authentication_config) rather than the tenant\u0027s own\ninstance_info.image_pull_secret, this constitutes a cross-boundary\ncredential disclosure: a project-scoped node owner member recovers\nthe operator\u0027s registry credential, which may be shared across\nnodes, projects, or the entire conductor.\n\nFix by splitting the authenticated image pull from the container\nexecution:\n\n1. Write the auth file to a random temporary path (not the\n   well-known ~/.config/containers/auth.json).\n2. Run \u0027podman pull --authfile\u003d\u003ctmpfile\u003e\u0027 to fetch and cache the\n   image in the local store.\n3. Delete the auth file in a finally block, guaranteeing cleanup\n   even on pull failure.\n4. Run \u0027podman run\u0027 without --authfile. The image is already\n   cached locally and --skip-fetch-check is already in use, so\n   no registry credential is needed at runtime.\n\nBy the time tenant container code executes, the credential file\nno longer exists on the host filesystem and cannot be read via\n/proc/1/root.\n\nIn regards to merge conflicts, there was a conflict on this\ncherry-pick to tests/unit/extensions/test_standby.py where\ngit attempted to pull in a neighboring test for selinux support\nwhich didn\u0027t exist yet in this backport branch.\n\nCloses-Bug: #2155826\nAssisted-By: Opencode - Claude Opus 4.6\nSigned-off-by: Steve Baker \u003csbaker@redhat.com\u003e\nSigned-off-by: Julia Kreger \u003cjuliaashleykreger@gmail.com\u003e\nChange-Id: I595ba9bdc305ea928ac2f6e26ff24338dbd03450\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/e548e1867783f1b950c674f72103de1e98092b5f"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/e548e1867783f1b950c674f72103de1e98092b5f"}]},"branch":"refs/heads/stable/2025.1"}},"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":36770,"name":"cid","display_name":"cid","email":"cid@gr-oss.io","username":"cidelight","status":"@gr-oss upstream: Doing good IRONIC things..."}},{"label":"Workflow","status":"MAY","applied_by":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"}},{"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":""}}}]}
