Commit graph

779 commits

Author SHA1 Message Date
Marc Abramowitz
372a29744b Make AnsibleError a plain ol' exception
Python's Exception constructor already takes a `message` as a parameter,
which you can then get at by doing str(e) (e.message was deprecated).

The reason I bothered to make this change was because I was debugging
with pdb and I noticed that AnsibleErrors don't give useful information
in pdb (probably because they don't have a __repr__ method that prints
the `msg` attribute).

    (Pdb) c
    > /Users/marca/dev/git-repos/ansible/lib/ansible/runner/__init__.py(599)_executor()
    -> msg = str(ae)
    (Pdb) ae
    AnsibleError()
2015-01-29 10:36:06 -08:00
Toshio Kuratomi
fef435cc2a Correct typo 2015-01-28 22:04:10 -08:00
Toshio Kuratomi
0eabf3bb99 Change subversion tests -- export test didn't test exporting before 2015-01-28 17:28:00 -08:00
James Martin
e2ce673b1a Properly empties ASG before terminating it, and waits for ASG to be deleted.
Updated to support wait_for_instances and replace_all_instances.
2015-01-27 15:39:26 -05:00
Toshio Kuratomi
eebba11558 Remove the build-dep change test. Doesn't seem like there's a way to do that. 2015-01-27 10:40:58 -08:00
Toshio Kuratomi
a6a911d2ed We changed the way build-dep is specified in the module; also change it in the tests 2015-01-27 10:00:07 -08:00
Conrado Buhrer
0c1193f11d added: integration tests builddeps for apt module 2015-01-26 17:58:56 -02:00
Steve Gargan
c02f114967 Initial commit of Ansible support for the Consul clustering framework (http://consul.io).
Submission includes support for
 - creating and registering services and checks
 - reading, writing and lookup for values in consul's kv store
 - creating and manipulating sessions for distributed locking on values in the kv
 - creating and manipulating ACLs for restricting access to the kv store
 - inventory support that reads the Consul catalog and group nodes according to
     - datacenters
     - exposed services
     - service availability
     - arbitrary groupings from the kv store

This submission makes extensive use of the python-consul library and this is required
as a dependency and can be installed from pip.

The tests were written to target a vagrant cluster which can be setup by following the
instructions here http://github.com/sgargan/consul-vagrant
2015-01-24 01:09:03 +00:00
Toshio Kuratomi
364f772cc5 Fix quoting of shell parameters used in remote_checksum and add integration test to detect the error
Fixes #682
2015-01-22 12:33:06 -08:00
Brian Coca
54c25a101b Merge pull request #10029 from gaqzi/devel
Add filter to turn a string into a UUID
2015-01-22 14:51:40 -05:00
Toshio Kuratomi
7e538d54dd Install zip for the unarchive test 2015-01-22 10:37:19 -08:00
Toshio Kuratomi
cce87acfed Fix integration test for unarchive to test zipfiles 2015-01-21 16:17:49 -08:00
Björn Andersson
65e4f2b2bc Add filter to turn a string into a UUID
This filter was made because I needed to create idempotent UUIDs when
installing the agent for Go (http://go.cd), which uses UUIds to
distinguish the agents from each other.

It uses a newly created Ansible namespace to distinguish UUIDs created
by Ansible from any other source. The new namespace is a random one
created by uuidgen on OSX.
2015-01-21 08:07:17 +08:00
Toshio Kuratomi
6326daa34e Update modules for unarchive handling user,group,mode and add integration test for the same 2015-01-14 19:23:12 -08:00
Toshio Kuratomi
ee469c2ab1 Add a check that unarchive works with complex_args 2015-01-14 13:03:21 -08:00
Toshio Kuratomi
21a5a5f50f typoed the filename 2015-01-12 15:18:15 -08:00
Toshio Kuratomi
d7f67ea62b Doh! We needed this template. 2015-01-12 13:57:01 -08:00
Toshio Kuratomi
e69299f05a iRemove pretty print to_nice_json test -- the test fails on python2.6
without simplejson
2015-01-12 13:35:22 -08:00
Brian Coca
f995b34638 Merge pull request #9970 from sivel/rax-integration
Add integration tests for the rax module
2015-01-12 13:24:42 -05:00
Toshio Kuratomi
d83648bb82 Add test for python2.6 json bug to its own file 2015-01-12 10:20:28 -08:00
Toshio Kuratomi
91f9d84930 Revert "Try to provoke a python2.6 bug to prove we've fixed it"
The test template output is compared against an expected output.  Since
hostvars contains information specific to the host it runs on we can't
test the python2.6 bug this way.

This reverts commit af4d6105a5.
2015-01-12 10:16:59 -08:00
Toshio Kuratomi
af4d6105a5 Try to provoke a python2.6 bug to prove we've fixed it 2015-01-12 10:02:44 -08:00
Matt Martz
f5d2f8e382 Add integration tests for the rax module 2015-01-09 15:08:58 -06:00
Henry Finucane
7e95da2930 Add tests for using .deb files 2015-01-07 19:44:31 -08:00
Toshio Kuratomi
7e0fc6a8bc Merge pull request #9739 from jbinto/file_allow_touch_hardlink
Add integration test for ansible-modules-core #460
2015-01-07 09:08:01 -08:00
Rohan McGovern
1ac57a8a8f test_git: add tests for `refspec' argument
Includes a basic test of the clone and update cases.
2014-12-19 12:29:01 +10:00
Toshio Kuratomi
64c256b356 git module now with clone parameter and update=no reverted 2014-12-17 13:46:14 -08:00
Toshio Kuratomi
07e483b0c0 Update core modules 2014-12-16 11:18:15 -08:00
Jon Hawkesworth
e37b63386c Revised following comments from Chris Church.
Now uses sha1 checksums following merge of 9688.
Also I undid the changes I made to fetch.py
win_template.py now uses conn.shell.has_trailing_slash and
conn.shell.join_path
updated integration tests.
2014-12-16 04:47:01 +00:00
root
bf916fb58a Adding first pass at win_copy, win_file and win_template modules. 2014-12-16 04:47:01 +00:00
Brian Coca
bfe08560ec Merge pull request #9227 from cchurch/win_feature_tests
Add integration tests for win_feature
2014-12-15 20:13:52 -05:00
Brian Coca
1408a01498 Merge pull request #9764 from bcoca/moar_tests
Moar tests
2014-12-11 01:03:54 -05:00
Toshio Kuratomi
a0ff0f8198 And the encoding needs to be latin1 for this test 2014-12-10 14:51:02 -08:00
Toshio Kuratomi
367a361a70 Correct the command name on RHT Systems 2014-12-10 14:40:10 -08:00
Toshio Kuratomi
2dd0e51469 Possible fix for postgres setup on F21 cloud image 2014-12-10 14:25:40 -08:00
Toshio Kuratomi
ac71caa0ac Quote debug msgs and find one more wierd bug to test in v2 2014-12-10 11:50:48 -08:00
Toshio Kuratomi
65be0eefcf Enable all the binary tests inside of the role.
They're not being run by default so make sure they're ready to show
errors when we turn them on for v2
2014-12-10 11:40:33 -08:00
Toshio Kuratomi
37d1b3f1cf New test that binary contenti.
(and a few unicode tests because they make clearer what we're testing)
works.  disabled for now since they mostly do not pass on 1.8.  We'll
want to enable them when we start integration testing the v2 tree.
2014-12-10 11:37:32 -08:00
Brian Coca
0ce5d2c846 added complex bare templated conditional test 2014-12-10 09:21:49 -05:00
Brian Coca
58be1b049e added tests for templating and with_items 2014-12-09 11:31:21 -05:00
Michael DeHaan
d4da58e102 Merge pull request #9720 from vlajos/typofixes-vlajos-20141204
typofixes - https://github.com/vlajos/misspell_fixer
2014-12-08 14:00:52 -08:00
Toshio Kuratomi
8d6ea38ee0 Disable automatic running of test_delegate_to with an explanation of what it would take to set this up in our automated test systems 2014-12-08 13:39:01 -08:00
Toshio Kuratomi
3269a349f3 Fix remote_checksum with delegate_to and add tests for several ways that delegate_to works 2014-12-08 12:44:44 -08:00
Jesse Buchanan
39c488203f Add integration test for ansible-modules-core #460
See https://github.com/ansible/ansible-modules-core/pull/460
2014-12-07 14:29:57 -05:00
Veres Lajos
bf5d8ee678 typofixes - https://github.com/vlajos/misspell_fixer 2014-12-04 22:23:35 +00:00
Toshio Kuratomi
57c77691ec Add a check that tilde expansion with copy works 2014-12-04 11:35:03 -08:00
Toshio Kuratomi
1eb3124999 Make test for skipping agree with the way current output formats a skip 2014-12-04 10:53:48 -08:00
Toshio Kuratomi
77be7cdca8 Merge pull request #9717 from bcoca/fix_integration_test_with_conditionals
fixed integration test as with_items
2014-12-04 09:46:37 -08:00
Brian Coca
446cba6509 fixed integration test as with_items always returns a list, even if
empty
2014-12-04 12:30:18 -05:00
Brian Coca
97408fe5b2 Revert "Make listify respect the global setting for undefined variables."
This 'mostly' reverts commit 2769098fe7.

Conflicts:
	lib/ansible/utils/__init__.py
	test/units/TestUtils.py
2014-12-04 09:14:53 -05:00
Toshio Kuratomi
1ec8b6e3c5 Have remote_expanduser honor sudo and su users.
Fixes #9663
2014-12-03 10:46:56 -08:00
Toshio Kuratomi
00c0d7ce31 Ubuntu still having problems initializing the postgres db 2014-12-03 07:37:51 -08:00
Chris Church
2bf269568b Merge pull request #9688 from cchurch/fix_win_fetch
Fixes for fetch module when connecting to Windows hosts
2014-12-02 15:15:06 -05:00
Toshio Kuratomi
8790be3154 Now that we have all of the postgres db being blown away the package manager is initializing a new db.
We don't need to do it manually anymore
2014-12-02 08:56:38 -08:00
Chris Church
de267b5655 Fix PowerShell plugin issues affecting fetch module when used against Windows hosts. 2014-12-01 22:18:35 -05:00
Toshio Kuratomi
7329bcde99 New integration tests for postgresql 2014-12-01 19:10:35 -08:00
Toshio Kuratomi
86b21a1b8d Integration tests for https://github.com/ansible/ansible-modules-core/issues/416 2014-12-01 10:46:22 -08:00
Tomasz Kontusz
9ee367e044 Add mock and nose to requirements for running unit tests 2014-11-30 16:10:25 +01:00
Toshio Kuratomi
c697d01151 Integration tests for #9242 and #9640 2014-11-26 10:55:37 -08:00
Brian Coca
7d2937b1cc minor fixes to template function
- make sure it calls itself correctly, now passes same params as it recieves
- vars is reserved, changed for templatevars to avoid confustion
- forcing mustaches again since the removal broke 'listification' as per #9622
- fixes incorrectly successful tests using undefined var, now it is defined
- now returns empty list if items is None to avoid errors
2014-11-25 12:59:13 -05:00
Toshio Kuratomi
d36c38c35e Exception message changes 2014-11-25 02:36:38 -08:00
Toshio Kuratomi
067112b5ee Code for modules to perform more robust quoting of database identifiers 2014-11-24 20:55:44 -08:00
Chris Church
e9b6aaf5d8 Update PowerShell command line processing to handle parameters passed via splatting. 2014-11-23 22:53:10 -05:00
Toshio Kuratomi
ef6769d6c8 Clean up the format of pull #9590 2014-11-21 09:22:12 -08:00
Rohan McGovern
be6ef11e96 test_git: add tests for version=<sha1> case
This test covers a recently fixed bug,
https://github.com/ansible/ansible-modules-core/issues/313
2014-11-21 12:03:25 +10:00
Toshio Kuratomi
c4c3cc315d Transform both values of a task name into a byte str prior to comparing
Fixes #9571
2014-11-19 11:50:02 -08:00
James Cammarata
aa1a46092d Fix missing dep on parsing integration test for preparation role 2014-11-19 09:41:09 -06:00
Toshio Kuratomi
4ae2d58d72 Fix detection of fips mode in test_do_encrypt_md5 2014-11-17 13:33:30 -08:00
James Cammarata
9a0f8f0158 Split out various vars-related things to avoid merging too early
Fixes #9498
2014-11-17 15:31:55 -06:00
Toshio Kuratomi
c3c6a07e65 Update apt test for newer version of test package and pull in an apt module fix 2014-11-14 10:02:21 -08:00
Mario de Frutos
dd9dc637d1 Test install with wildcard 2014-11-14 09:49:32 -08:00
Toshio Kuratomi
d14dcdc222 Docker test does not require the mock module 2014-11-14 08:59:36 -08:00
Toshio Kuratomi
b95475c1f9 Unittest the get_split_image_tag function in the docker module 2014-11-14 08:48:21 -08:00
Brian Coca
dd60036fb9 added changed status to return when new early create check is triggered,
added skipped check to test on create existing
2014-11-14 11:13:36 -05:00
Toshio Kuratomi
6030be3835 Add unittest for discrete functions in the apt module 2014-11-14 07:55:10 -08:00
Toshio Kuratomi
44eb19d553 Make VaultEditor Tests compatible with FIPS mode
Migrate one test to vault-1.1.  Skip the two other vault 1.0 tests if
running on a FIPS enabled system
2014-11-12 12:05:25 -08:00
Toshio Kuratomi
e05b22e0d1 Skip some md5 related unit tests when running in fips mode 2014-11-12 11:47:11 -08:00
Toshio Kuratomi
531eaddb3d Remove second invocation of mysql_user integration test
Seems to have been mistakenly added when mysql_variable tests were
added.
2014-11-12 11:46:17 -08:00
Toshio Kuratomi
f109b818bf Disable pip test on FIPS enabled systems because pip unconditionally uses md5 2014-11-12 11:45:39 -08:00
Toshio Kuratomi
b828b25784 Add a fips fact and use it for integration tests 2014-11-12 09:29:21 -08:00
Toshio Kuratomi
ffc2e5a627 Do not fail on failure of md5 checksumming tests for non_destructive
tests
2014-11-11 21:04:07 -08:00
Toshio Kuratomi
507a1ef093 Fix integration test to check for checksum, not md5sum 2014-11-06 23:17:17 -08:00
Toshio Kuratomi
f1267c0b05 Move from md5 to sha1 to work on fips-140 enabled systems 2014-11-06 21:28:04 -08:00
Toshio Kuratomi
67ff4428d5 Fix up all python3 issues that do not have to do with text/bytes 2014-10-28 20:27:14 -04:00
Toshio Kuratomi
050d17295d Remove test case that wasn't reported as something git should do 2014-10-28 19:09:32 -04:00
Toshio Kuratomi
82e8d677d9 Test the git changes for the git module's recursive flag 2014-10-28 17:58:25 -04:00
Toshio Kuratomi
56c268ade4 New test that newlines in systemd service scripts don't cause problems 2014-10-22 16:38:01 -04:00
Toshio Kuratomi
43b3eecf52 Debian/Ubuntu doesn't have group nobody so remove the group portion of the new template tests as owner and mode will exercise the problematic code path 2014-10-21 01:31:55 -04:00
Toshio Kuratomi
feb9ed1de8 Fix template module incorrectly handling mode when dest is a directory
Fixes #9350
2014-10-21 00:22:24 -04:00
James Cammarata
b61a78532c Catch template syntax errors specifically when templating strings
Fixes #9333
2014-10-20 13:11:20 -05:00
James Cammarata
c08c907ee0 Merge pull request #9346 from MiLk/test/shell-multiline
Add integration test for the shell module
2014-10-20 09:09:59 -05:00
James Cammarata
21577ff2cc Moved v2 tests for plugins to new location 2014-10-16 08:55:44 -07:00
James Cammarata
1d04e4b3d2 Updating unittests for v2 stuff 2014-10-15 18:02:45 -07:00
Toshio Kuratomi
938b2108d0 Move the v2 tests under the v2 tree 2014-10-15 18:08:28 -04:00
Emilien Kenler
39ce134c2c Add integration test for the shell module
* it ensures that it's possible to define options in the multiline block
2014-10-15 11:12:35 +09:00
Toshio Kuratomi
692d31d221 Python3 fix 2014-10-12 10:49:42 -04:00
Toshio Kuratomi
1e255a72a8 Python3 fix 2014-10-12 10:40:48 -04:00
Toshio Kuratomi
25ac4ccef3 Update other asserts that have a py2.6 unittest method 2014-10-12 03:09:37 -04:00
Toshio Kuratomi
c752f012f7 Start converting asserts to self.assert*() so we get better error messages 2014-10-11 22:22:10 -04:00
Michael DeHaan
ccd559137f add missing headers, rm the subtree of ansible/inventory as we wish to overhaul it. 2014-10-10 16:47:55 -04:00
James Cammarata
fe5a7bcabf Fixing bad variable naming choices 2014-10-10 12:45:33 -05:00
James Cammarata
2eda9a3a47 Fixing item loop when undefined variable errors occur because of missing attributes
Fixes a case where the variable 'foo' may exist, but the with_items loop
was used on something like 'foo.results', where 'results' was not a valid
attribute of 'foo'. Prior to this patch, conditionals were not evaluated
until later, meaning there was no opportunity to allow a test to skip the
task or item based on it being undefined.
2014-10-10 12:26:04 -05:00
James Cammarata
a50332fc8a Adding v2 error line support, and tests 2014-10-09 12:52:39 -05:00
Toshio Kuratomi
48a308a87c Allow both old-style and new-style role dependencies to be valid.
Fixes #9173
2014-10-09 02:48:47 -04:00
Michael DeHaan
79f41d9c1a This makes the module args parser more functional to eliminate side effects and eliminiates the 'return None' error path
to make sure we are handling more use cases.  Some paths are not yet complete, including most likely handling of the 'raw'
module.
2014-10-08 19:46:34 -04:00
Michael DeHaan
56b6cb5328 Teaching objects to load themselves, making the JSON/YAML parsing ambidexterous. 2014-10-08 16:00:08 -04:00
James Cammarata
ad893ea867 Merge pull request #9286 from damncabbage/9008-undef-var-in-list
Makes listify_lookup_plugin_terms respect the global setting for undefined variables.
2014-10-08 13:01:47 -05:00
James Cammarata
c83a833740 New v2 ModuleArgsParser code and fixing up tests/other task code 2014-10-08 10:35:58 -05:00
Rob Howard
2769098fe7 Make listify respect the global setting for undefined variables.
(Fixes #9008.)

With credit to jimi-c for the initial pass in this commit:
b18bd6b98e
2014-10-08 13:47:11 +11:00
James Cammarata
bbd9921dbd Adding a negative test for new safe_load 2014-10-07 19:59:54 -05:00
Michael DeHaan
4cb7f654b6 Add stub tests for module args parsing. 2014-10-07 17:00:01 -04:00
James Cammarata
93e273333d Adding tests for new yaml parsing stuff and adjusting imports 2014-10-07 15:52:58 -05:00
Michael DeHaan
ad9ab8e033 Stub class for mod arg parsing tests. 2014-10-07 14:59:55 -04:00
Michael DeHaan
21642c0fbf We need module args specific parsing classes. 2014-10-07 14:56:42 -04:00
Michael DeHaan
d97b38ba83 Attribute defaults and optional accessors. 2014-10-06 17:06:13 -04:00
Michael DeHaan
e66a0096a7 Work in progress on task loading. 2014-10-06 16:29:18 -04:00
Michael DeHaan
f066e361f1 WIP on data structure processing patterns. 2014-10-06 16:29:18 -04:00
James Cammarata
05644686de Fix bug in plugin path caching
Fixes #9263
2014-10-04 21:47:38 -05:00
Michael DeHaan
94db7365b9 __getattr__ to hide some of the attribute magic. 2014-10-03 17:09:25 -04:00
Michael DeHaan
b54434c1b2 WIP on Attributes. Getting closer. 2014-10-03 16:37:32 -04:00
Michael DeHaan
6db1b4dfd2 WIP on refactoring changes 2014-10-03 15:25:21 -04:00
Michael DeHaan
335221d79e This is an exceedingly rough sketch of what attributes might look like - metaclass implementations NOT complete. 2014-10-03 14:54:04 -04:00
James Cammarata
0c40c6c23c Fix order of resolving dependent role variables from vars files
Also adds a new class to the test_var_precedence test to check for
this type of error in the future.

Fixes #9178
2014-10-03 13:30:47 -05:00
Toshio Kuratomi
e6fcd90342 Merge pull request #9224 from drawks/iss9223
Resolve #9223 Fix test for python 2.6
2014-10-01 11:54:44 -04:00
Toshio Kuratomi
e00d657362 Make unittest compatible with python <= 2.6 2014-10-01 11:50:45 -04:00
James Cammarata
313f26f866 Fix issue with vars precedence from roles
Fixes #9219
2014-09-30 15:50:46 -05:00
Dave Rawks
5f54b57b6d Corrected indentation 2014-09-30 13:37:47 -07:00
Chris Church
997ea78b1f Add integration tests for the win_feature module. 2014-09-30 16:20:20 -04:00
Toshio Kuratomi
0af750e3e5 Merge pull request #9182 from bbasleeper/feature_sudo_exe_from_inventory
Add a new inventory parameter (ansible_sudo_exe) to specify sudo command...
2014-09-30 14:55:46 -04:00
Dave Rawks
c070ab69f7 Resolve #9223 Fix test for python 2.6
* trivial test refactor to allow for python 2.6 compat
2014-09-30 11:24:47 -07:00
Bruno BAILLUET
a25da4af05 Add a new inventory parameter (ansible_sudo_exe) to specify sudo command path. 2014-09-27 17:39:49 +02:00
Michael DeHaan
f35ed8a6c0 Update module test code to avoid pycs (that are not used) 2014-09-26 10:57:12 -04:00
James Cammarata
21dcfd7192 Adding integration tests for async fire-and-forget checking
Also updated the CHANGELOG for the feature
2014-09-25 15:42:45 -05:00
James Cammarata
889dfc4374 Merge pull request #8959 from willthames/galaxy_ssh_clone
Allow fairly common ssh repo clone path to work
2014-09-23 14:58:29 -05:00
James Cammarata
56954a200e Merge branch 'devel' of https://github.com/dmage/ansible into dmage-devel 2014-09-22 15:40:06 -05:00
Toshio Kuratomi
f7b5b85743 Fix the name of the upstart service 2014-09-18 13:18:31 -07:00
Toshio Kuratomi
d98e32e364 Fix the var we're checking in the upstart test 2014-09-18 13:00:37 -07:00
Toshio Kuratomi
6943ec11a5 Failure to enable a service now fails the task
Fixes: 8855
2014-09-18 12:39:54 -07:00
James Cammarata
28f6a18ef6 Allow git repo queries without a clone when update=no
This commit also makes the dest parameter optional, unless update=yes
(the default), since it is not required for queries without an update.

Fixes #8630
2014-09-17 02:05:29 -05:00
James Cammarata
b376e208c7 Adding "follow" param for file/copy options
Also modifies the template action plugin to use this new param
when executing the file/copy modules for templating so that links
are preserved correctly.

Fixes #8998
2014-09-16 12:05:55 -05:00
Toshio Kuratomi
49a6af1378 Test that file touch does not keep a new file if we failed to set its
attributes
2014-09-15 12:36:52 -07:00
James Cammarata
dc9482d548 Fix quoting issues in lineinfile for individual single-quotes
Fixes #8806
2014-09-11 16:27:48 -05:00
James Cammarata
503f7afbd8 Merge branch 'hfinucane-gh-7432' into devel 2014-09-11 12:53:46 -05:00
James Cammarata
178075489b Merge branch 'gh-7432' of https://github.com/hfinucane/ansible into hfinucane-gh-7432 2014-09-11 12:42:52 -05:00
Michael DeHaan
d6e6d2a6ca Remove regex related to baby-JSON parsing only. 2014-09-11 13:30:10 -04:00
Michael DeHaan
26cdddaebf Tracebacks are now catchable with ignore_errors and have streamlined output. Also removes 'baby-JSON' for bash modules. 2014-09-11 12:27:21 -04:00
James Laska
6cd55a5e95 Correct mysql integration indentation 2014-09-10 17:56:28 -04:00
James Laska
b7c7476359 Include el7 mariadb support in mysql integration test 2014-09-10 16:33:21 -04:00
James Cammarata
317ab06bc6 Fixing multiline parsing to preserve newlines
Fixes #8813
2014-09-10 15:14:46 -05:00
James Cammarata
a571fd4efe Convert boolean strings from set_fact to proper boolean values
Also adds integration tests for booleanification of strings

Fixes #8629
2014-09-10 09:56:39 -05:00