ansible/ansible — pull request #561 by msabramo (2012-07-10 06:22:15+00:00)
Title: Add support for tox (http://tox.testrun.org/) and Travis CI (http://travis-ci.org/)

Passing Travis CI build for my fork: http://travis-ci.org/#!/msabramo/ansible/builds/1823490

To add support for Travis CI to your own GitHub repo, follow the instructions at http://about.travis-ci.org/docs/user/getting-started/ and then accept this pull request.

Sample tox output:

```
~/dev/git-repos/ansible$ tox
GLOB sdist-make: /Users/marca/dev/git-repos/ansible/setup.py
py26 sdist-reinst: /Users/marca/dev/git-repos/ansible/.tox/dist/ansible-0.6.zip
py26 runtests: commands[0]
test_complex_exclude (TestInventory.TestInventory) ... ok
test_complex_vars (TestInventory.TestInventory) ... ok
test_script (TestInventory.TestInventory) ... ok
test_script_all (TestInventory.TestInventory) ... ok
test_script_combined (TestInventory.TestInventory) ... ok
test_script_norse (TestInventory.TestInventory) ... ok
test_script_restrict (TestInventory.TestInventory) ... ok
test_script_vars (TestInventory.TestInventory) ... ok
test_simple (TestInventory.TestInventory) ... ok
test_simple_all (TestInventory.TestInventory) ... ok
test_simple_combined (TestInventory.TestInventory) ... ok
test_simple_exclude (TestInventory.TestInventory) ... ok
test_simple_norse (TestInventory.TestInventory) ... ok
test_simple_port (TestInventory.TestInventory) ... ok
test_simple_restrict (TestInventory.TestInventory) ... ok
test_simple_ungrouped (TestInventory.TestInventory) ... ok
test_simple_vars (TestInventory.TestInventory) ... ok
test_yaml (TestInventory.TestInventory) ... ok
test_yaml_all (TestInventory.TestInventory) ... ok
test_yaml_change_vars (TestInventory.TestInventory) ... ok
test_yaml_combined (TestInventory.TestInventory) ... ok
test_yaml_host_vars (TestInventory.TestInventory) ... ok
test_yaml_list_vars (TestInventory.TestInventory) ... ok
test_yaml_multiple_groups (TestInventory.TestInventory) ... ok
test_yaml_norse (TestInventory.TestInventory) ... ok
test_yaml_port (TestInventory.TestInventory) ... ok
test_yaml_restrict (TestInventory.TestInventory) ... ok
test_yaml_ungrouped (TestInventory.TestInventory) ... ok
test_yaml_vars (TestInventory.TestInventory) ... ok
test_parse_kv_basic (TestUtils.TestUtils) ... ok
test_template_basic (TestUtils.TestUtils) ... ok
test_template_unicode (TestUtils.TestUtils) ... ok
test_template_varReplace_iterated (TestUtils.TestUtils) ... ok
test_template_whitespace (TestUtils.TestUtils) ... ok
test_varLookup_list (TestUtils.TestUtils) ... ok
test_varReplace_almost_alternative (TestUtils.TestUtils) ... ok
test_varReplace_almost_alternative2 (TestUtils.TestUtils) ... ok
test_varReplace_alternative (TestUtils.TestUtils) ... ok
test_varReplace_alternative_greed (TestUtils.TestUtils) ... ok
test_varReplace_caps (TestUtils.TestUtils) ... ok
test_varReplace_invalid_list (TestUtils.TestUtils) ... ok
test_varReplace_list (TestUtils.TestUtils) ... ok
test_varReplace_list_nolist (TestUtils.TestUtils) ... ok
test_varReplace_list_oob (TestUtils.TestUtils) ... ok
test_varReplace_middle (TestUtils.TestUtils) ... ok
test_varReplace_multiple (TestUtils.TestUtils) ... ok
test_varReplace_nested (TestUtils.TestUtils) ... ok
test_varReplace_nested_int (TestUtils.TestUtils) ... ok
test_varReplace_nested_list (TestUtils.TestUtils) ... ok
test_varReplace_notcomplex (TestUtils.TestUtils) ... ok
test_varReplace_simple (TestUtils.TestUtils) ... ok
test_varReplace_unicode (TestUtils.TestUtils) ... ok

----------------------------------------------------------------------
Ran 52 tests in 0.996s

OK
py27 sdist-reinst: /Users/marca/dev/git-repos/ansible/.tox/dist/ansible-0.6.zip
py27 runtests: commands[0]
test_complex_exclude (TestInventory.TestInventory) ... ok
test_complex_vars (TestInventory.TestInventory) ... ok
test_script (TestInventory.TestInventory) ... ok
test_script_all (TestInventory.TestInventory) ... ok
test_script_combined (TestInventory.TestInventory) ... ok
test_script_norse (TestInventory.TestInventory) ... ok
test_script_restrict (TestInventory.TestInventory) ... ok
test_script_vars (TestInventory.TestInventory) ... ok
test_simple (TestInventory.TestInventory) ... ok
test_simple_all (TestInventory.TestInventory) ... ok
test_simple_combined (TestInventory.TestInventory) ... ok
test_simple_exclude (TestInventory.TestInventory) ... ok
test_simple_norse (TestInventory.TestInventory) ... ok
test_simple_port (TestInventory.TestInventory) ... ok
test_simple_restrict (TestInventory.TestInventory) ... ok
test_simple_ungrouped (TestInventory.TestInventory) ... ok
test_simple_vars (TestInventory.TestInventory) ... ok
test_yaml (TestInventory.TestInventory) ... ok
test_yaml_all (TestInventory.TestInventory) ... ok
test_yaml_change_vars (TestInventory.TestInventory) ... ok
test_yaml_combined (TestInventory.TestInventory) ... ok
test_yaml_host_vars (TestInventory.TestInventory) ... ok
test_yaml_list_vars (TestInventory.TestInventory) ... ok
test_yaml_multiple_groups (TestInventory.TestInventory) ... ok
test_yaml_norse (TestInventory.TestInventory) ... ok
test_yaml_port (TestInventory.TestInventory) ... ok
test_yaml_restrict (TestInventory.TestInventory) ... ok
test_yaml_ungrouped (TestInventory.TestInventory) ... ok
test_yaml_vars (TestInventory.TestInventory) ... ok
test_parse_kv_basic (TestUtils.TestUtils) ... ok
test_template_basic (TestUtils.TestUtils) ... ok
test_template_unicode (TestUtils.TestUtils) ... ok
test_template_varReplace_iterated (TestUtils.TestUtils) ... ok
test_template_whitespace (TestUtils.TestUtils) ... ok
test_varLookup_list (TestUtils.TestUtils) ... ok
test_varReplace_almost_alternative (TestUtils.TestUtils) ... ok
test_varReplace_almost_alternative2 (TestUtils.TestUtils) ... ok
test_varReplace_alternative (TestUtils.TestUtils) ... ok
test_varReplace_alternative_greed (TestUtils.TestUtils) ... ok
test_varReplace_caps (TestUtils.TestUtils) ... ok
test_varReplace_invalid_list (TestUtils.TestUtils) ... ok
test_varReplace_list (TestUtils.TestUtils) ... ok
test_varReplace_list_nolist (TestUtils.TestUtils) ... ok
test_varReplace_list_oob (TestUtils.TestUtils) ... ok
test_varReplace_middle (TestUtils.TestUtils) ... ok
test_varReplace_multiple (TestUtils.TestUtils) ... ok
test_varReplace_nested (TestUtils.TestUtils) ... ok
test_varReplace_nested_int (TestUtils.TestUtils) ... ok
test_varReplace_nested_list (TestUtils.TestUtils) ... ok
test_varReplace_notcomplex (TestUtils.TestUtils) ... ok
test_varReplace_simple (TestUtils.TestUtils) ... ok
test_varReplace_unicode (TestUtils.TestUtils) ... ok

----------------------------------------------------------------------
Ran 52 tests in 0.874s

OK
_________________________________________________________________________ summary __________________________________________________________________________
py26: commands succeeded
py27: commands succeeded
congratulations :)
```