diff --git a/README-vault.md b/README-vault.md index c5dfa6a469266f808268044597f43268697dbe4e..9098b04987b81911af25303287939186dc48805e 100644 --- a/README-vault.md +++ b/README-vault.md @@ -246,7 +246,7 @@ There is only a return value if `state` is `retrieved`. Variable | Description | Returned When -------- | ----------- | ------------- -`vault` | Vault dict with archived data. (dict) <br>Options: | If `state` is `retrieved`. +`vault` | Vault dict with archived data. (dict) <br>Options: | If `state` is `retrieved` and `out` is not defined. | `data` - The vault data. | Always diff --git a/plugins/modules/ipavault.py b/plugins/modules/ipavault.py index 78ca8a54a23f114e2e19925e8394ff725defed13..fef5b69ccf786defb34b2822f52368d93e9ad3e7 100644 --- a/plugins/modules/ipavault.py +++ b/plugins/modules/ipavault.py @@ -923,14 +923,12 @@ def main(): elif command == 'vault_retrieve': if 'result' not in result: raise Exception("No result obtained.") - if 'data' in result['result']: - data_return = exit_args.setdefault('vault', {}) - data_return['data'] = result['result']['data'] - elif 'vault_data' in result['result']: - data_return = exit_args.setdefault('vault', {}) - data_return['data'] = result['result']['vault_data'] + if "data" in result["result"]: + data_return = exit_args.setdefault("vault", {}) + data_return["data"] = result["result"]["data"] else: - raise Exception("No data retrieved.") + if not datafile_out: + raise Exception("No data retrieved.") changed = False else: if "completed" in result: diff --git a/tests/vault/test_vault_asymmetric.yml b/tests/vault/test_vault_asymmetric.yml index 268922c1972d9477186f009b57a517d687a2f235..1e675a04bf936f96c1ea49a7d63eacf64809dc05 100644 --- a/tests/vault/test_vault_asymmetric.yml +++ b/tests/vault/test_vault_asymmetric.yml @@ -52,7 +52,7 @@ private_key: "{{ lookup('file', 'private.pem') | b64encode }}" state: retrieved register: result - failed_when: result.changed + failed_when: result.changed or result.failed or (result.vault.data | default(false)) - name: Verify retrieved data. slurp: diff --git a/tests/vault/test_vault_standard.yml b/tests/vault/test_vault_standard.yml index 6ccb0d5fb31cb230a7da0f7877b364bdb399bcbb..4a9d9904284984bee258624f4e50c87b4eae74a4 100644 --- a/tests/vault/test_vault_standard.yml +++ b/tests/vault/test_vault_standard.yml @@ -48,7 +48,7 @@ out: "{{ ansible_env.HOME }}/data.txt" state: retrieved register: result - failed_when: result.changed + failed_when: result.changed or result.failed or (result.vault.data | default(false)) - name: Verify retrieved data. slurp: diff --git a/tests/vault/test_vault_symmetric.yml b/tests/vault/test_vault_symmetric.yml index 5394c7104bad4d2bb451be113e6d192796c6a895..966bc55761a1b9be3511cc561759c82910acb6f6 100644 --- a/tests/vault/test_vault_symmetric.yml +++ b/tests/vault/test_vault_symmetric.yml @@ -53,7 +53,7 @@ out: "{{ ansible_env.HOME }}/data.txt" state: retrieved register: result - failed_when: result.changed + failed_when: result.changed or result.failed or (result.vault.data | default(false)) - name: Verify retrieved data. slurp: