ansible/test/units
Adrian Likins a14d0f3586 Use vault_id when encrypted via vault-edit (#30772)
* Use vault_id when encrypted via vault-edit

On the encryption stage of
'ansible-vault edit --vault-id=someid@passfile somefile',
the vault id was not being passed to encrypt() so the files were
always saved with the default vault id in the 1.1 version format.

When trying to edit that file a second time, also with a --vault-id,
the file would be decrypted with the secret associated with the
provided vault-id, but since the encrypted file had no vault id
in the envelope there would be no match for 'default' secrets.
(Only the --vault-id was included in the potential matches, so
the vault id actually used to decrypt was not).

If that list was empty, there would be an IndexError when trying
to encrypted the changed file. This would result in the displayed
error:

ERROR! Unexpected Exception, this is probably a bug: list index out of range

Fix is two parts:

1) use the vault id when encrypting from edit

2) when matching the secret to use for encrypting after edit,
include the vault id that was used for decryption and not just
the vault id (or lack of vault id) from the envelope.

add unit tests for #30575 and intg tests for 'ansible-vault edit'

Fixes #30575
2017-09-26 12:28:31 -04:00
..
cli Don't ask for password confirm on 'ansible-vault edit' (#30514) 2017-09-19 17:39:51 -04:00
contrib Update vmware_inventory (#26308) 2017-07-18 07:20:23 -04:00
errors test/: PEP8 compliancy (#24803) 2017-05-30 18:05:19 +01:00
executor Ansible Config part2 (#27448) 2017-08-15 16:38:59 -04:00
inventory INI inventory plugin: add documentation about variable types (#25798) 2017-07-13 12:04:20 -07:00
inventory_test_data/group_vars Merge branch 'v2_final' into devel_switch_v2 2015-05-28 15:26:03 -05:00
mock Fix dangerous default args. (#29839) 2017-09-12 00:11:13 -07:00
module_utils Fix 'distribution' fact for ArchLinux (#30723) 2017-09-25 15:00:31 -04:00
modules - Adds sub-interface support for nxos_interface and nxos_ip_interface (#30830) 2017-09-26 21:34:51 +05:30
parsing Use vault_id when encrypted via vault-edit (#30772) 2017-09-26 12:28:31 -04:00
playbook less confusing 'args' message (#29053) 2017-09-06 18:20:06 -04:00
plugins Enable more pylint rules and fix reported issues. (#30543) 2017-09-19 00:45:35 -07:00
template template: fix KeyError: 'undefined variable: 0 (#27972) 2017-08-09 18:50:53 -04:00
utils test/: PEP8 compliancy (#24803) 2017-05-30 18:05:19 +01:00
vars Miscellaneous pylint fixes. 2017-09-13 01:53:08 -07:00
__init__.py Add empty-init code-smell script. (#18406) 2016-11-07 15:02:13 -08:00
conftest.py Fix bugs in ansible-test units command. (#24044) 2017-04-27 11:21:11 +08:00
test_constants.py 1st part of ansible config, adds ansible-config to view/manage configs (#12797) 2017-06-14 11:08:34 -04:00