1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00
Commit graph

3413 commits

Author SHA1 Message Date
Ricardo Carrillo Cruz
66f90d1401 Add update_password always and update_password on_create tests to iosxr_user (#27230)
* Add idempotency test to delete aggregate of iosxr users

* Add update_password always and on_create asserts to iosxr_user
2017-07-24 14:13:51 +02:00
Ricardo Carrillo Cruz
4ad022b622 Add idempotency test to delete aggregate of iosxr users (#27228) 2017-07-24 13:50:34 +02:00
Ricardo Carrillo Cruz
2dc5066f83 Test idempotency after one iosxr user is created (#27227) 2017-07-24 13:44:52 +02:00
Ricardo Carrillo Cruz
ec323514ef Remove first all users tested on iosxr_user (#27226) 2017-07-24 13:16:59 +02:00
Ricardo Carrillo Cruz
e9a0411059 Assert username and secret is within first element of results (#27219) 2017-07-24 10:10:47 +02:00
Toshio Kuratomi
6a41a4f311 Expand the result from pwd to make the test more robust
Sometimes MacOSX's pwd doesn't return an expanded path.  Not sure why
but this test is still valid if we expand it via a playbook filter so
go ahead and do that.
2017-07-21 12:20:30 -07:00
David Newswanger
362f43c996 added mssing testcas variable (#27125) 2017-07-21 13:13:48 -06:00
Abhijeet Kasurde
ede82e2130 Implement vmware_argument_spec for required params (#25731)
Without the fix hostname, username and password params
used to skip required check.

Fixes #25696

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-21 12:12:43 -04:00
Jordan Borean
5c6e5d4841 win_domain_group: new module (#26682)
* win_domain_group: new module
2017-07-20 17:08:08 -07:00
Matt Clay
1c611a85ab Disable failing dpkg_selections test. 2017-07-20 14:56:16 -07:00
Matt Clay
5617d68c3e Disable failing apt test. 2017-07-20 14:10:09 -07:00
Toshio Kuratomi
f86ce0975d Add a directory walker to copy
* We need a directory walker that can handle symlinks, empty directories,
  and some other odd needs.  This commit contains a directory walker that
  can do all that.  The walker returns information about the files in the
  directories that we can then use to implement different strategies for
  copying the files to the remote machines.
* Add local_follow parameter to copy that follows local symlinks (follow
  is for remote symlinks)
* Refactor the copying of files out of run into its own method
* Add new integration tests for copy

Fixes #24949
Fixes #21513
2017-07-20 08:01:29 -07:00
Toshio Kuratomi
753a3a03d0 Revert "Fix for recursive copy slowness"
This reverts commit 78ced5318f.

The fix for copy slowness did not handle circular symlinks.
2017-07-20 08:01:29 -07:00
Pilou
556a1daa33 fix searched paths in DataLoader.path_dwim_relative (avoid AnsibleFileNotFound) (#26729)
* add unit test: nested dynamic includes

* nested dynamic includes: avoid AnsibleFileNotFound error

Error was:
Unable to retrieve file contents
Could not find or access 'include2.yml'

Before 8f758204cf, at the end of
'path_dwim_relative' method, the 'search' variable contained amongst
others paths:
'/tmp/roles/testrole/tasks/tasks/included.yml' and
'/tmp/roles/testrole/tasks/included.yml'.
The commit mentioned before removed the last one despite the method
docstrings specify 'with or without explicitly named dirname subdirs'.

* add integration test: nested includes
2017-07-20 10:26:13 -04:00
Ganesh Nalawade
5ab8d30d10 Add net_vrf implementation for junos (#27055)
*  junos_vrf implementation
*  junos_vrf integration test
*  net_vrf integration test for junos
2017-07-20 11:20:18 +05:30
David Newswanger
039706a239 When running all network tests at once, list the ones that failed at the end. (#27075)
* list failed tests for iosxr

* list failed tests for ovs

* list failed tests for junos

* list failed tests for ios

* list failed tests for eos

* list failed tests for nxos

* list failed tests for vyos
2017-07-20 12:17:07 +10:00
Jordan Borean
a260063ffd Added function to convert camelCase to snake_case for powershell (#26203)
* Added camel case to snake case converters

* removed uneeded shebang

* renamed util to remove PowerShell from the name
2017-07-19 16:57:05 -07:00
Will Thames
ef8c9798d3 include_role handlers bug fix (#26335)
* Ensure that include_role properly fires handlers

include_role needs to ensure that any handlers included
with the role are added to the _notified_handler and
_listening_handler lists of the TaskQueueManager, otherwise
it fails when trying to run the handler.

Additionally, the handler needs to be added to the
PlayIterator's `_uuid_cache` or it fails after running
the handler

Add more uuid debug statements - this code was hard
to debug with existing debug statements, so add more
uuid information at little additional output cost.

Fixes #18411

* Add tests for include_role handlers

Tests for #18411
2017-07-19 15:02:32 -05:00
Nathaniel Case
56a0b988a9 nxos integration fix part 1 (#27069)
* Assorted Python 3 fixes

* Fix `testcase` definition in integration tests

* Fix nxos_acl_interface

* clean up nxapi after nxos_nxapi
2017-07-19 14:00:05 -04:00
Andreas Olsson
593297d7a2 Only use git verify-tag when verifying annotated tags (#26414)
* Only use `git verify-tag` when verifying annotated tags

The command `git verify-tag` only applies to annotated tags. When
verifying lightweight tags, which are more similar to non-moving
branches, one has to use `git verify-commit` instead.

Using ':' as a separator is appropriate since that is one of the
characters not allowed in a Git reference name.

See also https://www.kernel.org/pub/software/scm/git/docs/git-check-ref-format.html

* Improve testing of the Git module's gpg verification
2017-07-19 11:30:12 -04:00
Abhijeet Kasurde
cf34cefbdc Add FindByUUID testcase for vmware_guest_facts (#27022)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-19 06:43:51 -04:00
Ganesh Nalawade
abb4361990 Add vyos_interface default description (#27029)
* Add default description string to vyos_interface

* If `state=up` it should remove the `disable` configuration
  for interface. However, if no other interface parameter is configured
  this ends up deleting the interface itself which is not the desired
  behaviour. Hence adding a default description field to avoid such
  scenario's.

* Minor changes

* Add default description to aggregate
2017-07-19 13:01:56 +05:30
Matt Davis
907b662dc6 Powershell module_utils loader and tests (#26932)
* supports custom module_utils loads (anything in module prefaced with `#Requires -Module Ansible.ModuleUtils.*`)
* supports all usual PluginLoader module_utils locations (built-in lib/ansible/module_utils/, custom path from config, playbook module_utils/, ~/.ansible/module_utils, role module_utils, etc), 
* moves Powershell module_utils from module_utils/powershell.ps1 to module_utils/powershell/Ansible.ModuleUtils.PowerShellLegacy.psm1
2017-07-18 20:44:01 -07:00
Dag Wieers
636f8737c9 win_unzip: Add integration tests, check-mode, various (#25335) 2017-07-19 09:54:57 +10:00
Matt Davis
9d3494eb87 add generated password to win_owner test user (#26826)
* previous test without a password failed on hosts that had strict password policy
2017-07-18 16:46:35 -07:00
Dag Wieers
1e8713a50a win_shortcut: Fail when command is not absolute path (#26533)
This PR ensures the user gets a proper error when the `src` is not an absolute path.

And some cosmetic cleanup, and improve integration tests.
2017-07-18 13:32:06 -07:00
Ganesh Nalawade
e0cf64d64c Fix idempotency issue in vyos_interface integration test (#26993) 2017-07-18 22:10:08 +05:30
Ganesh Nalawade
58dc6c7882 vyos_interface integration test fix (#26976) 2017-07-18 17:38:52 +02:00
Ricardo Carrillo Cruz
15eb0d463d Revert "Do not grep eos_command for filtering virtio (#26972)"
This reverts commit b742930253.
2017-07-18 17:14:28 +02:00
Ricardo Carrillo Cruz
b742930253 Do not grep eos_command for filtering virtio (#26972)
It seems piping doesn't work on eos_command, so just search
for string on entire stdout.
2017-07-18 17:02:56 +02:00
Ganesh Nalawade
33ac35c68d Fix vyos intergration test issue (#26947)
* Fix vyos intergration test issue

* Fix review comment
2017-07-18 14:34:14 +02:00
Ganesh Nalawade
b8cd646afd net_lldp_interface module implementation for junos (#26915)
*  junos_lldp_interface module implementation
*  junos_lldp_interface integration test
*  net_lldp_interface module intgration test for junos
*  Add lldp configuration parameter in junos_lldp
*  Modify junos_lldp testcase as per above change
*  Add net_lldp_interface module documentation
2017-07-18 12:14:10 +05:30
Ricardo Carrillo Cruz
4532c791fd Add missing provider on disable eapi tasks (#26928) 2017-07-18 00:55:56 +02:00
Ricardo Carrillo Cruz
258d2058cd Remove enable EAPI from prepare_eos_tests (#26910)
Enabling EAPI is not common on CLI *and* EAPI tests, therefore
enabling it should be put at the eapi.yaml task level.
2017-07-18 00:17:15 +02:00
Abhijeet Kasurde
e979663dfe Add testcase for vmware_guest_facts (#26873)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-17 13:34:43 -04:00
Ricardo Carrillo Cruz
d3fcb0d1de Disable eos_user eapi tests (#26895)
They are failing, so let's disable them and we investigate in other change
the fix.
We can revert this when fixed.
2017-07-17 14:34:36 +02:00
Ricardo Carrillo Cruz
bd24c4ce9d Use eos_config for eos_user tests teardown (#26893)
Purge is not idempotent, so let's fix it with other change.
For teardown, it's better to use eos_config/eos_command.
2017-07-17 14:28:03 +02:00
Ricardo Carrillo Cruz
baa9290d71 Replace network-admin for network-operator on eos_user collections test (#26891)
The 'admin' word was being masked by Ansible as potential cred.
Let's just use network-operator since we are just testing here
we can create users in aggregate.
2017-07-17 13:56:32 +02:00
Trishna Guha
e5c2e1b7be iosxr_logging implementation module (#26886)
* iosxr_logging implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* iosxr_logging integration test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-07-17 17:20:22 +05:30
Ricardo Carrillo Cruz
6a71d6fa2e Remove eapi include on eos_vlan as there are no eapi based tests (#26888) 2017-07-17 13:15:19 +02:00
Trishna Guha
c38bccb3c4 Add ios_logging implementation module (#26785)
* Add ios_logging implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* fix doc

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* integration test net_logging and ios_logging

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* modify the module code

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* modify the module code

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* change collection to aggregate

* fix buffer size logic

* fix pep8 issues
2017-07-17 12:45:53 +05:30
sramakr
b980a5c02a Use Boto3 for ec2_group Fixes #23507 (#25340)
* Use Boto3 for ec2_group

Currently boto doesn't support ipv6. To support ipv6 in ec2_group, we need boto3.
boto3 has significant API changes, which caused more re-factoring for ec2_group module.
Added additional integration test to test_ec2_group role.

* Follow the standard for boto3 ansible

Fixed imports. Use boto3 ansible exception with camel_dict_to_snake_dict.
Refactored the call to authorize/revoke  ingress and egress.

* Removed dependancy with module ipaddress

Added new parameter called cidr_ipv6 for specifying
ipv6 addresses inline with how boto3 handles ipv6 addresses.

* Updated integration test

* Added ipv6 integration test for ec2_group

* Set purge_rules to false for integration test

* Fixed import statements

Added example for ipv6.
Removed defining HAS_BOTO3 variable and import HAS_BOTO3 from ec2.
Cleaned up import statements.

* Fixed exception handling

* Add IAM permissions for ec2_group tests

Missing AuthorizeSecurityGroupEgress necessary for latest tests

* Wrapped botocore import in try/except block

Import just botocore to be more similar to other modules
2017-07-17 12:03:31 +10:00
Ganesh Nalawade
879acf378d junos implementation of net_lldp (#26872)
*  junos_lldp module
*  junos_lldp integration test
*  net_lldp integration test for junos
*  Other minor changes
2017-07-17 07:14:09 +05:30
Rene Moser
3c99315bdd cloudstack: cs_router: add integration tests 2017-07-16 11:46:10 +02:00
Robin Roth
2fc1df7870 Git test is no longer destructive
Fixed by #26458
2017-07-15 10:53:48 -07:00
Ganesh Nalawade
bf48364c72 junos implementation for net_l3_interface module (#26829)
* junos implementation for net_l3_interface module

*  junos_l3_interface implementation
*  junos_l3_interface integration test
*  net_l3_interface integration test for junos

* Fix module name typo
2017-07-15 12:38:44 +05:30
Matt Davis
5c8e19d630 re-enable win_chocolatey tests, add win_template to smoketest (#26835) 2017-07-14 17:34:29 -07:00
Matt Davis
32914cac3b tag subset of Windows module tests for smoketest
* once smoketest is implemented in CI, will run a much smaller set of Windows module integration tests for changes to module_utils or connection subsystems
2017-07-14 13:17:57 -07:00
Jordan Borean
8e05d7d962 win_secedit: Added module with tests/diff mode (#26332)
* win_secedit: Added module with tests/diff mode

* fixed up test issues

* Added missing return value

* change for win_secedit based on review

* updated win_security_policy examples for rename
2017-07-14 11:00:29 -07:00
Ricardo Carrillo Cruz
53295b2cbf Add timeout to EAPI eos_system tests (#26822)
Getting random failures, let's bump timeout in all of them
2017-07-14 19:57:36 +02:00
Dag Wieers
4a1864765b Windows: Path integration tests (#26490)
These integration tests were used for testing the exact behaviour of
Ansible for YAML-style syntax and key=value syntax.

This includes fixes to win_shortcut (as `src` can be a URL too)
2017-07-14 10:24:54 -07:00
Ricardo Carrillo Cruz
028ce1da15 Rmove EOS vlan EAPI tests (#26818)
These are not working locally, removing for now will put it in place
when issues are fixed.
2017-07-14 19:16:00 +02:00
Jordan Borean
eb1ed6567c win_regedit: rewrite to support edge cases and fix issues (#26468)
* win_regedit: rewrite to support edge cases and fix issues

* fix up byte handling of single bytes and minor doc fix

* removed unused method

* updated with requested changes
2017-07-14 09:28:49 -07:00
Ricardo Carrillo Cruz
080e9ee694 Add missing test_cases var to eos_vrf and eos_vlan (#26815) 2017-07-14 18:28:32 +02:00
Ricardo Carrillo Cruz
9d95ea0832 Bump EOS EAPI set hostname timeout param (#26810)
For some reason, it's taking longer as usual in CI, bumping it
makes the tests to pass on my manual testing.
2017-07-14 17:10:53 +02:00
Ricardo Carrillo Cruz
ca5439e1e2 Switch to save_when on EAPI tests as well (#26807)
save is deprecated.
2017-07-14 16:15:23 +02:00
Ganesh Nalawade
751ad7021c vyos implementation for net_interface module (#26799)
* vyos implementation for net_interface module

*  vyos_interface implementation module
*  vyos_interface integration test
*  net_interface integration test for vyos

* Change collection to aggregate
2017-07-14 19:39:21 +05:30
Abhijeet Kasurde
c10a59b745 Add testcase for vmware_vm_facts (#26342)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-14 10:03:45 -04:00
Abhijeet Kasurde
156b29b26b Fix for check_mode in archive (#26788)
Fix adds check_mode fix for archive module. Also,
adds unit tests for archive module

Fixes: #26750

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-14 09:06:17 -04:00
Lujeni
661791dcb7 Fix the editable condition into pip module (#19028) (#19688)
* Fix the editable condition into pip module (#19028)

* Add editable to tests

Default changed to False, so now editable: True is needed explicitly in
tests
2017-07-14 10:54:04 +01:00
Matt Clay
7bc85f9b44 Restore zypper tests. (#26784)
* Revert "Temporarily disable zypper tests due to timeouts."

This reverts commit 25f943e22f.

* Revert "Disable zypper_repository tests due to errors."

This reverts commit 5833197a19.
2017-07-14 00:18:32 -07:00
jctanner
245a4d30b9 vmware_guest: fix datastore selection on equal sized disks and add tests (#26774)
* Fix datastore selection on equal sized disks and add tests
2017-07-13 22:02:33 -04:00
Rene Moser
a4359d5818 cloudstack: cs_role: add integration tests 2017-07-14 00:51:35 +02:00
Ricardo Carrillo Cruz
af4dc6d0eb Add vyos_lldp and vyos_lldp_interface modules (#26753)
* Add vyos_lldp and vyos_lldp_interface modules

* Fix module docstring issue

* Fix bogus aggregate reference

* Add vyos_lldp integration tests

* Add vyos_lldp_interface integration tests

* Remove unused import for run_commands

* Add VyOS net_lldp integration tests

* Remove junos and netconf from net_lldp integration tests

* Add net_lldp_interface integration tests

* Correct CLI filtering tests for VyOS

* Fix pep8 issues

* Fix more pep8 issues
2017-07-13 20:58:18 +02:00
René Moser
7329a392ff cloudstack: cs_region: add integration tests (#26767) 2017-07-13 20:40:57 +02:00
Matt Clay
5833197a19 Disable zypper_repository tests due to errors. 2017-07-13 08:03:54 -07:00
Matt Davis
74cc99fa35 enable minimal test for win_chocolatey in shippable (#26731)
* until we can have a robust internal source for chocolatey (and/or PSScriptAnalyzer sanity tests), we want to at least make sure that the module is syntactially valid.
2017-07-12 18:38:34 -07:00
jctanner
df507ca9c4 vmware_guest: fixes for cache objects and datacenter association (#26719)
* vmware_guest: fixes for cache objects and datacenter association
* find_all_objs was only looking for datastores
* Clear the result if it's datacenter is not correct.
* Re-enable pyvmomi installation

Addresses #25011
Addresses #26511
2017-07-12 17:10:48 -04:00
Matt Clay
25f943e22f Temporarily disable zypper tests due to timeouts. 2017-07-12 12:40:37 -07:00
rahushen
74947168e3 Add nxos_command IT and generalize UT (#26617)
* Add nxos_command IT sanity

* generalize nxos_command UT for different NXOS platforms
2017-07-12 13:19:02 -04:00
Mike Wiebe
eae37ecf21 Add integration tests for nxos_acl_interface (#26616)
* Add integration tests for nxos_acl_interface
2017-07-12 13:09:27 -04:00
Ricardo Carrillo Cruz
6634f94323 First indentation of first task on prepare_eos_tests (#26706)
Hard to see what was going on :/
2017-07-12 17:01:59 +02:00
Ricardo Carrillo Cruz
e618221a0f Split Eth1 and Eth2 configs of prepare_eos_tests (#26704)
Previous single block wasn't working for Eth2, despite not erroring
out.
2017-07-12 16:50:13 +02:00
Ricardo Carrillo Cruz
efcdc68ad2 Set Ethernet2 to no switchport (#26703)
Missed this in earlier commit, otherwise eos_vrf tests fail.
2017-07-12 16:32:27 +02:00
Ricardo Carrillo Cruz
7ffa882f9d Fix provider indentation on prepare EOS ethernet pre step (#26694) 2017-07-12 13:09:10 +02:00
Ricardo Carrillo Cruz
59edc44166 Set no switchport on ethernet interfaces (#26693)
Otherwise this will silently make vrf tests to not work correctly.
2017-07-12 13:02:36 +02:00
Ricardo Carrillo Cruz
cb59e61253 Fix enable ethernes (#26692)
Missing lines param
2017-07-12 12:54:03 +02:00
Ricardo Carrillo Cruz
8df175fa90 Make sure the Ethernet interfaces are up before running EOS tests (#26691) 2017-07-12 12:45:18 +02:00
Trishna Guha
2f60f97ee3 vyos_logging implementation module (#26654)
* vyos_logging implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* vyos_logging integration test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-07-12 15:54:19 +05:30
Ricardo Carrillo Cruz
4ef47fe6c9 Switch eos_config save tests to use save_when (#26688)
Save seems broken, just use save_when since we are deprecating save.
2017-07-12 11:41:45 +02:00
Ricardo Carrillo Cruz
29347b7e80 Fix assert on eos_vrf integration test (#26686)
We need to check the session_name key is not in the dict, rather
than checking it has no value, otherwise the test fails.
2017-07-12 11:34:36 +02:00
Ricardo Carrillo Cruz
9f2d58f7b4 Fix eos_config config test (#26679)
We needed to re-register show-running config before doing the
idempotency test.
2017-07-12 10:38:25 +02:00
Ricardo Carrillo Cruz
4006b5d18f Replace Ethernet5 for Ethernet2 on eos integration tests (#26674)
In our CI, we only have 3 NICS: Management1, Ethernet1 and
Ethernet2.
2017-07-12 09:25:26 +02:00
Ricardo Carrillo Cruz
3f5736e14e Add vyos_l3_interface module (#26610)
* Add vyos_l3_interface module

* Add integration tests for vyos_l3_interface

* Add more corner cases in tests and fix multiple IPs logic
2017-07-12 08:40:26 +02:00
jctanner
10fc4417f7 vmware_guest: use the datacenter as a context for clone specs (#26511)
* Slight refactor on vmware_guest to fix path searching and vcsim compatibility.
* Clean up pep8 errors
* Fix more pep8 issues
* Add assertions
* Remove debug failure
* Update docsting for folder with examples
* Revise _get_vm_prop based on suggestions
* Implement folder walker to find a folder path
* More enhancements for datacenter->datacenter cloning
* Fix a few pep8 issues
* Remove useless check for subclass of None
* Fix a few suggestions
* Move serialize_spec to a util function
* Group exceptions together

Fixes #25011
2017-07-11 23:07:00 -04:00
Tomas Tomecek
5b898a7732 add connection plugin for buildah (#26170)
* add connection plugin for buildah

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>

* fixup

 * create a method to invoke buildah
 * mount container filesystem persistently so we can access it
   during put and fetch
 * use copyfile function for copying files

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>

* revert tests

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>

* fixup

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>

* progress

(this will be squashed into a single commit before merge)

 * add docs for the conn plugin
 * fix issue invoking the integration tests
 * add a way to invoke commands inside the container as a different user

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>

* fix shellcheck warning

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>
2017-07-11 22:36:25 -04:00
Dag Wieers
e1e79b7a74 wakeonlan: Improve module coverage (#26655)
Trying to get this to 100% !
2017-07-11 16:22:53 -07:00
Rene Moser
64643c4e7d cloudstack: cs_iso: add cross_zone param 2017-07-12 00:49:37 +02:00
Rene Moser
31d530d6af cloudstack: cs_iso: add display_text param 2017-07-12 00:49:37 +02:00
Rene Moser
3dc379c89d cloudstack: cs_iso: add update support, fixes pep8 2017-07-12 00:49:37 +02:00
Ricardo Carrillo Cruz
b81209c187 Fix multiple EOS EAPI code and test issues (#26651) 2017-07-11 19:28:33 +02:00
Ricardo Carrillo Cruz
9f02bb02bf Add missing test_items variable to eos_banner target role (#26645) 2017-07-11 16:25:46 +02:00
Ganesh Nalawade
be89ef3eb6 junos_linkagg implementation and junos modules refactor (#26587)
* junos_linkagg implementation and junos modules refactor

*  junos_linkagg implementation
*  junos_linkagg integration test
*  net_linkagg integration test for junos
*  decouple `load_config` and `commit` operations,
   to allow single commit (in case on confirm commit) and
   to perform batch commit (multiple `load_config` followed by single
   `commit`)
*  Other related refactor

* Fix CI issues

* Fix unit test failure
2017-07-11 09:52:53 +05:30
Matt Clay
779306cfed Disable skipped tests for remote platforms. (#26624) 2017-07-10 15:59:25 -04:00
Matt Davis
961af6d9e2 disable new win_get_url test
* invalid drive letter breaks new Powershell path validation (this is a separate issue that needs to be solved)
* test also exposes a minor bug in win_get_url where a nonexistent directory in the root of a drive that exists passes the "does the parent dir exist" check and causes DownloadFile to bomb (this should be fixed by dag's rewrite of win_get_url in https://github.com/ansible/ansible/pull/26612)
2017-07-10 11:51:46 -07:00
Matt Clay
9604a71568 Fix postgresql test on RHEL. 2017-07-10 10:02:27 -07:00
John R Barker
738fb51c84 Add defaults for eos_system (#26593) 2017-07-10 14:00:43 +01:00
Trishna Guha
b81882e2a8 vyos_static_route implementation module (#26426)
* vyos_static_route implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Add vyos_static_route implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* unit test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* modify vyos_static_route

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* integration test vyos_static and net_static_route

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* fix typo integration test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* modify vyos_static_route

* modify integration test

* vyos_static_route doc build fix

* fix integration test data

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* update net_static_route cli test set

* minor fix
2017-07-10 16:34:56 +05:30
Josh Moore
d5ae6cc585 postgres_db: add dump and restore support (#20627)
* Feature #2731: added postgres import and dump

* Feature #2731: be more permissive of arguments

```
hacking/test-module -m ./ppostgresql_db.py -a "db=example state=dump target=/tmp/out"`
```

failed previously since host, user, and port were required as keywords
in the pg_dump / pg_import methods.

* Feature #2731: fixed doc string for validate-modules

```
$ ansible-validate-modules database/postgresql/
```

now passes.

* Feature #2731: disable 'password' for dump/restore

* Feature #2731: bump added version to 2.3

* Feature #2731: replace db_import with db_restore

* Feature #2731: add missing version description

* Feature #2731: fix 'state' description

* Feature #2731: fix pep8 issues

* Feature #2731: put state documentation in a single string

* Bump added version from 2.3 to 2.4

* Fix pep8 and pylint errors

* Attempt yaml formatting of documentation string

* Add integration tests for postgres_db:dump/restore

* Update dump/restore logic to support new kw-args

Also attempt to support password; integration tests are
still failing.

* Revert to postgres user for dump/restore

Passing PGPASSWORD is not working for subprocesses. For the
moment, reverting to the strategy of failing if login_password
is set and using `postgres` for all testing of dump/restore.

* Various cleanups to have tests passing

* Working tests for {sql,tar} x {,bz2,gz,xz}

* Use pg_user to support FreeBSD

* Revert login_ prefixes and re-enable password support

All `login_` keywords are mapped to their non-prefix versions
so the previous changes were effectively using `postgres` for
all actions. With the proper keywords, PGPASSWORD-passing to
the subprocess is now working.

* Optionally add password

environ_update doesn't handle None values in the
dictionary to be added to the environment. Adding
check.

* Quick fixes

* Refactor login arguments after fixes from pchauncey

The fixes introduced by pchaunchy pointed to further issues
(like no --dbname on PG<=9.2) with the login parameters. This
refactors them and adds further tests.

Note: this will still not pass integration tests due to a further
      issue with pg_dump as a non-admin user:

      pg_restore: [archiver (db)] Error while PROCESSING TOC:
      pg_restore: [archiver (db)] Error from TOC entry 1925; 0 0 COMMENT EXTENSION plpgsql
      pg_restore: [archiver (db)] could not execute query: ERROR:  must be owner of extension plpgsql

* Introduce target_opts for passing limiting dumped/restored schemas

The current integration tests (PG version and template DBs) don't
permit a regular user (`{{ db_user1 }}`) access to plpgsql causing
restores to fail. By adding an option for passing arbitrary args to
pg_dump and pg_restore, testing is made easier. This also paves the
way for `-j` usage, once the PG version is bumped.
2017-07-10 08:05:42 +01:00
jhawkesworth
deae1499ed win_get_url improvements; allow dir for dest and helpful error if dest parent dir doesn't exist (#25453)
* win_get_url now allows dir for destination and gives helpful message if download parent dir does not exist

* fix yaml lint failure
2017-07-10 14:30:55 +10:00
Andrew Saraceni
7d3951d065 win_scheduled_task: Add enhanced run option support (#24174)
* add enhanced run option support for win_scheduled_task

* changed run_level option to runlevel

* correct merge conflicts since task path fix

* changed run_level option to runlevel

* changed do_not_store_password to store_password, and other minor fixes

* conditional logic swap, and documentation change for password
2017-07-10 14:18:17 +10:00
Dag Wieers
52c1a1936d win_wakeonlan: New module to send Wake-On-Lan packets (#26232)
This is the Windows implementation of the **wakeonlan** module.
Useful if you want to wake up systems in a remote network with only
Windows systems.
2017-07-10 07:15:22 +10:00
Matt Clay
941a32a632 Install passlib before starting lookups test. 2017-07-07 16:17:08 -07:00
Matt Clay
f5edc840e2 Update docker_secret test for RHEL 7.3 on AWS. 2017-07-07 15:05:34 -07:00
Matt Clay
3cfbc17dc6 Fix yum installroot test releasever lookup.
With this change the tests will pass on a RHEL 7.3 AMI.
2017-07-07 14:12:44 -07:00
Andrea Tartaglia
0d48732e7e Integration tests requirements (#26545)
* Removed pexpect and jmespath requirement, install it in task directly
* Removed passlib dependency
2017-07-07 14:11:53 -07:00
Michael De La Rue
3c4db1e8dd Mdd psql user aws fix (#23988)
* postgresql_user module - transaction logic hacks to allow recovery from failed select

* postgresql_user - PEP8 and style fixes to make debugging easier

* postgresql_user - move password changing logic to separate function

* postgresql_user - trap failure in case where there is no access to pg_authid

* postgresql_user - further PEP8 fixes

* postgresql_user - Simplify password change logic and improve imports according to suggestions from PR review

* postgresql_user - Eliminate pep8/blank line errors introduced in merge

* Check behaviour when pg_authid relation isn't readable

TASK [postgresql : Normal user isn't allowed to access pg_authid relation:
      password comparison will fail, password will be updated] ***
An exception occurred during task execution. To see the full traceback,
use -vvv. The error was: psycopg2.ProgrammingError: permission denied
for relation pg_authid

* Don't reintroduce passlib, remove useless query
2017-07-07 09:28:31 -07:00
Rene Moser
89be01f2a2 cloudstack: cs_instance_nic: add integration tests 2017-07-07 16:50:57 +02:00
Dag Wieers
f8982dcbd0 wakeonlan: Add integration tests and improvements (#26254)
This PR includes:
- Checkmode improvements
- Integration tests
- A fix for python3
- PEP8 fixes

This backports improvements from the win_wakeonlan module.
2017-07-07 10:52:02 +01:00
Ricardo Carrillo Cruz
9a9b1db62b Enable vyos_linkagg integration tests and test with 3 NICs (#26519) 2017-07-07 10:40:18 +02:00
Ganesh Nalawade
ba60ac04fc Implementation of junos_static_route module (#26501)
* Implementation of junos_static_route module

*  junos implementation of net_static_route
*  integration test for junos_static_route
*  integration test for junos net_static_route

* Minor change

* Doc change

* Fix CI issue
2017-07-07 13:25:14 +05:30
René Moser
63f4aa3069 cloudstack: cs_host: add state maintenance (#26502) 2017-07-07 08:33:26 +02:00
Matt Clay
9e98140e2e Fix docker ce install for opensuse. (#26498)
* Fix docker ce install for opensuse.
* Revert "Temporarily disable docker_secret tests."
2017-07-06 13:26:43 -07:00
Matt Clay
97731a7d1b Temporarily disable docker_secret tests.
Will be re-enabled once opensuse tests are fixed.
2017-07-06 12:30:06 -07:00
Ganesh Nalawade
10233ef3b5 junos_user declarative module changes (#26475)
* junos_user declarative module changes

*  Active/Deactivate support
*  junos_user integration test
*  net_user intergration test for junos

* Add version_added for active param
2017-07-06 21:57:12 +05:30
Chris Houseknecht
6af53cf0ef Adds docker_secret module (#26469) 2017-07-06 09:22:04 -04:00
Ricardo Carrillo Cruz
c6c5c6cf81 Add VyOS integration tests for net_linkagg (#26478) 2017-07-06 11:25:15 +02:00
Ricardo Carrillo Cruz
c73275b4b8 Add vyos_linkagg module (#26418)
* Add vyos_linkagg module

* Add vyos_linkagg integration tests

* Fix pep8 issue

* Address several review comments
2017-07-06 10:07:48 +02:00
Matt Clay
c26a556929 Add check for known_hosts changing during tests. (#26470)
* Add check for known_hosts changing during tests.
* Don't use known hosts file for delegate_to test.
2017-07-06 00:47:28 -07:00
Matt Clay
2401fb5b92 Fix expect timeout test. (#26473) 2017-07-05 21:47:06 -07:00
Matt Clay
895e6c5d06 Fix wait_for with newer versions of psutil. (#26455)
* Add support for newer psutil versions.
* Fix psutil install in wait_for integration test.
* Fix test requirements for wait_for elapsed.
2017-07-05 19:00:13 -07:00
Brian Coca
2a041d10d2 better backwards compat handling of status
restored 'rc' inspection but only when failed is not specified
removed redundant changed from basic.py as task_executor already adds
removed redundant filters, they are tests
added aliases to tests removed from filters
fixed test to new rc handling
2017-07-05 21:44:00 -04:00
Matt Clay
cbb5d1e5d5 Update git test to not rm ~/.ssh/known_hosts. 2017-07-05 16:05:28 -07:00
Matt Clay
ef7f56c6e4 Revert "enabled vyos banner and config (#26438)"
This reverts commit b9b5183644.

Reverting this due to instability in vyos tests.
2017-07-05 14:37:19 -07:00
Matt Clay
e4096cc97a Use bc instead of sharutils in yum tests.
This allows the tests to pass on a stock RHEL 7.3 AMI.
2017-07-05 14:01:39 -07:00
David Newswanger
b9b5183644 enabled vyos banner and config (#26438) 2017-07-05 18:33:35 +01:00
Matt Davis
08af853ee9 fix win_shell/win_command nonzero RC failure setting (#26443)
* as a result of recent core engine changes to ignore rc, modules are responsible to set `failed` on nonzero RC if they want that behavior
* the `failed` filter currently triggers on nonzero RC, which caused the tests to false-pass
* updated tests to explicitly check both rc and failed keys, as well as using the failed filter.
2017-07-05 10:05:07 -07:00
Yanis Guenane
05477412ba Enforce the _raw_params variable with include_role (#26430)
Currently, when using this test, it fails with the following error
message:

> AttributeError: 'NoneType' object has no attribute 'rfind'

This is because there is no _raw_params value for parent_include.args
here
https://github.com/ansible/ansible/blob/devel/lib/ansible/playbook/included_file.py#L104

This commit ensure the value is specified so it can be reused and hence
not fail at this specific line.
2017-07-05 15:53:10 +01:00
Jordan Borean
8e9d04043a win_regedit: fix for same dword value (#26415) 2017-07-05 08:17:49 +10:00
John R Barker
50f2313b47 Continue running network tests after failure (#26407)
Previously tests would stop running on the first failure.
With this PR we move onto running the tests for the next module. This
allows DCI runs to have a fuller picture of what's broken.

This only effects manual and DCI runs, it doesn't effect Shippable runs
as this the modules are tested directly.
2017-07-04 18:18:02 +01:00
Rene Moser
c92170e90d cloudstack: cs_instance: extent integration tests for ssh key handling 2017-07-04 15:58:21 +02:00
Trishna Guha
ad3fe08aae fix vyos_banner multiline string issue (#26383)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-07-04 14:31:18 +05:30
Matt Davis
0ee46cb0df converted become runas to explicit CreateProcessWithLogonW (#26378)
* fixes become_method: runas for unprivileged users
* sets permissions on tempdir appropriately
* allows automatic system environment generation for new token (old Process.Start way prevents this)
* add basic become runas tests
2017-07-03 17:46:27 -07:00
Brian Coca
8f758204cf correct, cleanup & simplify dwim stack (#25956)
* correct, cleanup & simplify dwim stack

latlh chIS logh HeS qar wej chel laD
better errors
update find_file to new exception

* addressed latest comments

* test should not use realpath as it follows symlink

this fails when on OS X as /var is now a symlink to /private/var
but first_found was not supposed to follow symlinks
2017-07-03 15:27:53 -04:00
Ganesh Nalawade
11e72d495d Add net_logging platform agnostic module and junos implementation (#26316)
* Add net_logging platform agnostic module and junos implemenatation

*  net_logging platform agnostic module
*  junos implemenatation of logging module
*  net_logging integration test
*  junos_logging integration test
2017-07-03 15:31:59 +05:30
Abhijeet Kasurde
5c374cd1ae Add Test Suite for vmware_vswitch (#26076)
Fix adds test suite for vwmare_switch

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-06-30 10:18:20 -04:00
Abhijeet Kasurde
69e55b2cfe Add testsuite for VMware Distributed vSwitch (#26193)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-06-30 10:16:48 -04:00
Abhijeet Kasurde
28fcfcdbef Add testsuite for vmware cluster (#26281)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-06-30 10:15:58 -04:00
Trishna Guha
93bbcd8a32 vyos_user fix idempotent (#26289)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-06-30 19:44:08 +05:30
Matt Clay
17c1bb6f08 Remove legacy integration test make targets. (#26255)
* Remove legacy integration test make targets.
* Remove incorrect role path from cloudscale test.
2017-06-29 12:34:54 -07:00
Mike Wiebe
240de965ee Fix nxos_acl module and add IT tests (#25966)
* Fix nxos_acl module and add IT tests

* Add nxos_acl test

* Add additional properties to test
2017-06-29 14:55:08 -04:00
David Newswanger
9500aac5b9 added integration tests for dpkg_selections (#26043) 2017-06-29 15:53:42 +01:00
Ricardo Carrillo Cruz
8a1cd05fdc Assert vyos_user commands output against first element of array (#26233) 2017-06-29 13:51:13 +02:00
Ricardo Carrillo Cruz
c8ba8bdd6d Add ios_static_route module (#25527)
* Add ios_static_route module

* Add ios_static_route integration tests

* Add platform agnostic integration tests for IOS

* Replace unicode function to ansible module_utils to_text

* Add collections handling logic

* Add integration tests for collections

* Make collections and prefix mutually exclusive

* Add net_static_route integration tests for collections

* Do not store load_config return value, as it returns nothing
2017-06-29 12:05:20 +02:00
David Newswanger
5242ff1b59 added integration tests for rpm_key (#26134) 2017-06-29 09:46:42 +01:00
Ganesh Nalawade
911a7e085e Add active param to junos declarative modules (#26222)
*  active/deactivate configuration capability
*  integration test refactor
2017-06-29 10:18:35 +05:30
Trishna Guha
15e78d1073 fix iosxr_user integration test (#26220)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-06-29 09:20:12 +05:30
Jordan Borean
98fc54f02d win_find: fix for empty nested directories (#26164) 2017-06-29 07:06:10 +10:00
Dag Wieers
0a15ab7ce9 win_say: Fix issue, add integration tests (#26089)
* win_say: Fix issue, add integration test

This PR includes:
- Make speed_speech an integer parameter
- Test for empty parameters too
- Add integration tests

* Improve the $speech_speed parameter handling

As requested
2017-06-29 06:28:44 +10:00
David Moreau-Simard
9fdd07fba8 Provide the list of files that were included by include_vars
include_vars will now also return a key 'ansible_included_var_files'
which contains the list of files that were successfully loaded.
This is useful information and, amongst other things, a way for users
to know exactly what files were included when debugging their
playbooks.
This also allows us to improve the integration tests around
include_vars.
2017-06-28 15:25:45 -04:00
Dag Wieers
5be32aa5af Move ping and win_ping closer together (#26028)
So in an effort to verify if Windows modules are feature complete
compared to the python equivalent, I stumbled upon these differences.

This PR includes:
- Add missing 'data' option from documentation
- Simplify ping module
- Update integration tests to test exception
2017-06-28 11:08:04 -07:00
Trishna Guha
be11d12fa2 fix vyos_user integration test assert (#26185)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-06-28 16:17:03 +01:00
George Nikolopoulos
11836a0296 Add module netscaler_cs_action (#26147) 2017-06-28 19:16:46 +05:30
Trishna Guha
9a88c157ec add vyos, openvswitch to network-all playbook (#26167)
* add vyos to network-all playbook

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Add opensvwitch to network-all

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-06-28 13:27:55 +05:30
Dag Wieers
bb7ebc6a55 win_msg: Added integration tests, parameter fixes (#26126) 2017-06-28 10:35:38 +10:00
George Nikolopoulos
6bed831f8c Add netscaler_server module (#25537) 2017-06-27 23:08:00 +05:30
Abhijeet Kasurde
96dcd1060c Add testsuite for vmware_datacenter (#26133)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-06-27 13:19:17 -04:00
Abhijeet Kasurde
79b2897462 Update vmware_guest_find module (#26066)
Fix updated following:
* Update Documentation
* Update Examples
* Find VM's folder using VM's UUID
* Make name as optional parameter

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-06-27 11:58:57 -04:00
Ricardo Carrillo Cruz
9f7fcf15be Add missing quote on limit_to vyos includes (#26139) 2017-06-27 16:01:54 +02:00
Toshio Kuratomi
e238ae999b Cyptography pr 20566 rebase (#25560)
Make pyca/cryptography the preferred backend for cryptographic needs (mainly vault) falling back to pycrypto

pyca/cryptography is already implicitly a dependency in many cases
through paramiko (2.0+) as well as the new openssl_publickey module,
which requires pyOpenSSL 16.0+. Additionally, pyca/cryptography is
an optional dep for better performance with vault already.

This commit leverages cryptography's padding, constant time comparisons,
and CBC/CTR modes to reduce the amount of code ansible needs to
maintain.

* Handle wrong password given for VaultAES format

* Do not display deprecation warning for cryptography on python-2.6

* Namespace all of the pycrypto imports and always import them

  Makes unittests better and the code less likely to get stupid mistakes
  (like using HMAC from cryptogrpahy when the one from pycrypto is needed)

* Add back in atfork since we need pycrypto to reinitialize its RNG just in case we're being used with old paramiko

* contrib/inventory/gce: Remove spurious require on pycrypto

(cherry picked from commit 9e16b9db275263b3ea8d1b124966fdebfc9ab271)

* Add cryptography to ec2_win_password module requirements
  * Fix python3 bug which would pass text strings to a function which
    requires byte strings.

* Attempt to add pycrypto version to setup deps

* Change hacking README for dual pycrypto/cryptography

* update dependencies for various CI scripts

* additional CI dockerfile/script updates

* add paramiko to the windows and sanity requirement set

  This is needed because ansible lists it as a requirement. Previously
  the missing dep wasn't enforced, but cryptography imports pkg_resources
  so you can't ignore a requirement any more

* Add integration test cases for old vault and for wrong passwords

* helper script for manual testing of pycrypto/cryptography

* Skip the pycrypto tests so that users without it installed can still run the unittests

* Run unittests for vault with both cryptography and pycrypto backend
2017-06-27 06:00:15 -07:00
Matt Davis
36ad934156 re-enable non-pipelined mode for Powershell (#25012)
* fixes #23986
* fixes 3rd-party Windows connection plugins that don't support pipelining (eg awsrun)
2017-06-26 22:58:09 -07:00
Jordan Borean
b41c42cf0d win_share: Add integration tests and various fixes (#25691)
* win_share: Add integration tests and various fixes

* docs and comments updates based on PR review

* fixed up documentation issue with URL
2017-06-27 12:07:22 +10:00
Daniele Lazzari
9d932b64f0 New module: Add module to install/remove/register/unregiser windows powershell modules (windows/win_psmodule) (#23604)
* Add new windows module win_psmodule

* Add checkmode, allow_clobber parameter, integration tests

* Add aliases, replace win_raw with win_shell

* restore original test_win_group1.yml, add powershel version test

* fix var type

* add conditional on assert

* integration tests conditional tasks review

* documentation fix, test fix, adds result.change

* fix yml

* fix railing whitespace

* add nuget_changed and repository_changed in result
2017-06-26 23:01:38 +02:00
Andreas Olsson
05dc76f3b2 In the git module let ssh do its own host checking
There are too many possible special cases for Ansible to be able to
precheck known_hosts files without introducing all kinds of false
failures.

* Alternative known_hosts paths
* Alternative host name aliases
* ssh host certificates
* SSHFP + DNSSEC

Fixes #24860
2017-06-26 10:45:19 -07:00
George Nikolopoulos
0bf64aa241 Add netscaler_save_config module (#25614) 2017-06-26 18:46:52 +05:30
mihu
6b76bc924f [cloud] New feature for ec2_group: allow deleting groups by id (#26022) 2017-06-26 09:07:29 -04:00
Rene Moser
3fe5de907f cloudstack: cs_host: add integration tests 2017-06-26 14:40:09 +02:00
Matt Clay
15beaed6bc Update FreeBSD pg test to use postgresql95-server.
The py-psycopg2 package now requires postgresql95-server instead of
postgresql93-server. Installing py-psycopg2 will automatically remove
postgresql93-server if it is installed, breaking integration tests.
2017-06-25 12:10:27 -07:00
Matt Clay
b82cc8e7cc Fix network integration test config. (#26057)
* Remove unsupported network tests from CI.
* Add `net` to list of network target prefixes.
2017-06-23 17:02:59 -07:00
Trishna Guha
66f9e23e43 vyos net_system implementation (#25994)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-06-23 20:08:12 +05:30
jctanner
996dcb989c Add the cloud provider script for the vcenter simulator container (#25964) 2017-06-22 10:49:58 -07:00
Ganesh Nalawade
b2f46753ec Add junos_system declartive module and other related change (#25859)
* Add junos_system declartive module and other related change

*  junos_system declartive module
*  integration test for junos_system
*  integration test for net_system (junos platform)
*  pep8 fixes for junos modules
*  move to lxml from elementree for xml parsing as it support
   complete set of xpath api's
*  other minor changes

* Fix CI and doc changes

* Fix unit test failures

* Fix typo in import

* Fix import issue for py2.6

* Add missed Element in import
2017-06-22 09:34:50 +05:30
Trishna Guha
947e9aba45 Add vyos_banner implementation module (#25862)
* Add vyos_banner implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* vyos_banne integration test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* vyos_banner unit test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* minor fix on banner text

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-06-20 08:53:03 +05:30
Steffen Neubauer
759750e661 Consul: make service_port optional in service definition, like specified in Consul docs (#21737)
* Consul: make service_port optional in service definition, Fixes #21727

* Remove consul module from legacy-files.txt

* consul: Pep8 fixes
2017-06-19 19:29:40 +01:00
Jordan Borean
6d01168238 win_acl_inheritance: Added tests and formatting improvements (#25382) 2017-06-19 17:47:35 +01:00
Jordan Borean
c05d3c3821 win_owner: added tests and fixed up bool handling (#25088)
* win_owner: added tests and fixed up bool handling

* explicitly gathering facts in test

* Removed manualy entry in test group
2017-06-19 17:43:44 +01:00
Dag Wieers
0aba04fdad win_uri: Add integration tests, new functionality... (#25373)
This is a cleanup of the win_uri module to make it feature-complete.

This PR includes:
- Added check-mode support
- Add as many options from the uri module as possible
  - Added creates
  - Added follow_redirects
  - Added maximum_redirection
  - Added password
  - Added removes
  - Added return_content
  - Added status_code
  - Added timeout
  - Added user
  - Added validate_certs
- Fixed list-handling for comma-separated strings
- Added basic integration tests (should come from uri module)
2017-06-19 17:30:08 +01:00
David Newswanger
ca16956337 added integration tests for apt upgrade (#25670)
* added integration tests for apt upgrade

changed version number for hello to 2.6 so that it works with Ubuntu 12.04

prevent tests from checking if aptitude is installed on non ubuntu systems

changed ordering on when statements for safe and full upgrade types so that the OS check happens before the aptitude check

added integration tests for apt upgrade

changed version number for hello to 2.6 so that it works with Ubuntu 12.04

* Moved additions to tasks/main.yml to make revisions easier. Changed tasks to multiline format
2017-06-19 13:57:26 +01:00
David Newswanger
1bc5761bea added integration tests for yum repository (#25671)
* added integration tests for yum repository

* fixed escaped single quote

* extended yum_repository tests to include fedora

* removed unused variable file

* added check for return values

* replaced escaped double quotes with single quotes, switched to lookup for reading repofile
2017-06-19 08:47:17 +01:00
Abhijeet Kasurde
7348a613bb Correct usage of fail_json in hg module (#25847)
Fix adds correct usage for fail_json and also adds
testcases to verify this.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-06-18 22:28:33 +02:00
Ganesh Nalawade
450263e934 Add junos_banner declartive module (#25826)
* Add junos_banner declartive module

*  junos_banner implementation
*  Integration test for junos_banner
*  Integration test for net_banner (junos)
*  Minor fixes

* Minor doc change
2017-06-18 01:32:48 +05:30
John R Barker
448efdb9e5 MySQL Password updates (#25825)
* MySQL Password updates

* Disable user_password_update_test
2017-06-17 21:46:19 +05:30
John R Barker
7ee7fa7332 Use stronger password for MySQL (#25821)
Previously we were getting "Your password does not satisfy the current policy requirements"
Possibly caused by a software update on Fedora
2017-06-17 12:53:30 +01:00
Ganesh Nalawade
2ff464c949 Add net_interface declarative module (#25766)
* Add net_interface declartive module

*  Add net_interface module
*  Add junos_interface implementation module
*  Other minor changes

* Add integration test

*  Integration test for net_interface
*  Integration test for junos_interface

* Fix CI failures

* Documentation changes
2017-06-16 22:12:50 +05:30
Ben Berry
1267567556 Check sysctl no name (#25041)
* add integration tests for no name on sysctl

* better error validation, add test for no value
2017-06-16 11:22:20 +01:00
Trishna Guha
41f6f8f410 Idempotent behaviour in ios_user integration test (#25774)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-06-16 11:58:06 +05:30
Trishna Guha
98269888a9 iosxr_banner Implementation module (#25744)
* Add iosxr_banner implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Integration test for iosxr_banner

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Unit test for iosxr_banner

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* remove blank line pep8

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-06-16 11:56:47 +05:30
Trishna Guha
44687bb917 Add iosxr_user implementation module (#25615)
* Add iosxr_user implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* iosxr_user Integration test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* iosxr_user Unit test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Modify integration test with idempotent case

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-06-15 22:07:03 +05:30
Trishna Guha
b3c22a96bd Add vyos_user implementation module (#25677)
* Add vyos_user implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Integration test for vyos_user

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Make state absent work

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Unit test for vyos_user

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Standardize user names

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Modify integration test with idempotent case

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Add role as alias to level

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-06-15 22:06:18 +05:30
Trishna Guha
9c6ee8d0bb Add nxos_banner implementation module (#25695)
* Add nxos_banner implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* nxos_banner integration test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* nxos_banner unit test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* doc update

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-06-15 22:05:38 +05:30
Dag Wieers
1c9a570ffe win_timezone: Add diff support, integration tests (#25284)
* win_timezone: Add diff support, integration tests

This PR includes:

- Diff support
- Returns both previous_timezone and timezone
- Adds integration tests
- More examples
- Improved documentation

* Merged the changes from jborean93's PR
2017-06-14 17:34:46 +01:00
Jordan Borean
d3352c5b49 win_tempfile: Added integration tests (#25069)
* win_tempfile: Added integration tests

* fixed up tests
2017-06-14 17:17:22 +01:00
Ganesh Nalawade
b69c7f50d0 Add junos_vlan platform agnostic module (#25652)
* Add junos_vlan platform agnostic module

*  junos_vlan implementation

*  integration test for junos_vlan

* Minor fixes

* Fix Integration test failure
2017-06-14 14:23:52 +05:30
Andrew Saraceni
91e995d691 Allow win_scheduled_task to support adding and removing task paths (#24025)
* allows win_scheduled_task to support adding and removing task paths

* fix line length for documentation

* added integration tests for path creation and removal

* removing ability to remove TaskPath if a task isn't removed.  also removed superfluous line of code in Invoke-TaskPathCheck function
2017-06-14 08:02:36 +01:00
Dag Wieers
bf43eb92f5 win_firewall: check-mode support, integration tests (#25127)
* win_firewall: check-mode support, integration tests

This PR includes:
- Check-mode implementation
- Documentation improvements
- Ensure module output is consistent (no matter what profiles are provided)
- Fixed indentation
- Cosmetic changes
- Integration tests

* win_firewall: check-mode support, integration tests

This PR includes:
- Check-mode implementation
- Documentation improvements
- Ensure module output is consistent (no matter what profiles are provided)
- Fixed indentation
- Cosmetic changes
- Integration tests
2017-06-13 17:32:22 +01:00
Ganesh Nalawade
343a709800 Fix platform agnostic net_user integration test fail (#25649)
* Fix platform agnostic net_user integration test fail

* Fix minor issue in eos integration test
2017-06-13 18:12:42 +05:30
Sloane Hertel
3f0c47196e [cloud] s3: deleting a nonexistent bucket should not give a traceback Fixes #25445 (#25487)
* trying to delete a nonexistent bucket should not fail

* Improve error handling for deleting s3 bucket

* Allow successful deletion

* Add test for deleting a nonexistent bucket

rename integration test target from s3 to aws_s3
2017-06-12 13:52:25 -04:00
Ricardo Carrillo Cruz
9725e056bc Add missing register on openvswitch_db integration tests (#25609) 2017-06-12 17:48:59 +02:00
Ricardo Carrillo Cruz
0dbea4575c Add assertions to openvswitch_db integration test (#25600)
* Add missing delegate_to on openvswitch_db integration test runner

* Add assertions to openvswitch_db integration test
2017-06-12 17:41:10 +02:00
Ricardo Carrillo Cruz
081e138cf1 Add missing delegate_to on openvswitch_db integration test runner (#25597) 2017-06-12 13:36:51 +02:00
Ricardo Carrillo Cruz
c296fcb0e0 [WIP] Add openvswitch_db integration tests (#23803)
* WIP Add openvswitch_db integration tests

* Add  ovs.yaml playbook entrypoint for OVS

* Add test case pattern filtering

* Clear out aliases for now

Running tests on posix group just fails, containers do not have ovs
2017-06-12 13:13:41 +02:00
Abhijeet Kasurde
b89cb95609 Fix spelling mistakes (comments only) (#25564)
Original Author : klemens <ka7@github.com>

Taking over previous PR as per
https://github.com/ansible/ansible/pull/23644#issuecomment-307334525

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-06-12 07:55:19 +01:00
Pilou
460d932aa8 postgresql_user: fix bugs related to 'expires' option (#23862)
* Factorize tests related to no_password_change using an include task

* Refactor: deduplicate tasks

* postgresql_user: test 'expires' parameter

* Change 'valid until' even it's the only updated field

* value is changed when another value is provided

* value isn't returned when unset

* Remove unused variable

* psycopg2.extras.DictRow is able to handle comparison

* postgresql_user: simplify helper method

* postgresql_user: define variable just before using it

* Fix comparison between user input and applied configuration

* new test: adding an invalid attribute

* Refactor, add cleaning task

* Check that using same attribute a 2nd time does nothing

* Always try to remove created user

* postgresql_user: fix pep8
2017-06-11 14:48:39 -07:00
René Moser
0a972ea6bf wait_for: add some integration tests (#25553) 2017-06-09 21:35:10 +02:00
René Moser
29817ab115 cloudstack: add tests, fix pep8 (#25518)
* cloudstack: cs_zone: fix pep8

* cloudstack: cs_zone: add tests
2017-06-09 18:48:53 +02:00
Ricardo Carrillo Cruz
72e65e4290 Platform agnostic module for VRFs (#25383)
* WIP VRF platform agnostic module

* Fixed examples refering vlans instead of vrfs

* Add integration tests
2017-06-09 13:33:11 +02:00
Ricardo Carrillo Cruz
d83f254bb6 New eos_vrf module (#25427)
* New eos_vrf module

* Add CLI integration tests

* Check rd only if not None
2017-06-09 13:24:28 +02:00
Trishna Guha
91e5fce90f Add ios_user implementation module (#25413)
* Add ios_user module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Integration test for ios_user

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Add unit test for ios_user

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-06-09 13:50:57 +05:30
Jordan Borean
89caef8fb6 win_environment: Added tests and return info in document (#25064)
* win_environment: Added tests and return info in document

* fixing up some yaml issues

* some more things I should have detected

* fixing up test tag name
2017-06-08 17:39:10 +01:00
George Nikolopoulos
a00089c341 New module: manage Citrix Netscaler service configuration (network/netscaler/netscaler_service) (#25129)
* netscaler_service initial implementation

* Changes as requested by reviewers

* Skip some tests if under python2.6 and importing requests library

* Change option "operation" to "state"

* Remove print statements from netscaler module utils

* Catch all exceptions during login

* Fix fail message

* Add common option save_config
2017-06-08 08:33:32 -06:00
Trishna Guha
36082e32b4 Add integration test for nxos_user (#25464)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-06-08 13:32:49 +05:30
Trishna Guha
b1b68840be Add missing integration test for eos_user (#25463)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-06-08 12:28:29 +05:30
Ricardo Carrillo Cruz
b3e8c48d4b New module: Add support for Arista EOS vlan (network/eos/eos_vlan) (#25355)
* WIP Add eos_vlan module

* Fix docstrings

* Fix pep8 issues

* Add active/suspend states logic

* Add integration tests for eos_vlan

* Fix map_config_to_obj on EAPI

* Sixify iteritems

* Add platform agnostic net_vlan integration tests
2017-06-07 23:47:28 +02:00
Matt Martz
004e99316c Allow template files to be vaulted (#22951)
* Allow template files to be vaulted

* Make sure to import exceptions we need

* get_real_file can't take bytes, since it looks specifically for string_types

* Now that we aren't using open() we don't need b_source

* Expand playbooks_vault docs to include modules that support vaulted src files

* Add vaulted template test
2017-06-07 14:16:03 -04:00
Daniele Lazzari
eda6a6baee New module: Add module to add/remove a network static route on windows (windows/win_route) (#23405)
* adds win_route windows module

* fix documentation indent

* fix documentation pep8 issues

* fix documentation issues

* genaral code review

* changed 'supported_by' in doc, supports_check_mode removed

* use of powershell cmdlet instead of route command, destnation in CIDR format, adds check mode support

* adds win_psmodule module

* documentation review

* documentation review

* removed files accidentatlly pushed

* add integration tests, add return in documentation

* add conditional statement in test, add os requirementes in documentation

* fix documentation

* fix os check in tests
2017-06-07 10:25:50 -07:00
René Moser
894b86a467 cloudstack: cs_zone_facts: add tests and fix pep8 (#25407) 2017-06-07 00:35:24 +02:00
Trishna Guha
f6a4803669 New module: platform agnostic way to manage local users on network devices (network/net_user.) (#25259)
* Add net_user platform agnostic module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Integration test for net_user

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* modify eos_user module to support name param as alias to username

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Test collection of users

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-06-06 20:05:08 +05:30
Sloane Hertel
c20285782d test conditionals work for invalid elements in list and undefined keys in dicts (#23875) 2017-06-05 23:48:18 -07:00
Michael De La Rue
e28845018d [cloud] New module: AWS API Gageway module (#20230)
* Ultra basic api-gateway module based of lambda.py

* Ultra basic deployment added to api-gateway module

* ApiGateway module Allow creation of APIs, more documentation and better return value

* ApiGateway module incorporate review feedback

* ApiGateway module flake8 cleanup

* APIGateway module - more review fixes.

* slightly better messages in api_gateway module

* AWS api_gateway module - try to improve messages in case of exceptions

* rename api_gateway module to aws_api_gateway as discussed in PR 20230

* aws_api_gateway - Allow delivery of swagger either as text or dictionary.

* aws_api_gateway module - introduce 'unit' tests, improve imports using them and small fixes

* aws_api_gateway module - move path expand_user to avoid early typecheck

* aws_api_gateway - version means version of metadata not module - fix to 1.0

* aws_api_gateway module - Rely on module_utils.ec2 for imports & path type for expanduser / cleanups

* aws_api_gateway module - heavy cleanup and refactor of code + cloud retry functionality.

* api_gateway_module - failing test case for handling more than one deployment in succession and API deletion

* add TooManyRequestsException to AWSRetry exception list - makes API deployment work.

* api_gateway_module - Fixes for various review comments + errors from various linters

* api_gateway_module - Fixes for more review comments + linter error

* api_gateway_module - Major refactor into sensible functions - create_response becomes configure_response

* api_gateway_module - should be working under python3; remove test exclusion

* api_gateway_module - finish off remaining review fixes - use ansible defaults and fix mutually exclusive

* api_gateway_module - attempt to improve handling of botocore errors in python3

* api_gateway_module - implement state=absent / API deletion
2017-06-05 10:25:56 -04:00
Robin Roth
8f7c8ef3a5 Reenable git tests (#25341)
* Revert "Temporarily disable failing git test."
* Use correct hash for depth=1 test
2017-06-05 12:10:22 +08:00
Matt Clay
dab1b1fe5b Temporarily disable failing git test. 2017-06-04 20:39:38 +08:00
René Moser
53c46df323 cloudstack: new module cs_network_acl_rule (#25325)
* cloudstack: new module cs_network_acl_rule
* fix doc errors
2017-06-03 14:34:09 +02:00
Trishna Guha
e90f1d6449 net_command platform agnostic module (#25249)
* net_command platform agnostic implementation

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Add net_command platform agnostic module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Add integration test for net_command module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* fix yaml issue
2017-06-02 22:03:27 +05:30
Ricardo Carrillo Cruz
955dc6e250 Add net_banner platform agnostic module (#25245)
* Add net_banner platform agnostic module

* Add integration tests for net_banner

* Remove default from required param

* Remove skip/python3 from net_banner aliases
2017-06-02 17:01:08 +02:00
Ricardo Carrillo Cruz
ffc74fdca2 Add missing provider on basic-motd IOS test (#25307)
Without this it fails, as it needs elevated privs.
2017-06-02 16:58:45 +02:00
Ricardo Carrillo Cruz
64add28657 Platform agnostic net_system module (#24953)
* Platform agnostic net_system module

Also refactor the action network plugins for better code re-use

Still more refactoring to do once the connection plugin work is complete

* Replace importlib for imp

importlib is not available on 2.6, so we need to stick to imp

* Load action plugin via module metadata

* Better error message if no implementation is found

Now the plugin will show the module name and the network OS in the
error message

* Fix typo on documentation author line

* Fix pep8 issues

* Add missing options key on doc string and stringify version

* Return None in case module has no metadata

* Read module metadata only if it's a python module

Check for module suffix, if it's .py then read metadata.
Otherwise this fails on non-python modules, like Windows PS for example.

* Read metadata variable only if it's a python module

Fix referencing a variable before assignment

* Add action_handler to validate_modules metadata schema

* Pull metadata with plugin_docs get_docstring

Using load_source from PluginLoader is troublesome, it is not guaranteed
a module may be importable at the controller, e.g. if a module depends
on module_utils functions it won't work, because module_utils is not
in the sys path.
Rather than putting that module dependencies introspection, just
use plain parsing like plugin_docs get_docstring does as we only care
about reading ANSIBLE_METADATA.

* Add platform agnostic group of groups for integration tests

This will be the target for platform agnostic integration tests.

* Add integration tests for net_system

* Switch to action plugin inheritance from metadata driven action handler

As the metadata action driven action handler work is being worked on
on its standalone proposal+PR, let's just go back to have one
action handler per platform agnostic module.
Those action plugins will inherit from net_base.

* Add blank line to fix pep8

* Add aliases file to net_system integration test

This will avoid CI failure

* Fix integration tests for net_system

* Give more precedence to task network_os over inventory network_os
2017-06-02 14:06:38 +02:00
Trond Hindenes
055fd6f5f5 New module: win dsc (#24872)
* Added win_dsc module file

* mute output and track reboot requirements

* added tests

* proper conditionals for test

* Added moar conditionals for test

* ci fixes

* Added metadata

* fixed integration test yaml

* ci fix

* ci fix

* added module_version param and output, no longer chokes on multiple versions found.

* ci fix

* code review improvements, make return vars more pythonic, cleanup
removed reference to handles in commit message

* Fixed tests, clearer documentation

* fixed trailing whitespace
2017-06-01 14:50:12 -07:00
Adrian Likins
45a9f96774 Facts Refresh (2.4 roadmap) (#23012)
Facts Refresh (2.4 roadmap)

This commit implements most of the 2.4 roadmap 'Facts Refresh'
- move facts.py to facts/__init__.py
- move facts Distribution() to its own class
- add a facts/utils.py
- move get_file_content and get_uname_version to facts/utils.py
- move Facts() class from facts/__init__ to facts/facts.py
- mv get_file_lines to facts/utils.py
- mv Ohai()/Facter() class to facts/ohai.py and facter.py
- Start moving fact Hardware() classes to facts/hardware/*.py
- mv HPUX() hardware class to facts/hardware/hpux.py
- move SunOSHardware() fact class to facts/hardware/sunos.py
- move OpenBSDHardware() class to facts/hardware/openbsd.py
- mv FreeBsdHardware() and DragonFlyHardware() to facts/hardware/
- mv NetBSDHardware() to facts/hardware/netbsd.py
- mv Darwin() hardware class to facts/hardware/darwin.py
- pep8/etc cleanups on facts/hardware/*.py
- Mv network facts classes to facts/network/*.py
- mv Virtual fact classes to facts/virtual
- mv Hardware.get_sysctl to facts/sysctl.py:get_sysctl

- Also mv get_uname_version from facts/utils.py -> distribution.py
  since distribution.py is the only thing using it.

- add collector.py with new BaseFactCollector
- add a subclass for AnsibleFactCollector
- hook up dict key munging FactNamespaces
- add some test cases for testing the names of facts
- mv timeout stuff to facts.timeout

- rm ansible_facts()/get_all_facts() etc

- Instead of calling facts.ansible_facts(), fact collection
  api used by setup.py is now to create an AnsibleFactCollector()
  and call it's collect method.

- replace Facts.get_user_facts with UserFactCollector
- add a 'systems' facts package, mv UserFactCollector there
- mv get_dns_facts to DnsFactCollector
- mv get_env_facts to EnvFactCollector
- include the timeout length in exception message

- modules and module_utils that use AnsibleFactCollector
  can now theoretically set the 'valid_subsets'

  May be useful for network facts module that currently have
  to reimplement a good chunk of facts.py to get gather_subsets
  to work.

- get_local_facts -> system/LocalFactCollector
- get_date_time -> system/date_time.py
- get_fips_facts -> system/fips.py
- get_caps_facts() -> system/caps.py
- get_apparmor_facts -> system/apparmor.py
- get_selinux_facts -> system/selinux.py
- get_lsb_facts -> system/lsb.py
- get_service_mgr_facts -> system/service_mgr.py
- Facts.is_systemd_managed ->  system/service_mgr.py
- get_pkg_mgr_facts -> system/pkg_mgr.py
- Facts()._get_mount_size_facts() -> facts.utils.get_mount_size()

- add unit test for EnvFactCollector
- add a test case for minimal gather_subsets
- add test case for collect_ids
- Make gather_subset match existing behavior or '!all'

    If 'gather_subset' is provided as '!all', the existing behavior
    (in 2.2/2.3) is that means 'dont collect any facts except those
    from the Facts() class'. So 'skip everything except
    'apparmor', 'caps', 'date_time', 'env', 'fips', 'local', 'lsb',
    'pkg_mgr', 'python', 'selinux', 'service_mgr', 'user', 'platform', etc.

    The new facts setup was making '!all' mean no facts at all, since
    it can add/exclude at a finer granularity. Since that makes more
    sense for the ansible collector, and the set of minimal facts to
    collect is really more up to setup.py to decide we do just that.

    So if setup.py needs to always collect some gather_subset, even
    on !all, setup.py needs to have the that subset added to the
    list it passes as minimal_gather_subset.

    This should fix some intg tests that assume '!all' means that
    some facts are still collected (user info and env for example).

    If we want to make setup.py collect a more minimal set, we can do that.

- force facts_dicts.keys() to a list so py3 works
- split fact collector tests to test_collectors.py

- convert Facter(Facts) -> other/facter.py:FacterFactCollector

- add FactCollector.collect_with_namespace()

    regular .collect() will return a dict with the key names
    using the base names ('ip_address', 'service_mgr' etc)

    .collect_with_namespace() will return a dict where the key names
    have been transformed with the collectors namespace, if there is
    one. For most, this means a namespace that adds 'ansible_' to the
    start of the key name.

    For 'FacterFactCollector', the namespace transforms the key to
    'facter_*'.

- add test cases for collect_with_namespace

- move all the concrete 'which facts does setup.py' stuff to setup.py

    The caller of AnsibleFactCollector.from_gather_subset() needs to
    pass in the list of collector classes now.

- update system/setup.py to import all of the fact classes and pass
  in that list.
- split the Distribution fact class up a bit

    extracted the 'distro release' file handling (ie, linux
    boxes with /etc/release, /etc/os-release etc) into its
    own class.
- extract get_cmdline_facts -> cmdline.py
- extract get_public_ssh_host_keys -> system/ssh_pub_keys.py
- extract get_platform_facts -> system/platform.py

  platform.py may be a good candidate for further splitting.

- rm test for plain Facts() base class
- let the base class for Collector unit tests provide collected_facts

    some Collectors and/or their migrated Facts() subsclasses need
    to look at facts collected by other modules ('ansible_architecture'
    the main one...).

    Collector.collect() has the collected_facts arg for this, so add
    a class variable to BaseFactsTest so we can specify it.

- mv Ohai to other/ohai.py and convert to Collector
- update hardware/*.py to return facts (no side effects)

- mv AnsibleFactCollector to setup.py
- extra collector class gathering to module method in
  facts/__init__.py (collector_classes_from_gather_subset)
- add a CollectorMetaDataCollector collector used to provide
  the 'gather_setup' fact
- add unit test module for 'setup' module
  (test/units/modules/system/setup.py)

- Collector init now doesnt need a module, but collect does

    An instance of a FactCollector() isnt tied to a AnsibleModule
    instance, but the collect() method can be, so optionally pass
    in module to FactCollector.collect() (everywhere)

- add a default_collectors for list of default collectors

  import and use it from setup.py module

  eventually, would like to replace this with a plugin loader
  style class finder/loader

- unit tests for module_utils/facts/__init__.py
- add unit tests for ohai facts collector
- remove self.facts side effect on populate() in hardware/sunos.py
- convert OpenBSDHardware() to rm side effects on self.facts
- try to rm some self.facts side effects in Network()

    plumb in collected_facts from populate() where it is needed.

    stop passing collected_facts into Network() [via cached_facts=,
    where it eventually becomes self.facts]

- nothing provides Fact() cached_facts arg now, rm it

    Facts() should be internal only implementation so nothing
    should be using it.

    Of course, now someone will.

- add a Collector.name attr to build a map of name->_fact_ids

    To properly exclude a gather_subset spec like '!hardware', we
    need to know that 'hardware' also means 'devices', 'dmi', etc.
    Before, '!hardware' would remove the 'hardware' collector name
    but not 'devices'. Since both would end up in id_collector_map,
    we would still end up with the HardwareCollector in the collector
    list. End result being that '!hardware' wouldn't stop hardware
    from being collected.

    So we need to be able to build that map, so add the Collector.name
    attribute that is the primary name (like 'hardware') and let
    Collector._fact_ids be the other fact ids that a collector is
    responsible for.

    Construct the aliases_map of Collector.name -> set of _fact_ids
    in fact/__init__.py get_collector_names, and use it when we are
    populating the exclude set.

- refactor of distribution.py

    make the big OS_FAMILY literal a little easier to read
    Also keys can now be any string instead of python literals

    99% sure the test for 'KDE Neon' was wrong
    I don't see how/where it should or could get 'Neon' instead
    of 'KDE Neon' as provided in os-release NAME=

    Use 'distribution' string for key to OS_MAP

    ie, we dont need to make it a valid python label anymore so dont.

    move _has_dist_file to module as _file_exists
    easier to mock without mucking with os.path

    mv platform.system() calls to within get_distribution_facts() instead
    of Distribution() init.

- remove _json compat module

    The code in here was to support:

      -a 'json' python module that was not the standard one included
      with python since 2.6.

      - potentially fallback to simplejson if 'json' was not available.

    'json' is available for all supported python versions now so
    no longer needed.

- mv get_collector_names -> facts.collector
- mv collector_classes_from_gather_subset -> facts.collector
- mv collector tests from test_facts -> test_collector

- Use six's reduce() in sunos/netbsd hardware facts

- rm extraneous get_uname_version in utils

  only system/distribution.py uses it

- Remove Facts() subclass metaclass usage

  - using fact_id and a platform id for matching collectors

    gut most of Facts() subclasses

    rm Facts() subclasses with weird metaclass

    only add collectors that match the fact_ids and the platform_info
    to the list of collectors used.

    atm, a collectors platform_id will default to 'Generic', and
    any platform matches 'Generic'

    goal is to select collector classes including matching the
    systems platform in collector.py, instead of relying on
    metaclasses in hardware/*. To finish this, the various
    Facts() subclasses will need to be replaced entirely with
    Collector() subclasses.

    use collector classmethod platform_match() to match the platform

    This lets the particular class decide if it is compatible with
    a given platform_info. platform_info is a dict like obj, so it could be
    expanded in the future.

    Add a default platform_match to BaseFactCollector that matches
    platform_info['system'] == cls._platform

    They were needed previously to trigger a module
    load on all the collector classes when we import
    facts/hardare so that the Hardware() and related
    classes that used __new__ and find_all_subclasses()
    would work.

    Now that is done in collectors based on platform matching
    at runtime we dont need to do it py module import/parse
    time. So the non empty __init__.pys are no longer needed
    and their is a more flexible mechanism for selection
    platform specific stuff.

    facts/facts.py is no longer used, rm'ed

- if we dont find an implement class for gather spec.. just ignore it.

  Would be useful to add a warn to warn about this case.

- Fix SD-UX typo (should be HP-UX)

- Port fix for #21893 (0 sockets) to this branch

    This readds the change from 8ad182059d
    that got lost in merge/rebase

    Fixes #21893

- port sunos fact locale fix for #24542 to this branch

    based on e558ec19cd

    Fixes #24542

    Solaris fact fix (#24793)

    ensure locale for solaris fact gathering

    fixes issue with locale interfering with proper reading of decimals

- raise exceptions in the air like we just dont care.

    Pretty much ignore any not exit exception in facts
    collection. And add some test cases.

- added new selinux fact to clarify python lib

    the selinux fact is boolean false when the library is not installed,
    a dictionary/hash otherwise, but this is ambigous
    added new fact so we can eventually remove the type dichtomy and normalize it as a dict

    Re-add of devel commit 85c7a7b844 to
    the new code layout, since it got removed in merge/rebase
2017-06-01 11:17:49 -04:00
Matt Clay
9d8aa43c67 Temporary work-around for setuptools 36.0.0 bug. (#25243)
* Temporary work-around for setuptools 36.0.0 bug.
* Use older setuptools for pip integration test.
* Limit isort version to avoid new test failures.
2017-06-01 16:23:32 +08:00
Sloane Hertel
75bdcce072 s3 integration tests (#22920)
* s3 integration tests

* Make s3 integration tests work in standard integration setup and with fish as current shell
see also https://github.com/ansible/proposals/issues/62 if you don't like this much

* test_s3 integration test - substitute command instead of shell where simple

* test_s3 integration test - random contents + complete elimination of use of shell module by moving to tempfile

* move s3 to integration test targets

* Add a couple more test for . in bucket names

Tidy syntax

remove reference to legacy credentials.yml

remove posix/cli/cloud/aws

* remove from legacy testing

* remove dependencies that aren't used
2017-05-31 11:48:35 -04:00
Dag Wieers
d958440bcb win_firewall_rule: Implement idempotency, check-mode and diff support (#23162)
* win_firewall_rule: Small idempotency fix

This PR includes the following changes:
- an idempotency fix when `profile: any`
- better difference output to debug idempotency issues
- documentation fixes (remove `required: false`)
- Parameter handling fixes
- RDP example that matches default RDP rule
- Renamed parameter 'enable' to 'enabled' (kept alias)
- Renamed parameter 'profile' to 'profiles' (kept alias)

* Rewrite module completely

The logic is still intact, but various changes with a single goal:

- Make the module idempotent
- Implement check-mode
- Implement diff-mode
- Adapted integration tests

This fixes #18807 and #23455.

* Change casing to lowercase

* Improve the logic wrt. diff
2017-05-30 16:10:33 -07:00
Dag Wieers
0e160d5c7e Ensure exit_json returns failed = False
This is required for modules that may return a non-zero `rc` value for a
successful run, similar to #24865 for Windows fixing **win_chocolatey**.

We also disable the dependency on `rc` value only, even if `failed` was
set.

Adapted unit and integration tests to the new scheme.
Updated raw, shell, script, expect to take `rc` into account.
2017-05-30 14:56:31 -07:00
Evgeni Golov
1f78715848 apt: include arch in check for installed packages on multi-arch systems (#24846)
* apt: include arch in check for installed packages on multi-arch systems

Thanks: Stefan Löwen <stefan.loewen@gmail.com>

Fixes: #24673

* add an integration test for apt's multi-arch handling
2017-05-30 16:09:43 -04:00
Ricardo Carrillo Cruz
69efb61008 Add provider param to prepare_iosxr_tests role tasks (#25163)
This will avoid passing -u -k to ansible-playbook
2017-05-30 20:32:50 +02:00
Pierre-Louis Bonicoli
a4131197e0 PostgreSQL tests: enforce UTF8
By default, client encoding is determined either from the LANG_*/LC_*
environment variables or using encoding of the database.

Containers used in the CI don't define a default locale, then encoding
of default databases was SQL_ASCII.
2017-05-30 10:55:49 -07:00
Pierre-Louis Bonicoli
fb1e7aaa81 Creates cluster the same way Debian package does
This task is only executed when the playbook has already been executed
once, for example using 'ansible-test integration' with '--retry-error'
switch when the first run fails.

This modification allows to recreate default databases (postgres,
template0 and template1) using the same encoding that the one used by
the Debian package.

Default encoding is 'SQL_ASCII' when default locale is not set in
/etc/default/locale.
2017-05-30 10:55:49 -07:00
Pierre-Louis Bonicoli
ce856c2123 postgresql_user: add tests with hashed password 2017-05-30 10:55:49 -07:00
Dag Wieers
4efec414e7 test/: PEP8 compliancy (#24803)
* test/: PEP8 compliancy

- Make PEP8 compliant

* Python3 chokes on casting int to bytes (#24952)

But if we tell the formatter that the var is a number, it works
2017-05-30 18:05:19 +01:00
Ricardo Carrillo Cruz
fd5db52fd9 Add provider to prepare_ios_tests role tasks (#25162)
This avoids passing -u <user> -k, as it will just consume
the credentials from group_vars
2017-05-30 14:54:22 +01:00
Rene Moser
439f0beca5 cloudstack: fix pep8 cs_domain 2017-05-29 01:28:19 +02:00
Rene Moser
e3f75227bc cloudstack: fix pep8 cs_affinitygroup 2017-05-29 01:28:19 +02:00
Rene Moser
9fe3891d65 cloudstack: fix pep8 cs_cluster 2017-05-29 01:28:19 +02:00
Reilly Herrewig-Pope
723c8f06ab Allow setting/unsetting BYPASSRLS Postgres role attribute (#24625)
* Allow setting/unsetting BYPASSRLS role attr

* Build valid role attrs against version

* Add integration tests
2017-05-26 12:56:42 -04:00
René Moser
d5b04aa1f1 cloudstack: add check mode tests (#24908)
* cloudstack: test: cs_network_acl: add check_mode tests

* cloudstack: test: cs_pod: add check_mode tests

* cloudstack: test: cs_user: add check_mode tests

* cloudstack: test: cs_sshkeypair: add check_mode tests

* cloudstack: test: cs_project: add check_mode tests

* cloudstack: test: cs_vpc: add check_mode tests

* cloudstack: test: cs_vpn_gateway: add check_mode tests

* cloudstack: test: cs_volume: add check_mode tests

* cloudstack: test: cs_vmsnapshot: add check_mode tests

* cloudstack: test: cs_account: add check_mode tests

* cloudstack: test: cs_affinitygroup: add check_mode tests

* cloudstack: test: cs_cluster: add check_mode tests

* cloudstack: test: cs_domain: add check_mode tests

* cloudstack: test: cs_instancegroup: add check_mode tests

* cloudstack: test: cs_iso: add check_mode tests

* cloudstack: test: cs_loadbalancer_rule: add check_mode tests

* cloudstack: test: cs_portforward: add check_mode tests

* cloudstack: test: cs_resourcelimit: add check_mode tests

* cloudstack: test: cs_securitygroup: add check_mode tests

* cloudstack: test: cs_securitygroup_rule: add check_mode tests

* cloudstack: test: cs_configuration: add check_mode tests

* cloudstack: test: cs_firewall: add check_mode tests

* cloudstack: test: cs_instance: add check_mode tests

* cloudstack: query current tags from API

Fixes unexpected tags returned in check mode.
2017-05-26 12:19:47 +02:00
Brendan Almonte
2af5556901 Added autoclean/autoremove for the apt module
- Removed alias autoclean from autoremove.
- Added independent execution of apt-get autoclean/autoremove
- Continued to support --auto-remove as a flag to install/remove

Fixes #22222 #24718
2017-05-25 14:18:20 -07:00
Robin Roth
8fca263560 Refactor zypper version parsing and handling (#24056)
Fixes #23516
2017-05-25 17:05:25 -04:00
Brendan Almonte
b820d024fc Add alternative syntax for upgrading all installed packages via apt (#25007)
syntax: 'apt: name=* state=latest'

feature #24189
2017-05-24 16:04:38 -07:00
bengerman13
4b6db5db7c add xattr integration tests to ci (#24950)
* add xattr integration tests to ci

* fix package syntax

* remove unnecessary become, disable xattr for bsd and osx
2017-05-24 05:53:40 -07:00
kkjang
daada2000c Fix expect for python 3 (#24912)
* Fix expect for python 3

- Change generator next to python 3 compatible
- Added tests for expect

* Add pexpect to integration.txt

- add pexpect library to requirements for integration tests

* Use ansible_python_interpreter in integration tests for expect

* Use double-quotes for expect integration tests

* Cast user input to string for expect integration tests

* Cast user input to string earlier in expect integration tests

* Use ansible.module_utils.six.moves input for expect integration tests

* Fix yamllint errors in the expect test

* Use cat to trigger timeout for expect integration tests

* Use realpath filter in expect integration tests
2017-05-23 15:51:46 -07:00
Brian Coca
8f97aef1a3 Transition inventory into plugins (#23001)
* draft new inventory plugin arch, yaml sample

 - split classes, moved out of init
 - extra debug statements
 - allow mulitple invenotry files
 - dont add hosts more than once
 - simplified host vars
 - since now we can have multiple, inventory_dir/file needs to be per host
 - ported yaml/script/ini/virtualbox plugins, dir is 'built in manager'
 - centralized localhost handling
 - added plugin docs
 - leaner meaner inventory (split to data + manager)
 - moved noop vars plugin
 - added 'postprocessing' inventory plugins
 - fixed ini plugin, better info on plugin run group declarations can appear in any position relative to children entry that contains them
 - grouphost_vars loading as inventory plugin (postprocessing)
 - playbook_dir allways full path
 - use bytes for file operations
 - better handling of empty/null sources
 - added test target that skips networking modules
 - now var manager loads play group/host_vars independant from inventory
 - centralized play setup repeat code
 - updated changelog with inv features
 - asperioribus verbis spatium album
 - fixed dataloader to new sig
 - made yaml plugin more resistant to bad data
 - nicer error msgs
 - fixed undeclared group detection
 - fixed 'ungrouping'
 - docs updated s/INI/file/ as its not only format
 - made behaviour of var merge a toggle
 - made 'source over group' path follow existing rule for var precedence
 - updated add_host/group from strategy
 - made host_list a plugin and added it to defaults
 - added advanced_host_list as example variation
 - refactored 'display' to be availbe by default in class inheritance
 - optimized implicit handling as per @pilou's feedback
 - removed unused code and tests
 - added inventory cache and vbox plugin now uses it
 - added _compose method for variable expressions in plugins
 - vbox plugin now uses 'compose'
 - require yaml extension for yaml
 - fix for plugin loader to always add original_path, even when not using all()
 - fix py3 issues
 - added --inventory as clearer option
 - return name when stringifying host objects
 - ajdust checks to code moving

* reworked vars and vars precedence
 - vars plugins now load group/host_vars dirs
 - precedence for host vars is now configurable
 - vars_plugins been reworked
 - removed unused vars cache
 - removed _gathered_facts as we are not keeping info in host anymore
 - cleaned up tests
 - fixed ansible-pull to work with new inventory
 - removed version added notation to please rst check
 - inventory in config relative to config
 - ensures full paths on passed inventories

* implicit localhost connection local
2017-05-23 17:16:49 -04:00
bengerman13
25aac6151f add integration tests for xattr module (#24947)
* add integration tests for xattr module

* fix whitespace
2017-05-23 12:02:56 -07:00
jhawkesworth
b46c098581 Added win_copy recursive integration test with trailing path separator. (#24523)
This is a reproducer for https://github.com/ansible/ansible/issues/23559

Tests will fail until https://github.com/ansible/ansible/pull/23581 is merged

Note that I believe another commit is also needed for this to work,
specifically the change from: https://github.com/ansible/ansible/pull/23326
2017-05-23 10:57:24 -07:00
pdasilva
f8e47e2204 Changed assemble_from_fragments to use os.path.join (#24909)
Fixes #19437
2017-05-22 15:38:11 -07:00
Tom Melendez
13f2d9222f [GCP] Global Load Balancer Integration Test (#24704)
* Revert to using url_map internal to the module to allow parameter generation to work. module parameter is still url_map_name.

* [GCP] Cross Region Load Balancer Integration Test
2017-05-18 14:00:51 -04:00
Matt Clay
5babe2daea Increase python version coverage for tests. (#24762)
* Improve ansible-test inventory handling.
* Fix python 3 re-raise of exception from thread.
* Fix python 3 encoding for windows-integration.
* Run network tests on multiple python versions.
* Run windows tests on multiple python versions.
* Support Shippable delegation using --tox.
* Skip vyos_command on python 3 tests until fixed.
* Add python 3 filtering to local and tox.
* Fix tests to support back to back runs.
* Temporarily test networking with python 2.7 only.

Running the tests back to back causes intermittent test failures
which need to be addressed before we can test multiple versions
in a single test run.
2017-05-19 01:37:53 +08:00
Tom Melendez
c99c3b2b5d [GCP] Healthcheck module (#24564)
* [GCP] Healthcheck module

* fix return YAML block

* removed update_ return value; removed python26 check; typos and docs updates

* doc fix

* Updated int test for no-update conditions

* added filter_gcp_fields test

* fixed bug in update where dictionary wasn't built correctly and port was not being set.

* added default values to documentation block
2017-05-18 12:49:50 -04:00
Matt Clay
c4a2deda9d Restore disabled opensuse integration tests. 2017-05-17 17:13:27 +08:00
Rene Moser
e34fd20452 cloudstack: test: fix setup cs_vpc not using zone 2017-05-15 23:31:15 +08:00
Matt Clay
a23f503286 Temporarily disable cs_network_acl test in CI.
This test currently conflicts with cs_vpc, causing it to fail if
both tests are run together.
2017-05-15 18:42:47 +08:00
René Moser
3ca3163af1 cloudstack: add new module cs_network_acl (#24609) 2017-05-15 10:57:38 +02:00
John R Barker
e9e2d67035 Run vyos_command Network tests in Shippable (#24514)
* Run VyOS Network tests in Shippable

* net_command no longer exists

* network/ci

* Disable other network tests

* pep8 fix

* Fix PEP 8 issue.
2017-05-12 12:49:12 +01:00
Matt Clay
771b467941 Disable unstable win_psexec integration test. 2017-05-12 16:40:36 +08:00
Matt Clay
dfd19a812f Miscellaneous bug fixes for ansible-test.
- Overhauled coverage injector to fix issues with non-local tests.
- Updated integration tests to work with the new coverage injector.
- Fix concurrency issue by using random temp files for delegation.
- Fix handling of coverage files from root user.
- Fix handling of coverage files without arcs.
- Make sure temp copy of injector is world readable and executable.
2017-05-12 14:55:48 +08:00
Tom Melendez
4a5cf0b5c1 [GCE] [GCP] UrlMap module (#24422)
* [GCP] UrlMap module

This module provides support for UrlMaps on Google Cloud Platform.  UrlMaps allow users to segment requests by hostname and path and direct those requests to Backend Services.

UrlMaps are a powerful and necessary part of HTTP(S) Global Load Balancing on Google Cloud Platform.

UrlMap takes advantage of the python-api so the appropriate infrastructure has been added to module_utils.

More about UrlMaps can be found at:
https://cloud.google.com/compute/docs/load-balancing/http/url-map

UrlMap API:
https://cloud.google.com/compute/docs/reference/latest/

Google Cloud Platform HTTP(S) Cross-Region Load Balancer:
https://cloud.google.com/compute/docs/load-balancing/http/

* updated documentation, remmoved parens

* fixed tabs
2017-05-11 13:02:32 -04:00
Matt Clay
496280858d Revert "Temporarily disable test which fails in group run."
This reverts commit 99d328976d.
2017-05-11 20:26:32 +08:00
Matt Clay
b8cb3f519b Detect and fix environment tampering in tests. 2017-05-11 19:45:15 +08:00
Matt Clay
99d328976d Temporarily disable test which fails in group run. 2017-05-11 16:22:12 +08:00
Dag Wieers
e855274dc8 win_psexec: Enable -nobanner option by default (#23422)
* win_psexec: Enable -nobanner option by default

PR also includes:
- Option `nobanner:` to remove this flag
- Improvements to Examples
- Improvement to Return Value
- Add types to all parameters now
- Add (limited) integration tests

* Move sysinternals into C:\Windows\Temp
2017-05-10 16:10:33 -07:00
jctanner
e9c2546ffe Add integration test targets for core supported modules (#24217)
A preliminary set of test targets for "core" supported module that had no independent tests. These will also help us ensure python3 compatibility for those modules and prevent future regressions.
2017-05-10 09:19:11 -04:00
René Moser
2ef6713abb cloudstack: new module cs_vpn_gateway (#23954)
* cloudstack: new module cs_vpn_gateway
* add integration tests for cs_vpn_gateway
2017-05-10 14:55:14 +02:00
Matt Davis
ead23783be slightly increase win_async_wrapper fire and forget sleeptime
* should fix Shippable timeouts when AWS CPU credits are low- right on the bubble of failure w/ 5s execution
2017-05-09 11:22:29 -07:00
Dag Wieers
bc806ff479 Windows: Small fix to Add-Warning and Add-DeprecationWarning (#23520)
Simplified the logic, and fix the issue of having a nested list as
entry.

Also indicate that we deliberately want to retain $null values
(and i.e. do not want them to be turned into a boolean).
2017-05-09 09:18:37 -07:00
Ganesh Nalawade
5b3ea6562b Add junos integration test (#24404) 2017-05-09 18:41:48 +05:30
Benjamin Jolivot
e99815e9f5 Fortios file only mode + integration tests (#23275)
* WIP file_mode

* WIP

* Add file_mode + integration tests

* fix pep8

* Update doc fragments
Create mutualy_exclusive param
Fix yamllint problem in tests

* Add aliases file + main playbook for fortios

* Install pyfg before running tests

* Install pyfg before running tests in role

* Remove pre_task as it's done in roles

* Force pyFG minimal version for python3

* role_path not role_dir :(

* Change requirements

* Specify Error type when error on import

* Bug in pygf library with python 2.5 (PR is waiting https://github.com/spotify/pyfg/pull/19)

* Bad requirement format

* still bad format -_-'

* remove test/integration/fortios.py (auto generated by tests)
missing new lines at end of file

* pyFG is now fixed in 0.50
2017-05-09 13:51:19 +01:00
Matt Clay
d999d613cb Python 3 fixes for CloudStack modules and tests. (#24400) 2017-05-09 13:37:08 +02:00
René Moser
aaf4f04574 automated integration tests for cloudstack (#20552) 2017-05-09 11:32:11 +08:00
Matt Clay
86bf27511c Migrate cs_sshkeypair test to ansible-test. 2017-05-07 01:44:33 +08:00
Matt Clay
17e07a27b2 Enable cloud tests for use with ansible-test. 2017-05-05 21:46:29 +08:00
Matt Clay
a07d42e16d Add support for cloud tests to ansible-test. (#24315)
* Split out ansible-test docker functions.
* Add cloud support to ansible-test.
2017-05-05 16:23:00 +08:00
Toshio Kuratomi
a0dfa8616a Make fetch default to fail on errors
Fixes #23501
2017-05-03 09:37:31 -07:00
Matt Clay
00f8e3d360 Fixes for EC2 module integration tests. 2017-05-03 22:40:08 +08:00
Toshio Kuratomi
3428f42120 Add integration test that modules are loaded from the expected locations (#24170)
* Add integration test that modules are loaded from the expected locations
* Fix ping module to pass PEP8
2017-05-01 08:52:25 -07:00
SesquipedalianDefenestrator
3f321e7591 Add check_mode to get_url (#20532)
* Add check_mode to get_url that does a HEAD request to make sure the URL exists, but doesn't write the real file

* Add info about new --check behavior to docs.  Add tests for the new behavior.  Populate res_args with the info the tests are looking for.

* Add trailing comma

* Change nonexistent test URL to http://{{httpbin_host}/DOESNOTEXIST.  Fix spacing while I'm at it

* Further spacing cleanup

* State that this functionality is in Ansible 2.4+
2017-04-28 14:43:51 +01:00
John R Barker
ecbf8e933a Docs how to test (2nd) (#24094)
* Big testing doc refactor
* Combine all the testing documentation in to one place to make it easier to find
* Convert everything to RST
* Create testing_network guide
* Create testing landing page
* For each section detail "how to run" and "how to extend testing"
* More examples
* Lots more detail
2017-04-28 09:08:26 +01:00
Pierre-Louis Bonicoli
a13d89da68 Debian: really generate locales
/usr/sbin/locale-gen differs between Debian and Ubuntu. With Debian,
locales must be added to /etc/locale.gen before calling locale-gen
command. With Ubuntu, /etc/locale.gen is updated by
/usr/sbin/locale-gen.

Use the locale-gen module which handles both distributions.
2017-04-28 09:10:20 +08:00
Pilou
bf5d87af07 PostgreSQL Integration test suite: improvements (#23631)
* PostgreSQL tests: use package module
* PostgreSQL tests: use ansible_service_mgr in order to test init system
* PostgreSQL tests: fix a typo
* PostgreSQL tests: install only required packages
* PostgreSQL tests: use role default value when unchanged
2017-04-28 09:09:40 +08:00
Nathaniel Case
fc0bf87c20 Run save inside config mode. (#23977)
* Run `save` before exiting config mode.

* Fix unit tests for `save`

* Allow `save` to be on its own again and introspect success

* Introspecting `compare running` makes this a lot harder.

Move `save` tests to integration tests
2017-04-27 11:08:37 -04:00
Toshio Kuratomi
bffccb5396 fetch idempotence test and deprecate validate_md5
Added an integration test for fetch module idempotence.  (Testing
that validate_checksum is doing what it's supposed to is harder as we'd
have to create a race condition with the downloaded data to trigger it.
Probably need to make that a unittest eventually).

Also give a deprecation message to the validate_md5 parameter so that we
can eventually get rid of it.
2017-04-26 12:00:01 -07:00
Brian Coca
e29dc49a49 moved to exceptions for basic skip/fails
better handling of checkmode and async
fix test to follow new flow control
2017-04-25 14:48:56 -04:00
Brian Coca
4594bee65a keep unsafe .. unsafe (#23742)
* keep unsafe .. unsafe

fixes #23734, which was broken in previous fix that allowed non string types to be templated
use new 'is_template' function vs bastardizing others
refactored clean_data to allow for arbitrary data structures to clean
fixed/removed some tests

* deal with complex data for is_template

* typos
2017-04-21 16:07:38 -04:00
Guillaume Coré
c7f4c97b18 async+script: add integration test (#23818)
see #23729
2017-04-21 01:06:01 -04:00
Ricardo Carrillo Cruz
0bbfd3d4e0 Add missing aliases file to ios_system integration target (#23795) 2017-04-20 12:33:22 +02:00
Ricardo Carrillo Cruz
82fd038998 Add missing aliases file to iosxr integration tests targets (#23796) 2017-04-20 12:32:36 +02:00
Adrian Likins
ae3d7fb29e 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
2017-04-18 13:09:02 -04:00
Brian Coca
8382ed7200 added test emulating #23180 use case 2017-04-12 18:34:29 -04:00
Matt Martz
621e27b5dd Urls client cert auth (#18141)
* Build HTTPSClientAuthHandler more similarly to how HTTPSHandler works

* Add docs for new client cert authentication

* Support older versions of python

* Simplify logic

* Initial support for client certs in urls.py

* Add an extra test

* Add a get_url test for client cert auth

* Add additional test for client cert auth, with validation and ssl mismatch

* Skip assert when http tester not available

* Update version_added for new options
2017-04-07 09:54:37 -07:00
Toshio Kuratomi
78ced5318f Fix for recursive copy slowness
Copy module was walking over files in subdirectories repeatedly (a
directory tree a few levels deep could bring the time spent into the
tens of minutes)

This was traced to the fix for this bug report: https://github.com/ansible/ansible/issues/13013

Fixed #13013 a different way and added an integration test to check for
regressions of #13013 as we optimize this code.

Fixes #21513
2017-04-07 12:41:42 -04:00
Matt Martz
ac61f09203 Extra deps needed for building cryptography 2017-04-07 09:19:26 -07:00
Matt Martz
13ac993d25 Fallback to old ssl_wrap_socket 2017-04-07 09:19:26 -07:00
Matt Martz
b4b76bab14 Update install deps for SNI tests 2017-04-07 09:19:26 -07:00
Ricardo Carrillo Cruz
13b2f11139 Do not assert session name on idempotent eos banner (#23402)
* Check for proper response key on eos_banner map_config_to_obj

If we run the task with 'login' banner, the 'show banner' command
will return a dict containing key 'loginBanner'.
However for motd, it will just return 'motd'.
Yay naming consistency!

* Do not assert session exists on eos_banner response not changing device
2017-04-07 15:44:06 +02:00
Ricardo Carrillo Cruz
ce9826d76e Fix eos_banner basic-motd eapi asserts (#23398)
The commands in EAPI does not contain the plain command sent to the
device as a one liner, but it is split in cmd/input keys.
2017-04-07 14:18:40 +02:00
Ricardo Carrillo Cruz
2cc2b8fb4d Add missing provider to eos_banner basic-motd eapi test (#23396)
Otherwise this stalls and timeouts, it doesn't have creds to run.
2017-04-07 13:39:33 +02:00
Chris Alfonso
394cb3477b Fixes loginBanner plucking over eapi transport when loginBanner isn't set. (#23363) 2017-04-06 10:58:04 -06:00
Nathaniel Case
98c23a3342 Attempt to clear up nxos_mtu tests and documentation (#23361)
nxos_system wasn't added until 2.3, so nxos_mtu should have been deprecated
then.
2017-04-06 12:26:17 -04:00
Matt Clay
40e88dadbe Disable zypper tests for CI due to timeouts. 2017-04-06 08:48:31 -07:00
Ricardo Carrillo Cruz
4571ff0b52 Fix eapi basic-login asserts (#23318)
The asserts where not checking the commands sent to the device
2017-04-05 20:37:58 +02:00
Ricardo Carrillo Cruz
cf30f0f27d Fix asserts on ios_banner tests (#23315)
The contain assert was broken.
2017-04-05 20:00:10 +02:00
Ricardo Carrillo Cruz
d268471739 Fix basic-login eapi tests for eos_banner (#23304)
We should be passing the provider dict, not the transport.
2017-04-05 19:11:12 +02:00
John R Barker
f22702eee2 enable ios_facts tests again (#23310) 2017-04-05 17:50:32 +01:00
Nathaniel Case
d890167575 Fix nxos_facts for nxapi transport (#23302)
* Partial revert of 2e476e64cd

This broke handling of nxos_facts over nxapi

* Fix nxos_facts tests not run in isolation
2017-04-05 11:47:37 -04:00
Robin Roth
6f40cb9647 Add workaround for evasive in apache2_module (#22649)
* Add workaround for evasive in apache2_module

* Fixes #22635
* Clean up workarounds for php/shib
* Add test for evasive workaround
* Remove use of re module, since all searches work with native python

* Add unit tests to apache2_module name replacements

Go back to using re package where needed

* Rename replace_name to create_apache_identifier
2017-04-04 14:12:06 -04:00
Chulki Lee
99ef1f3a9f git: git reset with branch
`git reset <ref>` can be ambiguous and fail to switch to the correct branch.
To avoid it, specify branch as well.
2017-04-04 10:45:04 -07:00
Matt Clay
79fa5ef4cb Add missing group_vars to group_by test. 2017-04-04 10:14:10 -07:00
Brendan Jurd
7fb1519035 Add integration tests for group_by precedence.
Test that, when a group is created with group_by, variables from the
corresponding group_vars/ file are correctly pulled in, and override
variables specified in group_vars/all.

See ansible/ansible#8664.
2017-04-04 10:14:10 -07:00
Matt Clay
b7cc4616b1 Fix integration aliases. 2017-04-03 17:49:35 -07:00
Matt Clay
58c2470e8f Fix deploy_helper integration tests. 2017-04-03 16:59:40 -07:00
Ramon de la Fuente
550d229c7b added deploy_helper module tests 2017-04-03 16:59:40 -07:00
Jordan Borean
3e1a16c574 win_find fix up age parameter (#23195) 2017-04-03 11:43:07 -07:00
Jordan Borean
4d1b97d1ae win_stat change return islink to islnk to match stat (#23196) 2017-04-03 11:38:34 -07:00
Ricardo Carrillo Cruz
9cc47df30e Fix eos_banner cli basic_motd integration test (#23158)
A task was lacking the provider variable, causing the test to fail.

Fixes #23130
2017-03-31 00:21:23 +02:00
Konstantin Suvorov
c1b3d6a51f Fix 'sequence' lookup shortcut syntax and documentation (#22989)
* fix 'sequence' lookup shortcut syntax and documentation

* Update playbooks_loops.rst

Minor edits for grammar and clarity.

* Update playbooks_loops.rst

Another tweak for clarity.
2017-03-29 19:11:19 -04:00
Ricardo Carrillo Cruz
1fd58c295c Add missing aliases files on nxos integration targets (#23070) 2017-03-29 13:28:43 +02:00
Ricardo Carrillo Cruz
0e954b0fd9 Add aliases file to nxos_interface integration target (#23069) 2017-03-29 12:50:16 +02:00
Ricardo Carrillo Cruz
ac6465689c Add nxos_interface integration testing (#23030)
This is a first step before starting the refactoring of
the nxos_interface code.
2017-03-29 11:01:38 +02:00
Miyurz
1ea1becf23 Fixes bug https://github.com/ansible/ansible/issues/22455 - Git reset… (#22502)
* Fixes bug https://github.com/ansible/ansible/issues/22455 - Git reset fails when file with the name 'origin' is present in the repository

* #22455 Integration test for git module to test if it clones a repository with a file named origin

* Fixed yaml errors for test/integration/roles/test_git_clone/tasks/main.yml

* Removed the newly added target git and moved the code to test/integration/targets/git

* Reorganised code structure as per comments

* Fixed playbook name

* Added code that didn't make it to the playbook before.

* No longer need git.yml

* Remove non tasks specific code from tasks file and use existing variables

* Removed msg var from the vars.yml
2017-03-28 08:41:25 -04:00
Alex Lo
ac74520b6f ec2_group: description property is immutable (#19790)
* update integration tests for updated boto exception message

* integration tests fail on both "test credential" test cases

exception bubbles out of module.  instead catch and wrap

* ec2_group does not support updating a security group's description

AWS security group descriptions are immutable.
if ec2_group finds a group that matches by name, but the descriptions do not match, the module does not support this case
previously it would check if the group was used, but would not do anything if it was

old behavior was erroneous because it could make a user expect that the description change of a group was fine when in fact it did not occur
also, it made an expensive check against all ec2 instances for no good reason

* comments not doc strings

* else must have pass w/o doc-string statement

* Catch specific BotoServerException, give context around error when fetching SGs

* python3 compatible exception blocks

* add traceback to fail_json

* two blank lines before first function
2017-03-26 09:33:29 -04:00
Matt Clay
318445fe19 Associate systemd module with service test. (#22847) 2017-03-24 13:29:18 -07:00
Matt Davis
e084e8809e force Windows to always use preamble-free UTF8 input encoding (#22934)
* fixes #15770
* When running under the UTF-8 codepage, Powershell subprocesses will fail (eg, Start-Job, others) if the input encoding is using the default BOM preamble. This fix forces it to use no preamble in leaf_exec and win_shell, and includes tests to verify that Start-Job works.
2017-03-24 00:02:39 -07:00
Artem Zinenko
f4b34a4c3b win_firewall_rule doesn't fail when profile is "any" or remoteip is IPv4 and the task runs more than once. (#22555)
* Fixed #22554

* Wrote tests for win_firewall_rule module

* Fixed #22786

* Fixed review comments

* Fixed #22799

* Added test when RemoteIP containt a netmask

* Revert comment
2017-03-23 20:01:26 -07:00
Dag Wieers
ac43a1bbbc Windows: Use the correct newline sequence for the platform (#21846)
This change to the template action plugin make template use the
platform's native newline_sequence for Jinja.

We also added the option `newline_sequence` to change the newline
sequence using by Jinja if you need to use another newline sequence than
the platform default.

This was previously discussed in
https://github.com/ansible/ansible/issues/16255#issuecomment-278289414

And also relates to issue #21128
2017-03-23 19:47:10 -07:00
Dag Wieers
ef36d7de68 win_scheduled_tasks: Improve example test framework (#22833)
Updated as discussed in previous Test Working Group.
2017-03-23 19:42:12 -07:00
Matt Davis
73f50b4f9f fix Windows env handling (#22927)
* fixes #22441
* fixes #22655
* moves all env handling into the exec wrapper; this should work for everything but raw, which is consistent with non-Windows.
2017-03-23 17:48:15 -07:00
Jordan Borean
f1ab879bb6 win_reg_stat change the module parameters for standardisation (#22732) 2017-03-23 15:15:28 -07:00
Matt Clay
45951a69a6 Rewrite ansible-pull tests to use local repo. (#22821) 2017-03-21 00:30:02 -07:00
Matt Clay
3585d3d368 Add missing needs/root alias to file test. (#22800) 2017-03-20 14:11:16 -07:00
Matt Clay
b7c80dbb7e Disable failing MySQL tests on FreeBSD. (#22798) 2017-03-20 09:52:56 -07:00
Matt Clay
93d9b04f1d Fix uri options test to work again. 2017-03-17 22:28:54 -07:00
Matt Clay
011b324638 Do not run win_chocolatey in CI tests.
The test is failing repeatedly.
2017-03-17 08:57:44 -07:00
Ricardo Carrillo Cruz
6e56a61535 Add ios_banner module (#22687)
With unit and integration tests.
2017-03-16 16:35:44 +01:00
Dag Wieers
72e7927dd5 win_scheduled_task: Added frequency: once and check_mode support (#22611)
* win_scheduled_task: Added frequency: once and check_mode support

This patch includes:
- Renamed `execute:` parameter to `executable:`
- Renamed `argument:` parameter to `arguments:`
- Implemented `frequency: once` support
- Implemented check_mode support
- Fix idempotency issue related to empty description
- Added integration tests

* Improve the integration test structure

I think this is a great way to test normal mode and check-mode from the same playbook.

* Small fixes after review
2017-03-15 07:11:24 -07:00
Jordan Borean
6ce338d29c win_service Added -Force option and minor cleanup (#22598)
* win_service Added -Force option and minor cleanup

* Changed parameter and fixed typos
2017-03-14 18:53:31 -07:00
Matt Davis
ce56da69b2 make windows async ... async (#22624)
Fixes #22575 - issue under new exec wrapper where unconstrained handle inheritance (for stdin) caused WinRM to block on breakaway processes. Uses explicit handle inheritance to ensure that only stdin read handle gets inherited. Adds test to ensure that async is actually async.
2017-03-14 16:37:55 -07:00
Peter Sprygada
39c38bf30d fixes candidate var type in junos shared lib (#22551)
* candidate var can now be string, list or element
* fixes minor bug in junos_template for backup argument
* disabled invalid integration test for junos_template
2017-03-13 07:27:45 -04:00
Peter Sprygada
2b2072a8c9 roll up of fixes and updates for junos modules (#22543)
* removes cli functions
* adds comment and confirm to arguments
* implements zeroize argument
* fixes get_diff function in junos shared lib to return diff
* lots of minor bug fixes in junos_config
* minor syntax fixes in junos_netconf
* updates netconf integration tests
2017-03-12 11:45:00 -05:00
John R Barker
89e4226051 add missing files (#22496) 2017-03-10 15:29:36 +00:00
John R Barker
5dac2ee00c Test eos_banner (#22201)
* eos_banner docs improvements

* run eos_banner tests

* basic eos_banner tests

* remove trailing newlines

* remove hack

* Various eos_banner fixes

No unicode tests, as the device doesn't support it
Correctly set provider
result.command should be empty list if no changes

* test eos_banner over eapi

* revert docs changes, moved to separate PR
2017-03-10 15:20:09 +00:00
John R Barker
41f5648c44 Test system (#22420)
* ios_system

* tests for ios_system

* tests for *_system

* working ios_system on cli

* Typo

* Loopback10 (single word, upeprcase)

* Revert docs changes

* Working iosxr_system tests

* eos, not nxos

* nxos_system
2017-03-08 12:21:45 -07:00
Dave Kasberg
8102e66425 Fixes for idempotent issue in cnos_vlan module and fixes for vlag/portchannel tests. (#22385)
* misc fixes for idempotent issue in cnos_vlan

* Fix up hyperlinks in module documentation

* spell correction
2017-03-08 17:09:17 +00:00
Alex Lo
8e910cce8a ec2_group: description is only required when group state is present (#19791)
* description is only required when group state is present

also note that AWS requires a non-empty description when creating a security group

* clarify description requirement
2017-03-07 20:55:17 +01:00
Marius Gedminas
15c7288ab9 Show diff when file: state=link changes the symlink target (#22243)
* Show diff when file: state=link changes the symlink target

* Integration test for symlink target change

* Also check soft link idempotency
2017-03-06 11:29:20 -05:00
Peter Sprygada
6c8025ce5c adds eos_system integration tests (#22214)
* adds integration test cases
* updates eos_system with minor bug fixes
2017-03-02 21:20:17 -06:00
Peter Sprygada
911600acf9 update junos_command integration tests (#22213)
fixes integration test to check for full rpc-reply string when
converted from xml.  This is a change from 2.2 as the rpc-reply tag
is no longer stripped off
2017-03-02 16:46:23 -06:00
Robin Roth
3afc993f3a Fix git clone tag with depth=1
* Fixes #21316, add testcase based on this
* Add option `--branch NAME` to git clone command in case of branch or
tag in combination with depth=1
  * This option should work back to at least git 1.8 and thus on all
  supported distributions
* Provide better warning if depth is dropped
2017-03-02 14:11:50 -08:00
Dave Kasberg
3c44644c08 New module: cnos_vlag (#21535)
* VLAG module and tests

* Correct the link in the description of the module

* Move roles to integration/roles directory and remove aliases file.

* update module short description

* Change module directory name to Lenovo

* change import cnos statement
2017-03-02 16:11:37 +00:00
Dave Kasberg
9258b62707 New module: cnos_conditional_template (#21794)
* Initial commit of cnos_conditional_template

* fix compile error in module, change module short description, move roles to integration/roles

* fix line length

* Change module directory name to Lenovo

* change import cnos statement
2017-03-02 16:11:19 +00:00
Dave Kasberg
059a0d07a4 New module: cnos_condition_command (#21793)
* Initial commit of cnos_condition_command

* fix pep8 error of line too long

* fix pep8 tab/space issue

* Move roles to integration/roles directory and remove aliases file.

* Update module short description

* Change module directory name to Lenovo

* change import cnos statement
2017-03-02 16:11:09 +00:00
Dave Kasberg
2f126829bf Initial cnos_image commit (#21789)
* Initial cnos_image commit

* corrected required/default values in documentaiton

* fixed choices for imgtype

* removed a colon

* Move roles to integration/roles directory and remove aliases file.

* update module short description

* Change module directory name to Lenovo

* change import cnos statement
2017-03-02 16:11:00 +00:00
Dave Kasberg
70af90436a New module: cnos_rollback (#21788)
* Initial commit for cnos_rollback

* Move roles to integration/roles directory and remove aliases file.

* update module short description

* Change module directory name to Lenovo

* change import cnos statement
2017-03-02 16:10:27 +00:00
Dave Kasberg
267cc0edfc New module: cnos_backup (#21787)
* Initial commit of cnos_backup

* Move roles to integration/roles directory and remove aliases file.

* update module short description

* change import cnos statement
2017-03-02 16:10:14 +00:00
Dave Kasberg
6549c70091 New module: cnos_template (#21786)
* Initial cnos_template commit

* fix compile errs, update short description, move roles to integration/roles

* now commit the module

* Change module directory name to Lenovo

* change import cnos statement
2017-03-02 16:10:04 +00:00
Dave Kasberg
c112539538 New module: cnos_command (#21785)
* Initial commit for cnos_command

* Move roles to integration/roles directory and remove aliases file.

* update module short description

* Change module directory name to Lenovo

* change import cnos statement
2017-03-02 16:09:45 +00:00
Dave Kasberg
d96aa55d4c New module: cnos_save (#21754)
* initial comment of cnos_save

* Move roles to integration/roles directory and remove aliases file.

* update the module short description

* Change module directory name to Lenovo

* change import cnos statement
2017-03-02 16:09:33 +00:00
Dave Kasberg
2e6df415b6 New module: cnos_showrun (#21752)
* initial commit of cnos_showrun

* Move roles to integration/roles directory and remove aliases file.

* update module short description

* Change module directory name to Lenovo

* change import cnos statement
2017-03-02 16:09:00 +00:00
Dave Kasberg
e5ceb3a99c Fix for cnos.py utility file for Python3.5 (#21750)
* fix in cnos.py utility file

* fix compile errors in cnos.py, update module short description in cnos_vlan.py, move vlan roles under integration/roles

* corrections in readme

* Change module directory name to Lenovo

* change import cnos statement
2017-03-02 16:08:49 +00:00
Dave Kasberg
709b03d1c8 New module: cnos_facts (#21743)
* cnos_facts module commit

* fix options string

* Move roles to integration/roles directory and remove aliases file.

* update module short description

* Change module directory name to Lenovo

* change import cnos statement
2017-03-02 16:08:23 +00:00
Dave Kasberg
4bf20fb174 New module: cnos_interface (#21613)
* initial commit

* fix tab/space issue

* fix space issue in vars/main.yml

* Move roles to integration/roles directory and remove aliases file.

* update module short description

* change module directory name to Lenovo and change import cnos statement
2017-03-02 16:07:21 +00:00
Dave Kasberg
14c2c787cb New module: cnos_portchannel (#21589)
* cnos_portchannel initial commit

* Fix line length issue in module

* fix whitespace on line 90

* correct yamllint space issue

* Move roles to integration/roles directory and remove aliases file.

* update module short description

* Change module directory name to Lenovo

* change import cnos statement
2017-03-02 16:07:01 +00:00
Dave Kasberg
3ed34032cd New module: cnos_bgp (#21587)
* cnos_bgp module

* Move roles to integration/roles directory and remove aliases file.

* update module short description

* Change module directory name to Lenovo

* change import cnos statement
2017-03-02 16:06:09 +00:00
Matt Davis
a60d358e56 Revert "win_service_stat: Added module" (#22184) 2017-03-02 01:34:11 -08:00
Jordan Borean
778dc9ad38 win_copy: added remote and content options (#21546)
* win_copy: added remote and content options

* readded comment about original_basename accidentally removed
2017-03-01 22:35:03 -08:00
Jordan Borean
f4f09c9dbf Rewrote win_service with more options/check_mode (#19143) 2017-03-01 22:17:16 -08:00
Jordan Borean
3da806f32a win_service_stat: Added module (#21944) 2017-03-01 22:04:57 -08:00
Peter Sprygada
392d9e2aa6 updates prepare_nxos_tests to use nxos_nxapi module (#22150)
replaces nxos_config with nxos_nxapi
2017-03-01 19:36:03 +00:00
Dag Wieers
52959ebdc1 wait_for_connection: Wait for system to become reachable (#20011)
* WIP: wait_for_connection: Wait for system to be reachable

This action plugin allows to check when a system is back online and
usable by Ansible.

As an example, when doing a SysPrep and running Enable-WinRM.ps1, it
takes between 10 to 20 seconds between the WinRM TCP port to open, and
it actually being able to server Ansible requests. This time is variable
and depends on the boot process.

Current implementation is specific for Windows (WinRM) only, this will
be fixed shortly.

This fixes #19998

* Support other transport types

* Various improvements

- Fix reported typo
- Add transport_test support in accelerate plugin
- Ensure port is an integer

* Improve examples

* Small fixes

- Use correct ConfigureRemotingForAnsible.ps1 script name
- Only use win_ping when remote shell is known to be Powershell
- Add integration tests to CI framework
2017-03-01 11:00:49 -08:00
Matt Martz
6e8e90ceb4 Warn when using the deprecated HEADER_ arguments (#20236)
* Make sure the uri module warns about using the deprecated HEADER_ arguments, so that we can actually deprecate in a future version

* Use module.deprecate

* No need to de-dupe ourselves, looks like it is done somewhere I didn't initially see
2017-03-01 11:35:48 -05:00
John R Barker
2f6213a219 result.commands (not .updates) (#22139) 2017-03-01 13:10:40 +00:00
John R Barker
9f49d4b8f4 iosxr tests to work with 2.3 (#21998) 2017-02-27 14:37:06 +00:00
Peter Sprygada
f95a11a9db fixes eos_eapi to error on wrong transport (#21993) 2017-02-27 09:20:08 -05:00
jhawkesworth
a1047e6273 Adds integration test steps to win_regedit test to cover Extras 2090 (#15641)
* Adds integration test steps to win_regedit test to cover Extras 2090

* Fixed merge conflict and error in win_regedit integration tests

* fixed pep8 space after comma requirement discovered by ci build
2017-02-27 13:05:00 +00:00
Peter Sprygada
1c3d448a29 updates eos_facts integration test cases (#21988) 2017-02-27 07:43:00 -05:00
Dag Wieers
a66d5dcc43 win_chocolatey: Add integration tests (#21930)
And also fix a known issue.
2017-02-27 11:36:52 +00:00
Peter Sprygada
8dbb12a9c4 adds integration tests for nxos_mtu (#21969) 2017-02-26 09:42:41 -05:00
Peter Sprygada
4c354c9c70 adds integration tests cases for nxos_feature (#21966) 2017-02-26 08:12:57 -05:00
Peter Sprygada
0cb2019293 roll up of bug fixs for nxos_evpn_global (#21961)
* updates nxos_evpn_global module
* adds integration test cases
* adds unit test cases
2017-02-26 06:45:26 -05:00
Nathaniel Case
9b9ed59d98 Vyos config fixes (#21862)
* Fix vyos signatures to match new versions

* Fix test cases referring to 'updates' instead of 'commands'

* I think this is an artifact of `connection: network_cli`?
2017-02-25 21:14:40 -05:00
Peter Sprygada
a284c3f7ea roll up of fixes for nxos_facts (#21954)
* fixes commands to work with nxapi
* updates test case timeouts
2017-02-25 17:48:09 -05:00
Peter Sprygada
16a39639f5 fixes minor bugs in eos_eapi module (#21925)
* module will now check protocol running state before return
* warns on config argument no longer being needed
* lots of integration test cases updated
* updates unit and integration test cases for state check

fixes #21908
2017-02-25 17:18:46 -05:00
Peter Sprygada
7c3957cc0c fixes nxos_template integration test case (#21953)
* test case implemented invalid argument: match
* changed argument to force: yes
2017-02-25 16:55:17 -05:00
Peter Sprygada
1f9b503e89 fixes issue with config parents on eos modules (#21923)
eos_config module wasn't respecting config block path (parents).  This
patch fixes that problem.  Also fixes a number of integration tests
cases

fixes #21903
2017-02-25 16:40:13 -05:00
Peter Sprygada
14c05d9e2b roll up of fixes for nxos_config (#21949)
* fixes provider to not log entries
* fixes nxapi send_request with config statements
* fixes nxapi get_config()
* updates nxos_config integration tests
2017-02-25 16:36:00 -05:00
Peter Sprygada
01ac1bc6e5 roll up of fixes from nxos integration tests (#21948)
* now fails nxos_nxapi if the transport=nxapi
* fixes typos in nxos_nxapi integration tests cases
2017-02-25 13:17:04 +00:00
Matt Davis
7798297317 temp disable Windows batch test 2017-02-24 11:10:14 -08:00
Adrian Likins
8830cde28d Fix 'task name is not templated in retry callback' (add task_name property to TaskResult) (#21214)
Fix 'task name is not templated in retry callback'

Add a task_name property to TaskResult that knows to
check in TaskResult._task_fields.

Add integration test for v2_retry_runner callback

Fixes #18236
2017-02-24 12:33:24 -05:00
Adrian Likins
a2907c4d5c Add smoke/intg tests for vault cli (#21679)
Add smoke/intg tests for vault cli
2017-02-24 10:30:54 -05:00
Dag Wieers
aebf6c8c92 powershell.ps1: Ensure Fail-Json() works with Hashtables (#21697)
Without this change a dictionary $result object would be emptied if it
is anything but a PSCustomObject. Now we also support Hashtables.
2017-02-23 23:08:19 -08:00
Peter Sprygada
381f7209f8 fixes issue in nxos_config when retrieving current config (#21843)
When parsing the configuration, the wrong indent level was set so the
configurations could not be properly compared.  Also noted that
defaults: yes needed to be added to the integration tests to make the
test cases valid, which is also included in this patch

fixes #21828
2017-02-23 16:59:29 -05:00
Matt Clay
cba91c7f44 Test placement (#21801)
* Fix test placement and update messaging.
* Add note about group selection.
2017-02-22 12:43:45 -08:00
Matt Clay
9462707f21 Test www.redhat.com instead of docs.ansible.com. 2017-02-21 20:24:22 -08:00
Jordan Borean
a80251ff02 Added win_region module (#19147) 2017-02-20 11:50:27 +00:00
Matt Davis
8527013fbe Complete rewrite of Windows exec wrapper (#21510)
* supports pipelining for faster execution
* supports become (runas), creates interactive subsession under WinRM batch logon
* supports usage of arbitrary module_utils files
* modular exec wrapper payload supports easier extension
* integrates async wrapper behavior for pipelined/become'd async
* module_utils are loaded as true Powershell modules, no more runtime modifications to module code
2017-02-17 00:09:56 -08:00
Tom Melendez
8dcec1b659 [GCE] gce_net integration test (#21502) 2017-02-16 16:39:25 -05:00
Dave Kasberg
dbb452100a New module: cnos_vlan and various utility files (#21107)
* First set of CNOS network modules

Two modules: cnos_vlan and cnos_command.  First 2 of 17 CNOS modules

* Revert "First set of CNOS network modules"

This reverts commit 63da68b2a857e622b449f514050eed25fbcf0a35.

* cnos_vlan module

First of 17 CNOS modules

* Modify playbook for cnos_vlan module testing

* fix issue found by shippable in cnos.py

* cnos_backup module

* Fix Python3.5 compilation error

* remove cnos_backup module from this PR

* add aliases file so that testing of the cnos_vlan module will be skipped.

* Use empty aliases file

* utility scripts under module_utils changed to BSD license.

* clean up PEP8 issues, add cnos_vlan tests

* remove blank lines from yml files

* remove more blank lines

* remove even more blank lines

* Revert "remove even more blank lines"

This reverts commit bb3998661ce387260340bca39d5f146f5ec54f44.

* re-submit last commit

* fix blank lines in this file under parsing

* fix yamllint errors in doc section of cnos_vlan

* Fix errors reported by Sanity check using validate-modules

* change test playbook to include tasks for all modules

* fix additional pep8 errors

* more fixes, plus fix for python3

* fix for empty options section, removed unnecessary documentation

* fix up documentation section

* Correct options capitalization

* fix example section, add options

* Fix example section of the documentation
2017-02-16 08:11:39 +00:00
Adrian Likins
499d3a1b53 add a intg test for issue #19835 (#21487)
(postgresql_user changing role_attr_flags with no_password_checks
fails)
2017-02-15 15:28:29 -05:00
Michael Scherer
6fae1d2bbf Make password lookup treat /dev/null as a special case
I have from time to time a need of random password without
wanting to write them down (one example is mailman list creation,
that requires a password to be given to be sent to the list owner).

But using /dev/null do not return null, but the empty string, which
doesn't generate a password at all and so do not achieve my use case.
2017-02-15 12:15:09 -08:00
Toshio Kuratomi
e4a80965de Test the slurp module 2017-02-15 11:14:03 -08:00
Toshio Kuratomi
99fd2328af Fix hash filter for non-ascii strings and Python3
hashlib hashes operate on byte strings.  When given a text string on
Python3, hashlib backtraces.  When given a text string on Python2,
hashlib will backtrace if the string contains non-ascii characters.
Encode the text string to utf-8 prior to hashing to avoid this problem.

Fixes #21452
2017-02-15 10:50:10 -08:00
Matt Clay
9389fafae8 Enable MySQL tests on FreeBSD. 2017-02-14 12:39:48 -08:00
John R Barker
59306e2aef Add files via upload (#21062) 2017-02-11 12:12:32 +00:00
Jordan Borean
5cabe420ea Added win_reg_stat module (#19145) 2017-02-09 14:47:00 -08:00
Jordan Borean
1c885cb848 Added fix for win_file with broken symlinks (#19146) 2017-02-08 18:49:49 -08:00
Jordan Borean
1ce5fcf061 Added win_find module (#19144) 2017-02-08 22:19:08 +00:00
Marius Gedminas
2efb692cc4 known_hosts: support --diff (#20349)
* known_hosts: support --diff

* known_hosts: support --diff also without --check

* Add unit tests and fix incorrect diff in one corner case

Tests are good!

* Refactor for readability

* Python 3 compat

* More Python 3 compat

* Add an integration test for known_hosts

* Handle ssh-keygen -HF returning non-zero exit code

AFAICT this is a bug in ssh-keygen in some newer OpenSSH versions
(>= 6.4 probably; see commit dd9d5cc670):
when you invoke ssh-keygen with -H and -F <host> options, it always
returns exit code 1.  This is because in ssh-keygen.c there's a function
do_known_hosts() which calls

  exit (find_host && !ctx.found_key);

at the end, and find_host is 1 (because we passed -F on the command line),
but ctx.found_key is always 0.  Why is found_key always 0?  Because the
callback passed to hostkeys_foreach(), which is known_hosts_hash(),
never bothers to set found_key to 1.

* This test does not need root

* Avoid ssh-ed25519 keys in sample known_hosts file

Older versions of OpenSSH do not like them and ssh-keygen -HF
aborts with an error when it sees such keys:

  line 5 invalid key: example.net...
  /root/ansible_testing/known_hosts is not a valid known_hosts file.

* Fix Python 3 errors

Specifically, the default mode of tempfile.NamedTemporaryFile is 'w+b',
which means Python 3 wants us to write bytes objects to it -- but the
keys we have are all unicode strings.
2017-02-08 09:56:03 -05:00
Ricardo Carrillo Cruz
0adca6b7d4 Set block indentation to 1 on iosxr templates (#21105)
Network devices in the lab have by default an indentation of 1 for
sub-sections, and so does the netcfg.NetworkConfig constructor
indent param.
This will fix reported issue 21055, and make the integration tests
to pass.

Fixes #21055
2017-02-07 21:13:20 +01:00
Brian Coca
c86a17b7a0 refactoring async
- centralized skipping
- also fixed module name broken by previous refactor
- let action modules handle async processing
- moved async into base action class's module exec
- action plugins can now run final action as async
- actually skip copy if base skips
- fixed normal for new paths
- ensure internal stat is never async
- default poll to 10 as per docs
- added hint for callback fix on poll
- restructured late tmp, now a pipeline query
- moving action handler to connection as networking does
- fixed network assumption invocation is always passed
- centralized key cleanup, normalized internal var
- _supress_tmpdir_delete now in _ansible_xxx and gets removed from results
- delay internal key removal till after we use em
- nicer tmp removing, using existing methods
- moved cleanup tmp flag to mking tmp func
2017-02-06 19:32:00 -05:00
Matt Clay
ccb1b742f5 Fix win_stat test for changes from PR #20876
The changes to win_file in that PR resulted in changes to file
sizes and file hashes expected by the win_stat tests.
2017-02-03 12:58:11 -08:00
Brian Coca
a2c38c47aa added docs for vault and made trigger shorter: !vault (#20985)
* added docs for vault and made trigger shorter: !vault

* added single var valuting

* Update playbooks_vault.rst

Edit pass for spelling and grammar. Ship it!

* Update playbooks_vault.rst

Typo fixes.
2017-02-03 15:28:50 -05:00
jhawkesworth
2c70450e23 Fix 'touch' mode so it creates zero size files. (#20876) 2017-02-03 13:36:47 +01:00
Toshio Kuratomi
1df7d95cec Module utils default path (#20913)
* Make the module_utils path configurable
* Add a config value to define the path site module_utils files
* Handle module_utils that do not have source as an error
* Make an integration test for module_utils envvar working
* Add documentation for the ANSIBLE_MODULE_UTILS config option/envvar
* Add it to the sample ansible.cfg
* Add it to intro_configuration.
* Also modify intro_configuration to place envvars on equal footing with
  the config options (will need to document the envvar names in the
  future)
* Also add the ANSIBLE_LIBRARY use case from
  https://github.com/ansible/ansible/issues/15432 so we can close out
  that bug.
2017-02-02 17:48:53 -08:00
Dag Wieers
3dbce15ccb win_shortcut: Add missing $check_mode definition + bugfix + tests (#20911)
* win_shortcut: Add missing $check_mode definition

For some reason this entry was missing, possible a merge-conflict gone
wrong :-(

* Added integration tests and bugfix

Add missing changes.
2017-02-02 10:29:56 +01:00
Dag Wieers
bbe2903d63 Fix broken Shippable 2017-01-31 16:47:16 -08:00
John R Barker
553b6151ad iosxr tests: Initial work for 2.3 (#20883)
Ensure a loopback device exists for testing
Remove provider:
Default is to run task on Network, device, use delegate_to: localhost for local tasks.
2017-01-31 19:10:14 +00:00
Toshio Kuratomi
5c38f3cea2 Combine jimi-c and bcoca's ideas and work on hooking module-utils into PluginLoader.
This version just gets the relevant paths from PluginLoader and then
uses the existing imp.find_plugin() calls in the AnsiballZ code to load
the proper module_utils.

Modify PluginLoader to optionally omit subdirectories (module_utils
needs to operate on top level dirs, not on subdirs because it has
a hierarchical namespace whereas all other plugins use a flat
namespace).

Rename snippet* variables to module_utils*

Add a small number of unittests for recursive_finder

Add a larger number of integration tests to demonstrate that
module_utils is working.

Whitelist module-style shebang in test target library dirs

Prefix module_data variable with b_ to be clear that it holds bytes data
2017-01-31 09:41:24 -08:00
Matt Clay
cb76200c7d PEP 8 E111 & E114 cleanup. (#20838) 2017-01-30 15:01:47 -08:00
Matt Clay
95789f3949 PEP 8 whitespace cleanup. (#20783)
* PEP 8 E271 whitespace cleanup.
* PEP 8 W293 whitespace cleanup.
* Fix whitespace issue from recent PR.
2017-01-27 15:45:23 -08:00
Jordan Borean
971783a7fd Feature/win stat extra info (#19148)
* Added more return results to win_stat

* Changed Win2012 methods to support older versions in setup

* staging of the tests to work with older servers
2017-01-27 14:51:12 -08:00
Matt Clay
63b1e0c277 Fix infrequent PEP 8 issues. 2017-01-27 14:06:21 -08:00
Trond Hindenes
679a3cb1cc Merge pull request #20599 from dagwieers/win_regedit-cleanup
win_regedit: Cleanup, check/diff mode support, HKCC fix
2017-01-27 18:09:27 +01:00
Dag Wieers
0e80ba1867 Fix the integration test to comply recent changes 2017-01-26 20:06:46 +01:00
Matt Clay
31d6b6ef67 Run postgresql tests on FreeBSD. (#20676)
* Use vars for user, group and locale suffix.
* Switch tests from `es_MX` to `es_ES`.
* Enable postgresql tests on freebsd.
* Work-arounds for service restart on freebsd.
2017-01-25 18:45:28 -08:00
Matt Clay
5d5e5e25a2 Only set git config during test if unset.
This makes the git test less destructive.
2017-01-25 18:05:17 -08:00
Patrick Ogenstad
ac527ef86f Check for removal not allowed errors (#19251) 2017-01-25 13:05:44 +00:00
Matt Clay
d8b18d79fa Disable assertions that fail on WS 2016. 2017-01-24 20:08:50 -08:00
Matt Clay
d6cdd91511 Remove win_fetch from CI due to instability. 2017-01-24 17:33:11 -08:00
Ansible Test Runner
ff1a732ffd Increase timeout for http server in uri test. 2017-01-24 14:20:19 -08:00
Matt Clay
836e0b59d2 Fix git remote url change detection. (#20587)
* Fix git remote url change detection.

When comparing paths, unfrackgitpath must be called on both sides
of the comparison. Otherwise comparisons involving symlinks will
return incorrect results.

* Re-enable git test on OS X.

* Return None from unfrackgitpath when path is None.
2017-01-23 16:09:42 -08:00
Matt Clay
61e6e7868c Improve jinja2 test coverage. (#20533)
* Run `template` test on latest jinja2 version.
* Update jinja2 install for groupby_filter.
* Clean test output dir for each test.
2017-01-20 16:38:52 -08:00
Matt Clay
d87ee022bb Enable more ios tests on Shippable. 2017-01-20 13:26:59 -08:00
John R Barker
11c15bbbaf Disable IOS tests for the moment (#20524) 2017-01-20 20:24:54 +00:00
John R Barker
a12033a6e0 integration/targets/ios_* work to support IOS (#20414)
* WIP

* Don't set connection: network_cli in the playbook

* ios_config tests now passing

* Create test loopback device

* delete

* ios_* pass (apart from ios_facts)

* Remove provider lines
2017-01-20 20:18:12 +00:00
James Cammarata
188c3c608a Don't restrict local jinja2 variables to those that start with l_
Per a change in jinja2 2.9, local variables no longer are prefixed
with l_, so this updates AnsibleJ2Vars to pull in all locals (while
excluding some) regardless of name.

Fixes #20063

(cherry picked from commit 4d49b317929b86e1fc1b0cbace825ff73b372dc7)
2017-01-20 07:15:51 -06:00
Matt Clay
9213d0c5b0 Fix and enable more tests for osx and freebsd. (#20482)
* Fix `iterators` test for osx.
* Enable `git` test for osx.
* Enable `get_url` test for osx and freebsd.
* Remove unused SNI_URI from uri test.
* Use ansible hosted SNI host oustside docker.
* Enable `uri` test for osx and freebsd.
* Enable `gathering_facts` test for osx.
* Skip single task on osx until test is fixed.
2017-01-19 17:10:33 -08:00
Matt Martz
537b3b75a6 Add jinja2 groupby filter override to cast namedtuple to tuple. Fixes #20098 (#20362)
* Add jinja2 groupby filter override to cast namedtuple to tuple. Fixes #20098

* Address some of the requested changes

* Quoting

* Print the python path and version

* Be less explicitly verbose, rely on implicit verbosity
2017-01-19 11:39:59 -08:00
Matt Clay
a8fb6f0958 Use jinja2 import instead of pip to get version.
This resolves issues with older versions of pip.
2017-01-19 11:06:47 -08:00
Andrew Gaffney
ac51266e8f Add pipeline-ish method using dd for file transfer over SSH (#18642) 2017-01-19 12:31:14 -05:00
Matt Davis
b2a16379c8 new module: win_path (#20073) 2017-01-17 20:21:04 -08:00
gaudenz
08e08ac775 new module cloudscale_server (#20175) 2017-01-17 23:15:20 +01:00
David M. Lee
fde551fa2a Adding support for Amazon ECR (#19306)
* Adding support for Amazon ECR

This patch adds a new module named ecr, which can create, update or
destroy Amazon EC2 Container Registries. It also handles the management
of ECR policies.

* ecs_ecr: addressed review feeback

 * Renaming ecr to ecs_ecr
 * Fixed docs
   * Removed bad doc about empty string handling
   * Added example of `delete_policy`
 * Removed `policy_text` option; switched policy to `json` type so
   it can accept string or dict
 * Added support for specifying registry_id
 * Added explicit else after returned if clauses
 * Added `force_set_policy` option
 * Improved `set_repository_policy` error handling
 * Fixed policy comparisons when AWS doesn't keep the ordering stable
 * Moved `boto_exception` into the module
2017-01-17 14:45:43 -05:00
John R Barker
64432c8f7c WIP: net_command: Initial tests for VyOS (#20147)
* Conditional include on ansible_network_os

* copy & paste error

* More tests

* More tests

* junos tests (based on vyos)

* remove excessive whitespace

* Pass in ansible_network_os

* net_command for ios

* consistent debug

* wrapp line

* ansible-test changes made in another PR

* ansible-test changes made in another PR
2017-01-17 11:06:34 +00:00
Matt Clay
893e2e0d35 Use ansible-test in integration test README. 2017-01-16 19:01:59 -08:00
Matt Clay
ad65274643 Only test map on jinja2 >= 2.7 2017-01-16 13:41:42 -08:00
Toshio Kuratomi
32fbd4ba24 Test the extract filter without the map filter.
map + extract is the usual way to use it but map isn't available on
older versions of jinja2 that we still work with.  Test extract even on
those versions.
2017-01-16 13:13:34 -08:00
Matt Martz
d25a70846f Only add Content-Type if not specified in headers. Fixes #20046 (#20234)
* Only add Content-Type if not specified in headers. Fixes #20046

* Update documentation to indicate body_format will not override Content-Type if specified in headers
2017-01-13 13:19:38 -05:00
Matt Clay
f534573dcf Enable first network tests on Shippable. (#20208) 2017-01-12 18:23:53 -08:00
berenddeschouwer
b1c57ea443 Installroot OS version check fix (#20180)
Cast to int before checking the OS version.
This prevents the DNF tests from running on
Fedora < 23
2017-01-12 18:02:35 -08:00
Alvaro Aleman
1b2ad94496 Configurable fact path (#18147)
* Make fact_path configurable

* Add docs for fact_path

* Add tests for localfacts

* Default fact gathering settings in PlayContext
2017-01-12 10:49:04 -05:00
Robin Roth
4976429e42 Zypper: Fix update_cache in checkmode (#20143)
Fixes #20139

Refresh does not support dry-run, so don't run it in check mode.
Also add a test for this case.
2017-01-11 18:47:16 +00:00
John R Barker
ec36b4968c Junos aws (#20083)
* junos Use inventory_hostname_short
* Basic Test for validating VyOS bringup in AWS
2017-01-10 11:11:00 -08:00
Matt Clay
cc3d131f50 Fix group_by test to work with jinja2 >= 2.9. 2017-01-09 15:20:34 -08:00
John R Barker
b8ee80ac4e junos Use inventory_hostname_short (#20061)
Don't use hardcoded hostnames
2017-01-09 20:15:16 +00:00
Steve Bussetti
8a8090e658 test related to pulls: #19257 / #19057 (#19346) 2017-01-09 12:08:56 -08:00
John R Barker
fb3bef7f46 Use inventory_hostname_short (#20054)
When using AWS we have to use the full domain name in the inventory file, which
we rather than the short name. This change avoids that ending up being
set in the tests.
2017-01-09 17:21:04 +00:00
Robin Roth
cd02d0ca1d Cleanup git tests (#19737)
* Cleanup git tests
* Split git tests in seperate files
* Remove use of repo_depth_url
* Use native yaml
* Remove unnecessary remote/local clones
* Fix newlines for yamllint
* If the hash is valid (full-length) but doesn't exist, git returns 128 instead of 1.
* Ensure git doesn't use hardlinks for shallow clones
2017-01-06 14:38:53 -08:00
Toshio Kuratomi
95df8977b6 Fix yum install root (#19925)
* Reenable yum install root tests

No need for sos to test installroot.  Something with less deps works
just as well.

* Fix yum installroot.

Fix module import to use fail_json when the modules aren't installed.

Remove wildcard imports

* Lsat task is supposed to remove sos so make that happen
2017-01-05 10:42:43 -08:00
Toshio Kuratomi
84e755b252 Disable the yuminstallroot tests that are failing until the submitter can take a look. 2017-01-05 00:32:15 -08:00
Toshio Kuratomi
cd2516bf8d Revert "Revert "Add --installroot to YUM and DNF modules, issue #11310""
This reverts commit b73ddd5212.
2017-01-05 00:24:20 -08:00
Matt Clay
b73ddd5212 Revert "Add --installroot to YUM and DNF modules, issue #11310" 2017-01-05 00:14:33 -08:00
berenddeschouwer
1fdcda0996 Add --installroot to YUM and DNF modules, issue #11310 (#19861)
* Add --installroot to YUM and DNF modules, issue #11310

This continues ansible-modules-core#1558, and
ansible-modules-core#1669

Allow specifying installroot for the yum and dnf modules
to install and remove packages in a location other than /.

* Remove empty aliases

* Simpler installroot set default logic
2017-01-04 19:20:00 -08:00
Matt Clay
95b59cd76c Remove needs/privileged from postgresql test. (#19907)
* Remove `needs/privileged` from postgresql test.
* Add python 3 support to postgresql tests.
2017-01-04 16:41:18 -08:00
Matt Clay
709a3aa42b Run service test on py3 + unprivileged on docker. (#19841)
* Run service test on py3 + unprivileged on docker.
* Fix service integration test for python 3.
2017-01-04 15:55:57 -08:00
Toshio Kuratomi
e98c0a3009 Fix locale_gen to compare native strings rather than mixing byte and text strings
Fixes #19426
2017-01-04 10:11:33 -08:00
Rene Moser
6c2af29659 tests: add handler listen test cases 2017-01-03 15:00:00 -08:00
Robin Roth
9f2d22425b Run tests on opensuse42.2
* add to shippable
* add to completion/readme
* Fixes #18645
2017-01-03 12:20:10 -08:00
Matt Clay
68346b128f Update Fedora tests to use releases 24 and 25. 2017-01-03 11:12:32 -08:00
John R Barker
c252ac1a7d Make tests run on fresh install (#19566) 2017-01-03 10:53:16 -05:00
Marius Gedminas
b0b7a636d8 authorized_key: support --diff (#19277)
* Refactoring: split readkeys() into readfile() and parsekeys()

* Refactoring: split writekeys() into writefile() and serialize()

* authorized_key: support --diff

* Refactoring: remove no-longer used readkeys()/writekeys()

* Integration test for authorized_key in check mode
2017-01-03 09:32:32 -05:00
Tom Melendez
d09ad82e71 Add regex support to gce_tag module, add unit tests and update integration test. (#19087)
The gce_tag module can support updating tags on multiple instances via an instance_pattern field.  Full Python regex is supported in the instance_pattern field.

'instance_pattern' and 'instance_name' are mutually exclusive and one must be specified.

The integration test for the gce_tag module has been updated to support the instance_pattern parameter.  Unit tests have been added to test the list-manipulation functionality.

Run the integration test with:

TEST_FLAGS='--tags "test_gce_tag"' make gce

Run the unit tests with:

python test/units/modules/cloud/google/test_gce_tag.py
2016-12-29 08:45:20 -05:00
Matt Davis
f96ac8bff0 fix multiple handler notifications (#19655)
Fixes #19647
Adds integration test to catch multiple handler notifications
2016-12-22 21:33:24 -08:00
Rob Cutmore
1da6a67c50 Add tests for Git remote URL changes (#16893)
* Update Git tests for set remote URL changes
* Git: report changed when needed in check mode
2016-12-22 13:46:47 -08:00
Dag Wieers
438cd6687f Added tests for sefcontext module 2016-12-22 13:29:13 -08:00
Will Thames
5f0815d7f4 Fix too-many-quote problem in setup_ec2 role
An inner single-quote pair breaks out of the outer single-quote
pair. Rather than escaping the inner quotes to protect against
this, just use the fact that `str()` is equivalent to `""`.
2016-12-22 10:18:56 -08:00
bart2
cdb35f4ce2 Fixes #16936 - Digest authentication not working in uri module (#18736) 2016-12-21 18:11:42 -08:00
Matt Clay
39f6368015 Update aliases file for uri integration test. 2016-12-14 20:36:50 -08:00
Matt Clay
80c559bdef Test sftp and scp for ssh connection. 2016-12-14 17:34:03 -08:00
Robin Roth
afca957396 Fix UnboundLocalError remote_head in git (#19057)
* Fix UnboundLocalError remote_head in git

Fixes #5505

The use of remote_head was a leftover of #4562.
remote_head is not necessary, since the repo is unchanged anyway and
after is set correctly.

Further changes:
* Set changed=True and msg once local_mods are detected and reset.
* Remove need_fetch that is always True (due to previous if) to improve
clarity
* Don't exit early for local_mods but run submodules update and
switch_version

* Add test for git with local modifications
2016-12-14 08:36:15 -08:00
Dag Wieers
7c71c678fa Fix regression in search path behaviour
This PR fixes a few issues:

- Missing role parent directory for relative paths
- Fix integration tests (add missing stage)
- Redesign integration tests
- Incorrect order with tasks-lookups
- Duplicate paths are listed
- Repetitive tasks/tasks or files/files were possible

==== using copy with test.txt
Before:
```
   491 1481281038.29393: search_path:
        /home/dag/home-made/ansible.testing/roles/test134/files/test.txt
        /home/dag/home-made/ansible.testing/roles/test134/tasks/test.txt
        /home/dag/home-made/ansible.testing/roles/test134/tasks/files/test.txt
        /home/dag/home-made/ansible.testing/roles/test134/tasks/tasks/test.txt
        /home/dag/home-made/ansible.testing/files/test.txt
        /home/dag/home-made/ansible.testing/test.txt
```

After:
```
 32505 1481280963.22418: search_path:
        /home/dag/home-made/ansible.testing/roles/test134/files/test.txt
        /home/dag/home-made/ansible.testing/roles/test134/test.txt
        /home/dag/home-made/ansible.testing/roles/test134/tasks/files/test.txt
        /home/dag/home-made/ansible.testing/roles/test134/tasks/test.txt
        /home/dag/home-made/ansible.testing/files/test.txt
        /home/dag/home-made/ansible.testing/test.txt
```

==== Using copy with files/test.txt

Before:
```
 31523 1481280499.63052: search_path:
        /home/dag/home-made/ansible.testing/roles/test134/files/test.txt
        /home/dag/home-made/ansible.testing/roles/test134/tasks/files/test.txt
        /home/dag/home-made/ansible.testing/roles/test134/tasks/files/test.txt
        /home/dag/home-made/ansible.testing/roles/test134/tasks/tasks/files/test.txt
        /home/dag/home-made/ansible.testing/files/files/test.txt
        /home/dag/home-made/ansible.testing/files/test.txt
```

After:
```
 31110 1481280299.38778: search_path:
        /home/dag/home-made/ansible.testing/roles/test134/files/test.txt
        /home/dag/home-made/ansible.testing/roles/test134/tasks/files/test.txt
        /home/dag/home-made/ansible.testing/files/test.txt
```

==== Using template with files/test.txt.j2
Before:
```
 30074 1481280064.15191: search_path:
        /home/dag/home-made/ansible.testing/roles/test134/templates/files/test.txt.j2
        /home/dag/home-made/ansible.testing/roles/test134/tasks/files/test.txt.j2
        /home/dag/home-made/ansible.testing/roles/test134/tasks/templates/files/test.txt.j2
        /home/dag/home-made/ansible.testing/roles/test134/tasks/tasks/files/test.txt.j2
        /home/dag/home-made/ansible.testing/templates/files/test.txt.j2
        /home/dag/home-made/ansible.testing/files/test.txt.j2
```

After:
```
 29201 1481279823.52752: search_path:
        /home/dag/home-made/ansible.testing/roles/test134/templates/files/test.txt.j2
        /home/dag/home-made/ansible.testing/roles/test134/files/test.txt.j2
        /home/dag/home-made/ansible.testing/roles/test134/tasks/templates/files/test.txt.j2
        /home/dag/home-made/ansible.testing/roles/test134/tasks/files/test.txt.j2
        /home/dag/home-made/ansible.testing/templates/files/test.txt.j2
        /home/dag/home-made/ansible.testing/files/test.txt.j2
```

This fixes #19048
2016-12-14 10:33:14 -05:00
Toshio Kuratomi
c6b42028c4 Fixes for uri under python3 and local (non-httptester) testing 2016-12-13 15:46:07 -08:00
Carlos E. Garcia
0b8011436d minor spelling changes 2016-12-13 13:51:13 -05:00
John R Barker
b915e790d3 veos-dut-01 is down, so use veos01 (#19299) 2016-12-13 14:40:52 +00:00
John R Barker
bdc4fa6b99 Add group_vars/ops.yaml (#19288)
Authentication details for ops modules. Was missed during porting
2016-12-13 11:54:51 +00:00
Robin Roth
5bf07454cb Test apache2 force (#18500)
* Use native yaml for apache2 test

* Test removal of default modules with force

a2enmod on debian has `-f`, but not on SUSE (runs there without force).
Therefore don't test that option on SUSE.
The docs already specify that the option is intended for Debian systems
only.
2016-12-12 14:19:47 -08:00
John R Barker
39af9b5a86 Make it clearer where the network tests live (#19242) 2016-12-12 18:09:10 +00:00
Robin Roth
e18bc0d6f0 Add test for auto_import_keys in zypper_repository (#17898)
* tests the bug found in ansible/ansible-modules-extras#3086
2016-12-09 09:47:56 -05:00
John R Barker
d22f7b4919 vyos: Don't run show commands that are over ANSIBLE_VYOS_TERMINAL_LENGTH (#18682) 2016-11-30 17:08:52 +00:00
Matt Clay
6bbd92e422 Initial ansible-test implementation. (#18556) 2016-11-29 21:21:53 -08:00
Virgil Dupras
bf48383610 Fix regression in jinja2 include search path (#18617)
* Fix regression in jinja2 include search path

Since commit 3c39bb5, the 'ansible_search_path' variable is used to set
jinja2's search path for {% include %} directives. However, this path is
the the proper one because our templates live in 'templates' subdirs in
our search path.

This is a regression because previously, our include search path would
include the dirname of the currently interpreted file, which worked most
of the time.

fixes #18526

* Fix template lookup search path

Improve fix in commit c96c853 so that the search path contain both
template-suffixed paths as well as original paths.

ref PR #18617

* Add integration test for template lookups

Tests regression at #18526

This test fails on current devel branch and succeeds on PR #18617
2016-11-29 16:23:06 -05:00
Adrian Likins
9b1ce5dfb9 add integration tests for authorized_key (#18130)
Primarily for behavior related to
https://github.com/ansible/ansible-modules-core/issues/4780
2016-11-29 14:47:22 -05:00
Brian Coca
ca1514cf2a unified boolean function
optimized boolean function
fixes #17815
2016-11-29 12:34:30 -05:00
John R Barker
4875824357 Network dut (#18668)
* Use dedicated account for testing

This also avoids any instance of "vyos" being masked by no_log

* use vyos-dut-01
2016-11-29 15:12:39 +00:00
John R Barker
54c5ea29bb Update inventory.network (#18654) 2016-11-28 16:33:10 +00:00
John R Barker
0793cf3599 HACK test on older vyos machine (#18653) 2016-11-28 16:24:43 +00:00
John R Barker
09550e4f46 Ops (#18652)
* Link to missing ops.yaml

* Add missing ops.yaml
2016-11-28 16:22:17 +00:00
John R Barker
a51d79c7a9 Tests are required for Network modules (#18618)
* Tests are required for Network modules

Also detail how to get help

* Update README.md

* Update README.md
2016-11-24 18:52:46 +00:00
John R Barker
4c1bb31611 Use DUT instance for veos (#18608) 2016-11-24 12:15:24 +00:00
Matt Clay
089ffae107 Make ansible-pull integration tests more robust. 2016-11-23 17:02:34 -08:00
Matt Clay
3fd13aaffe Detect default group in template integration test. 2016-11-23 11:28:28 -08:00
John R Barker
346aa8f1b2 Use DUT instance for vyos (#18599)
We now have a dedicated test machine, so use that
2016-11-23 15:16:28 +00:00
Adrian Likins
25aa757e80 add a intg test for vault encrypted inventory (#18550) 2016-11-22 10:56:37 -05:00
Matt Clay
324702c38f Use output_dir instead of outputdir for tests. 2016-11-21 16:46:59 -08:00
Sam Doran
f68b49057f Add test cases for VyOS commands that don't honor paging settings (#18553)
* Add test cases for VyOS commands that don't honor paging settings

Testing for issue fixed in PR #18546

* Add provider line and fix indentation

For the way we invoke the tests we need to specify the `provider:` 
Also fix the indentation on `register:`
2016-11-21 15:46:46 +00:00
Toshio Kuratomi
493fb4b665 Test that changing the flags on a mounted filesystem works (#18552)
* Test that changing the flags on a mounted filesystem works
2016-11-19 16:24:16 -08:00
Matt Davis
4dba83afc5 disable win_async_wrapper success loop test to keep CI happy 2016-11-18 11:39:06 -08:00
Matt Clay
4d616366c0 Update test to use keyserver.ubuntu.com. 2016-11-18 10:44:17 -08:00
Matt Davis
602bba4a82 retag win_async_wrapper test to run on module changes 2016-11-18 10:30:25 -08:00
Ganesh Nalawade
f6437f1b6e Fix command typo in integration tests README file (#18539) 2016-11-18 10:50:39 +00:00
James Cammarata
4f06a86161 Alternately track listening handlers by uuid if no name is set
Fixes #17846
2016-11-13 15:24:44 -06:00
Adrien Vergé
0e834fc9e4 Fix cosmetic problems in YAML source
This change corrects problems reported by the `yamllint` linter.

Since key duplication problems were removed in 4d48711, this commit
mainly fixes trailing spaces and extra empty lines at beginning/end of
files.
2016-11-11 14:50:57 -08:00
John R Barker
de13f91a50 Update docker-setup-rht.yml 2016-11-11 19:10:57 +00:00
James Cammarata
bd4f7fca27 Fixing incorrect use of version_compare in docker integration test 2016-11-11 12:18:11 -06:00
Tom Melendez
b9e07c8dd7 [GCE] updates to gce integration test (#18097)
* Added test for sequenced-name instance generation (num_instances)
* Added param-check tags to tests that only do argument checking
Should be merged AFTER ansible/ansible-modules-core#4276
2016-11-11 13:17:47 -05:00
Matt Clay
3f785ee173 Remove unnecessary file. 2016-11-11 00:10:06 -08:00
Matt Clay
c955688772 Move ansible ad-hoc tests to integration targets. 2016-11-10 23:58:32 -08:00
John R Barker
947e0f264e Network Tests - Extend examples (#18451) 2016-11-10 13:41:19 +01:00
Tom Melendez
28dc527b2c Basic integration test for gce_tag. (#17928) 2016-11-04 15:31:19 -04:00
Matt Clay
86c5eddb05 Move ec2_vpc_nat_gateway integration test role. 2016-10-31 14:07:05 -07:00
Matt Clay
71819c0a60 Test reorganization and cleanup. (#18270)
- Correct directory name in test/README.md
- Move code-smell tests to test/sanity/code-smell
- Update code-smell.sh to use new script paths
- Add test/integration/target-prefixes.win for ansible-test
- Move module unit tests to match module directory layout
2016-10-31 12:53:11 -07:00
Toshio Kuratomi
02859a3e32 Add tests for dnf modelled after the yum tests (#18226) 2016-10-31 10:38:31 -07:00
John R Barker
0f8ff0701d Disable testing on csr01 (#18264) 2016-10-31 15:42:27 +00:00
John R Barker
5b4ea08a1f Formatting (#18260)
* Formatting

* Update README.md

* Update
2016-10-31 14:07:51 +00:00
John R Barker
2f35ccb562 Network Test Documentation (#18234)
* Network Test Documentation

Will need improving over time, though this ensure that everything that was in `ansible/test-network-modules` is in `ansible/ansible`

* Update README.md

* Inventory file
2016-10-31 14:03:33 +00:00
John R Barker
5fa82f2b4e ops not openswitch (#18256)
The openswitch modules have a prefix of `ops`, not `openswitch`, which is the directory name.
2016-10-30 19:27:01 +00:00
John R Barker
9ca1025ea8 Network module prefixes (#18246)
* Network module prefixes

In ansible-test we should skip tests for these modules, they will be
tested via another process.

* Update target-prefixes.network
2016-10-29 17:25:05 +01:00
John R Barker
8331e915e0 Network inventory file (#18240) 2016-10-28 20:16:57 +01:00
John R Barker
e0cc7b3415 Migrate Network Tests into ansible/ansible (#18233)
* Docs Networking tests

* Copy networking tests from test-network-modules

* Networking transport settings - group_vars

* Network playbooks

* Debug should be off by default

* Update nxos.yaml

* Remove items from top level

* Use dependencies, not pre-tasks

* Remove trailing blank lines

* Remove backup files

* newlines
2016-10-28 19:50:29 +01:00
Adrian Likins
0a1f391881 Fix fact gathering intg test asserts (#18168)
If the facts returned by setup included strings that
had double quotes in them, the asserts in test_gathering_facts.yml
would fail with errors like:

    "The conditional check '\"[{u'mounts': {u'options':
    u'rw,context=\"system_u:\"'}}]\" != \"UNDEF_HW\"' failed. The error was:
    template error while templating string: expected token 'end of statement
    block', got 'system_u'. String: {% if \"[{u'mounts': {u'options':
    u'rw,context=\"system_u:\"'}}]\" != \"UNDEF_HW\" %} True {% else %}
    False {% endif %}"

For one example, if mount facts returned an 'options' field that
included double quoated selinux context ids, the test would fail.

Fix is removing the double quoting in the assert 'that:' lines,
and removing the unneeded double curly brackets.
2016-10-26 11:21:19 -04:00
Matt Davis
c1b7d2e560 add large interleaved stdout/stderr integration tests for win_shell/win_command 2016-10-25 17:23:24 -07:00
Toshio Kuratomi
589e71dbc5 Fix the uri testserver to run on python3 2016-10-24 06:50:06 -07:00
Matt Davis
9a78273665 reenable win_async loop test 2016-10-24 00:00:24 -07:00
Pierre-Louis Bonicoli
3edac76e1b tests: check that handlers are able to use 'include' 2016-10-21 20:17:42 +02:00
Adrian Likins
f99ffb5620 Fix test_filters fail because of dict sort (#18105)
Fixes #17308
2016-10-19 16:11:09 -04:00
Toshio Kuratomi
b902b5d046 Pixelrebel amc pr2654 (#18089)
* Add tag verification test (ansible-modules-core PR 2654)

* Fix typo

* Use smaller repo for testing, add dependency control

* Test is gpg exists before running git signing tasks

* Correct the test conditionals so that gpg1 is tested
2016-10-19 08:41:05 -07:00
Michael Scherer
5215832f15 Make the test run when used on a local system (#18050)
ANSIBLE_ROLES_PATH is relative to the config directory, if found. Use an absolute path instead.
2016-10-17 20:32:50 -07:00
Toshio Kuratomi
7e0bd5632d epdb doesn't work on python3 so we need a different package to test pip 2016-10-17 18:44:51 -07:00
Matt Clay
c2ec86cb78 Migrate Windows CI roles to test targets. (#18005) 2016-10-13 18:03:19 +01:00
Matt Clay
75e4645ee7 Migrate Linux CI roles to test targets. (#17997) 2016-10-13 09:09:25 -07:00
Matt Clay
374e4348e4 Split out var_blending test into targets dir. (#17996) 2016-10-12 22:22:46 -07:00
Matt Clay
410b96d716 Clean up integration tests. (#17991) 2016-10-12 19:33:12 -07:00
Matt Clay
80a5c70ad7 Split integration tests out from Makefile. (#17976) 2016-10-12 14:57:53 -07:00
Toshio Kuratomi
1efe782b46 Refactor parsing of CLI args so that we can modify them in the base class
Implement tag and skip_tag handling in the CLI() class.  Change tag and
skip_tag command line options to be accepted multiple times on the CLI
and add them together rather than overwrite.

* Make it configurable whether to merge or overwrite multiple --tags arguments
* Make the base CLI class an abstractbaseclass so we can implement
  functionality in parse() but still make subclasses implement it.
* Deprecate the overwrite feature of --tags with a message that the
  default will change in 2.4 and go away in 2.5.

* Add documentation for merge_multiple_cli_flags
* Fix galaxy search so its tags argument does not conflict with generic tags
* Unit tests and more integration tests for tags
2016-10-06 10:46:58 -04:00
Matt Davis
aa0ad073b8 bugfixes to JSON junk filter, added unit/integration tests to exercise (#17834) 2016-10-02 08:03:42 -07:00
Matt Clay
21857e8618 Disable privileged mode on Shippable. (#17844) 2016-09-30 22:06:28 -07:00
Adrian Likins
1f03801fcc mv test_git to 'destructive' integration tests (#17526)
The test_git role removes ~/.ssh/known_hosts currently
and that is destructive.
2016-09-29 13:46:34 -04:00
Toshio Kuratomi
4452ee86bd Turn mount test back on (#17797)
* Turn mount test back on

* Mount tests need PRIVILEGED so turn that back on

Revert "Revert "Set PRIVILEGED=true for non_destructive tests. (#17733)" (#17738)"

This reverts commit dc0fb1c212.

* Add a needs_privileged tag so that we can skip mount tests on centos6

Some containers timeout on shippable tests when run with privileged.
Unfortunately, some tests require that in order to run.  Tagging those
allows us to skip those tests on the platforms that timeout when we get
ready to run the integration test in shippable.

* Centos6 times out with PRIVILEGED set so remove that (will disable the mount tests on centos6)

* Remove false start
2016-09-28 10:52:33 -07:00
Matt Clay
6d78397b8b Update get_url test to use httptester. (#17787) 2016-09-27 18:11:09 -07:00
Toshio Kuratomi
1f311f0739 Disable mount tests for now. Mount is buggy on too many platforms 2016-09-23 16:35:34 -07:00
Toshio Kuratomi
0bf92d2b5c Add tests for the mount module (#17718)
* Add tests for the mount module

* Switch from unmounted to absent...

the code for mounting always modifies fstab so we need to always modify
fstab to cleanup as well.

* Fix comments and copyright
2016-09-23 12:38:31 -07:00
Matt Clay
cf4d436e07 Remove run_tests.sh and update docs. (#17719)
Removed the obsolete test/utils/run_tests.sh script in favor of
using the newer test/utils/shippable/integration.sh instead.
2016-09-22 23:51:53 -07:00
Tom Melendez
97a1b7ded1 Integration Playbook for Google Cloud DNS module. (#17698) 2016-09-22 14:40:57 -04:00
Toshio Kuratomi
8aa8e07d13 Remove _load_hosts() from Play initialization as it's no longer needed and it breaks using extra_vars defining a list for hosts (#17699)
Thanks to @jimi-c for the solution

Fixes #16583
2016-09-21 17:25:54 -07:00
Matt Clay
3874e653c1 Remove tests for deprecated su and sudo. (#17697) 2016-09-21 15:12:26 -07:00
Tom Melendez
0e85f88f8e test_gce_mig integration test playbook (#17249)
Includes:
* Tests to create, delete, resize, recreate and configure an Autoscaler
* Tests for parameters only.  Use TEST_FLAGS="--tags 'param-check'" to execute only these tests.

Requires:
* An instance template to be configured in your project.
2016-09-21 17:48:09 -04:00
Matt Clay
39c5c558f8 Switch tests from sudo to become. (#17694) 2016-09-21 13:58:35 -07:00
Toshio Kuratomi
7889e1ffc1 Additional tests for check mode idempotence (#17679) 2016-09-20 17:56:07 -07:00
Matt Clay
e0ad02c6dd Remove test for deprecated first_available_file. (#17674) 2016-09-20 13:45:57 -07:00
Rob Cutmore
2716fe4362 Add test for checking pip package in check mode (#17360) 2016-09-20 07:07:27 -07:00
Steve Gargan
a06da86d52 update consul tests to reflect fixes to the core and session modules (#17451) 2016-09-16 14:58:17 -07:00
Tom Melendez
91a30e59e4 Changes to enable make gce to run. Added sys import so libcloud error is displayed; renamed credentials keys in template file so they work properly with gce_credentials.py. (#16607) 2016-09-16 10:02:18 -04:00
Matt Clay
355b29573c Use default on undefined vars in tests. (#17601) 2016-09-15 16:07:55 -07:00
Matt Clay
16baef1f72 Do not use bare vars in integration tests. (#17599) 2016-09-15 17:41:54 -04:00
Matt Davis
f497d771c8 win_shell/win_command changes + tests (#17557) 2016-09-15 11:25:56 -07:00
Matt Clay
7b3cbafbe9 Add python 3 awareness to apt module tests. (#17574)
Also remove unnecessary dependency from ubuntu1604py3 Dockerfile.
2016-09-14 15:38:27 -07:00
René Moser
28feba2fb3 jenkins_job: extend integration tests (#17558) 2016-09-14 10:44:01 +02:00
Michael Scherer
e9ffe2062f Add test for the pause in loop feature (#17336)
See https://github.com/ansible/ansible/pull/17289
2016-09-13 11:12:58 -07:00
René Moser
6a3e948a7c jenkins_job: add integration tests (#17499) 2016-09-13 16:03:58 +02:00
Toshio Kuratomi
bf29961947 Fixes to the controller text model (#17527)
* Fixes to the controller text model

* Change command line args to text type
* Make display replace undecodable bytes with replacement chars.  This
  is only a problem on pyhton3 where surrogates can enter into the msg
  but sys.stdout doesn't know how to handle them.
* Remove a deprecated playbook syntax in unicode.yml

* Fix up run_cmd to change its parameters to byte string at appropriate times.
2016-09-12 12:57:41 -07:00
nitzmahone
69880f1640 add win_user regression tests
Ensure https://github.com/ansible/ansible-modules-core/issues/4369 doesn't occur again, also adds tests for password set when expired.
2016-09-11 20:45:00 -07:00
Matt Clay
784810a84c Add python 3 support to test_apt_repository. (#17472) 2016-09-08 18:05:44 -07:00
nitzmahone
7a9395b5e0 disable windows loop async test
Fails pretty regularly on Shippable/AWS, never locally- always seems to be on the last async task in the loop.
2016-09-06 22:13:31 -07:00
Matt Davis
f239e1e61f windows async changes and tests (#17400) 2016-09-06 17:38:12 -07:00
jhawkesworth
9fe4308670 add very basic tests of win_package, based on existing win_msi tests. (#17383)
* add very basic tests of win_package, based on existing win_msi tests.
2016-09-06 07:09:32 +01:00
Toshio Kuratomi
d6ebf9bdc6 Symink integration tests for fetch and stat 2016-09-05 20:12:37 -07:00
Michael Scherer
918d1e038e Do not hardcode python executable in test (#17380)
Based on https://github.com/ansible/ansible/pull/17376
2016-09-03 10:21:22 -07:00
Matt Clay
4ae59b2743 Use ansible_python for interpreter in test_uri. (#17376) 2016-09-03 10:19:52 -07:00
Matt Clay
7cd988f60c Enable more integration tests for python 3. (#17375)
The test_async test target was updated to accommodate changes in
output buffering behavior in python 3. This change in behavior
may need to be addressed in the future.
2016-09-02 23:14:44 -07:00
Michael Scherer
529950680b Disable yum test on python 3 (#17327)
Since yum is not gonna be running on python3 ever, we have to filter it.
2016-09-01 04:30:54 -07:00
Gennady Trafimenkov
2e857cfafd Add mention of integration tests in Docker containers (#16661)
It is quite convinient and easy to run integration tests in Docker containers.

I hope it can motivate more people to write integration tests.
2016-09-01 01:25:53 +02:00
Jonathan Mainguy
a4cee11649 Add test for specific privlege grants on database.table (#17328)
For the mysql_user module
2016-08-31 14:23:40 -07:00
Jonathan Mainguy
2248d2464b add unit test for mysql_user (#17335)
this removes all blank users, and then does so again
to ensure changed the first time and ok the second time
2016-08-31 22:02:31 +02:00
Michael Scherer
878d0d5b87 Running the test with a locale other than English make that test fail
While tests are supposed to be run in docker, people might still
want to use them on their own boxes.
2016-08-31 00:55:14 +02:00
Allen Sanabria
03132041fb Include vars updated to work with directories (#17207)
* New features for include_vars

include_vars.py now allows you to include an entire directory and its nested directories of variable files.

Added Features..

* Ignore by default *.md, *.py, and *.pyc
* Ignore any list of files.
* Only include files nested by depth (default=unlimited)
* Match only files matching (valid regex)
* Sort files alphabetically and load in that order.
* Sort directories alphabetically and load in that order.

```
    - include_vars: 'vars/all.yml'

    - name: include all.yml
      include_vars:
        file: 'vars/all.yml'

    - name: include all yml files in vars/all and all nested directories
      include_vars:
        dir: 'vars/all'

    - name: include all yml files in vars/all and all nested directories and save the output in test.
      include_vars:
        dir: 'vars/all'
        name: test

    - name: include all yml files in vars/services
      include_vars:
        dir: 'vars/services'
        depth: 1

    - name: include only bastion.yml files
      include_vars:
        dir: 'vars'
        files_matching: 'bastion.yml'

    - name: include only all yml files exception bastion.yml
      include_vars:
        dir: 'vars'
        ignore_files: 'bastion.yml'
```

* Added whitelist for file extensisions (yaml, yml, json)

* Removed unit tests in favor of integration tests
2016-08-30 14:34:31 -07:00
René Moser
26118a51f8 exo_dns: new module utils and integration tests for exoscale DNS (#17230) 2016-08-30 21:48:28 +02:00
Michael Scherer
d8f66defd0 Ignore difference on whitespace (#17302)
While trying to fix the test suite on python3, I noticed
this test fail due to to_json adding more whitespace in
python3 than in python2. So -w should ignored those
differences.
2016-08-30 10:52:19 -07:00
Toshio Kuratomi
380a5801e9 Enable integration tests on python3 that are already working (#17212) 2016-08-24 16:41:05 -07:00
Toshio Kuratomi
51ec35378d xrange and izip_longest aren't available in vanilla python3 (#17226)
Fixes for these are either rewriting to get rid of the need for the
functions or using six.moves to get equivalent functions for both
python2 and python3
2016-08-24 12:28:02 -07:00
Yannig
27b0f3241b new filter human_bytes: convert a string (ex: 1Mo, 1K) into bytes (#12074)
* Rework human_readable and human_to_bytes.
New filter human_to_bytes.

* Fix for python 3.
2016-08-24 12:04:20 -07:00
Adrian Likins
e396d5d508 Implement vault encrypted yaml variables. (#16274)
Make !vault-encrypted create a AnsibleVaultUnicode
yaml object that can be used as a regular string object.

This allows a playbook to include a encrypted vault
blob for the value of a yaml variable. A 'secret_password'
variable can have it's value encrypted instead of having
to vault encrypt an entire vars file.

Add __ENCRYPTED__ to the vault yaml types so
template.Template can treat it similar
to __UNSAFE__ flags.

vault.VaultLib api changes:
    - Split VaultLib.encrypt to encrypt and encrypt_bytestring

    - VaultLib.encrypt() previously accepted the plaintext data
      as either a byte string or a unicode string.
      Doing the right thing based on the input type would fail
      on py3 if given a arg of type 'bytes'. To simplify the
      API, vaultlib.encrypt() now assumes input plaintext is a
      py2 unicode or py3 str. It will encode to utf-8 then call
      the new encrypt_bytestring(). The new methods are less
      ambiguous.

    - moved VaultLib.is_encrypted logic to vault module scope
      and split to is_encrypted() and is_encrypted_file().

Add a test/unit/mock/yaml_helper.py
It has some helpers for testing parsing/yaml

Integration tests added as roles test_vault and test_vault_embedded
2016-08-23 20:03:11 -04:00
Matt Clay
a695e18615 Add support for OS X CI on Shippable. (#17160) 2016-08-23 10:49:46 -07:00
Matt Clay
04bd6a3619 Make tests more cross platform. (#17154) 2016-08-19 10:23:14 -07:00
Dusty Mabe
b817f1f3ea actions/unarchive: fix unarchive from remote url (#17126)
* actions/unarchive: fix unarchive from remote url

Currently unarchive from remote url does not work because the core
unarchive module was updated to support 'remote_src' [1], but the
unarchive action plugin was not updated for this. This causes failures
because the action plugin assumes it needs to copy a file to the
remote server, but in the case of downloading a file from a remote
url a local file does not exist, so an error occurs when the file is
not found.

[1] https://github.com/ansible/ansible-modules-core/commit/467516e

* test_unarchive: fix test with wrong remote_src use

The non-ascii filenames test had improperly set remote_src=yes even
though it was actually copying the file from the local machine (i.e.
the file did not already exist remotely). This test was passing
until the remote_src behavior of unarchive was fixed in 276550f.
2016-08-19 08:16:21 -05:00
Matt Davis
e0bdb502e3 raw now returns changed: true (#17112)
for consistency w/ shell/command/script "non-idempotent" modules.

Updated tests, changelog.
2016-08-16 20:39:23 -07:00
James Cammarata
47acf55fa9 Cache tasks by uuid in PlayIterator for O(1) lookups
Rather than repeatedly searching for tasks by uuid via iterating over
all known blocks, cache the tasks when they are added to the PlayIterator
so the lookup becomes a simple key check in a dict.
2016-08-10 12:49:19 -05:00
Matt Clay
80385a47bd Remove FreeBSD interpreter test hacks. (#17007)
* Add TEST_FLAGS to no_log target.
2016-08-08 13:10:03 -07:00
Filipe Niero Felisbino
e54a9d3a51 Add generic data structures querying (#13684)
* Query lookup plugin

* Add license and docstrings

* Add python3-ish imports

* Change query plugin type from lookup to filter

* Switch from dq to jsonpath_rw

* Add integration test for query filter

* Rename query filter to json_query

* Add jsonpath-rw

* Rename query filter to json_query

* Switch query implementation from jsonpath-rw to jmespath
2016-08-08 11:55:59 -04:00
Matt Clay
d2fb845955 Enable more FreeBSD integration tests. (#16991) 2016-08-08 00:31:04 -07:00
Matt Davis
746ea64d30 fix for unspecified retries on until + test (#16963)
fixes #16907
2016-08-04 19:20:45 -04:00
Will Thames
eb2a3a91a8 task_result _check_key should handle empty results (#16766)
When a task result has an empty results list, the
list should be ignored when determining the results
of `_check_key`. Here the empty list is treated the
same as a non-existent list.

This fixes a bug that manifests itself with squashed
items - namely the task result contains the correct
value for the key, but an empty results list. The
empty results list was treated as zero failures
when deciding which handler to call - so the task
show as a success in the output, but is deemed to
have failed when deciding whether to continue.

This also demonstrates a mismatch between task
result processing and play iteration.

A test is also added for this case, but it would not
have caught the bug - because the bug is really in
the display, and not the success/failure of the
task (visually the test is more accurate).

Fixes ansible/ansible-modules-core#4214
2016-08-04 17:13:33 -05:00
Matt Clay
5f12731797 Run more integration tests on FreeBSD. (#16923) 2016-08-02 14:00:56 -07:00
Matt Clay
00fbc76e69 Increase async time limit on tests to 10 seconds. (#16921) 2016-08-02 13:30:26 -07:00
Matt Clay
ff4f4bc8a0 Add binary module tests to Windows CI. (#16914) 2016-08-02 10:42:07 -07:00
Matt Clay
e2602e9be0 Add FreeBSD to Shippable CI. (#16883) 2016-08-01 13:46:37 -07:00
Matt Clay
6dc148d82c Download files from S3 to improve reliability. (#16891)
Binary module tests now download pre-compiled binaries from S3
instead of downloading go and compiling the modules.

Files downloaded form SourceForge are now downloaded from S3.
2016-07-31 08:48:32 -07:00
Gennady Trafimenkov
2bc679be07 Testing that service not enabled during check run (#16739)
* Enabled more tests in test_service on systems with systemd.
* Fix inconsistency in cleaning up test service. The conditions for service setup and service cleanup were different.
* Add check mode run for service enable.
2016-07-29 08:35:03 -07:00
Matt Clay
380ed053e8 Add Windows integration tests to Shippable. (#16803)
Enable Windows integration tests on Shippable.
2016-07-28 21:03:14 -07:00
Gennady Trafimenkov
ad24f2d206 Enable color output from integration tests in Docker containers (#16660)
Enable color output from integration tests in Docker containers:

* In run_tests.sh when output is attached to a terminal.
* In shippable/integration.sh using force mode (can be disabled).

Also fix blocks tests to work with or without color output
2016-07-25 14:07:15 -07:00
Matt Martz
4065acc37d indent callback output if using 3verbosity or higher (#16231) 2016-07-23 18:10:53 -04:00
Robin Roth
2b28beb1d7 add check_mode option for tasks (#16056)
* add check_mode option for tasks

includes example testcases for the template module

* extend check_mode option

* replace always_run, see also proposal rename_always_run
* rename always_run where used and add deprecation warning
* add some documentation

* have check_mode overwrite always_run

* use unique template name to prevent conflicts

test_check_mode was right before, but failed due to using the same filename as other roles

* still mention always_run in the docs

* set deprecation of always_run to version 2.4

* fix rst style

* expand documentation on per-task check mode
2016-07-22 20:40:14 -04:00
nitzmahone
7aa39981c4 fix setup test for renamed windows fact 2016-07-14 18:02:04 -07:00
James Cammarata
153133132d Updating tests for new module feature for remote_src in unarchive
Fixes #10218
2016-07-14 12:15:17 -05:00
Matt Clay
0ada7eae5e Add test tags for shell and command modules. 2016-07-08 17:41:58 -07:00
=
3c66caa058 fix win_msi tests by setting wait: true on all win_msi tasks.
I suspect this problem was masked previously as older versions of pywinrm
where significantly slower, allowing more time for the windows installer service to complete.
2016-07-08 06:46:27 +01:00
Matt Clay
bbffa0a0e9 Add tags for modules without dedicated test roles. 2016-07-07 12:42:07 -07:00
James Cammarata
cd4412016a Updating integration tests for async testing 2016-07-07 13:48:11 -05:00
Matt Davis
30c63a41e9 Merge pull request #16555 from matsu-chara/fix-error-msg-default-to-defaults
fix default/main.yml to defaults/main.yml
2016-07-07 11:14:54 -07:00
Matt Clay
9a6b8ab271 Add more tags to test_async role. 2016-07-07 10:38:41 -07:00
Robin Roth
d0ccedc617 Fix git shallow update (#16224)
* add git shallow fetch test

covers https://github.com/ansible/ansible-modules-core/issues/3782

updating a repo with depth=1 fails silently if version==HEAD

* raise git version support supporting depth to 1.9.1
2016-07-05 15:07:42 -04:00
Robin Roth
8021adfe97 use git-core ppa instead of menulibre
menulibre is no longer actively maintained and does not support 16.04
2016-07-03 15:18:08 +02:00
Robin Roth
a5e394d23a reenable apt_repository tests in ubuntu 16.04
fixes #15718
2016-07-03 14:43:04 +02:00
matsu-chara
9f8b0cabcd fix default/main.yml to defaults/main.yml 2016-07-02 21:16:33 +09:00
Matt Clay
4e369a31db Fix test_async. (#16552)
* Conditionally run test_async in docker containers.
* Revise test_async test.
2016-07-01 17:59:06 -07:00
Matt Clay
292785ff2b Parse async response in async action. (#16534)
* Parse async response in async action.
* Add async test for non-JSON data before module output.
* Fix existing async unit test.

Resolves #16156
2016-07-01 14:52:45 -07:00
Abhijit Menon-Sen
950cc26aab Use loop_control.loop_var directly
6eefc11c converted task.loop_control into an object, but while the other
callers were updated to use .loop_var instead of .get('loop_var'), this
site was overlooked.

This can be reproduced by including with loop_control a file that does
set_fact; a simple regression test along these lines is included.
2016-07-01 07:03:42 +05:30
Matt Clay
394430a61e Switch test_lookups to badssl/local testing. (#16466)
* Switch test_lookups to badssl/local testing.
* Use var for checking badssl host content.
2016-06-27 18:58:13 -07:00
Pilou
b361bf90d7 Lookup password omit salt (#16361)
* Lookup unencrypted password must not include salt
* Integration test lookup: remove previous directory
* Test that lookup password doesn't return salt
* Lookup password: test behavior with empty encrypt parameter

Closes #16189
2016-06-27 10:44:25 -07:00
nitzmahone
1f92ade584 add integration test to assert included tasks run in proper order 2016-06-23 17:53:08 -07:00
jctanner
b7f9037b5b Add test for multi-options in authorized_key (#16375)
Addresses https://github.com/ansible/ansible-modules-core/issues/1715
2016-06-20 21:12:45 -04:00
nitzmahone
7bc3be64ae fix win_setup integration test to match fact name 2016-06-17 12:28:32 -07:00
=
9857af2b6e added further tests for win_regedit to cover the changes made
under https://github.com/ansible/ansible-modules-extras/pull/2436
2016-06-16 06:37:49 +01:00
jctanner
3b3ab605f6 Add a get_url test for www.google.com (#16212)
Add a get_url test for www.google.com

Addresses #16191
2016-06-13 10:59:42 -07:00
Toshio Kuratomi
872f3c5503 Revert "Add git shallow fetch test (#16055)" -- Broke integration tests:
https://app.shippable.com/runs/57599a7897ae890c00c2898d

This reverts commit e81f14ab48.
2016-06-09 14:49:42 -07:00
Robin Roth
e81f14ab48 Add git shallow fetch test (#16055)
* add git shallow fetch test

covers https://github.com/ansible/ansible-modules-core/issues/3782

updating a repo with depth=1 fails silently if version==HEAD

* disable git shallow tests for old git versions

Older git versions don't treat the --depth option correctly.
While the git module tried to work around this and introduced subtle
bugs, ansible/ansible-modules-core#3794 falls back to full checkouts.
Don't run the tests then.
2016-06-09 09:33:57 -07:00
Matt Clay
6e1e86028f Split integration tests into multiple groups.
This will allow tests to complete much faster.
2016-06-04 12:02:11 -07:00
Adrien Vergé
4d48711242 Fix YAML source and check it on Shippable (#15678)
Fix YAML source and check it on Shippable
2016-06-04 10:58:17 -07:00
Matt Clay
7a533406f9 Merge pull request #13145 from Mic92/devel
lxc connection plugin
2016-06-03 10:09:04 -07:00
Toshio Kuratomi
08fd017d99 Test file needed to be renamed 2016-06-01 13:50:57 -07:00
Toshio Kuratomi
2a5ef4496a Workaround test failures on OSX controllers for now -- will have to look
more heavily into normailizing the unicode later.
2016-06-01 13:35:11 -07:00
Brian Coca
3387d557bc Revert "Add prefixing and suffixing fuctionality to assemble module" (#16084) 2016-06-01 09:17:10 -04:00
Matt Clay
e45b3b89a2 Skip some service tests for systemd. 2016-05-31 20:12:55 -07:00
Chris Houseknecht
ce34397cf8 Merge pull request #10399 from underyx/assemble-with-prefix-and-suffix
Add prefixing and suffixing fuctionality to assemble module
2016-05-31 18:16:23 -04:00
Robin Roth
c06884eff0 Run tests on ubuntu1604 and opensuseleap (#15936)
* reduce async sleep time in test
* make zypper test less destructive (don't break following uses of zypper)
* fix ca cert on suse
* fix/enable postgres/mysql on opensuseleap
* fix mysql test for mysql versions 5.7.6 and newer
* skip sni_host check on ubuntu1604
* add HTTPTESTER flag for test_uri

ubuntu 16.04 uses dash which drops env variables containing a dot
we work around this by adding an explicit env variable to enable httptester
2016-05-31 14:47:36 -07:00
Bence Nagy
13210e346f Add integration test for assemble with a header and a footer 2016-05-31 14:44:33 -07:00
Matt Clay
027006b846 Don't use TEST_FLAGS for the test_tags target.
This allows use of --skip-tag in TEST_FLAGS without conflicting with the test.
2016-05-31 14:35:24 -07:00
Matt Clay
844b415066 Mark tasks expected to fail with EXPECTED FAILURE.
This allows for automated identification of tasks which are
expected to fail, but which cannot use ignore_errors because
they need to fail.
2016-05-31 11:29:04 -07:00
Jörg Thalheim
88482234e6
lxc connection plugin 2016-05-28 00:15:09 +02:00
Toshio Kuratomi
c03555b650 Fix unarchive failures when the destination is a symlink to a directory (#15999)
Also add integration tests for this problem and unicode filenames inside
a tarball.

Fixes #3725
2016-05-26 14:47:11 -07:00
nitzmahone
42f6114b61 fix windows integration tests to run under kerberos users 2016-05-17 13:40:54 -07:00
Matt Martz
651b83d8be Run test_binary_modules 2016-05-12 12:53:44 -05:00
Matt Martz
2d18607f1e Add GPL3 header to helloworld.go 2016-05-12 12:25:09 -05:00
Matt Martz
6ad8ec0919 Add integration tests for binary modules 2016-05-12 12:25:09 -05:00
Matt Martz
accf40d8a8 Use httptester docker image for http tests (#15811)
* Use httptester docker image for http tests

* When not running with an httptester linked container, use public test sites
2016-05-10 23:43:07 -04:00
Toshio Kuratomi
7ccb08cc7e Switch to a different url for testing SNI right now. (#15798) 2016-05-10 07:08:47 -07:00
Rene Moser
5583027f99 tests, postgresql: add ubuntu 16.04 support 2016-05-04 00:11:19 +02:00
Rene Moser
39e4caafb2 tests, apt_repository: disable Ubuntu 16.04 as there is no package yet 2016-05-04 00:11:19 +02:00
Rene Moser
c20d1fced7 tests: fix tests on Debian 8 2016-05-04 00:11:19 +02:00
Robin Roth
cf62a62b83 use userdir module as example instead of alias (#15540)
* alias module is very basic and removing it leads to the suse default
  config failing
* future improvements might test different modules and the effect of
  them being removed
2016-05-04 00:09:26 +02:00
Yannig
3901556b35 When var name is the same as var content, try to template it before reporting that var is not defined. (#13629)
* When var name is the same as var content, try to template it before reporting that var is not defined.
Add asserts in test_var_blending to check this special corner case.

* Fix integration tests when using debug with list or dict.
2016-05-01 06:42:09 -07:00
Matt Davis
ca5080d56b Merge pull request #15570 from jhawkesworth/regedit_fix_str_compare_tests
win_regedit integration test to cover change to allow empty string comparison
2016-04-29 11:03:30 -07:00
Robin Roth
12f7f50f31 extend zypper integration tests (#15596)
* extend zypper integration tests

* fix caching issue of local RPMS on openSUSE 42.1 Leap
* add tests for simultaneous install/remove via prefixes +-
* test fail cases (rm patch or URL)
* test patch install (succes, unchanged second run, fail on wrong name)

* add test for pattern install
2016-04-27 08:04:58 -07:00
Toshio Kuratomi
85bef402b1 Merge pull request #14614 from gundalow/test_binary
non-destructive says we should run test_binary at v2
2016-04-25 09:45:00 -07:00
=
bd74091ed9 win_regedit integration test to cover change to allow empty strings to be compared 2016-04-24 17:24:03 +01:00
jctanner
4d36b3f7b6 Extend the get_url integration tests to include file schemas. (#15532)
Addresses https://github.com/ansible/ansible-modules-core/issues/3511
2016-04-22 11:38:03 -07:00
Robin Roth
7a4e4c2b02 extend integration test for zypper_repository (#15387)
* include options refresh and priority introduced in ansible/ansible-modules-extras#1990
* test repo update both based on name and URL
* run on all suse flavors
* test overwriting repos by url or name
2016-04-21 20:10:29 +02:00
Robin Roth
59bad647b6 Revert "Disable new git tests until a fix for rhel6/7 is merged."
This reverts commit 197d3dfe97.
2016-04-20 09:52:02 +02:00
Toshio Kuratomi
197d3dfe97 Disable new git tests until a fix for rhel6/7 is merged. 2016-04-19 08:53:19 -07:00
Brian Coca
33761efd19 Merge pull request #15417 from bcoca/copy_vaulted
Copy vaulted
2016-04-19 10:22:30 -04:00
Robin Roth
e8b1c4e14a add test for git with both depth and version arguments (#15471)
* add test for ansible/ansible-modules-core#3456

combination of options version and depth

* add test of switching to older branch
2016-04-19 07:00:45 -07:00
Matt Davis
822f904aa6 Merge pull request #14813 from mattclay/lxd-plugin
Add lxd connection plugin.
2016-04-19 02:06:31 -07:00
James Cammarata
6eefc11c39 Make the loop variable (item by default) settable per task
Required for include+with* tasks which may include files that also
have tasks containing a with* loop.

Fixes #12736
2016-04-19 01:42:40 -04:00
Matt Davis
6322ed833e Merge pull request #15422 from jhawkesworth/win_regedit_binary_tests
Windows: add win_regedit integration tests (needs https://github.com/ansible/ansible-modules-extras/pull/2034)
2016-04-18 10:56:30 -07:00
James Cammarata
ed35e8bce2 Don't override the http status code when successful in urls.py 2016-04-18 13:20:24 -04:00
Robin Roth
9bb069f873 Apache2 module integration test (#15380)
* add integration test for apache2_module

* fix assert syntax

* check os_family for this test

* add comment why only debian and suse are tested

* move apache2 test to destructive

* install apache2 package
2016-04-18 18:00:02 +02:00
Matt Clay
5fc76df18b Add lxd connection plugin. 2016-04-15 19:10:57 -07:00
Matt Martz
a985bf6a31 Don't pass context to urlopen, instead add it to the handlers. Fixes https://github.com/ansible/ansible-modules-core/issues/3437 2016-04-15 16:10:54 -05:00
Robin Roth
b48e628429 test git version before running test on depth 2016-04-15 09:49:05 +02:00
=
157072a39f Windows: win_regedit integration tests (following https://github.com/ansible/ansible-modules-extras/pull/2034 ) 2016-04-14 21:47:17 +01:00
Cambell
cdf6e3e4bf feature/copy-vault-dataloader: Add method get_real_file(file_path) to dataloader
- get_real_file will decrypt vault encrypted files and return a path to
  a temporary file.

- cleanup_real_file will remove a temporary file created previously with
  get_real_file
2016-04-14 14:12:48 -04:00
Robin Roth
776bffb52b Expand git integration test (#15391)
* add testcases to git for depth

* also in combination with refspec, which gets more tricky

* add testcase for ansible/ansible-modules-core#527
2016-04-14 09:41:10 -07:00
Matt Clay
af8258cdf2 Revert "Increase verbosity of connection tests." (#15305) 2016-04-14 11:06:46 -04:00
Matt Martz
dd39f57ae7 Merge pull request #15289 from sivel/sni-urllib3-contrib-try2
Optional Use of urllib3 for SNI verification
2016-04-08 11:26:49 -05:00
nitzmahone
698ae7c383 ensure test_win_user fails on bogus error
We weren't previously checking the error message- it failed as expected, but for the wrong reason.
2016-04-07 18:24:12 -07:00
Matt Martz
6e9c09d7f7 Utilize urllib3.contrib.pyopenssl functionality for SNI capability in python versions lacking SNI support
Also add SNI tests, move test_uri to destructive since we are messing with packages for SNI testing
2016-04-06 10:14:13 -05:00
Toshio Kuratomi
4b0aa1214c Ziploader
* Ziploader proof of concept (jimi-c)

* Cleanups to proof of concept ziploader branch:

* python3 compatible base64 encoding
* zipfile compression (still need to enable toggling this off for
  systems without zlib support in python)
* Allow non-wildcard imports (still need to make this recusrsive so that
  we can have module_utils code that imports other module_utils code.)
* Better tracebacks: module filename is kept and module_utils directory
  is kept so that tracebacks show the real filenames that the errors
  appear in.

* Make sure we import modules that are used into the module_utils files that they are used in.

* Set ansible version in a more pythonic way for ziploader than we were doing in module replacer

* Make it possible to set the module compression as an inventory var

This may be necessary on systems where python has been compiled without
zlib compression.

* Refactoring of module_common code:

* module replacer only replaces values that make sense for that type of
  file (example: don't attempt to replace python imports if we're in
  a powershell module).
* Implement configurable shebang support for ziploader wrapper
* Implement client-side constants (for SELINUX_SPECIAL_FS and SYSLOG)
  via environment variable.
* Remove strip_comments param as we're never going to use it (ruins line
  numbering)

* Don't repeat ourselves about detecting REPLACER

* Add an easy way to debug

* Port test-module to the ziploader-aware modify_module()

* strip comments and blank lines from the wrapper so we send less over the wire.

* Comments cleanup

* Remember to output write the module line itself in powershell modules

* for line in lines strips the newlines so we have to add them back in
2016-04-05 11:06:17 -07:00
Toshio Kuratomi
4b0f65a3e5 Merge pull request #15207 from mattclay/verbose-test
Increase verbosity of connection tests.
2016-03-31 22:02:19 -07:00
Matt Davis
3f70d7a70d Merge pull request #15144 from mattclay/winrm-test
Add winrm tests and fix exposed unicode errors.
2016-03-31 16:30:45 -07:00
James Cammarata
180a0a8e77 Fixing up the logic in the test_script tests removal portion 2016-03-31 15:59:19 -04:00
Matt Clay
262c341cda Add connection tests for winrm connection plugin.
These are the same tests used for the other connection plugins,
adapted to use winrm modules and Windows friendly paths.
2016-03-31 08:32:41 -07:00
Matt Clay
a0361626c9 Increase verbosity of connection tests. 2016-03-30 06:57:53 -07:00
Michael Gruener
94806e1953 Add integration tests for the cloudflare_dns module 2016-03-25 21:22:29 +01:00
Brian Coca
1ebc2fda71 removes python requirement to script
mistakenly added when checksum was made to use stat module
fixed assertion in test
2016-03-24 16:17:58 -07:00
Matt Clay
943e4d37f5 Run more connection tests in Docker.
Connection tests are now run before non_destructive to make sure
that the known_hosts file in our Docker image has not been removed.
2016-03-23 21:21:52 -07:00
Toshio Kuratomi
c3548677de Add TEST_FLAGS to test_hash 2016-03-22 13:19:29 -07:00
Brian Coca
9c6b49fd3d Merge pull request #15004 from agx/zypper-repository-integration-tests
Integration tests for zypper repository
2016-03-21 11:00:50 -07:00
Toshio Kuratomi
6824f3a7cc Change url so that we don't test https in the tests for file perms 2016-03-20 08:49:40 -07:00
Toshio Kuratomi
cbd93b6ad3 Add integration test for #11821 2016-03-20 07:59:00 -07:00
nitzmahone
b95286c88e re-integrate test_test_infra output checking
added secondary run with overridden inventory/test args per bcoca request
2016-03-18 10:14:22 -07:00
nitzmahone
6578e63e63 improve test_test_infra debug messaging, rc check 2016-03-18 08:51:43 -07:00
Matt Clay
9a922fcf0d Update test to use mysql connect_timeout option. 2016-03-16 22:31:48 -07:00
Guido Günther
2095d1ab33 Integration tests for zypper repository 2016-03-16 19:56:56 +01:00
Rene Moser
5d5d905e36 cloudstack: new integration tests test_cs_resourcelimit 2016-03-15 21:41:08 +01:00
Rene Moser
4d6a15ebc3 cloudstack: new integration tests test_cluster 2016-03-15 21:41:08 +01:00
Rene Moser
d50026b108 cloudstack: new integration tests test_cs_pod 2016-03-15 21:41:08 +01:00
Rene Moser
ae6d2a5602 cloudstack: new integration tests test_cs_instance_facts 2016-03-15 21:40:45 +01:00
Rene Moser
d9f7589460 cloudstack: new integration tests test_cs_configuration 2016-03-15 21:39:09 +01:00
René Moser
7587c20d27 Merge pull request #13183 from resmo/for-ansible
[2.1] cloudstack: add tests for cs_volume
2016-03-15 21:30:01 +01:00
Toshio Kuratomi
ea58ccfd5e Make the fact gathering give a little more information on failure 2016-03-15 12:32:27 -07:00
Toshio Kuratomi
9a6a5a5516 add a fact gathering check for the default of all 2016-03-15 11:58:23 -07:00
Toshio Kuratomi
f0e6d28815 Make integration tests for fact gathering assert on failure 2016-03-14 18:48:40 -07:00
Toshio Kuratomi
512825455e Make ohai and facter work via module_utils Fact classes rather than in the setup module 2016-03-14 14:53:29 -07:00
Yannig Perré
88772b6003 Add a way to restrict gathered facts in Ansible:
- Using gather_subset options
- By ignoring ohai/chef or facter/puppet facts
2016-03-14 14:53:28 -07:00
Matt Clay
a44b88936b Add unicode dir to connection tests. 2016-03-11 16:55:14 -08:00
Matt Clay
20eee14a2c Lower connect timeout for test_mysql_variables. 2016-03-10 12:18:00 -08:00
Matt Clay
5c206eaf0b Add additional plugins to connection tests.
- docker
- libvirt_lxc
- jail

These tests will not run as part of the build, but can be run manually.
2016-03-10 09:04:32 -08:00
Brian Coca
a07495e4c8 allow tests to run with parameters
also fixed test_test_infra to allow tags
2016-03-10 10:50:14 -05:00
James Cammarata
c2441c15c3 Revert "corrected failed_when test"
This reverts commit 140df20504.
2016-03-10 09:08:17 -05:00
James Cammarata
963178f392 Revert "complete correction of test, key exists but is false"
This reverts commit 7e6343213b.
2016-03-10 09:06:08 -05:00
Brian Coca
923548f6d5 removed test_infra from setup as it fails when using --tags 2016-03-10 00:29:32 -05:00
Brian Coca
7e6343213b complete correction of test, key exists but is false 2016-03-10 00:24:27 -05:00
Brian Coca
140df20504 corrected failed_when test 2016-03-10 00:16:38 -05:00
nitzmahone
6c835b2600 ensure assert and fail work before we test anything else 2016-03-09 17:36:39 -08:00
James Cammarata
9d61a6cba8 Fixing PlayIterator bugs
* Unit tests exposed a problem where nested blocks did not correctly
  hit rescue/always portions of parent blocks
* Cleaned up logic in PlayIterator
* Unfortunately fixing the above exposed a potential problem in the
  block integration tests, where a failure in an "always" section may
  always lead to a failed state and the termination of execution
  beyond that point, so certain parts of the block integration test
  were disabled.
2016-03-09 13:31:30 -05:00
Matt Davis
22344c5320 Merge pull request #14812 from mattclay/test-connection
Add tests for connection plugins.
2016-03-08 04:17:30 +00:00
Matt Martz
8aee648bc9 Add as dependency of the parsing make target 2016-03-07 17:38:47 -06:00
Matt Martz
098333b2ec Fix redirects for get_url
* fetch_url shouldn't both accept follow_redirects and support follow_redircts via module.params
* Default follow_redirects for open_url should be 'urllib2'
* Add redirect test for get_url
2016-03-07 15:44:31 -06:00
Matt Clay
49892b287b Use vars to eliminate redundant test commands. 2016-03-04 18:14:52 -08:00
Matt Clay
ca62bc5db3 Add tests for connection plugins. 2016-03-04 13:16:31 -08:00
James Cammarata
80b10bd669 Moving creating of testing work dir out of dep role and into Makefile 2016-03-03 15:26:08 -05:00
Toshio Kuratomi
7160b40ab1 Fix the Makefile to run under dash (POSIX /bin/test syntax) 2016-03-03 09:25:12 -08:00
Matt Davis
3d58fd1402 Merge pull request #13481 from jhawkesworth/a21_reg_merge_tests
windows; adding integration tests for win_regmerge (extras module)
2016-03-01 00:42:09 +00:00
James Cammarata
9de24a3735 Assert things against the recursive copy result to make sure it did something 2016-02-23 16:29:08 -05:00
Matt Martz
cacb74aeeb Merge pull request #14340 from sivel/uri-no-httplib2
Add RedirectHandler class for controlling redirects in urllib2
2016-02-23 11:53:16 -06:00
Matt Martz
3e9408e317 Add some additional integration tests that mix SSL verification and redirects 2016-02-23 11:48:09 -06:00
John Barker
4fb1839ebe non-destructive says we should run test_binary at v2
We are now using Ansible v2 and these tests pass, so run them.
2016-02-22 21:58:43 +00:00
James Cammarata
58a6cf822a Merge pull request #13203 from willthames/galaxy_10620
Allow tree-ish versions for ansible-galaxy
2016-02-17 08:41:29 -05:00
Brian Coca
bb155e1142 added test for cartesian lookup 2016-02-11 10:46:44 -05:00
Brian Coca
08b3dbcda3 corrected several usages of deprecated bare vars 2016-02-08 13:13:15 -05:00
Matt Martz
97e0f29a5b Add/improve tests for the uri module 2016-02-05 12:14:57 -06:00
James Cammarata
b713f1ca53 Fix for copy test as ansible_ssh_user is not set by default now 2016-02-05 10:36:07 -05:00
James Cammarata
8039ceee0f Tweak block integration tests to also test the free strategy 2016-02-03 18:42:06 -05:00
James Cammarata
5466510edb Removing .out file for integration tests and adding to .gitignore 2016-02-03 15:00:37 -05:00
James Cammarata
f4bd3be71f Adding block integration tests 2016-02-03 15:00:37 -05:00
Robin Roth
ed059ffca9 add integration test for ansible-pull
* this test includes the behavior described in #13688 and #13681
* it runs a minimal playbook and checks for correct use of inventory and limit
2016-02-02 12:18:04 +01:00
Brian Coca
46fde754af Merge pull request #14044 from skorochkin/devel
Adding support for scm-based role source urls (ansible-galaxy)
2016-01-26 10:41:05 -05:00
James Cammarata
fb797a9e77 Fixing role dependency chain creation
The dep chain for roles created during the compile step had bugs, in
which the dep chain was overwriten and the original tasks in the role
were not assigned a dep chain. This lead to problems in determining
whether roles had already run when in a "diamond" structure, and in
some cases roles were not correctly getting variables from parents.

Fixes #14046
2016-01-22 12:54:00 -05:00
Sergii Korochkin
13e8732598 [hotfix] add missed playbook file 2016-01-21 14:08:26 +02:00
Sergii Korochkin
1325c21ca0 Adding support for scm-based role source urls (incl. integration test to cover it) 2016-01-21 14:00:29 +02:00
Matt Davis
acf49cf837 Merge pull request #13569 from mattclay/apt-repository-filename
Test for filename option in apt_repository module.
2016-01-15 09:01:48 -08:00
Toshio Kuratomi
bcb22b0e1a Integration tests for https://github.com/ansible/ansible-modules-core/pull/558 2016-01-11 17:16:40 -08:00
James Cammarata
749fbd43ef Removing test for map filter until we can figure out how that's supposed to work 2016-01-08 16:41:56 -05:00
Brian Coca
e7804a6fdd fixed test to use hostvars and not expect vars sub
vars is at the same level as hostvars and was only included in hostvars
temporarily as a bug
2016-01-08 16:25:57 -05:00
Toshio Kuratomi
46903c80fa More fixes for unicode handling in the connection plugins.
Tested that ssh, docker, local, lxc-libvirt, chroot all work with the
updated unicode integration test.
2016-01-06 15:19:40 -08:00
Toshio Kuratomi
c0a8cd950b Fix problems with non-ascii values passed as part of the command to connection plugins
@drybjed discovered this with non-ascii environment variables and
command line arguments to script and raw module.
2016-01-04 20:35:25 -08:00
James Cammarata
08b580decc Parallelize make command for integration test runner
Also adds a new var, used by the prepare_tests role, to prevent it from
deleting the temp test directory at the start of each play to avoid any
potential race conditions
2015-12-21 14:10:23 -05:00
Brian Coca
2281c455db Merge pull request #13616 from resmo/for-ansible-stable-2.0
[stable-2.0] cloudstack: test_cs_instance: more integration tests
2015-12-21 13:45:29 -05:00
James Cammarata
54455a06e5 Disable docker test for Fedora, due to broken packaging 2015-12-20 21:32:37 -05:00
Rene Moser
b85b92ecdd cloudstack: test_cs_instance: more integration tests
cloudstack: extend test_cs_instance addressing recovering

cloudstack: test_cs_instance: add tests for using display_name as indentifier.
2015-12-20 22:37:48 +01:00
Rene Moser
b0525da8c8 cloudstack: cs_volume: add tests for volume resize
See https://github.com/ansible/ansible-modules-extras/pull/1333
2015-12-20 22:33:53 +01:00
Rene Moser
8b5e553828 cloudstack: add tests for cs_volume 2015-12-20 22:33:53 +01:00
Toshio Kuratomi
6963955cb4 And change the task a little more since different shlex versions are handling the quotes differently 2015-12-20 11:51:32 -08:00
Toshio Kuratomi
21ca0ce1ce Fix test playbook syntax 2015-12-20 11:46:49 -08:00
Toshio Kuratomi
3792a586b5 Since the velox test server seems to be dropping using iptables to drop requests from aws, test via a different website instead 2015-12-20 11:34:57 -08:00
Toshio Kuratomi
8d7892cc7b Done troubleshooting
Revert "Troubleshooting has reduced us to this"

This reverts commit 9abef1a1d7.
2015-12-20 11:34:57 -08:00
Toshio Kuratomi
b90506341a Fixes for tests that assumed yum as package manager for systems that
have dnf
2015-12-20 08:06:26 -08:00
Toshio Kuratomi
9abef1a1d7 Troubleshooting has reduced us to this 2015-12-19 12:39:48 -08:00
Toshio Kuratomi
1cc83dd0d9 Make tests that use kennethreitz retry. 2015-12-18 11:50:36 -08:00
James Cammarata
12c0bb9414 Use --source instead of -e for awk in integration Makefile 2015-12-17 20:53:11 -05:00
Toshio Kuratomi
c5eda277ac Fix get_url tests in light of distros backporting SNI support 2015-12-17 17:51:42 -08:00
Toshio Kuratomi
8c6f56f982 kennetreitz.org times out but www.kennethreitz.org is fine 2015-12-17 11:46:26 -08:00
Toshio Kuratomi
ce1febe28b debug line needs var not msg 2015-12-17 11:25:45 -08:00
Brian Coca
8db4415e2e changed test to use filter for accurate reporting 2015-12-17 12:28:32 -05:00
James Cammarata
857456ea5f Fixing template integration test for python 2.6 versions
No longer immediately fallback to to_json if simplejson is not installed
2015-12-16 18:22:22 -05:00
Toshio Kuratomi
fffd29d1ab Update mysql setup to handle installing mysql with dnf too. 2015-12-16 14:06:51 -08:00
Toshio Kuratomi
1116bc6ca6 Merge pull request #13191 from Jmainguy/mysql
Add shared connection code for mysql modules
2015-12-16 10:47:49 -08:00
Jonathan Mainguy
34e88e48a5 Add shared connection code for mysql modules 2015-12-16 13:36:18 -05:00
Toshio Kuratomi
375eb501b3 Update url to site that has an invalid certificate 2015-12-16 09:41:01 -08:00
Matt Clay
9942d71d34 Test for filename option in apt_repository module. 2015-12-16 01:37:02 -08:00
Toshio Kuratomi
457f86f61a Minor: Correct type pyhton => python 2015-12-14 08:50:37 -08:00
Toshio Kuratomi
fc19ad21ef Merge pull request #13494 from Jmainguy/msyql_hash_tests
add tests for encrypted hash mysql_user
2015-12-14 07:58:39 -08:00
Jonathan Mainguy
49dc9eea16 add tests for encrypted hash mysql_user 2015-12-14 10:12:06 -05:00
James Cammarata
97554fc222 Fixing filter test for extract to use proper group 2015-12-11 14:55:38 -05:00
James Cammarata
c402325085 Fixing up docker integration tests a bit 2015-12-10 13:10:59 -05:00
=
ea72fd6547 adding integration tests for win_regmerge module (extras) 2015-12-09 08:57:06 +00:00
Brian Coca
7d073bdd17 Merge pull request #13345 from amenonsen/extract
Add an 'extract' filter
2015-12-03 11:19:06 -08:00
Toshio Kuratomi
ac54ac618c Something's strange... let's see if python2.6 is really the same now... 2015-12-02 14:49:28 -08:00
Toshio Kuratomi
eb7db067f9 Fix template test results on python2.6 2015-12-02 10:32:10 -08:00
Abhijit Menon-Sen
8cf1815867 Add an 'extract' filter
At its most basic, this is nothing more than an array or hash lookup,
but when used in conjunction with map, it is very useful. For example,
while constructing an "ssh-keyscan …" command to update known_hosts on
all hosts in a group, one can get a list of IP addresses with:

    groups['x']|map('extract', hostvars, 'ec2_ip_address')|list

This returns hostvars[a].ec2_ip_address, hostvars[b].ec2_ip_address, and
so on. You can even specify an array of keys for a recursive lookup, and
mix string and integer keys depending on what you're looking up:

    ['localhost']|map('extract', hostvars, ['vars','group_names',0])|first
        == hostvars['localhost']['vars']['group_names'][0]
            == 'ungrouped'

Includes documentation and tests.
2015-12-02 18:16:38 +05:30
Brian Coca
c03afccc05 reformated test, changed big assert to with_items
much easier to see the individual condition that causes the failure
when using with_items and evaluating each part of the assert individually
2015-12-01 21:11:12 -08:00
Chris Church
f3476b556d Add assertions for ansible_date_time in setup result. 2015-11-27 00:39:51 -05:00
James Cammarata
3c8c2fb090 Merge pull request #13208 from agx/zypper-integration-test
Add integration tests for zypper
2015-11-23 15:20:35 -05:00
James Cammarata
e62fb04a2e Merge pull request #13229 from zarnovican/bza_fix_test_hg
test_hg fix: remove reference to "head"
2015-11-23 14:34:13 -05:00
James Cammarata
138068c56e Merge pull request #13230 from zarnovican/bza_fix_test_svn
test_svn fix: remove hardcoded "~/ansible_testing/svn" path
2015-11-23 14:33:33 -05:00
Chris Church
272778f732 Modify task executor to reuse connection inside a loop. Fix WinRM connection to set _connected properly and display when remote shell is opened/closed. Add integration test using raw + with_items. 2015-11-23 11:53:05 -05:00
Brano Zarnovican
a30a52ef52 test_svn fix: remove hardcoded "~/ansible_testing/svn" path 2015-11-20 13:36:55 +01:00
Brano Zarnovican
5fc64deffe test_hg fix: remove reference to "head"
ERROR! error while evaluating conditional: head.stat.isreg

This is remnant from earlier change 50e5d81777
which removed stat on head file..
2015-11-20 13:02:17 +01:00
Guido Günther
0821d251c8 Add integration tests for zypper
Modeled after the yum tests but also tests local package installations
as fixed with PR#1256.

This depends on PRs #1256, #1261 and #1262 in ansible-modules-extra.
2015-11-18 18:25:43 +01:00
Will Thames
ff19233ad3 Add tests for #10620 2015-11-18 20:47:54 +10:00
Brian Coca
e61882ca19 Merge pull request #13170 from robinro/integration_test_git_ansible-modules-core_pull_721
add test for changing git remote url
2015-11-16 14:53:47 -08:00
nitzmahone
349e072a74 fix for dynamic (add_host) hosts not available in hostvars
Looks like there are two pattern caches that need to be cleared for this to work- added the second one.
Added integration tests for add_host to prevent future regressions.
2015-11-16 10:53:10 -08:00
Will Thames
4f3430ebeb Handle unexpected database presence
Check for database presence in a nice way, rather than
dropping the database.

Thankfully there was a syntax error in the previous
version, so no database would have been dropped.
There was no check for whether it succeeded or not.
2015-11-15 10:45:24 +10:00
Robin Roth
6cefdfe148 add test for changing git remote url
integration test for https://github.com/ansible/ansible-modules-core/pull/721
clone a repo from one url
clone an updated version of that repo from a new url
make sure the remote url and the working copy are updated
2015-11-14 17:03:41 +01:00
Brian Coca
5d645f3a8b Merge pull request #13127 from willthames/test_become
Elevate privileges when checking for file existence
2015-11-12 22:35:01 -08:00
Brian Coca
206cc50bd9 breaks testing in non virtual envs, since env var can be used in those
cases removing it from here
2015-11-12 09:40:43 -08:00
Will Thames
5bb759e7ab Elevate privileges when checking for file existence
Certain OSs default to home directories as 0700
Without elevating privileges, checking for file existence
fails.
2015-11-11 23:42:35 +10:00
James Cammarata
23ff08ee6b Merge pull request #13016 from dvarrazzo/pip-vcs-changed
Added tests to verify pip installation with VCS urls
2015-11-05 08:16:12 -05:00
Will Thames
91b6004149 Allow blank lines and comments/spaces in galaxy spec files
Fixes #10641 again. (Regression)
Added test to discourage future such regression.
2015-11-04 15:36:20 +10:00
Daniele Varrazzo
542a430e84 Added tests to verify pip installation with VCS urls
The test reproduces:
- bug ansible/ansible#1705
- bug ansible/ansible-modules-core#1645
2015-11-03 14:54:40 +00:00
Brian Coca
c267e1906e removed invocation from tests as it is only available on very very verbose mode 2015-10-31 13:00:53 -04:00
Chris Meyers
4b88cce6a1 update ansible_test_service checksum 2015-10-28 14:55:13 -04:00
James Cammarata
1910f23144 Merge pull request #12801 from chrismeyersfsu/fix-test_destructive_init
run correct init system tests
2015-10-27 15:58:19 -04:00
James Cammarata
9b22004540 Merge pull request #12795 from chrismeyersfsu/fix-test_destructive_mysql_user
remove module param quotes
2015-10-27 15:51:45 -04:00
Toshio Kuratomi
ce2b18174e Merge pull request #12878 from ansible/invocation-fix
Invocation fix
2015-10-22 16:17:40 -07:00
Toshio Kuratomi
2e87c1f74e Two fixes to action plugins
* Fix the task_vars parameter to not default to a mutable type (dict)
* Implement invocation in the base class's run() method have each action
  module call the run() method's implemention in the base class.
* Return values from the action plugins' run() method takes the return
  value from the base class run() method into account so that invocation
  makes its way to the output.

Fixes #12869
2015-10-22 16:07:26 -07:00
James Cammarata
86de1429e5 Cleaning up FIXMEs 2015-10-22 16:03:50 -04:00
Toshio Kuratomi
ed6aa75d63 Add parsing test to travis to catch that invocation is missing 2015-10-22 09:03:12 -07:00
Toshio Kuratomi
6b6d03290a Restore the automatic addition of invocation to the output
Revert "Remove auto-added invocation return value as it is not used by v2 and could leak sensitive data."

This reverts commit 6ce6b20268.

Remove the note that invocation was removed as we've now restored it.

Revert "keyword not in ubuntu 14.04"

This reverts commit 5c01622457.

Revert "remove invocation keyword check"

This reverts commit 5177cb3f74.
2015-10-22 08:53:37 -07:00
Will Thames
002972c6cf Allow meta/main.yml to include roles through spec file
ansible-playbook now works when run with a playbook
that includes a role that includes another role
specified using csv format

Updated one of the roles used in the tests to fix
broken tests - `make test_galaxy` now works

Fixes #11486. Also addresses the problem alluded to in #10620.
2015-10-22 13:30:42 +10:00
Chris Meyers
6c265cde49 invoke systemd test for ubuntu >= 15.04 else invoke upstart test 2015-10-21 09:15:27 -04:00
Chris Meyers
f864fa8727 run systemd tests for fedora 2015-10-19 13:21:34 -04:00
Brian Coca
c1a404e6ec Merge pull request #12799 from resmo/for-ansible
cloudstack: add tests for cs_loadbalancer_rule and _member
2015-10-19 11:15:12 -04:00
James Cammarata
2346a7f170 Merge pull request #12800 from chrismeyersfsu/fix-test_destructive_yum
remove invocation keyword check
2015-10-18 10:19:08 -04:00
James Cammarata
549bdb2503 Merge pull request #12804 from chrismeyersfsu/fix-test_non_destructive_makefile
allow env variable override of creds file
2015-10-18 10:18:22 -04:00
Chris Meyers
1b2d17b844 allow env variable override of creds file
This is important because there is an integration test, test_git, that
require an ssh key to clone a privileged github repo.
2015-10-17 12:45:29 -04:00
James Cammarata
8baea3cba8 Merge pull request #12796 from chrismeyersfsu/fix-test_destructive_mysql_variables
fix up mysql variable assertion logic
2015-10-17 10:14:08 -04:00
Chris Meyers
d6dfd9f502 run correct init system tests 2015-10-17 09:25:49 -04:00
Chris Meyers
5177cb3f74 remove invocation keyword check 2015-10-17 09:24:03 -04:00
Rene Moser
bb5dcc00b6 cloudstack: add tests for cs_loadbalancer_rule and _member 2015-10-17 14:01:02 +02:00
James Cammarata
450c8d45c6 Merge pull request #12787 from chrismeyersfsu/fix-test_destructive_apt
keyword not in ubuntu 14.04
2015-10-17 07:43:34 -04:00
Chris Meyers
75833c248e fix up mysql variable assertion logic 2015-10-16 18:42:03 -04:00
Chris Meyers
ce4e98a6d0 remove module param quotes 2015-10-16 18:39:02 -04:00
Toshio Kuratomi
eebd3cc336 Merge pull request #12788 from chrismeyersfsu/fix-test_destructive_state
remove non-existant state var
2015-10-16 12:43:40 -07:00
Chris Meyers
a0264983ad remove non-existant state var 2015-10-16 15:40:31 -04:00
Chris Meyers
5c01622457 keyword not in ubuntu 14.04 2015-10-16 15:37:39 -04:00
Marius Gedminas
04a7ef416e Python 3: print function in a shell oneliner in Makefile
Fixes

    File "<string>", line 1
      import string,random; print 'ansible-testing-' + ''.join(random.choice(string.ascii_letters + string.digits) for _ in xrange(8));
                                                   ^
  SyntaxError: invalid syntax

when running integration tests with

  . hacking/env-setup
  . .tox/py35/bin/activate
  make -C test/integration test_var_precedence
2015-10-16 17:41:01 +03:00
=
e141101314 integration tests for ansible modules core 2147 2015-10-13 06:34:18 +01:00
James Cammarata
9c9897805f More ansible-galaxy fixes for the old spec file format 2015-10-06 01:54:48 -04:00
Brian Coca
f73329401b galaxy updates
better error reporting on fetching errors
use scm if it exists over src
unified functions in requirements
simplified logic
added verbose to tests
cleanup code refs, unused options and dead code
moved get_opt to base class
fixes #11920
fixes #12612
fixes #10454
2015-10-05 11:43:08 -04:00
Brian Coca
5680a9fa32 removed redundant tests, adjusted makefile expected count 2015-10-02 22:37:19 -04:00
Brian Coca
e2ae3215f6 corrected no_log for items and skipped tasks
corrected output from default callback
added new tests for no_log loops
updated makefile test to check for both positive and negative occurrences of no_log
2015-10-02 14:35:33 -04:00
Brian Coca
5c39538a73 added no_log tests as per #12214 2015-10-02 09:11:41 -04:00
James Cammarata
775486c9d6 Merge pull request #12589 from jemmyw/consul-http-checks
Update consul integration test with http checks
2015-10-01 10:44:31 -04:00
Rene Moser
9514ac860d cloudstack: more integration tests 2015-09-22 16:17:21 +02:00
Chris Church
43b15ab9a4 Merge pull request #12385 from cchurch/winrm_put_empty_file
Enable winrm put_file to upload an empty file.
2015-09-16 16:46:01 -04:00
Chris Church
93af0b327f Merge pull request #12384 from cchurch/powershell_strict_mode
Add PowerShell exception handling and turn on strict mode.
2015-09-16 16:45:40 -04:00
Chris Church
1d15e8f37a Pass windows command as-is without splitting/rejoining parameters.
* Fixes extra spaces added between parameters from https://github.com/ansible/ansible-modules-core/issues/1929
* Correctly decode PowerShell command encoded as UTF-16-LE so that it displays correctly in debug messages, fixes the other issue from https://github.com/ansible/ansible-modules-core/issues/1929
* Add test to verify that script parameters are passed as-is, so $true is interpreted as a boolean, fixes https://github.com/ansible/ansible/issues/10947
2015-09-16 16:30:10 -04:00
Chris Church
87db5119ea Merge pull request #12049 from cchurch/win_group_tests
Add integration tests for win_group module.
2015-09-16 16:27:44 -04:00
Chris Church
b44e02143a Merge pull request #12050 from cchurch/test_win_msi_creates
Add tests for creates parameter to win_msi module.
2015-09-16 16:22:47 -04:00
James Cammarata
3f8e12d1f7 Merge pull request #12359 from cchurch/fetch_no_fail_on_missing
Fix fetch to not fail for missing file when fail_if_missing=False
2015-09-16 11:05:39 -04:00
Chris Church
6ab4cff7db Enable winrm put_file to upload an empty file. 2015-09-15 17:21:27 -04:00
Chris Church
5c65ee7f0c Add PowerShell exception handling and turn on strict mode.
* Add exception handling when running PowerShell modules to provide exception message and stack trace.
* Enable strict mode for all PowerShell modules and internal commands.
* Update common PowerShell code to fix strict mode errors.
* Fix an issue with Set-Attr where it would not replace an existing property if already set.
* Add tests for exception handling using modified win_ping modules.
2015-09-15 16:32:35 -04:00
Chris Church
15070e2af8 Merge pull request #11790 from brianlloyd/win_lineinfile
Integration tests for windows implementation of lineinfile
2015-09-15 13:00:36 -04:00
Chris Church
904b8ca27b Update win_msi tests to specify msi url and paths via variables. 2015-09-15 01:15:33 -04:00
Chris Church
0300294f6e Add tests for creates parameter to win_msi module. 2015-09-15 01:15:33 -04:00
Chris Church
260b9f648c Fix fetch action plugin to not fail if file is missing and fail_if_missing=False (the default). Add tests to test_fetch role to verify it works as expected. 2015-09-14 14:21:52 -04:00
Abhijit Menon-Sen
88a20e7a20 Fix broken integration test with unicode hostnames
1. The test did "name: '{{hostnames}}.{{item}}'" inside a with_sequence
   loop, which didn't do what was intended: it expanded hostnames into
   an array, appended ".1", and set name to the resulting string. This
   can be converted to a simple with_items loop.

2. Some of the entries in hostnames contained punctuation characters,
   which I see no reason to support in inventory hostnames anyway.

3. Once the add_host failures are fixed, the playbook later fails when
   the unicode hostnames are interpolated into debug output in ssh.py
   due to an encoding error. This is only one of the many places that
   may fail when using unicode inventory hostnames; we work around it
   by providing an ansible_ssh_host setting.
2015-09-11 21:47:19 +05:30
Rene Moser
f6382a160d cloudstack: new integration test role test_cs_user 2015-09-09 22:36:19 +02:00
Brian Coca
514fa73fcd galaxy fixes 2015-08-28 12:32:50 -04:00
Marius Gedminas
c846bab69b Fix assert statement syntax
`assert (condition, message)` gets parsed by Python as `assert
a_two_tuple`, and a 2-element tuple is never False.

Discovered by compileall on Python 3.4, which emits a SyntaxWarning for
this common mistake.
2015-08-27 22:15:57 +03:00
Marius Gedminas
727cb8a917 Support print() function in test/ 2015-08-27 22:15:57 +03:00
Marius Gedminas
9ae66a7f5c Use 'except ... as' syntax in contrib/ and test/ too 2015-08-27 22:15:57 +03:00
James Cammarata
601a1cc6d9 Multiple fixes for include statements and blocks in general
Fixes #11981
Fixes #11995
Fixes #12039
Fixes #12077
2015-08-26 02:23:22 -04:00
Toshio Kuratomi
9f9891df2c Add unicode characters to the data that we're testing that ansible-vault can decrypt 2015-08-25 15:14:43 -07:00
Brian Coca
3e13dfd7e8 used stdoutlines list to avoid string mismatches
added block environment test
2015-08-25 10:06:24 -04:00
Brian Coca
efa005c228 added names to assert tasks for easier debugging 2015-08-24 22:57:56 -04:00
Brian Coca
d6a1cbeefb corrected varname that started with number and broke templating 2015-08-24 22:44:12 -04:00
Brian Coca
104b8a9a7b avoid hostvars which is not a dict 2015-08-24 22:44:12 -04:00
Brian Coca
857d74a274 made diff ignore whitespace 2015-08-24 22:44:12 -04:00
Brian Coca
6da2587c36 Merge pull request #12058 from resmo/for-ansible
cloudstack: more integration tests and updates
2015-08-24 10:03:58 -04:00
James Cammarata
db65503778 Revert "Add PowerShell exception handling and turn on strict mode." 2015-08-23 21:09:16 -04:00
Rene Moser
69d5e62083 cloudstack: test_cs_account: account_state was renamed, fixes tests 2015-08-23 22:50:23 +02:00
Rene Moser
eb44f85dc8 cloudstack: test_cs_instance: make it more configurable 2015-08-23 22:49:45 +02:00
Rene Moser
15a7f818e1 cloudstack: add more integration tests 2015-08-23 22:48:32 +02:00
Chris Church
af9200c2de Add integration tests for win_group module. 2015-08-22 18:49:55 -04:00
Chris Church
4b2cdadc98 Add PowerShell exception handling and turn on strict mode.
* Add exception handling when running PowerShell modules to provide exception message and stack trace.
* Enable strict mode for all PowerShell modules and internal commands.
* Update common PowerShell code to fix strict mode errors.
* Fix an issue with Set-Attr where it would not replace an existing property if already set.
* Add tests for exception handling using modified win_ping modules.
2015-08-22 18:28:07 -04:00
Brian Coca
01708cc824 added test for environment directive 2015-08-21 00:37:17 -04:00
Feanil Patel
892e230514 Don't convert nulls to strings.
This change is similar to https://github.com/ansible/ansible/pull/10465

It extends the logic there to also support none types.  Right now if you have
a '!!null' in yaml, and that var gets passed around, it will get converted to
a string.

eg. defaults/main.yml
```
ENABLE_AWESOME_FEATURE: !!null # Yaml Null
OTHER_CONFIG:
  secret1: "so_secret"
  secret2: "even_more_secret"

CONFIG:
  hostname: "some_hostname"
  features:
    awesame_feature: "{{ ENABLE_AWESOME_FEATURE}}"
  secrets: "{{ OTHER_CONFIG }}"
```

If you output `CONFIG` to json or yaml, the feature flag would get represented in the output
as a string instead of as a null, but secrets would get represented as a dictionary.  This is
a mis-match in behaviour where some "types" are retained and others are not.  This change
should fix the issue.

I also updated the template test to test for this and made the changes to v2.

Added a changelog entry specifically for the change from empty string to null as the default.

Made the null representation configurable.

It still defaults to the python NoneType but can be overriden to be an emptystring by updating
the DEFAULT_NULL_REPRESENTATION config.
2015-08-19 18:35:07 -04:00
Rene Moser
9d3577a74a cloudstack: fix tests unhashable type: 'dict' 2015-08-19 21:39:58 +02:00
Rene Moser
8f3c181d90 cloudstack: tests: use resource_prefix 2015-08-19 21:37:54 +02:00
Jeremy Wells
9f9f476b6e Update consul integration test with http checks 2015-08-19 00:38:36 +02:00
Brian Coca
1acb29ff9b sequence will now run once for start=end, added test to suite
fixes #11979
2015-08-18 02:33:23 -04:00
Brian Coca
43cc27084d corrected on delete also 2015-08-13 09:58:30 -04:00
Brian Coca
089687140d corrected role path 2015-08-13 09:57:36 -04:00
Brian Coca
033c77a13b now creates/removes files/ dir 2015-08-13 09:54:06 -04:00
Brian Coca
464a436f8f fixed testplay host, included lookup path tests in all, added stage for easier debugging 2015-08-12 19:26:52 -04:00
Brian Coca
60803a1d3c added lookup paths testing 2015-08-12 19:26:52 -04:00
Yannig Perré
47db352725 Merge remote-tracking branch 'ansible/devel' into devel 2015-08-05 11:20:41 +02:00
Yannig Perré
c0bd140959 Add documentation for the ini lookup plugin. 2015-08-05 11:09:40 +02:00
Yannig Perré
733d40a77c When value does not exist, return default value instead of stopping ansible with an exception. 2015-08-05 10:54:24 +02:00
Brian Coca
aefca24616 Merge pull request #10857 from jeffb-stell/devel
Add test for https://github.com/ansible/ansible/issues/9851
2015-08-03 19:23:59 -04:00
James Cammarata
a586c74967 Merge pull request #11838 from cchurch/stringify_powershell_unquote_value
Fix for PowerShell unquote method when passed None.
2015-08-02 22:57:27 -04:00
Chris Church
cafc35fd5b Fix for PowerShell unquote method when passed None. 2015-08-02 18:38:29 -04:00
Chris Church
6969b5ac8b Make sure raw doesn't eat key=value arguments. 2015-08-02 11:57:32 -04:00
Chris Church
2154212491 Merge pull request #11094 from cchurch/test_win_feature_has_servermanager
Only run win_feature tests when the host has the ServerManager module.
2015-07-31 17:52:45 -04:00
Chris Church
e87cf4a3cc Fixes for WinRM/PowerShell support in v2.
- Add support for inserting module args into PowerShell modules.  Fixes #11661.
- Support Windows paths containing spaces.  Applies changes from #10727 to v2.  Fixes #9999.  Should also fix ansible/ansible-modules-core#944 and ansible/ansible-modules-core#1007.
- Change how execution policy is set for running remote scripts.  Applies changes from #11092 to v2.  Also fixes ansible/ansible-modules-core#1776.
- Use codepage 65001 (UTF-8) for WinRM connection instead of default (CP437), convert command to UTF-8 and results from UTF-8.  Replaces changes from #10024.  Fixes #11198.
- Close WinRM connection when task completes.
- Use win_stat, win_file and win_copy modules instead of stat, file and copy when called from within other action plugins (only when using WinRM+PowerShell).
- Unquote Windows path arguments before passing to win_stat, win_file, win_copy and slurp modules (only when using WinRM/PowerShell).
- Check for win_ping module to determine if core modules are missing (only when using WinRM/PowerShell).
- Add stdout_lines to result from running low level commands (so stdout_lines is available when using raw/script).
- Update copy action plugin to use shell functions for joining paths and checking for trailing slash.
- Update fetch action plugin to unquote source path when using Windows paths.
- Add win_copy and win_template action plugins that inherit from copy and template.
- Support running .bat and .cmd scripts using default system encoding instead of UTF-8.
- Always send PowerShell commands as base64-encoded blobs to allow for running simple PowerShell commands via raw.
- Support running modules on Windows with interpreters other than PowerShell.
- Update integration tests to support above changes and test unicode fixes.
- Add test for win_user error from ansible/ansible-modules-core#1241 (fixed by ansible/ansible-modules-core#1774).
- Add test for additional win_stat output values (implemented by ansible/ansible-modules-core#1473).
- Add test for OS architecture and name from setup.ps1 (implemented by ansible/ansible-modules-core#1100).

All WinRM integration tests pass for me with these changes.
2015-07-31 14:38:31 -04:00
Brian Coca
c2d8ca4bf7 fixed test to expected output 2015-07-30 18:36:54 -04:00
Brian Lloyd
07b14b9731 integration tests for windows implementation of lineinfile 2015-07-29 19:50:06 -04:00
James Cammarata
ba56beda90 Fix include task using a potentially undefined variable 2015-07-29 15:49:29 -04:00
James Cammarata
71867f9480 Remove vars attribute from base
Fixes #11779
2015-07-29 09:45:30 -04:00
James Cammarata
e505a1b7c4 Fix variable precedence integrationt test 2015-07-28 00:51:58 -04:00
Brian Coca
c76a66694f fixed typo 2015-07-27 22:54:57 -04:00
Michael Scherer
106e942faa Document and test 'is undefined' rather than 'is not defined'
According to https://github.com/ansible/ansible/issues/10273,
this syntax should work better for nested dicts.
2015-07-25 14:05:27 +02:00
Toshio Kuratomi
b06353791c Don't pass mode from synchronize action plugin to the ansible module
Fixes https://github.com/ansible/ansible-modules-core/issues/1783
2015-07-23 00:42:27 -07:00
James Cammarata
46f74a0d69 Re-adding --start-at-task test to unicode integration test 2015-07-21 12:36:41 -04:00
James Cammarata
b09eed3353 Merge branch 'test_notify_with_loops' of https://github.com/pilou-/ansible into pilou--test_notify_with_loops 2015-07-20 21:09:34 -04:00
James Cammarata
dca36c1d16 Reestablishing the use of tags/when for role duplication detection
Not figuring these in can cause problems with "diamond" pattern relationships,
even though this is still not quite optimal.
2015-07-20 14:37:20 -04:00
Pierre-Louis Bonicoli
aa23ea8462 tests: checks that handlers work with loops 2015-07-20 14:41:03 +02:00
Brian Coca
9dc5607730 Merge pull request #11519 from bcoca/human_readable
new human_readable filter to transform bits and bytes into cake
2015-07-18 23:10:53 -04:00
James Cammarata
d6b058eaae Removing invocation from async test, as it's pointless 2015-07-15 12:03:02 -04:00
Toshio Kuratomi
327b1676a8 Add support for SNI and TLS-1.1 and TLS-1.2 to the fetch_url() helper
Fixes #1716
Fixes #1695
2015-07-14 12:48:35 -07:00
Brian Coca
f6c64a8c00 fixed var file loading 2015-07-14 12:12:43 -04:00
Brian Coca
5eb25a48ee added empty include test 2015-07-14 12:06:31 -04:00
Brian Coca
22165dd046 fixed bad parsing tests 2015-07-14 12:06:31 -04:00
Brian Coca
44aef347cb enabled good parsing tests in parsing target
fixed test_good_parsing role
added raw duplicate parameters to test_good_parsing
2015-07-14 08:05:57 -04:00
James Cammarata
6971e92f39 Fixing up some output stuff 2015-07-14 00:23:17 -04:00
Brian Coca
b4de103bb2 Merge pull request #11555 from cchurch/test_win_get_url_updates
Update tests for win_get_url module to test force parameter
2015-07-10 17:07:20 -04:00
Chris Church
1aa2191fd5 Update tests for win_get_url module to test force parameter and invalid URLs/paths. 2015-07-10 15:54:18 -04:00
Brian Coca
c6dde19a5e Merge pull request #11537 from chrismeyersfsu/azure-test
assert password or ssh key provided on new image creation
2015-07-10 13:57:15 -04:00
Brian Coca
9c5a6d7b5a fixed all references to old plugins/inventory to point at contrib/inventory 2015-07-10 13:00:12 -04:00
James Cammarata
5430169b77 Cleaning up includes test to match 2.0 behavior
* Perhaps the only precedence change, in 2.0+ variables from set_fact
  will not override params to an include file, as params are expected
  to be more specific than host-based variables.
* Uncommented long-form include example.
2015-07-10 11:22:51 -04:00
James Cammarata
b520d5bc60 Lots of fixes for integration test bugs 2015-07-10 01:53:59 -04:00
Chris Meyers
32685f9648 assert password or ssh key provided on new image creation 2015-07-09 13:44:09 -04:00
James Cammarata
27fcf1a4b5 Fix bug in registered variables related to delegate_to changes 2015-07-08 12:38:24 -04:00
James Cammarata
f5baad4fb2 Removing unicode --start-at-task test for now as we haven't added that back into devel 2015-07-08 12:23:42 -04:00
James Cammarata
64a1b1e043 Fix first_available_file: support for copy and template actions 2015-07-08 12:23:42 -04:00
Brian Coca
48827a31bc added minimal testing for special template vars 2015-07-07 20:11:55 -04:00
Brian Coca
688088547b new human_readable filter to transform bits and bytes into cake (not really) 2015-07-07 15:58:18 -04:00
Brian Coca
5122455db8 ported missing sequence updates from 1.9 2015-07-03 13:54:51 -04:00
Matt Martz
43f81c7c01 Fix YAML formatting issue for rax integration tests 2015-06-30 09:38:12 -05:00
Brian Coca
200706d5ab Merge pull request #9812 from fgsch/fix_1904
Allow globbing in creates= and removes= directives
2015-06-30 07:58:54 -04:00
Matt Martz
c440762b61 Make the wait_timeout for rax tests a configurable default 2015-06-29 12:09:16 -05:00
Matt Martz
b370f6efce Add tests for rax_scaling_group 2015-06-18 13:08:35 -05:00
Toshio Kuratomi
605ddad37e Add test that url lookup checks tls certificates 2015-06-16 09:46:17 -07:00
James Cammarata
d913f169a8 Update failed_when integration test to be more thorough 2015-06-16 11:00:11 -04:00
Brian Coca
5ed2e44026 adjusted with_dict test to now work 2015-06-15 17:42:40 -04:00
Brian Coca
dc31086a17 added with_dict test 2015-06-15 17:12:36 -04:00
Brian Coca
11f1d99a5b added test for first_available and copy 2015-06-12 23:54:09 -04:00
Brian Coca
b9bb3e83b7 added new test that allows for listed bare strings
now with_times: barestring, will error out in test
2015-06-11 13:45:04 -04:00
Brian Coca
aa6e204b6e Merge pull request #11115 from jhawkesworth/second_go_at_fixing_1404
Part fix for https://github.com/ansible/ansible-modules-core/issues/1404 (replaces #11086)
2015-06-10 20:43:32 -04:00
James Cammarata
e547e1f9ba Merge branch 'devel' into devel_switch_v2 2015-06-01 16:53:15 -05:00
James Cammarata
fe41f109a9 Merge branch 'v2_final' into devel_switch_v2 2015-06-01 16:42:59 -05:00
James Cammarata
4bc7703db3 Fixing some small bugs related to integration tests (v2) 2015-06-01 16:42:10 -05:00
Jon Hawkesworth
30b92a6f4c Get-FileChecksum allways returns a string now,
and the test_win_copy integration tests that depend on the checksum
have been updated in this change too.
2015-06-01 21:53:49 +01:00
Chris Church
d2ba0de6aa When running winrm tests against multiple hosts, fail the play when any host has a failure. 2015-05-31 23:16:45 -04:00
Chris Church
8d742df1de Allow prepare_win_tests role to run multiple times, before each role that depends on it. 2015-05-31 23:15:28 -04:00
Chris Church
1e418fe56a Only run win_feature tests when the host has the ServerManager module. 2015-05-29 13:57:11 -04:00
Toshio Kuratomi
ac14ad1419 Test on fields that are actually set 2015-05-28 17:02:48 -07:00
Toshio Kuratomi
73b7d96501 Test on fields that exist 2015-05-28 17:01:18 -07:00
Toshio Kuratomi
1bda7cc200 Test that uri module validates certs 2015-05-28 15:35:45 -07:00
Toshio Kuratomi
0f4a3409d8 Add test that validate_certs=no works 2015-05-28 15:35:25 -07:00
James Cammarata
60bea844b3 Merge branch 'v2_final' into devel_switch_v2 2015-05-28 15:27:09 -05:00
James Cammarata
2bad888f28 Merge branch 'v2_final' into devel_switch_v2
Conflicts:
	lib/ansible/inventory/__init__.py
	lib/ansible/modules/core
	lib/ansible/utils/__init__.py
	lib/ansible/utils/module_docs.py
2015-05-28 15:26:03 -05:00
Toshio Kuratomi
afc19894e1 Make fetch_url check the server's certificate on https connections 2015-05-28 13:20:40 -07:00
Toshio Kuratomi
1ccf2a4685 Make fetch_url check the server's certificate on https connections 2015-05-28 12:35:37 -07:00
Toshio Kuratomi
b91532aff3 Drop the mysql test db first so that we test with a clean slate. 2015-05-27 13:39:09 -07:00
Yannig Perre
c2968d6d84 New lookup plugin : ini. Can handle ini file and java properties file.
Can also read a list of value in a section using regexp.
2015-05-27 21:51:20 +02:00
Toshio Kuratomi
a8d52e3e94 Have to setup the proper mime-types before importing SImpleHttpServer 2015-05-21 12:24:41 -07:00
Toshio Kuratomi
7af2632c87 Forgot to invoke wrapper instead of SimpleHttpServer 2015-05-21 11:56:58 -07:00
Toshio Kuratomi
b312e97a30 Think that integration tests are failing in json due to lack of json mimetype. Make a short wrapper to fix that. 2015-05-21 10:59:57 -07:00
Toshio Kuratomi
13253f9c68 Merge pull request #10565 from bcoca/with_sequence_expand
made sequence more flexible
2015-05-21 08:05:17 -07:00
Toshio Kuratomi
13578738bf Merge pull request #11014 from ansible/uri-integration
Uri integration tests
2015-05-20 17:57:06 -07:00
Brian Coca
78985e5c33 Merge pull request #11030 from resmo/feature/cloudstack_tests_cs_portforward
cloudstack: add tests for cs_portforward
2015-05-19 08:58:27 -04:00
Rene Moser
3916dc8f9e cloudstack: add tests for cs_portforward 2015-05-19 10:11:55 +02:00
Rene Moser
3d816402ba cloudstack: add tests for cs_firewall 2015-05-19 09:39:50 +02:00
Toshio Kuratomi
0f9ad9dad2 Update integration tests from @darkk to work with the current uri module code 2015-05-14 14:21:29 -07:00
Leonid Evdokimov
3383a7b37a tests: replace start-stop-daemon with async action 2015-05-14 12:58:24 -07:00
Leonid Evdokimov
ae9ba4afa1 uri: provide raw_content, parse json without double-decoding. Fixes #7586
Regression potential:
 - `raw_content` is written to `dest` file instead of decoded `content`
 - `raw_content` doubles module reply
2015-05-14 12:58:24 -07:00
Toshio Kuratomi
bbda86ad0a Fix parsing tests so that they all run 2015-05-13 11:04:12 -07:00
James Cammarata
b94e2a1f4e Fixing bugs related to parsing and fixing up parsing integration tests (v2) 2015-05-13 11:27:12 -05:00
James Cammarata
830225d9c1 Fix errors in subelements lookup plugin and associated tests (v2) 2015-05-12 15:09:03 -05:00
Jan Losinski
dcb54d9657 Add integration test to verify #10073
In issue #10073 a misbehaviour in literal handling for inline lookup
arguments that can cause unexpected behaviur was reported. This
integration testcase reproduce the problem.

After applying pull request #10991 the issue is fixed and the test
passes.

Signed-off-by: Jan Losinski <losinski@wh2.tu-dresden.de>
2015-05-12 11:16:17 -07:00
Serge van Ginderachter
9b646dea41 Add optional 'skip_missing' flag to subelements 2015-05-12 12:52:16 -05:00
Rene Moser
9180ede6e0 cloudstack: add test for cs_account 2015-05-11 17:37:35 +02:00
Chris Meyers
cf300da02c azure changes to Makefile 2015-05-05 08:42:07 -04:00
Chris Meyers
efb190d5a5 add azure integration tests 2015-05-04 23:45:03 -04:00
Brian Coca
1071fa12ca Merge pull request #10908 from resmo/feature/cloudstack-tests
cloudstack: integration tests
2015-05-04 12:29:27 -04:00
Brian Coca
4d357a73f6 Merge pull request #10868 from jaypei/devel
Add lineinfile integration tests for quoted string
2015-05-04 10:48:49 -04:00
Rene Moser
0588a0fdd9 cloudstack: integration tests 2015-05-03 16:06:30 +02:00
Toshio Kuratomi
da5e201b07 Change python-q into sharutils as the epel repo for centos6 is being funky. 2015-04-30 17:48:03 -07:00
Toshio Kuratomi
6a985b9c6b Add Fedora mysql vars so we get mariadb rather than mariadb-galera 2015-04-30 16:16:27 -07:00
Toshio Kuratomi
3ccc2ae299 Fix include test to keep type 2015-04-30 15:25:53 -07:00
Toshio Kuratomi
974731bec0 Fix filename of output file 2015-04-30 13:54:25 -07:00
Toshio Kuratomi
8d0ceeca91 Make template test work with both py2.6 and 2.7+ 2015-04-30 09:24:51 -07:00
Toshio Kuratomi
fb96173d10 to_nice_json filter no longer has a trailing space when formatting dicts 2015-04-30 08:52:02 -07:00
jaypei
288fe1179a Add lineinfile integration tests for quoted string
Reference #10864
2015-04-29 19:50:59 +08:00
Jeff Bachtel
47c3d75c3c Add test for https://github.com/ansible/ansible/issues/9851 2015-04-28 14:17:53 -04:00
Carlos E. Garcia
cfbfd38723 just a few spelling error changes 2015-04-28 09:36:42 -04:00
Toshio Kuratomi
6935d467eb Add tests for yum module taking lists of packages in various formats 2015-04-21 10:09:19 -07:00
Toshio Kuratomi
a0def30c34 Add integration test for unarchive filelist feature 2015-04-15 09:28:50 -07:00
Toshio Kuratomi
aab681bc2b Update core and extras module refs and add tests for an unarchive
problem that the update fixes:

https://github.com/ansible/ansible-modules-core/issues/1064
2015-04-15 05:14:20 -07:00
Toshio Kuratomi
ed601f964d Merge pull request #10683 from timsutton/remove-old-git-integration-test
Git integration test: remove test for ambiguous .git/branches dir
2015-04-13 15:14:32 -07:00
Timothy Sutton
5f1ba589a5 Git integration test: remove test for ambiguous .git/branches dir
- '.git/branches' does not always exist, but the git integration
  tests always checks for this directory's existence so it always
  fails
- more info:
  - http://stackoverflow.com/questions/10398225/what-is-the-git-branches-folder-used-for
2015-04-13 13:38:11 -04:00
Brian Coca
67512aeeb6 Merge pull request #10618 from jder/force-handlers
Fix --force-handlers, and allow it in plays and ansible.cfg
2015-04-13 10:16:45 -04:00
Feanil Patel
0abcebf1e4 Don't convert numbers and booleans to strings.
Before this change if a variable was of type int or bool and the variable was referenced
by another variable, the type would change to string.

eg. defaults/main.yml
```
PORT: 4567
OTHER_CONFIG:
  secret1: "so_secret"
  secret2: "even_more_secret"

CONFIG:
  hostname: "some_hostname"
  port: "{{ PORT }}"
  secrets: "{{ OTHER_CONFIG }}"
```

If you output `CONFIG` to json or yaml, the port would get represented in the output as a
string instead of as a number, but secrets would get represented as a dictionary.  This is
a mis-match in behaviour where some "types" are retained and others are not.  This change
should fix the issue.

Update template test to also test var retainment.

Make the template changes in v2.
Update to only short-circuit for booleans and numbers.

Added an entry to the changelog.
2015-04-11 12:03:42 -04:00
Chris Church
42bd640d14 Update win_user tests to set a group on user creation. 2015-04-11 01:55:56 -04:00
Chris Church
56f4bf44f5 Add integration tests for win_user module. 2015-04-11 01:55:56 -04:00
Jesse Rusak
652cd6cd5e Fix --force-handlers, and allow it in plays and ansible.cfg
The --force-handlers command line argument was not correctly running
handlers on hosts which had tasks that later failed. This corrects that,
and also allows you to specify force_handlers in ansible.cfg or in a
play.
2015-04-10 19:38:59 -04:00
Brian Coca
2a8a302e7e fixed corner case when counting backwards, added test cases for count=0 and backwards counts 2015-03-30 20:34:17 -04:00
Toshio Kuratomi
aaa25eb75c Make run_command() work when we get byte str with non-ascii characters (instead of unicode type like we were expecting)
Fix and test.

Fixes #10536
2015-03-25 12:24:49 -07:00
Brian Coca
c49685b753 removed debug play from tests 2015-03-20 11:25:48 -04:00
Brian Coca
a53cf9d6fa now correctly aplies add_host passed variables last to override existing vars. 2015-03-20 11:22:07 -04:00
Toshio Kuratomi
e73b945900 Merge pull request #10112 from jsmartin/ec2_asg_rolling_integration_tests
Adds integration tests for new ec2_asg features
2015-03-19 22:41:00 -07:00
Toshio Kuratomi
98db6a232d Have selinux allow docker<=>nginx communication 2015-03-18 18:56:46 -07:00
Toshio Kuratomi
3c52c36629 Okay, let's see if these pauses are enough to get this passing 2015-03-18 17:58:29 -07:00
Toshio Kuratomi
2a967879fb Fix the removal of busybox image 2015-03-18 14:05:27 -07:00
Toshio Kuratomi
c2fb0b8f9d Some debugging for why docker tests are failing in jenkins 2015-03-18 13:40:19 -07:00
Toshio Kuratomi
f4c1260d03 Add more tests for private docker registries 2015-03-18 12:16:18 -07:00
Toshio Kuratomi
259744d5f4 Remove debug statements 2015-03-17 14:41:06 -07:00
Toshio Kuratomi
2cfeec3683 Add tests using a docker private registry 2015-03-17 14:41:06 -07:00
Toshio Kuratomi
9e14471471 And ran into a different problem with centos6. Sigh. 2015-03-17 14:14:26 -07:00
Toshio Kuratomi
85e137bbad Attempt to enable docker tests for rhel/centos6 as well 2015-03-17 13:52:44 -07:00
Toshio Kuratomi
f8ec1451ea Would help if I added these files in the right directory 2015-03-17 13:31:54 -07:00
Toshio Kuratomi
23291e8d8c Ugh, looks like very few distros have the proper packages to run the docker module.
break up the tests so that we can maybe  run this on at least one
platform
2015-03-17 13:18:42 -07:00
Toshio Kuratomi
a64de2e000 Initial test of the docker module 2015-03-17 12:32:07 -07:00
Toshio Kuratomi
4710a07fb0 Test case for #10426 2015-03-11 20:58:21 -07:00
Brian Coca
f803c1e1f8 fix tag test that broke with new tag info displayed in list tasks 2015-03-11 16:28:37 -04:00
Brian Coca
5f6db0e164 preliminary privlege escalation unification + pbrun
- become constants inherit existing sudo/su ones
- become command line options, marked sudo/su as deprecated and moved sudo/su passwords to runas group
- changed method signatures as privlege escalation is collapsed to become
- added tests for su and become, diabled su for lack of support in local.py
- updated playbook,play and task objects to become
- added become to runner
- added whoami test for become/sudo/su
- added home override dir for plugins
- removed useless method from ask pass
- forced become pass to always be string also uses to_bytes
- fixed fakerunner for tests
- corrected reference in synchronize action plugin
- added pfexec (needs testing)
- removed unused sudo/su in runner init
- removed deprecated info
- updated pe tests to allow to run under sudo and not need root
- normalized become options into a funciton to avoid duplication and inconsistencies
- pushed suppored list to connection classs property
- updated all connection plugins to latest 'become' pe

- includes fixes from feedback (including typos)
- added draft docs
- stub of become_exe, leaving for future v2 fixes
2015-03-10 18:42:36 -04:00
Toshio Kuratomi
a8c02b7049 Rework the shell quoting of remote checksumming
Instead of getting rid of pipes.quote, use pipes.quote and get rid of
the manually entered toplevel quotes.  This should properly escape
backslashes, quotes, and other characters.

Also fix the new checksumming python "one-liner" for csh.
ansible_shell_type needs to be set to csh.

Fixes #10363
Fixes #10353
2015-03-02 15:42:18 -08:00
Toshio Kuratomi
9399290cca Proper git commit of the new integration test 2015-02-26 14:53:51 -08:00
Toshio Kuratomi
89159951dc Fix name of a task containing a template causing traceback
Workaround for #10321 Need to fix better in v2
2015-02-26 14:05:33 -08:00
Toshio Kuratomi
e146245a0d Integration test for #10300 2015-02-25 11:26:43 -08:00
Brian Coca
c81d981164 Merge pull request #10183 from bcoca/tag_control
adds complex tag management
2015-02-25 10:36:11 -05:00
Brian Coca
1cb47c807e changed fetch test to match new functionality 2015-02-20 11:32:10 -05:00
Toshio Kuratomi
9bb8e60ed1 Merge pull request #10269 from danrue/unarchive_creates_behavior
Make behavior consistent when using 'creates' option with modules
2015-02-17 23:04:26 -08:00
Dan Rue
787388ac30 Do not mark "skipped" when changed is false
When using the "creates" option with the unarchive module, set changed
to False if the file already exists. This behavior is consistent with
other modules which use "creates", such as command and shell.
2015-02-17 15:02:08 -06:00
Matt Martz
1d0ceb37a4 Remove explicit msg match for invalid size 2015-02-17 12:32:22 -06:00
Brian Coca
1861be8f31 Merge pull request #9957 from hfinucane/apt-deb-tests
Add tests for using .deb files
2015-02-16 19:15:34 -05:00
Toshio Kuratomi
8f05e4eaaf Tests for: https://github.com/ansible/ansible-modules-core/issues/778 2015-02-16 07:12:18 -08:00
Brian Coca
65c08d1364 added tests
refactored task selection into method
list-tasks now uses common method of task selection
always is now skippable if specified in --skip-tags
2015-02-13 08:27:07 -05:00
Matt Martz
be6e49dd1f Add tests for rax_cdb_database 2015-02-11 12:59:02 -06:00
Matt Martz
952aa0c2d8 Don't hardcode list of delete functions to loop through 2015-02-11 12:59:02 -06:00
Matt Martz
9485d82eca Add tests for rax_cdb 2015-02-11 12:59:02 -06:00
Matt Martz
29cd7e3fc1 Add tests for rax_identity 2015-02-11 12:59:02 -06:00
Matt Martz
74f4d186cc Add tests for rax_cbs_attachments 2015-02-11 12:59:01 -06:00
Matt Martz
5e00e72f7a Remove unecessary prep tasks 2015-02-11 12:59:01 -06:00
Matt Martz
3ae1014fd3 Add tests for rax_cbs 2015-02-11 12:59:01 -06:00
Matt Martz
f01ae9f509 Add test_rax_network role 2015-02-11 12:59:01 -06:00
Matt Martz
e54c45ee6d Add test_rax_keypair role 2015-02-11 12:59:01 -06:00
Matt Martz
abac45dafc Add test_rax_meta role 2015-02-11 12:59:01 -06:00
Matt Martz
9878ebf0ee Add tests for rax instance_ids with state=absent 2015-02-11 12:59:01 -06:00
Matt Martz
340b845c38 Add test_rax_facts 2015-02-11 12:59:01 -06:00
Matt Martz
dab9c30584 Add some extra vars and create a dependent role prepare_rax_tests 2015-02-11 12:59:01 -06:00
Matt Martz
5a862328f0 Add test_rax_clb_nodes 2015-02-11 12:59:00 -06:00
Matt Martz
b151c7ffac Add some additional output to cleanup_rax.py 2015-02-11 12:59:00 -06:00
Matt Martz
b8e7211661 Update rax_clb tests for fixes in the module 2015-02-11 12:59:00 -06:00
Matt Martz
7ba7e3bd69 Add tests for rax_clb 2015-02-11 12:59:00 -06:00
Brian Coca
788889225d Merge pull request #10078 from sgargan/consul
Ansible support for Consul
2015-02-11 13:58:15 -05:00
Toshio Kuratomi
10df1b898c Fix template module broken when modifying symlinks
Needed to clear unwanted parameters from both args and complex args when
calling file module.

Fixes #10208
2015-02-11 00:10:37 -08:00
Brian Coca
07dfbaedc3 Merge pull request #9602 from cchurch/powershell_splatting
Handle PowerShell parameters passed via splatting
2015-02-04 10:25:03 -05:00
Toshio Kuratomi
930bdd1f2f Better names for the test_binary tests 2015-02-02 19:33:05 -08:00
Toshio Kuratomi
5d1e468bda Don't bash TMPDIR env var unnecessarily. Other programs might rely on it 2015-02-02 16:17:40 -08:00
Toshio Kuratomi
5b279c1c15 Fix for v1 handling of unicode extra-vars 2015-02-02 14:12:16 -08:00
Toshio Kuratomi
bd7ac7fd7d Error message has changed; scrape the new message 2015-02-02 12:05:01 -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
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
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
Federico G. Schwindt
91a73cff81 Add tests for globbing support 2014-12-14 22:40:04 +00:00
Federico G. Schwindt
fce04b1eba Use command= when we intended to
While here sort register variables and add a comment to signal multiline
testing.
2014-12-14 22:39:17 +00: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
Brian Coca
446cba6509 fixed integration test as with_items always returns a list, even if
empty
2014-12-04 12:30:18 -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
Toshio Kuratomi
c697d01151 Integration tests for #9242 and #9640 2014-11-26 10:55:37 -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
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
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
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
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
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
05644686de Fix bug in plugin path caching
Fixes #9263
2014-10-04 21:47:38 -05: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
James Cammarata
313f26f866 Fix issue with vars precedence from roles
Fixes #9219
2014-09-30 15:50:46 -05:00
Chris Church
997ea78b1f Add integration tests for the win_feature module. 2014-09-30 16:20:20 -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
178075489b Merge branch 'gh-7432' of https://github.com/hfinucane/ansible into hfinucane-gh-7432 2014-09-11 12:42:52 -05: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
Will Thames
d6a725659e Allow github style ssh repo names 2014-09-10 21:55:27 +10:00
Toshio Kuratomi
a9b5b1bf55 Test that we can override variables set in inventory when the vars_file name is templated
Fixes #8903
2014-09-09 15:43:10 -07:00
James Cammarata
cd99821f8a Fix py26 difference in ssl socket connect call from 99ba9d6 2014-09-03 10:04:02 -05:00
James Cammarata
14b8e2cf01 Make sure set_fact variables go into VARS_CACHE
Fixes #8758
2014-09-03 09:39:50 -05:00
Henry Finucane
9638ab973f Add integration test 2014-09-01 16:31:37 -07:00
Oleg Bulatov
a7d38702d9 Fix #7711
Fix relative symlinks creation in file module

Signed-off-by: Oleg Bulatov <oleg@bulatov.me>
2014-09-01 23:23:36 +04:00
Chris Church
dac11904cb Add tests for new windows facts. 2014-08-31 11:52:20 -04:00
James Cammarata
e99db078b4 Additional fixes for the new omit parameter variable 2014-08-27 10:06:55 -05:00
Victor Lin
6260635c65 add new test case 2014-08-27 10:05:10 -05:00
Victor Lin
559c04f324 Implement omit for module args, also add tests for it 2014-08-27 10:04:47 -05:00
James Cammarata
d99b835c3e Adding integration tests for symbolic modes 2014-08-25 21:54:17 -05:00
Will Thames
ab8490d003 Added warnings to command module
Generate warnings when users are shelling out to commands
rather than using modules

Can be turned off on a per-action line with the documented
warn=False flag. Can be turned off globally using
command_warnings = False in ansible config file.

Print out warnings using the standard playbook callbacks.

Created some additional tests in TestRunner.test_command
and also a demonstration playbook.
2014-08-22 15:37:07 -04:00
Michael DeHaan
3871eebfbb Merge pull request #8441 from willthames/unarchive_dest_fix
Unarchive should work when parent directory is not writable
2014-08-22 15:05:42 -04:00
Michael DeHaan
3695c2bcab Remove galaxy CLI tests that hit bitbucket as bitbucket is hanging tests - maybe replace with nice github examples later :) 2014-08-22 14:06:08 -04:00
Will Thames
31540246dd Handle older git archive commands
Older git archive commands create tar archives even with a tar.gz
extension. So change it to always create tar archives and have
the install_role method cope.

Removed ssh roles from the test case as they don't work unless
you can connect to bitbucket via ssh and have your key there.

Corrected a minor typo in error messages
2014-08-21 17:15:23 -04:00
Will Thames
ada9074276 Allow installation of roles from yaml roles file
Added docs
Added more tests
Improved how roles are returned from the parsers
2014-08-21 17:15:23 -04:00
Will Thames
46b59b02ed Friendly Role Names and roles from URLs
* Roles can now be given a friendly name as third field in role spec csv
* Roles can be installed from URL (not just from archived SCMs)
* Integration tests to demonstrate this
* Unit tests to ensure that role spec parsing works as expected
2014-08-21 17:15:23 -04:00
Will Thames
1803976a40 Ensured that role version can be specified in role dependencies 2014-08-21 17:15:23 -04:00
Will Thames
c2fe33f9f4 Tidied up a little, added tests
Moved repo_url_to_role_name to common method in ansible.utils
Added unit test for repo_url_to_role_name
Added integration tests for galaxy
2014-08-21 17:15:23 -04:00
James Cammarata
5e240fec71 Merge branch 'devel' of https://github.com/l1k/ansible into l1k-devel
Conflicts:
	test/integration/roles/test_copy/tasks/main.yml
2014-08-21 13:56:26 -05:00
James Cammarata
8a1fbed5d6 Correct variable blending from vars_files with hostvars in them
Fixes #8638
2014-08-20 15:49:01 -05:00
Michael DeHaan
f2adee9fc9 Merge pull request #8665 from cchurch/winrm_timeout
WinRM test for long-running command.
2014-08-19 15:43:00 -04:00
James Cammarata
d4ff0d125a Make sure password files from lookups are created with restrictive permissions
Also adds checks for the lookup integration test for passwords.

Fixes #8652
2014-08-19 11:30:04 -05:00
James Cammarata
3a7aca6066 Fix no_log value for content in common file args settings
Also adds a test to ensure the content value is not logged.

Related to #8647
2014-08-19 10:47:18 -05:00
Chris Church
90fc6c6881 Added winrm test for long-running command. 2014-08-18 07:49:42 -04:00
Lukas Wunner
677de07f44 Try optimistic chown, do not error out if not permitted to chown
Add unit test
2014-08-17 22:08:45 +02:00
James Cammarata
783a1e3dfc Fixing broken patch 20957a1
Also adds integration tests for nested includes with conditionals
2014-08-11 14:58:48 -05:00
James Cammarata
66802169f5 Adding integration test based on #8535 2014-08-11 11:42:21 -05:00
Michael DeHaan
3bead39c75 Merge branch 'spelling' of git://github.com/cgar/ansible into devel
Conflicts:
	docsite/rst/guide_rax.rst
	plugins/callbacks/mail.py
2014-08-08 13:28:45 -04:00
James Cammarata
63bf2f6d9a Preserve all line breaks in literal blocks
Fixes #8512
2014-08-08 12:11:15 -05:00
Will Thames
d9b895b319 Unarchive should work when parent directory is not writable
Correct unarchive so that the checks for writeability are
sensible.

Added a test for when parent directory is not writable
2014-08-07 16:11:02 +10:00
James Cammarata
5c2c10987e Re-enable the ec2_eip test 2014-08-05 09:20:23 -05:00
James Laska
d202616213 Merge pull request #8426 from jlaska/update_integration_Makefile
Include unicode and var_precedence tests in 'all' target
2014-08-04 13:42:01 -04:00
James Cammarata
af0d8cda7b Fix literal block multiline parsing
Fixes #8394
2014-08-04 11:10:07 -05:00
James Cammarata
6d94ae64ec Remove unnecessary unicode conversions from parse_kv
Fixes #8425
2014-08-04 09:59:08 -05:00
James Laska
d4a78dc951 Include unicode and var_precedence tests in 'all' target 2014-08-04 09:50:30 -04:00
Wayne Rosario
2957a8de44 Adding test Coverage for mysql_variable module
Use mysql_variable to query, set and update variables.
Assert using user and password to query, set and update  variables.
Assert using single quotes, double quotes and no quotes  when using variables
2014-08-01 12:15:05 -04:00
James Cammarata
80df2135e9 Fix parsing of tasks with variable module names
Also adding an integration test for same.
2014-07-30 14:18:06 -05:00
Wayne Rosario
eaf4571e42 Adding the following Test Coverage:
Use mysql_user module to create, delete users.
Update user password and ensure new password was updated for the correct user.
Assert user has access to multiple databases
Assert user creation, deleting using different user privilege and ensure privilege work correctly.
2014-07-29 11:49:53 -04:00
James Cammarata
b64a5ff73d Further enhancements for include params tests 2014-07-29 10:43:37 -05:00
James Cammarata
c9bfcf40d3 Adding further integration tests for include params with quotes 2014-07-29 10:03:44 -05:00
James Cammarata
6e814566de Unquote params passed to an include statement
Fixes #8315
2014-07-28 16:35:52 -05:00
Michael DeHaan
f814e4e463 Verify playbook includes can take params. 2014-07-26 10:41:23 -04:00
Michael DeHaan
a1e4f826ca Add some more integration tests for the task and playbook include mechanism. 2014-07-26 10:37:55 -04:00
James Cammarata
5bcb715dc0 Fixing up previous include test 2014-07-26 01:39:22 -05:00
James Cammarata
4d659229ce Adding integration test to parsing for includes with params 2014-07-26 01:26:16 -05:00
James Cammarata
57f89b85eb Merge pull request #8271 from tksmd/fix-copy-set-fs-attributes-issue
fix an issue that copying directory will fail when trying to change file attributes
2014-07-25 09:38:24 -05:00
James Cammarata
63bcbd0af2 Fix for unicode decoding error in new splitting code
Also adds a new unicode integration test
2014-07-25 09:10:50 -05:00
Michael DeHaan
3adddf4836 Add another negative test for the parser logic. 2014-07-24 20:57:03 -04:00
James Cammarata
43154e5101 Using custom splitting function for module param counting 2014-07-24 14:42:35 -05:00
James Cammarata
cd6602475b Merge branch 'integration_mysql_db' of https://github.com/wrosario/ansible into wrosario-integration_mysql_db 2014-07-24 00:09:11 -05:00
someda
1b1d5d0d3d fix an issue that copying directory will fail when trying to change file attributes and the target file already exists on remote
- the issue was introduced by the commit 84759faa09
2014-07-24 14:03:36 +09:00
James Cammarata
091b76efaa Fixes to parsing tests to remove trailing space 2014-07-23 22:54:39 -05:00
Michael DeHaan
1064550b47 Add missing file. 2014-07-23 23:32:45 -04:00
Michael DeHaan
a21092d7c2 Add missing role test file. 2014-07-23 22:35:24 -04:00
Michael DeHaan
5a763fb5b6 Add some negative tests on the same parsing infrastructure. 2014-07-23 22:34:56 -04:00
Michael DeHaan
02c63cee26 Add a lot of tests to verify parsing routines for scenarios that should pass. Some changes TBD, like stripping command spaces off end of expressions. 2014-07-23 22:10:58 -04:00
James Cammarata
75e5b6401c Fixing up shell quoting issues 2014-07-22 10:09:11 -05:00
James Cammarata
8e940004c2 Fix ec2_setup task param quoting 2014-07-21 11:33:35 -05:00
James Cammarata
84759faa09 Security fixes:
* Strip lookup calls out of inventory variables and clean unsafe data
  returned from lookup plugins (CVE-2014-4966)
* Make sure vars don't insert extra parameters into module args and prevent
  duplicate params from superseding previous params (CVE-2014-4967)
2014-07-21 11:20:49 -05:00
Michael DeHaan
98c6688343 Merge pull request #6976 from clconway/gce-snapshots
Adds support for snapshots and extra persistent disks to the gce modules
2014-07-19 19:07:29 -04:00
Wayne Rosario
24a3d55c78 Adding Integration Tests for mysql_db module
Adding the following Test Coverage for RedHat and Debian OS:

 - Use mysql_db module to create, delete databases using different encoding.
 - Backup/Restore databases using different file format: sql, gz and bz2.
 - Create and delete databases using different user privilege.
 - Assert database creation, deleting and content using system commands.
2014-07-18 12:50:58 -04:00
James Cammarata
0e5b0a2e97 Revert "Set Jinja2's keep_trailing_newline=True in template_from_string."
This reverts commit 7a8eb0b670.
2014-07-17 09:07:04 -05:00
Jacob Leverich
7a8eb0b670 Set Jinja2's keep_trailing_newline=True in template_from_string.
Without this setting, the newline idempotence of scalar strings changes depending on whether
or not they contain any Jinja2 template blocks.
2014-07-14 13:36:17 -07:00
James Cammarata
a320c02c81 Correcting var blending integration test 2014-07-10 15:54:38 -05:00
Chris Church
12a0f4abd8 Add integration tests for win_service module. 2014-07-02 08:12:40 -04:00
James Cammarata
9564818e1e Merge branch 'fix_lineinfile_newlines' into devel 2014-06-23 12:38:12 -05:00
Chris Church
f59041871e Fix typo in powershell setup module. 2014-06-21 10:27:43 -04:00
James Cammarata
48dbb79fbe Merge branch 'issue_5679_lineinfile' into fix_lineinfile_newlines 2014-06-20 00:19:35 -05:00
Chris Church
2654f7b200 Add copyright header to main winrm test playbook. 2014-06-19 14:26:59 -05:00
Chris Church
43236ca0ed Add basic tests for win_get_url and win_msi modules. 2014-06-19 14:26:55 -05:00
Chris Church
5b85252043 Add tests for windows setup module. 2014-06-19 14:26:42 -05:00
Chris Church
edbe7a4514 Add tests for win_stat module. 2014-06-19 14:25:50 -05:00
Chris Church
243cd877ae Add integration tests for fetch/slurp, make powershell fetch/slurp work as close as possible to existing fetch/slurp modules. 2014-06-19 14:25:28 -05:00
Chris Church
c0c9ff23b2 Fix win_ping integration test. 2014-06-19 14:24:14 -05:00
Chris Church
0c938562a7 Add winrm integration tests for raw, script and ping modules. 2014-06-19 14:24:13 -05:00
James Cammarata
ac349dce96 Fixing typo in integration Makefile from an earlier change 2014-06-12 13:14:01 -05:00
James Cammarata
d90f0bdfad Merge branch 'fix-lineinfile-eof-newline' of https://github.com/ahtik/ansible into ahtik-fix-lineinfile-eof-newline 2014-06-12 09:13:49 -05:00
James Cammarata
96c6daf177 Change name of vault integration test 2014-06-10 10:07:50 -05:00
James Cammarata
3abcfee681 Merge branch 'pr_fix2' of https://github.com/carlanton/ansible into carlanton-pr_fix2 2014-06-10 10:05:00 -05:00
Ahti Kitsik
1caf9be109 Bugfix to lineinfile to properly handle files with no newline at EOF when using insertafter=EOF.
Looks like #6881 is also affected by this bug.

Currently when using lineinfile insertafter=EOF for a file that has no newline then the added line is not prefixed with a newline.
As a concrete example, ubuntu distro default /etc/ssh/sshd_config has no newline so lineinfile module cannot be used to add a new line to the end of the file.
2014-06-09 19:58:45 +03:00
Kevin Bell
73c1ccf53e Added an integration test for the ec2_asg module 2014-06-05 16:18:31 -05:00
James Cammarata
74f20ebf79 Removing cruft leftover from the deprecation of include+with_items
Also cleaning up integration tests that had checks for the empty item
attribute in certain results.

Fixes #7535
2014-06-03 13:33:26 -05:00
James Cammarata
e85c7f848f Make sure export param for subversion module is checked as a boolean
Fixes #7548
2014-05-27 14:09:50 -05:00
James Cammarata
cfd8c685d1 Correct issue of handlers running on all hosts incorrectly
Also adds an integration test to catch this bug in the future.

Fixes #7559
2014-05-27 12:03:08 -05:00
Anton Lindström
923c172044 Enabled integration tests for encrypted vars in Makefile 2014-05-21 21:17:53 +02:00
Anton Lindström
926755c3cf Added integration tests for encrypted vars 2014-05-21 21:06:47 +02:00
James Cammarata
272db903e5 Adding an integration test for variable precedence 2014-05-09 11:42:57 -05:00
James Cammarata
21f8c0bc96 Merge branch 'cchurch-devel' into devel 2014-05-07 09:12:10 -05:00
James Laska
d314f1b038 [test_apt_repository] Verify that 'python-apt' auto-installs correctly
Remove 'python-apt' before testing the 'apt_repository' module.  The
'apt_repository' module has the smarts to auto-install python-apt.  The
integration test will now assert the correct auto-install behavior.
2014-05-07 09:28:01 -04:00
Chris Church
f9c74d6e57 Add integration tests for group_by module. Fixed bug introduced by ansible/ansible#7273 while also fixing issue described in ansible/ansible#6953 2014-05-06 22:30:37 -04:00
James Cammarata
84e13e5f4c Make sure amazon test doesn't check host keys 2014-05-05 15:07:59 -05:00
James Cammarata
d6fc9f1dfc Fixing two bugs in the ec2_elb_lb module
* the current state of the ELB was not reflected properly when checking
  the status after a change was made.
* invalid zones caused a traceback when enabling/disabling zones
2014-05-05 12:48:45 -05:00
James Cammarata
b753625dbf Refuse to convert a non-empty directory into a link with the file module
Also adds an integration test for the above.

Fixes #7254
2014-05-02 14:46:38 -05:00
someda
50080b3774 fix #7244 recursive copy fails when setting directory attributes
- reverse the order of new_directory_list returned from split_pre_existing_dir in copy module
2014-05-02 01:38:16 +09:00
James Cammarata
bf7c51ad8a Adding an ec2_elb test to re-add an instance that had been removed 2014-04-30 13:59:24 -05:00
James Cammarata
dc4f198bad Forgot to add an assertion for the new rsync_path test 2014-04-29 15:53:32 -05:00
James Cammarata
45237f270d Adding a new test for the synchronize module to test rsync_path 2014-04-29 15:47:16 -05:00
Carlos E. Garcia
7f5dd5e85d multiple spelling error changes 2014-04-29 10:41:05 -04:00
James Cammarata
c9df855d38 Adding an integration test for the ec2_elb module 2014-04-28 20:37:08 -05:00
James Cammarata
f2db460203 A few updates to the ec2_elb_lb integration test 2014-04-25 14:49:00 -05:00
James Martin
2ef65ae813 ec2_elb_lb integration tests. 2014-04-25 14:49:00 -05:00
James Martin
8a21f226b5 ec2_eip integration tests. 2014-04-21 22:10:22 -04:00
Chris Conway
1e0eed3fce Changes cleanup_gce.py to use gce_credentials module. 2014-04-13 18:38:31 -07:00
Chris Conway
2257a69723 Adds support for attaching persistent disks to GCE instances 2014-04-13 18:38:31 -07:00
Chris Conway
d227330a55 Adds support for creating GCE persistent disks from snapshots 2014-04-13 18:38:31 -07:00
Chris Conway
0b45b1256d Adds support for creating GCE persistent disks from images 2014-04-13 18:38:31 -07:00
Chris Conway
1e76fe2569 Adds integration tests for gce_pd module. 2014-04-13 18:38:31 -07:00
Chris Conway
2cc4a372c5 Adds integration tests for gce module. 2014-04-13 18:38:30 -07:00
James Cammarata
567f3819b1 Fixing newline escapes in lineinfile
Fixes #5679
2014-04-08 11:42:29 -05:00
James Cammarata
b73cddc485 Revert "Fix #5679 again after recent changes in core"
This reverts commit 2bfaacd170.

Fixes #6821
2014-04-07 09:55:59 -05:00
James Cammarata
82b24c162e Adding delimiter fixes to action_plugin + fixing local assembling with a delimiter
Also added a new integration test for assemble using local assembly
with a delimiter.
2014-04-03 16:32:35 -05:00
James Cammarata
684d46b170 Fixing some parsing issues in authorized_key module
Also adds an integration test for authorized_key for future validation.

Fixes #6700
2014-04-02 15:02:54 -05:00
James Cammarata
78bdb078fe Fix for bug related to async jid polling change plus a new test 2014-03-26 15:49:15 -05:00
James Cammarata
b3cdcbff75 Adding in a test for subversion export option 2014-03-25 22:21:31 -05:00
James Tanner
f9018a6f1d Ensure handlers run when meta tasks are defined and add handler integration tests
Fixes #6678
Fixes #6670
2014-03-25 13:33:52 -04:00
James Tanner
4045b793be Addresses #6550 add integration tests for pipe lookup 2014-03-18 12:29:54 -04:00
James Laska
750d9e2d59 Update credentials.yml documentation and handling
Changes include:

 * Update Makefile to use credentials.yml when it exists
 * Add details on the use of the credentials.yml file to README.md.
 * Update credentials.template comments
2014-03-18 10:17:44 -04:00
James Cammarata
5d8c9d3f0f Merge branch 'file_fixes_clean' of https://github.com/bcoca/ansible into bcoca-file_fixes_clean 2014-03-17 14:03:26 -05:00
James Laska
4ef2603a62 Add yum+apt integration tests for auto dependency installalation
The `apt` and `yum` modules will automatically install python dependencies.
This change updates the existing integration tests to test whether auto-install
of dependencies is functioning properly.
2014-03-17 10:42:29 -04:00
Michael DeHaan
5c05982dea Merge pull request #6448 from jirutka/fix-5679-2
Fix #5679 again after recent changes in core
2014-03-16 12:43:10 -05:00
Brian Coca
2d25577e11 Fixes and cleanup to file functions and module
- unified set attribute functions ... not sure why 2 identical functions
exist with diff names, now there are 3 while i repoint all modules to 1
- fixed issue with symlinks being created w/o existing src when force=no
- refactored conditionals, simplified where possible
- added tests for symlink to nonexistant source, with both force options
- made symlink on existing attomic (force)
2014-03-15 13:54:24 -04:00
James Laska
aacccd441b Add integration test for apt_repository
Tests several ways to specify the repository.  For every repo added, the test
asserts that:

 * the apt-cache was updated as expected (depends on `update_cache` parameter)
 * the PPA key was installed (depends on `repo` format)
2014-03-14 13:07:12 -04:00
James Laska
07dd02c25a [test_ec2*] cloud integration test updates
To support parallel cloud test execution, create and provide a random string to
cloud integration tests.  The variable 'resource_prefix' can be used in cloud
roles and during resource cleanup to safely create/destroy cloud-based
resources.

Additional changes include:

 * The roles test_ec2_key and test_ec2_group were updated to use to
 {{resource_prefix}}.

 * Additionally, the Makefile was updated to set resource_prefix to a random
 string.  The Makefile will also use 'resource_prefix' during cloud_cleanup.

 * All test_ec2* roles were updated to add 'setup_ec2' as a role dependency.
2014-03-13 11:28:02 -04:00
James Laska
9cc4be2683 Correct test integration ec2 cleanup script 2014-03-12 19:29:46 -04:00
James Laska
bc678e7d7b Add credentials.template and support custom INVENTORY
Testers may override the inventory and vars-file using the environment
variables 'INVENTORY' and 'VARS_FILE'.
2014-03-12 15:45:10 -04:00
James Laska
5c9dc33e41 Additional test_git scenarios
Includes coverage for accept_hostkey and additional scm URL formats.
2014-03-12 15:45:10 -04:00
Jakub Jirutka
2bfaacd170 Fix #5679 again after recent changes in core 2014-03-12 18:21:53 +01:00
James Laska
551cb1892b Always run cleanup after running cloud_integration tests 2014-03-12 08:37:01 -04:00
Richard C Isaacson
a483e42583 unarchive module: Add creates functionality.
Closes GH-5354.

Forklift copy logic into unarchive. Provides integration unit tests.
2014-03-07 18:19:46 -06:00
James Laska
c7d1c1a306 [test_service] correct upstart service name and permissions
The 'service' utility was unable to find the 'ansible_test' service due to an
unexpected filename.  This patch corrects the filename and adjusts the
permissions to match other service scripts within /etc/init/.
2014-03-07 10:42:13 -05:00
James Laska
868746b095 Correct ansible_distribution typo
Redhat != RedHat
2014-03-06 16:16:00 -05:00
James Laska
ba9950a73a Use correct value of ansible_distribution in integration tests
This fixes integration tests when run on a RHEL system.  Oddly, the
ansible_distribution='RedHat' when run on RHEL.
2014-03-06 15:52:15 -05:00
James Tanner
cd6d7ddc97 Fix test_async by using env python 2014-03-06 13:32:05 -05:00
Michael DeHaan
46ec8759d5 Remove the legacy templating code, which was guarded by deprecation warnings in the previous two releases, and undocumented for a long time. use {{ foo }} to access variables instead of ${foo} or $foo. 2014-02-28 18:38:45 -05:00
Michael DeHaan
956eb91de0 Merge pull request #6198 from jlaska/integration_ec2
First pass at ec2 module tests
2014-02-27 10:44:37 -05:00
Chris Church
adeea2c3f3 Added integration test for subversion parameters that need escaping. 2014-02-26 22:44:03 -05:00
James Laska
b589bf1d2e First pass at ec2 module tests 2014-02-26 16:43:30 -05:00
Richard C Isaacson
2bce819519 Fix fails on ubuntu due to missing /etc/motd
Some systems that we are testing on may not have /etc/motd. So we need to create a file that we can control and use that for the further tests.
2014-02-25 13:42:33 -06:00
James Cammarata
7517cd9398 Moving the assemble test to the correct location 2014-02-24 15:19:06 -06:00
James Cammarata
f03d6a67c8 Adding new tests for assemble role 2014-02-24 14:27:23 -06:00
Michael DeHaan
0a83f743c1 Merge pull request #6146 from jlaska/test_synchronize
Correct assert and add with_items test
2014-02-24 15:20:49 -05:00
James Laska
40e0204051 Correct assert and add with_items test 2014-02-24 15:07:23 -05:00
Richard C Isaacson
087f7c230d Typo fixes. 2014-02-24 11:08:21 -06:00
Richard C Isaacson
0446a030d7 Typo fixes. 2014-02-24 11:06:22 -06:00
Richard C Isaacson
dcbc69b69c Added script to the new integration tests. 2014-02-24 10:57:22 -06:00
Richard C Isaacson
e2a47162d0 Added test for failed_when to non_destructive integration tests. 2014-02-24 09:40:44 -06:00
Richard C Isaacson
0c33e936d4 Adding tests for the command and shell modules. 2014-02-23 14:51:26 -06:00
Azul
89cee747d9 replace test 'wget' package with 'hello' package 2014-02-23 10:46:39 +00:00
James Tanner
d29da4cba1 Add iterator tests 2014-02-21 14:26:38 -05:00
James Tanner
65e58c21dd Add test for basic lookups 2014-02-21 11:34:06 -05:00
James Tanner
799fe2c289 Add handlers test 2014-02-21 10:28:27 -05:00
James Tanner
d07032fa5a Add async test role 2014-02-21 10:00:01 -05:00
Michael DeHaan
92feed3851 Update README.md 2014-02-20 19:28:06 -05:00
Michael DeHaan
2177b773c8 Rename tests to test, use old directory name. 2014-02-20 19:11:15 -05:00