mirror of
https://github.com/ansible-collections/community.general.git
synced 2026-04-13 12:21:12 +00:00
[PR #11765/2297a5c8 backport][stable-12] Ensure standard locale in run_command (group4-batch1) (#11792)
Ensure standard locale in run_command (group4-batch1) (#11765)
* ensure standard locale in run_command (group4)
Adds ``LANGUAGE=C`` and ``LC_ALL=C`` to the ``environ_update`` passed to
``run_command()`` calls in modules that parse command output, to prevent
locale-dependent parsing failures on non-C-locale systems.
Modules updated: dconf, pkgng, terraform.
* add changelog fragment for group4
* add PR link to group4 changelog fragment
* fix changelog fragment: rename with PR prefix, fix URL order
---------
(cherry picked from commit 2297a5c876)
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:
@@ -311,7 +311,7 @@ class DconfPreference:
|
||||
"""
|
||||
command = [self.dconf_bin, "read", key]
|
||||
|
||||
rc, out, err = self.module.run_command(command)
|
||||
rc, out, err = self.module.run_command(command, environ_update={"LANGUAGE": "C", "LC_ALL": "C"})
|
||||
|
||||
if rc != 0:
|
||||
self.module.fail_json(msg=f"dconf failed while reading the value with error: {err}", out=out, err=err)
|
||||
|
||||
@@ -156,7 +156,7 @@ def query_update(module, run_pkgng, name):
|
||||
|
||||
|
||||
def pkgng_older_than(module, pkgng_path, compare_version):
|
||||
rc, out, err = module.run_command([pkgng_path, "-v"])
|
||||
rc, out, err = module.run_command([pkgng_path, "-v"], environ_update={"LANGUAGE": "C", "LC_ALL": "C"})
|
||||
version = [int(x) for x in re.split(r"[\._]", out)]
|
||||
|
||||
i = 0
|
||||
@@ -455,7 +455,7 @@ def main():
|
||||
):
|
||||
args = ("-g",) + args
|
||||
|
||||
pkgng_env = {"BATCH": "yes"}
|
||||
pkgng_env = {"BATCH": "yes", "LANGUAGE": "C", "LC_ALL": "C"}
|
||||
|
||||
if p["ignore_osver"]:
|
||||
pkgng_env["IGNORE_OSVERSION"] = "yes"
|
||||
|
||||
@@ -528,6 +528,8 @@ def main():
|
||||
supports_check_mode=True,
|
||||
)
|
||||
|
||||
module.run_command_environ_update = {"LANGUAGE": "C", "LC_ALL": "C"}
|
||||
|
||||
project_path = module.params.get("project_path")
|
||||
bin_path = module.params.get("binary_path")
|
||||
plugin_paths = module.params.get("plugin_paths")
|
||||
|
||||
Reference in New Issue
Block a user