Merge pull request #342 from rjeffman/fix_ipavault_return_dict

Modified return value for ipavault module.
This commit is contained in:
Thomas Woerner
2020-08-13 19:14:52 +02:00
committed by GitHub
7 changed files with 37 additions and 25 deletions

View File

@@ -248,6 +248,11 @@ Variable | Description | Returned When
-------- | ----------- | ------------- -------- | ----------- | -------------
`data` | The data stored in the vault. | If `state` is `retrieved`. `data` | The data stored in the vault. | If `state` is `retrieved`.
Variable | Description | Returned When
-------- | ----------- | -------------
`vault` | Vault dict with archived data. (dict) <br>Options: | If `state` is `retrieved`.
&nbsp; | `data` - The vault data. | Always
Notes Notes
===== =====

View File

@@ -14,4 +14,4 @@
state: retrieved state: retrieved
register: result register: result
- debug: - debug:
msg: "Data: {{ result.data }}" msg: "Data: {{ result.vault.data }}"

View File

@@ -14,4 +14,4 @@
state: retrieved state: retrieved
register: result register: result
- debug: - debug:
msg: "{{ result.data | b64decode }}" msg: "{{ result.vault.data }}"

View File

@@ -303,10 +303,15 @@ EXAMPLES = """
""" """
RETURN = """ RETURN = """
data: vault:
description: The vault data. description: Vault dict with archived data.
returned: If state is retrieved. returned: If state is `retrieved`.
type: string type: dict
options:
data:
description: The vault data.
returned: always
type: string
""" """
import os import os
@@ -910,9 +915,11 @@ def main():
if 'result' not in result: if 'result' not in result:
raise Exception("No result obtained.") raise Exception("No result obtained.")
if 'data' in result['result']: if 'data' in result['result']:
exit_args['data'] = result['result']['data'] data_return = exit_args.setdefault('vault', {})
data_return['data'] = result['result']['data']
elif 'vault_data' in result['result']: elif 'vault_data' in result['result']:
exit_args['data'] = result['result']['vault_data'] data_return = exit_args.setdefault('vault', {})
data_return['data'] = result['result']['vault_data']
else: else:
raise Exception("No data retrieved.") raise Exception("No data retrieved.")
changed = False changed = False

View File

@@ -42,7 +42,7 @@
private_key: "{{ lookup('file', 'private.pem') | b64encode }}" private_key: "{{ lookup('file', 'private.pem') | b64encode }}"
state: retrieved state: retrieved
register: result register: result
failed_when: result.data != 'Hello World.' or result.changed failed_when: result.vault.data != 'Hello World.' or result.changed
- name: Retrieve data from asymmetric vault into file {{ ansible_env.HOME }}/data.txt. - name: Retrieve data from asymmetric vault into file {{ ansible_env.HOME }}/data.txt.
ipavault: ipavault:
@@ -75,7 +75,7 @@
private_key: "{{ lookup('file', 'private.pem') | b64encode }}" private_key: "{{ lookup('file', 'private.pem') | b64encode }}"
state: retrieved state: retrieved
register: result register: result
failed_when: result.data != 'The world of π is half rounded.' or result.changed failed_when: result.vault.data != 'The world of π is half rounded.' or result.changed
- name: Archive data in asymmetric vault, from file. - name: Archive data in asymmetric vault, from file.
ipavault: ipavault:
@@ -93,7 +93,7 @@
private_key: "{{ lookup('file', 'private.pem') | b64encode }}" private_key: "{{ lookup('file', 'private.pem') | b64encode }}"
state: retrieved state: retrieved
register: result register: result
failed_when: result.data != 'Another World.' or result.changed failed_when: result.vault.data != 'Another World.' or result.changed
- name: Archive data with single character to asymmetric vault - name: Archive data with single character to asymmetric vault
ipavault: ipavault:
@@ -110,7 +110,7 @@
private_key: "{{ lookup('file', 'private.pem') | b64encode }}" private_key: "{{ lookup('file', 'private.pem') | b64encode }}"
state: retrieved state: retrieved
register: result register: result
failed_when: result.data != 'c' or result.changed failed_when: result.vault.data != 'c' or result.changed
- name: Ensure asymmetric vault is absent - name: Ensure asymmetric vault is absent
ipavault: ipavault:
@@ -161,7 +161,7 @@
private_key: "{{ lookup('file', 'private.pem') | b64encode }}" private_key: "{{ lookup('file', 'private.pem') | b64encode }}"
state: retrieved state: retrieved
register: result register: result
failed_when: result.data != 'Hello World.' or result.changed failed_when: result.vault.data != 'Hello World.' or result.changed
- name: Retrieve data from asymmetric vault, with password file. - name: Retrieve data from asymmetric vault, with password file.
ipavault: ipavault:
@@ -170,7 +170,7 @@
private_key_file: "{{ ansible_env.HOME }}/private.pem" private_key_file: "{{ ansible_env.HOME }}/private.pem"
state: retrieved state: retrieved
register: result register: result
failed_when: result.data != 'Hello World.' or result.changed failed_when: result.vault.data != 'Hello World.' or result.changed
- name: Ensure asymmetric vault is absent - name: Ensure asymmetric vault is absent
ipavault: ipavault:

View File

@@ -39,7 +39,7 @@
name: stdvault name: stdvault
state: retrieved state: retrieved
register: result register: result
failed_when: result.data != 'Hello World.' or result.changed failed_when: result.vault.data != 'Hello World.' or result.changed
- name: Retrieve data from standard vault into file {{ ansible_env.HOME }}/data.txt. - name: Retrieve data from standard vault into file {{ ansible_env.HOME }}/data.txt.
ipavault: ipavault:
@@ -70,7 +70,7 @@
name: stdvault name: stdvault
state: retrieved state: retrieved
register: result register: result
failed_when: result.data != 'The world of π is half rounded.' or result.changed failed_when: result.vault.data != 'The world of π is half rounded.' or result.changed
- name: Archive data in standard vault, from file. - name: Archive data in standard vault, from file.
ipavault: ipavault:
@@ -87,7 +87,7 @@
name: stdvault name: stdvault
state: retrieved state: retrieved
register: result register: result
failed_when: result.data != 'Another World.' or result.changed failed_when: result.vault.data != 'Another World.' or result.changed
- name: Archive data with single character to standard vault - name: Archive data with single character to standard vault
ipavault: ipavault:
@@ -103,7 +103,7 @@
name: stdvault name: stdvault
state: retrieved state: retrieved
register: result register: result
failed_when: result.data != 'c' or result.changed failed_when: result.vault.data != 'c' or result.changed
- name: Ensure standard vault is absent - name: Ensure standard vault is absent
ipavault: ipavault:

View File

@@ -43,7 +43,7 @@
password: SomeVAULTpassword password: SomeVAULTpassword
state: retrieved state: retrieved
register: result register: result
failed_when: result.data != 'Hello World.' or result.changed failed_when: result.vault.data != 'Hello World.' or result.changed
- name: Retrieve data from symmetric vault into file {{ ansible_env.HOME }}/data.txt. - name: Retrieve data from symmetric vault into file {{ ansible_env.HOME }}/data.txt.
ipavault: ipavault:
@@ -77,7 +77,7 @@
password: SomeVAULTpassword password: SomeVAULTpassword
state: retrieved state: retrieved
register: result register: result
failed_when: result.data != 'The world of π is half rounded.' or result.changed failed_when: result.vault.data != 'The world of π is half rounded.' or result.changed
- name: Archive data in symmetric vault, from file. - name: Archive data in symmetric vault, from file.
ipavault: ipavault:
@@ -95,7 +95,7 @@
password: SomeVAULTpassword password: SomeVAULTpassword
state: retrieved state: retrieved
register: result register: result
failed_when: result.data != 'Another World.' or result.changed failed_when: result.vault.data != 'Another World.' or result.changed
- name: Archive data with single character to symmetric vault - name: Archive data with single character to symmetric vault
ipavault: ipavault:
@@ -113,7 +113,7 @@
password: SomeVAULTpassword password: SomeVAULTpassword
state: retrieved state: retrieved
register: result register: result
failed_when: result.data != 'c' or result.changed failed_when: result.vault.data != 'c' or result.changed
- name: Ensure symmetric vault is absent - name: Ensure symmetric vault is absent
ipavault: ipavault:
@@ -167,7 +167,7 @@
password: SomeVAULTpassword password: SomeVAULTpassword
state: retrieved state: retrieved
register: result register: result
failed_when: result.data != 'Hello World.' or result.changed failed_when: result.vault.data != 'Hello World.' or result.changed
- name: Retrieve data from symmetric vault, with password file. - name: Retrieve data from symmetric vault, with password file.
ipavault: ipavault:
@@ -176,7 +176,7 @@
password_file: "{{ ansible_env.HOME }}/password.txt" password_file: "{{ ansible_env.HOME }}/password.txt"
state: retrieved state: retrieved
register: result register: result
failed_when: result.data != 'Hello World.' or result.changed failed_when: result.vault.data != 'Hello World.' or result.changed
- name: Change vault password. - name: Change vault password.
ipavault: ipavault:
@@ -212,7 +212,7 @@
password: SomeNEWpassword password: SomeNEWpassword
state: retrieved state: retrieved
register: result register: result
failed_when: result.data != 'Hello World.' or result.changed failed_when: result.vault.data != 'Hello World.' or result.changed
- name: Try to add vault with multiple passwords. - name: Try to add vault with multiple passwords.
ipavault: ipavault: