You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ansible/test
Adrian Likins 32be9a9273 Fix vault reading from stdin (avoid realpath() on non-links) (#23583)
* Fix vault reading from stdin (avoid realpath() on non-links)

os.path.realpath() is used to find the target of file paths that
are symlinks so vault operations happen directly on the target.

However, in addition to resolving symlinks, realpath() also returns
a full path. when reading from stdin, vault cli uses '-' as a special
file path so VaultEditor() will replace with stdin.
realpath() was expanding '-' with the CWD to something like
'/home/user/playbooks/-' causing errors like:

        ERROR! [Errno 2] No such file or directory: u'/home/user/ansible/-'

Fix is to specialcase '-' to not use realpath()

Fixes #23567

* to_text decrypt output when writing to stdout

(cherry picked from commit ae3d7fb29e)
9 years ago
..
compile Use lint friendly output for python syntax checks. (#22390) 9 years ago
integration Fix vault reading from stdin (avoid realpath() on non-links) (#23583) 9 years ago
results Create bot friendly sanity output. (#22381) 9 years ago
runner Add rstcheck to ansible-test and correct issues. (#23550) 9 years ago
sanity nxos_vlan tweaks (#23194) 9 years ago
units Fix vault reading from stdin (avoid realpath() on non-links) (#23583) 9 years ago
utils Fix var precedence check to support python 3. (#23552) 9 years ago
README.md Switch tests to pytest and ansible-test. 9 years ago

README.md

Ansible Test System

Folders

units

Unit tests that test small pieces of code not suited for the integration test layer, usually very API based, and should leverage mock interfaces rather than producing side effects.

Playbook engine code is better suited for integration tests.

Requirements: sudo pip install paramiko PyYAML jinja2 httplib2 passlib nose pytest mock

integration

Integration test layer, constructed using playbooks.

Some tests may require cloud credentials, others will not, and destructive tests are separated from non-destructive so a subset can be run on development machines.

learn more

hop into a subdirectory and see the associated README.md for more info.