1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2026-07-01 16:18:55 +00:00

[PR #11995/02b969ee backport][stable-12] cobbler_system: fix KeyError when adding new interface to existing system (#12003)

cobbler_system: fix `KeyError` when adding new interface to existing system (#11995)

* fix(cobbler_system): handle missing interface device on existing system

When adding a new interface to an existing Cobbler system that does not
yet have that interface defined, the module raised a KeyError. Use .get()
with a fallback empty dict to safely handle that case. Also add a
continue after the unknown-property warning to prevent a secondary
KeyError on IFPROPS_MAPPING lookup.

Fixes: #7007



* chore(cobbler_system): add changelog fragment for #11995



---------


(cherry picked from commit 02b969ee4d)

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
patchback[bot] 2026-05-06 20:10:26 +02:00 committed by GitHub
parent 4e0fdb757f
commit 89450214dc
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 6 additions and 1 deletions

View file

@ -298,7 +298,8 @@ def main():
continue
if key not in IFPROPS_MAPPING:
module.warn(f"Property '{key}' is not a valid system property.")
if not system or system["interfaces"][device][IFPROPS_MAPPING[key]] != value:
continue
if not system or system["interfaces"].get(device, {}).get(IFPROPS_MAPPING[key]) != value:
result["changed"] = True
interface_properties[f"{key}-{device}"] = value