From e757ff30b3ef1e9175436471125a2d4e567b73db Mon Sep 17 00:00:00 2001 From: "patchback[bot]" <45432694+patchback[bot]@users.noreply.github.com> Date: Sun, 12 Apr 2026 22:26:47 +0200 Subject: [PATCH] [PR #11778/42a1998b backport][stable-12] Ensure standard locale in run_command (group5-batch7) (#11805) Ensure standard locale in run_command (group5-batch7) (#11778) * Fix locale env vars in run_command() calls for group5 batch7 modules Set LANGUAGE=C and LC_ALL=C via run_command_environ_update to ensure locale-independent output parsing in zfs, zfs_delegate_admin, zfs_facts, and zpool_facts. * Add changelog fragment for PR #11778 --------- (cherry picked from commit 42a1998bdefcbe2cdbcfc43e5d327e0d9101e6e5) Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com> Co-authored-by: Claude Sonnet 4.6 --- changelogs/fragments/11778-group5-batch7-locale.yml | 13 +++++++++++++ plugins/modules/zfs.py | 1 + plugins/modules/zfs_delegate_admin.py | 1 + plugins/modules/zfs_facts.py | 1 + plugins/modules/zpool_facts.py | 1 + 5 files changed, 17 insertions(+) create mode 100644 changelogs/fragments/11778-group5-batch7-locale.yml diff --git a/changelogs/fragments/11778-group5-batch7-locale.yml b/changelogs/fragments/11778-group5-batch7-locale.yml new file mode 100644 index 0000000000..41eae735ce --- /dev/null +++ b/changelogs/fragments/11778-group5-batch7-locale.yml @@ -0,0 +1,13 @@ +bugfixes: + - zfs - set ``LANGUAGE`` and ``LC_ALL`` to ``C`` in ``run_command()`` calls to ensure locale-independent output parsing + (https://github.com/ansible-collections/community.general/issues/11737, + https://github.com/ansible-collections/community.general/pull/11778). + - zfs_delegate_admin - set ``LANGUAGE`` and ``LC_ALL`` to ``C`` in ``run_command()`` calls to ensure locale-independent output parsing + (https://github.com/ansible-collections/community.general/issues/11737, + https://github.com/ansible-collections/community.general/pull/11778). + - zfs_facts - set ``LANGUAGE`` and ``LC_ALL`` to ``C`` in ``run_command()`` calls to ensure locale-independent output parsing + (https://github.com/ansible-collections/community.general/issues/11737, + https://github.com/ansible-collections/community.general/pull/11778). + - zpool_facts - set ``LANGUAGE`` and ``LC_ALL`` to ``C`` in ``run_command()`` calls to ensure locale-independent output parsing + (https://github.com/ansible-collections/community.general/issues/11737, + https://github.com/ansible-collections/community.general/pull/11778). diff --git a/plugins/modules/zfs.py b/plugins/modules/zfs.py index 5682fa52bc..cb3d226885 100644 --- a/plugins/modules/zfs.py +++ b/plugins/modules/zfs.py @@ -254,6 +254,7 @@ def main(): ), supports_check_mode=True, ) + module.run_command_environ_update = {"LANGUAGE": "C", "LC_ALL": "C"} state = module.params.get("state") name = module.params.get("name") diff --git a/plugins/modules/zfs_delegate_admin.py b/plugins/modules/zfs_delegate_admin.py index 231f00e88e..27f4f5e74c 100644 --- a/plugins/modules/zfs_delegate_admin.py +++ b/plugins/modules/zfs_delegate_admin.py @@ -259,6 +259,7 @@ def main(): supports_check_mode=False, required_if=[("state", "present", ["permissions"])], ) + module.run_command_environ_update = {"LANGUAGE": "C", "LC_ALL": "C"} zfs_delegate_admin = ZfsDelegateAdmin(module) zfs_delegate_admin.run() diff --git a/plugins/modules/zfs_facts.py b/plugins/modules/zfs_facts.py index a9287c8ef8..02cc64e763 100644 --- a/plugins/modules/zfs_facts.py +++ b/plugins/modules/zfs_facts.py @@ -217,6 +217,7 @@ def main(): ), supports_check_mode=True, ) + module.run_command_environ_update = {"LANGUAGE": "C", "LC_ALL": "C"} if "all" in module.params["type"] and len(module.params["type"]) > 1: module.fail_json(msg="Value 'all' for parameter 'type' is mutually exclusive with other values") diff --git a/plugins/modules/zpool_facts.py b/plugins/modules/zpool_facts.py index 023df18258..deda9f5304 100644 --- a/plugins/modules/zpool_facts.py +++ b/plugins/modules/zpool_facts.py @@ -162,6 +162,7 @@ def main(): ), supports_check_mode=True, ) + module.run_command_environ_update = {"LANGUAGE": "C", "LC_ALL": "C"} zpool_facts = ZPoolFacts(module)