From 9a031b1dee7d1c64e6e58ee2dcfa306f47c64ea0 Mon Sep 17 00:00:00 2001 From: jeanluc Date: Wed, 30 Nov 2022 21:55:40 +0100 Subject: [PATCH] Make gpg state module respect test mode --- changelog/63156.fixed | 1 + salt/states/gpg.py | 21 +++++++++++++++++++++ 2 files changed, 22 insertions(+) create mode 100644 changelog/63156.fixed diff --git a/changelog/63156.fixed b/changelog/63156.fixed new file mode 100644 index 00000000000..85efe22e226 --- /dev/null +++ b/changelog/63156.fixed @@ -0,0 +1 @@ +Fixed GPG state module does not respect test mode diff --git a/salt/states/gpg.py b/salt/states/gpg.py index 1c0697d45ca..bbe1183d79b 100644 --- a/salt/states/gpg.py +++ b/salt/states/gpg.py @@ -82,6 +82,15 @@ def present( if trust: if trust in _VALID_TRUST_VALUES: if current_keys[key]["trust"] != TRUST_MAP[trust]: + if __opts__["test"]: + ret["result"] = None + ret["comment"].append( + f"Would have set trust level for {key} to {trust}" + ) + salt.utils.dictupdate.set_dict_key_value( + ret, f"changes:{key}:trust", trust + ) + continue # update trust level result = __salt__["gpg.trust_key"]( keyid=key, @@ -108,6 +117,13 @@ def present( ret["comment"].append(f"GPG Public Key {key} already in keychain") else: + if __opts__["test"]: + ret["result"] = None + ret["comment"].append(f"Would have added {key} to GPG keychain") + salt.utils.dictupdate.set_dict_key_value( + ret, f"changes:{key}:added", True + ) + continue result = __salt__["gpg.receive_keys"]( keyserver, key, @@ -176,6 +192,11 @@ def absent(name, keys=None, user=None, gnupghome=None, **kwargs): for key in keys: if key in current_keys: + if __opts__["test"]: + ret["result"] = None + ret["comment"].append(f"Would have deleted {key} from GPG keychain") + salt.utils.dictupdate.append_dict_key_value(ret, "changes:deleted", key) + continue result = __salt__["gpg.delete_key"]( key, user,