)]}'
{"id":"openstack%2Fironic-python-agent~998493","triplet_id":"openstack%2Fironic-python-agent~bugfix%2F11.4~I595ba9bdc305ea928ac2f6e26ff24338dbd03450","project":"openstack/ironic-python-agent","branch":"bugfix/11.4","topic":"security-bootc-bugfix-11.4","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-23 20:01:07.000000000","reason":"Change was submitted"}},"hashtags":["CVE-2026-54422"],"change_id":"I595ba9bdc305ea928ac2f6e26ff24338dbd03450","subject":"Do not expose registry pull secret to bootc container","status":"MERGED","created":"2026-07-23 14:09:26.000000000","updated":"2026-07-24 04:33:50.000000000","submitted":"2026-07-23 20:01:07.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":"998493-security-bootc-bugfix-11.4","meta_rev_id":"67390708596d1850008e826a641629acf5a7602a","_number":998493,"virtual_id_number":998493,"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-23 20:01:07.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:37:10.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 16:59:49.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":36770,"name":"cid","display_name":"cid","email":"cid@gr-oss.io","username":"cidelight","status":"@gr-oss upstream: Doing good IRONIC things..."},"all":[{"value":1,"date":"2026-07-23 18:37:10.000000000","permitted_voting_range":{"min":1,"max":1},"_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":"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:09:26.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 14:28:25.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 16:59:49.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"},{"updated":"2026-07-23 18:37:10.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"}],"messages":[{"id":"9c81a09e9108db32fec940c9256e0fcf49069bc9","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:09:26.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"92ed64137c8fac6c412b62480a80c8bbfcf3a6f9","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-23 14:28:25.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/93889aaaeb534755b7dd15278fcf3e59\n\n- openstack-tox-cover https://zuul.opendev.org/t/openstack/build/d6f6fa9283994d239f43f9c8589b2108 : SUCCESS in 5m 25s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/c648b24b6a914c90bc346f1c0f7a27ec : SUCCESS in 4m 34s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/fe527dc1863c4b2bb58a30b8e12dc710 : SUCCESS in 7m 30s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/185e1a0292d74f0ca23cee38d97e9a11 : SUCCESS in 5m 44s\n- openstack-tox-functional https://zuul.opendev.org/t/openstack/build/0ae1b9dcc3544349bd5180f715f779aa : SUCCESS in 3m 21s\n- ipa-tox-bandit https://zuul.opendev.org/t/openstack/build/6cdd156929bb48509eec51fc1890fcba : SUCCESS in 3m 17s","accounts_in_message":[],"_revision_number":1},{"id":"6f9770a05db76ba1c0642e66ea29f19b2bdd9bae","author":{"_account_id":15519,"name":"Iury Gregory Melo Ferreira","display_name":"Iury Gregory","email":"iurygregory@gmail.com","username":"iurygregory"},"date":"2026-07-23 16:59:49.000000000","message":"Patch Set 1: Code-Review+2","accounts_in_message":[],"_revision_number":1},{"id":"46c6b416883488962efa25975f838082855b05b4","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:37:10.000000000","message":"Patch Set 1: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":1},{"id":"6968e1a01d2d72ed1dc17edab3da941e610ed689","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-23 18:39:04.000000000","message":"Patch Set 1: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":1},{"id":"8163ef427efdae43dd068a9e20d41c7371291335","tag":"autogenerated:zuul:gate","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-23 20:01:07.000000000","message":"Patch Set 1: Verified+2\n\nBuild succeeded (gate pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/21307f8cd4c24cb2b36dbce535cd8e6e\n\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/d45928a5706544dcabf9fb29dae6d0bc : SUCCESS in 2m 51s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/7a34dc5f55894f46bc2f95489b7a039a : SUCCESS in 6m 38s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/d3ad1b1c1fcf461db17b41dcbaad40ea : SUCCESS in 3m 31s\n- openstack-tox-functional https://zuul.opendev.org/t/openstack/build/7db7db3102f340b39ea585f315e87abb : SUCCESS in 3m 29s\n- ipa-tox-bandit https://zuul.opendev.org/t/openstack/build/7eddebd0036a4808ae5b3d0d1f70b8b1 : SUCCESS in 2m 33s","accounts_in_message":[],"_revision_number":1},{"id":"811fa7ea95d9ea9d9ceaa6655becd0234ebf36a0","tag":"autogenerated:gerrit:merged","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-23 20:01:07.000000000","message":"Change has been successfully merged","accounts_in_message":[],"_revision_number":1},{"id":"7552c0aba868e5093906c5aeda09896f0742f34b","tag":"autogenerated:zuul:promote","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2026-07-23 20:02:10.000000000","message":"Patch Set 1:\n\nBuild succeeded (promote pipeline).\nhttps://zuul.opendev.org/t/openstack/buildset/80387c40a3cf43a5ad02cbbff4ebfccf\n\n- promote-openstack-tox-docs https://zuul.opendev.org/t/openstack/build/87f89326580b4526a4e644bd3717e642 : SUCCESS in 49s\n- promote-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/db9757f148de4777a8e5bc14c744f3e2 : SUCCESS in 45s","accounts_in_message":[],"_revision_number":1},{"id":"67390708596d1850008e826a641629acf5a7602a","tag":"autogenerated:gerrit:setHashtag","author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"date":"2026-07-24 04:33:50.000000000","message":"Hashtag added: CVE-2026-54422","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"3972d27b827480e29f8d43e167e0be07ef60acdc","revisions":{"3972d27b827480e29f8d43e167e0be07ef60acdc":{"kind":"REWORK","_number":1,"created":"2026-07-23 14:09:26.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/93/998493/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/ironic-python-agent","ref":"refs/changes/93/998493/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/93/998493/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/93/998493/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/ironic-python-agent refs/changes/93/998493/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/ironic-python-agent refs/changes/93/998493/1"}}},"commit":{"parents":[{"commit":"c44aab9cd729d9a46203cb13c0d9fc099b237b1c","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/c44aab9cd729d9a46203cb13c0d9fc099b237b1c"}]}],"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:33:40.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/3972d27b827480e29f8d43e167e0be07ef60acdc"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/ironic-python-agent/commit/3972d27b827480e29f8d43e167e0be07ef60acdc"}]},"branch":"refs/heads/bugfix/11.4"}},"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":36770,"name":"cid","display_name":"cid","email":"cid@gr-oss.io","username":"cidelight","status":"@gr-oss upstream: Doing good IRONIC things..."}},{"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":""}}}]}
