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.
mitogen/tests/ansible
Klaus Zerwes ffb58cd557 Revert "fixed tests for ansible 2.12"
include is deprecated and will be removed in 2.16, so there is some time to fix this left
This reverts commit 19c28b2b1a.
3 years ago
..
bench tests: Tag resource intensive tasks, to skip when strategy=linear 4 years ago
hosts issue #548: always treat transport=smart as 'ssh' for mitogen_via=. 6 years ago
integration Revert "fixed tests for ansible 2.12" 3 years ago
lib Fix ansible.__version__ comparisons with multi-digit components 3 years ago
regression Revert "fixed tests for ansible 2.12" 3 years ago
setup Revert "fixed tests for ansible 2.12" 3 years ago
soak tests: Tag resource intensive tasks, to skip when strategy=linear 4 years ago
tests Merge branch 'master' into multi-word-mask 3 years ago
.gitignore Merge devel/290 @ 79b979ec8544ef5d8620c64068d4a42fabf50415 5 years ago
Makefile tests: import custom binaries for tests 6 years ago
README.md issue #409: Pythonize run_ansible_playbook.sh 6 years ago
all.yml Revert "fixed tests for ansible 2.12" 3 years ago
ansible.cfg ci: Print playbook role execution times 3 years ago
ara_env.py tests: import ara_env helper script. 6 years ago
compare_output_test.py tests: prevent compare_output_test running on import. 6 years ago
mitogen_ansible_playbook.py issue #625: use exec() instead of subprocess in mitogen_ansible_playbook 5 years ago
requirements.txt tests: Update test coverage to Python 3.9 4 years ago
run_ansible_playbook.py try and get some visibility into test failures 4 years ago

README.md

tests/ansible Directory

This is an an organically growing collection of integration and regression tests used for development and end-user bug reports.

It will be tidied up over time, meanwhile, the playbooks here are a useful demonstrator for what does and doesn't work.

Preparation

See ../image_prep/README.md.

run_ansible_playbook.py

This is necessary to set some environment variables used by future tests, as there appears to be no better way to inject them into the top-level process environment before the Mitogen connection process forks.

Running Everything

ANSIBLE_STRATEGY=mitogen_linear ./run_ansible_playbook.py all.yml

hosts/ and common-hosts

To support running the tests against a dev machine that has the requisite user accounts, the the default inventory is a directory containing a 'localhost' file that defines 'localhost' to be named 'target' in Ansible inventory, and a symlink to 'common-hosts', which defines additional targets that all derive from 'target'.

This allows ansible_tests.sh to reuse the common-hosts definitions while replacing localhost as the test target by creating a new directory that similarly symlinks in common-hosts.

There may be a better solution for this, but it works fine for now.