Commit graph

1670 commits

Author SHA1 Message Date
Abhijeet Kasurde
7e6554b9ff Correct usage for shutil.rmtree (#31541)
* Correct usage for shutil.rmtree

Fix adds correct usage of shutil.rmtree in git module

Fixes: #31225

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>

* Include archive tests so they get run

* Use new include syntax

* Cleanup syntax on git tests

- use multi-line YAML
- remove unneeded {{ }} around vars in conditionals
- remove unneeded quotes
- add task file name to task names for easier troubleshooting when things fail

* Make archive tests work for RHEL/CentOS 6

The older versions of Jinja2 in RHEL/CentOS 6 required assertion tasks using the map filter to be skipped.

The older version of git required gzip compression to be skipped on RHEL/CentOS 6.

* Account for ansible_distribution_major_version missing

(cherry picked from commit a047fe0e4c)
2017-10-18 14:14:24 -07:00
Jordan Borean
466baba040 win_regedit: fix extra info coming into stdout (#31813)
(cherry picked from commit 888de842b3)
2017-10-18 14:09:18 -07:00
Matt Clay
78cb32ccb7 Update Azure tests to limit cryptography version. (#31616)
(cherry picked from commit 8acb901bf2)
2017-10-11 19:19:21 -07:00
Ganesh Nalawade
e001fb7c14 Fix rollback in junos_config (#31424) (#31563)
* Fix rollback in junos_config (#31424)

* Fix rollback in junos_config

Fixes #30778

*  Call `load_configuration` with rollback id in case
   the id is given as input
*  Pass rollback id to `get_diff()` to fetch diff from device

* Fix unit test

(cherry picked from commit 88da95bb77)

* Update changelog
2017-10-11 15:28:42 +05:30
Toshio Kuratomi
e60e70ccd6 Try to cleanup after the rpm_key test
(cherry picked from commit dde2c96d67)
2017-10-10 17:41:06 -07:00
Lukas Bednar
ead2fc5a64 [rpm_key] Fix to import first key on the system (#31514)
* [rpm_key] Fix to import first key on the system

Fixes: #31483

* [rpm_key] removed unsafe_shell and "throwaway" underscore

* [rpm_key] adding test to add the first key on system

(cherry picked from commit 5ccc1072ea)
2017-10-10 10:59:03 -07:00
Sam Doran
60874bad3e Remove sysctl entries when state=absent (#31486)
* Remove sysctl entry when state=absent
* Cleanup sysctl integration test syntax
* Correct grammar on error message
* Add sysctl integration test for state=absent
(cherry picked from commit 2610b521bc)
2017-10-10 09:01:53 -07:00
Jordan Borean
cb39aed465 win_copy: allow src to have invalid windows chars (#31392)
* win_copy: allow src to have invalid windows chars

* create file with colon instead of avoid checkout errors

(cherry picked from commit c4b51009f0)
2017-10-06 15:24:20 +10:00
Matt Clay
75bfd4cf2f Update Windows CI groups from 2 to 3.
(cherry picked from commit c00ad0868e)
2017-10-04 13:26:13 -07:00
Matt Clay
2572b2147e Fix ansible-test config management.
(cherry picked from commit a333f2e5b0)
2017-10-04 12:53:29 -07:00
Sam Doran
e157082f5e Correctly write SELinux config file (#31251)
* Add new lines to end of config file lines

* Properly write out selinux config file

Change module behavior to not always report a change but warn if a reboot is needed and return reboot_required.

Improve the output messages.

Add strip parameter to get_file_lines utility to help with parsing the selinux config file.

* Add return documentation

* Add integration tests for selinux module

* Use consistent capitalization for SELinux

* Use atomic_move in selinux module

* Don't copy the config file initially

There's no need to make a copy just for reading.

* Put message after set_config_policy in case the change fails

* Add aliases to selinux tests

(cherry picked from commit 00df1fda10)
2017-10-03 23:42:33 -04:00
Jordan Borean
39196a7f2f win_become: move error handling to Ansible outside of shell (#31227)
* win_become: move error handling to Ansible outside of shell

* trimmed the output so double newlines don't get set

* added test for non-zero exit code

* missed issue URL on test

* changed exit to SetShouldExit

(cherry picked from commit e61c2799ff)
2017-10-04 13:07:36 +10:00
Jordan Borean
df4daeb9a9 win_copy: fix for copying encrypted file without pass (#31084)
* win_copy: fix for copying encrypted file without pass

* fix pep8 issue

* reduced the diff and fixed some minor issues

(cherry picked from commit bba941cd5b)
2017-10-03 12:52:43 -07:00
Adrian Likins
74e0643dbb Handle vault decrypt --output=- (#31066)
In cli.CLI.unfrack_path callback, special case if the
value of '--output' is '-', and avoid expanding
it to a full path.

vault cli already has special cases for '-', so it
just needs to get the original value to work.

Fixes #30550
(cherry picked from commit 278ff19bea)
2017-10-03 14:20:31 -04:00
Brian Coca
c6691eef52 remove unused ssh pipelining setters
fixes #31125

(cherry picked from commit 101377768b)
2017-10-03 09:22:49 -04:00
Jordan Borean
737a0d6015 win_dotnet_ngen: fix after broken in 2.4 (#31076)
* win_dotnet_ngen: fix after broken in 2.4

* added description to return values

(cherry picked from commit 12a4dca447)
2017-10-03 06:39:51 +10:00
Jordan Borean
310610de47 win_msg: added doc about msg limit and included an explicit check for better error handling (#31078)
(cherry picked from commit 67fd98da09)
2017-10-03 06:34:28 +10:00
Brian Coca
a81dc232e3 remove action plugin only fields from 'file' calls (#31047)
* remove action plugin only fields from 'file' calls

fixes #30556

* Add a test for #30556
(cherry picked from commit ac9278ff0f)
2017-09-29 17:13:58 -07:00
Adrian Likins
4025b47629 Fix fact failures cause by ordering of collectors (#30777)
* Fix fact failures cause by ordering of collectors

Some fact collectors need info collected by other facts.
(for ex, service_mgr needs to know 'ansible_system').
This info is passed to the Collector.collect method via
the 'collected_facts' info.

But, the order the fact collectors were running in is
not a set order, so collectors like service_mgr could
run before the PlatformFactCollect ('ansible_system', etc),
so the 'ansible_system' fact would not exist yet.

Depending on the collector and the deps, this can result
in incorrect behavior and wrong or missing facts.

To make the ordering of the collectors more consistent
and predictable, the code that builds that list is now
driven by the order of collectors in default_collectors.py,
and the rest of the code tries to preserve it.

* Flip the loops when building collector names

iterate over the ordered default_collectors list
selecting them for the final list in order instead
of driving it from the unordered collector_names set.

This lets the list returned by select_collector_classes
to stay in the same order as default_collectors.collectors

For collectors that have implicit deps on other fact collectors,
the default collectors can be ordered to include those early.

* default_collectors.py now uses a handful of sub lists of
collectors that can be ordered in default_collectors.collectors.

fixes #30753
fixes #30623

(cherry picked from commit 95abc1d82e)
2017-09-28 10:56:18 -04:00
Jordan Borean
9a22c93606 fix for webapppool when specifying an attribute that holds a collection (#30729)
* fix for webapppool when specifying an attribute that holds a collection

* re-add always block on test

(cherry picked from commit a41077df20)
2017-09-28 16:16:52 +10:00
Adrian Likins
042079aa87 Use vault_id when encrypted via vault-edit (#30772)
* Use vault_id when encrypted via vault-edit

On the encryption stage of
'ansible-vault edit --vault-id=someid@passfile somefile',
the vault id was not being passed to encrypt() so the files were
always saved with the default vault id in the 1.1 version format.

When trying to edit that file a second time, also with a --vault-id,
the file would be decrypted with the secret associated with the
provided vault-id, but since the encrypted file had no vault id
in the envelope there would be no match for 'default' secrets.
(Only the --vault-id was included in the potential matches, so
the vault id actually used to decrypt was not).

If that list was empty, there would be an IndexError when trying
to encrypted the changed file. This would result in the displayed
error:

ERROR! Unexpected Exception, this is probably a bug: list index out of range

Fix is two parts:

1) use the vault id when encrypting from edit

2) when matching the secret to use for encrypting after edit,
include the vault id that was used for decryption and not just
the vault id (or lack of vault id) from the envelope.

add unit tests for #30575 and intg tests for 'ansible-vault edit'

Fixes #30575

(cherry picked from commit a14d0f3586)
2017-09-26 12:31:58 -04:00
Ganesh Nalawade
3680d28e58 Increase pause time in junos integration test (#30740) (#30799)
*  Increase pause time to a value greater
   than persistent connection timeout to clean
   out socket path.
(cherry picked from commit c3d226a739)
2017-09-23 18:42:00 +05:30
Jordan Borean
34ceed635d win_domain_membership: added better error handling and basic tests (#30674)
(cherry picked from commit fb628acb6e)
2017-09-22 06:10:14 +10:00
Ryan Brown
fd42243936 Split ec2_elb_* modules in service of rename/interface changes (#30716)
* Split ec2_elb_* modules in service of rename/interface changes (#30532)

* Undeprecate ec2_elb_*
* Make ec2_elb* full fledged modules rather than aliases
* Split tests for ec2_elb_lb and elb_classicb_lb
* Change names in documentation of old and new elb modules

Add tests for ec2_elb_lb

* Update CHANGELOG with new status of ec2_elb_* vs. elb_classic_*
2017-09-21 14:43:45 -04:00
Ganesh Nalawade
6f461fbfd0 Increase socket connect retry timeout for integration test (#30681) (#30683)
*  Increase persistent connection local socket
   retry timeout to fix intermittent failure in
   network integration test
(cherry picked from commit 869cd6f729)
2017-09-21 11:02:22 +01:00
Jordan Borean
35c867d890 CamelConverter - more fixes picked up in testing (#30601)
(cherry picked from commit a940eb1e80)
2017-09-20 15:24:49 +10:00
Jordan Borean
98425291d1 CamelConversion: fix to not convert string values (#30595)
(cherry picked from commit 1ea0293878)
2017-09-20 15:24:32 +10:00
Toshio Kuratomi
3b86554081 Add a code-smell test for smart quotes and remove smart quotes from all files
(cherry picked from commit c82cf791dd)
2017-09-19 13:00:56 -07:00
Jordan Borean
8a247989c5 windows: fix list type in legacy module utils (#30483)
* windows: fix list type in legacy module utils

* only change the return for the list type instead of affecting it all

* additional null check when using an array

(cherry picked from commit 01563ccd5d)
2017-09-19 13:00:56 -07:00
MarkusTeufelberger
c4ae7e8854 Add simple integration test for openssl_certificate (#29038)
* openssl_certificate: Fix parameter assertion in Python3

Parameter assertion in Python3 is broken. pyOpenSSL get_X() functions
returns b'' type string and tries to compare it with '' string, leading
to failure.

The error mentionned above has been fixed by sanitizing the inputs from
a user to the assert only backend.

Also, this error was hidden by the fact that the improper check method
was called in the generate() functions.

* Add simple integration test for openssl_certificate

* remove subject == issuer assertion

* run integration tests only on supported hosts

* change min supported version to 0.15.x

* Add test for more CSR fields

* also convert dict members to bytes

* fix version_compare

* openssl_{csr, certificate}: Fail if pyOpenSSL <= 0.15

Previous 0.13 pyOpenSSL was a C-binding, and required the parameter
passed to add_extention to be in ASN.1. This has changed with the move
to 0.14 and it is now all pythong and string based.

Previous the 0.15 release, the `get_extensions()` method didn't exist,
since the modules rely heavily on it we ensure pyOpenSSL version is at
last 0.15.0.

* check pyopenssl version in openssl_csr integration test

(cherry picked from commit 2186b04934)
2017-09-19 13:00:56 -07:00
Matt Davis
5dec3d7386 2.4 azure_rm_virtualmachine test move 2017-09-15 23:47:52 -07:00
Matt Davis
df361dc83f azure_rm_dnsrecordset rewrite (#30449)
As-merged, had several issues that prevented idempotent usage. Some args were defined at the wrong UI level. Dual-state args didn't match up with typical Ansible UI.
(cherry picked from commit 6b5b465125)
2017-09-15 18:16:31 -07:00
Kedar K
06a066fe1b Test Role: Adds nxos_pim_rp_address integration test role (#29958)
*   Adds nxos_pim_rp_address integration test role for group_list,
  prefix_list and route_map (cli and nxapi)

*  * Adds explicit removal of static RP configs to match cli behaviour

*  * Removes config deletion using nxos_config module (for 2.4 only)

*  * Attempt short and long delete config command
 * Add a platform check for N3K for bidir

(cherry picked from commit 7e58661335)
2017-09-15 12:06:03 -07:00
Mike Wiebe
c73e1b5e68 Fix nxos_snmp_community idempotence issue (#30388)
* Fix nxos_snmp_community idempotence issue

* Use passed in name to filter

* Test updates and remove unused method

(cherry picked from commit 9af6dc4751)
2017-09-15 07:52:44 -07:00
Ricardo Carrillo Cruz
b14e0cbfe4 Set hostname to 'switch' on nxos_system teardown (#29126)
On setup we set it to 'switch', so teardown should be 'switch'.
Also, using inventory_hostname breaks the test, since in our CI
it's a long UUID string, which exceeds the 32 chars maximum for setting
a hostname on NXOS.
(cherry picked from commit 2304706bd3)
2017-09-14 22:21:06 -07:00
Ricardo Carrillo Cruz
3f6ba180fc Set hostname to 'switch' on nxos_config toplevel setup/teardown tasks (#29127)
Using inventory_hostname breaks in our CI, as the inventory_hostname
translates to a long UUID, exceeding the maximum length for a NXOS
hostname.
(cherry picked from commit 8b6e3272f2)
2017-09-14 22:21:06 -07:00
Trishna Guha
cde49268e2 run banner exec test only for NXOS7K (#29041)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit 064bb66e6d)
2017-09-14 22:21:06 -07:00
Mike Wiebe
cc81d1e1c3 Rel240/fix nxos pim interface (#29885)
* fix nxos_pim_interface

* Add integration test coverage and fix unit test

* Add clarifying comments

* Make ansibot happy

(cherry picked from commit 173c41aefe)
2017-09-14 14:30:43 -07:00
Mike Wiebe
72d2c8ecab Fix nxos_interface error for nxapi and idempotence problem (#29136)
* Fix nxos_interface nxapi error and idempotence

* Make shippable happy

(cherry picked from commit 3faba93a2b)
2017-09-14 14:30:43 -07:00
Martin Krizek
6294f3ebfe Add sudo/su become_methods for become tests (#30266)
* Add sudo/su become_methods for become tests

* Fix test on osx

(cherry picked from commit dc5f83c09b)
2017-09-14 09:18:42 -07:00
Jordan Borean
83a74213b1 updated test not that module util checks the path is valid (#30321) 2017-09-13 19:11:55 -07:00
Ricardo Carrillo Cruz
34e624ad9e Add CLI provider with authorize yes to ios tests (#30312)
We are getting failures to do lack of elevated privileges.
(cherry picked from commit dbe9df1289)
2017-09-13 15:32:41 -07:00
Mike Wiebe
0130da1773 Fix nxos_overlay_global networking modules (#28943)
(cherry picked from commit 7292dd20ed)
2017-09-13 13:45:00 -07:00
Jordan Borean
328689a15b windows command changed to use CreateProcess (#30253)
* windows command changed to use CreateProcess

* change to get become to work

(cherry picked from commit 6d196eaa98)
2017-09-13 10:52:31 -07:00
rahushen
bcfc78b2e4 NXOS Commit Integration tests to Ansible (part 1) (#28935)
* cleanup nxos_bgp_neighbor_af tests

* add timeout and to_json to nxapi testing for nxos_command

* maintain folder naming consistency with other tests

(cherry picked from commit caafc8e591)
2017-09-13 09:01:01 -07:00
Ganesh Nalawade
aca0d1a2f8 Fix ios_system lookup enable issue (#30263)
Fixes #29974

Add `None` check while comparing module parameter values (want) with the actual
configuration present on device (have).
(cherry picked from commit d8371cec91)
2017-09-13 08:55:54 -07:00
Mike Wiebe
9fc409e126 Fix nxos_mtu nxapi failure (#30153)
(cherry picked from commit cef7ed0310)
2017-09-12 22:43:41 -07:00
Ricardo Carrillo Cruz
2f3c1867f7 Use 'hostname switch' on setup/teardown tasks for nxos_config non_idempotent (#29132)
inventory_hostname breaks CI due to too long string.
(cherry picked from commit 497e6cf405)
2017-09-12 11:52:33 -07:00
Nicklaus McClendon
016b323735 Updated pip module to always return changed if venv is created (#24233)
* Updated pip module to always return changed if venv is created

Fixes #23204

* Add integration test to pip (see #23204)

(cherry picked from commit 6dbc3c63f8)
2017-09-12 10:01:57 -07:00
Matt Davis
d2f879a266 support missing drive letters in PS path type (#29884)
* fixes #26623
* Test-Path (and thus `-type path` in Get-AnsibleParam) fail on a nonexistent drive letter, since it can't be mapped to a PSProvider.
* added support and basic smoke tests for
(cherry picked from commit 1e2ce4c8ab)
2017-09-12 09:56:16 -07:00