diff --git a/library/proxmox_storage.py b/library/proxmox_storage.py index d213ee1..01f4a95 100755 --- a/library/proxmox_storage.py +++ b/library/proxmox_storage.py @@ -299,7 +299,7 @@ import ansible.module_utils.pvesh as pvesh import re import json -from json import JSONDecodeError, loads as parse_json +from json import JSONDecodeError, loads as parse_json, dumps as to_json class ProxmoxStorage(object): @@ -355,6 +355,8 @@ def __init__(self, module): "'backup' content type.") try: if self.encryption_key not in ["autogen", None]: + if isinstance(self.encryption_key, dict): + self.encryption_key = to_json(self.encryption_key) parse_json(self.encryption_key) except JSONDecodeError: self.module.fail_json(msg=("encryption_key needs to be valid " @@ -578,7 +580,7 @@ def main(): "zfspool", "btrfs", "pbs", "cifs"]), # Remaining PVE API arguments (depending on type) past this point datastore=dict(default=None, type='str', required=False), - encryption_key=dict(default=None, type='str', required=False, no_log=True), + encryption_key=dict(default=None, type='raw', required=False, no_log=True), fingerprint=dict(default=None, type='str', required=False), master_pubkey=dict(default=None, type='str', required=False), password=dict(default=None, type='str', required=False, no_log=True),