Commit graph

5432 commits

Author SHA1 Message Date
Jordan Borean
0afde7c334 ansible-test: recursively scan setup dependencies (#49170)
* ansible-test: recursively scan setup dependencies

* removed need for default set()

(cherry picked from commit 694c505452)
2018-12-10 09:01:57 -08:00
Sam Doran
d85290dd53 Add setup roles for passlib and pexpect for use with pause and vars_prompt tests (#43613)
* Add passlib to RHEL test instance

This looks like the only tests instance that is missing this libary. It is needed for vars_prompt tests.

* Create setup roles for pexect and passlib

Switch to using aliases rather than installing directly in the test scripts

(cherry picked from commit 96c2375692)
2018-12-06 11:50:11 -08:00
Jordan Borean
1833a24acc create local subversion server for tests (#49047)
* create local subversion server for tests

* fix sanity issues

* don't touch system config when bringing up site

* removed original setup files

* fix opensuse config

(cherry picked from commit 0420d606de)
2018-12-06 11:50:11 -08:00
Xaroth
b38d30810c [stable-2.6] -Fix: The Ubuntu 14.04 image on Shippable runs an old version of python, causing issues with checking out bitbucket, adjust tests to compensate. (#49433)
-Add: Mention bitbucket dropping TLSv1 and TLSv1.1 support as per 01 Dec 2018, potentially causing issues with older clients.
(cherry picked from commit a6db7f7abd)

Co-authored-by: Xaroth <xaroth+github@xaroth.nl>
2018-12-04 19:58:55 -08:00
Matt Clay
438b5b82d3
Merge pull request #49203 from mattclay/bp-2.6
[stable-2.6] Backport test infra updates and test fixes.
2018-12-04 13:29:04 -08:00
Matt Clay
cac34646d5 [stable-2.6] Add change classification for powershell wrappers.
(cherry picked from commit c25db4ee8d)

Co-authored-by: Matt Clay <matt@mystile.com>
2018-12-04 13:28:55 -08:00
Christopher Gadd
3267b204da [stable-2.6] make password locking in user module idempotent (#43671)
* Simplify logic and add FreeBSD & NetBSD

* Remove incorrect flag for lock and unlock on FreeBSD

* Add tests and changelog

Co-authored-by: Chris Gadd <gaddman@email.com>
(cherry picked from commit f75a84e382)

Co-authored-by: Christopher Gadd <gaddman@email.com>
2018-11-27 13:07:40 -08:00
Matt Davis
4d748d34f9 split PS wrapper and payload (CVE-2018-16859)
* prevent scriptblock logging from logging payload contents
* added tests to verify no payload contents in PS Operational event log
* fix script action to send split-aware wrapper
* fix CLIXML error parser (return to -EncodedCommand exposed problems with it)
* addresses CVE-2018-16859
2018-11-27 11:54:56 -08:00
Matt Clay
6937268444 [stable-2.6] Fix unit test issues with pytest >= 4.0.0.
(cherry picked from commit feb5b0b299)

Co-authored-by: Matt Clay <matt@mystile.com>
2018-11-26 13:39:47 -08:00
Matt Martz
6969edc3c0 [stable-2.6] Prevent metadata changes in a stable branch (#48994). (#49134)
* [stable-2.6] Prevent metadata changes in a stable branch (#48994).
(cherry picked from commit 7287d396e2)

Co-authored-by: Matt Martz <matt@sivel.net>

* Address rebase issues

* Fix metadata comparison
2018-11-26 11:09:11 -08:00
Matt Clay
4d557004c3 Revert "Relax ansible-test python version checking."
This reverts commit d6cc3c4187.

(cherry picked from commit de11b473a6)
2018-11-14 22:51:17 -08:00
Matt Clay
c2b8068def Use state: latest for dpkg_selections test.
We don't need to test with `upgrade: dist`, since we're not trying
to test the `apt` module. We just need to make sure the hold set
by the `dpkg_selections` module is working.

This change will avoid updating all the packages on the system,
which is slow, unnecessary, and can cause the installed python
to be changed.

(cherry picked from commit 136a2cca2f)
2018-11-14 22:51:17 -08:00
Martin Krizek
99d30f49c0 apt: disable ubuntu repos to not change test env
(cherry picked from commit 0c86df33a4)
2018-11-14 22:51:17 -08:00
Matt Clay
a5702b4b99 Fix ansible-test interpreter tracking.
Track the interpreter for each copy of the injector by the interpreter
path instead of the interpreter version. This avoids the possibility
of mixing different interpreters with the same version.

(cherry picked from commit fa53b4805b)
2018-11-14 22:51:17 -08:00
Matt Clay
d2289990ca Fix ansible-test merge change detection.
(cherry picked from commit aa7fe919d3)
2018-11-14 22:51:17 -08:00
Matt Clay
e433069ecc Correct ansible-test injector python behavior.
Inject a symlink to the correct python into the copied injector
directory instead of altering the shebang of the injector. This
has the side-effect of also intercepting `python` for integration
tests which simplifies cases where it needs to be directly invoked
without collecting code coverage.

(cherry picked from commit d6bf45cd9d)
2018-11-14 22:51:17 -08:00
Matt Clay
cb229a0874 Use correct interpreter for ansible-test injector.
(cherry picked from commit eec21a3d12)
2018-11-14 22:51:17 -08:00
Matt Clay
2ccbb97d1e Fix passing of env vars to Shippable.
(cherry picked from commit 9979a32e5c)
2018-11-14 22:51:17 -08:00
Matt Clay
ff61e8a430 Download hello package from S3 for apt test.
(cherry picked from commit 83fd82ca7e)
2018-11-14 22:51:17 -08:00
Matt Clay
a0fc98a1a1 [stable-2.6] Relax ansible-test python version checking.
(cherry picked from commit d6cc3c4187)

Co-authored-by: Matt Clay <matt@mystile.com>
2018-11-13 22:46:07 -08:00
Felix Fontein
c64f15ecf7 docker_* modules: simplify idempotency comparisons (#47709)
* More generic comparison code from docker_container to docker_common.

* More flexibility if a is None and method is allow_to_present.

Note that this odes not affect docker_container, as there a is never None.

* Update docker_secret and docker_config: simplify labels comparison.

* Added unit tests.

* Use proper subsequence test for allow_more_present for lists.

Note that this does not affect existing code in docker_container, since lists
don't use allow_more_present. Using allow_more_present will only be possible
in Ansible 2.8.

* pep8

(cherry picked from commit 73533d3fc2)
2018-11-06 11:04:39 -08:00
Mike Wiebe
349bdffd1a Add force disruptive option (#47694)
* Use expect module to copy files

* Add force option for disruptive upgrades

* Revert changes to copy_kick_system_images.yaml

(cherry picked from commit c53e3ca8e9)
2018-11-05 22:37:55 -08:00
Jesse Pretorius
b8efdd3336 Add lvg module idempotence test
To ensure that the lvg module is tested for idempotency,
we add a basic integration test.

Support for MacOS and FreeBSD are skipped because the
module does not currently support those platforms.

(cherry picked from commit 204b40f70648c0c58bc5714928d9eb6bcd0f47d8)
2018-11-05 22:32:04 -08:00
Matt Clay
f3dff6a6f6 Fix ansible-test invocation of pytest.
(cherry picked from commit 1939f6c412)
2018-11-05 12:00:23 -08:00
Matt Clay
7c97ca6ea1 Update default-test-container to version 1.4.1. (#47042)
(cherry picked from commit 5c7f876d0d)
2018-11-05 12:00:23 -08:00
Matt Clay
8d3b608c7c Use 4 nodes for sanity tests in CI.
(cherry picked from commit 6a51b5ed26)
2018-11-05 12:00:23 -08:00
Matt Clay
b15cdb7873 Fix ansible-test --exclude with delegation.
Previously the option worked with integration commands but not units or sanity.

(cherry picked from commit 38eba60849)
2018-11-05 12:00:23 -08:00
Matt Clay
6933c7e9e2 Add sphinx constraint for rstcheck compatibility.
(cherry picked from commit 7507bc9e19)
2018-11-05 12:00:23 -08:00
Matt Clay
e8617eae6c Add constraint for pycparser.
(cherry picked from commit 6a1aa51a74)
2018-11-05 12:00:23 -08:00
Matt Clay
3fd9952476 Split pylint runs into more contexts.
(cherry picked from commit ad940b86e4e8a3abba86bf8a935f4e364f8e0821)

See: https://github.com/ansible/ansible/pull/47036/
2018-11-05 12:00:23 -08:00
Matt Clay
35a6ec9f2e Fix issues reported by the latest pylint.
(cherry picked from commit 4db054364a777eae05a56a25e09358c5d7deea89)

See: https://github.com/ansible/ansible/pull/47036/
2018-11-05 12:00:23 -08:00
Matt Clay
1c3343e41d Split sanity tests into 3 groups.
(cherry picked from commit 5461bfbf31)
2018-11-05 12:00:23 -08:00
Jordan Borean
800dfc7a41 gem: fix tests to work on newer Fedora hosts (#47158)
(cherry picked from commit f720499337)
2018-11-05 09:54:48 -08:00
Jordan Borean
0387649206 postgresql_user: fix test errors on newer Fedora versions (#47166)
(cherry picked from commit dd46f953f6)
2018-11-05 09:53:37 -08:00
Jordan Borean
4c177661d0 test: filesystem update note on test comment (#47260)
(cherry picked from commit 5d2927c9a0)
2018-11-05 09:52:38 -08:00
Jordan Borean
8a6890108f filesystem: fix test to work on newer Fedora (#47176)
(cherry picked from commit ae5aeb9a67)
2018-11-05 09:52:38 -08:00
Jordan Borean
67d1df0d37 openss: fix various test and Python 3 issues (#47188)
(cherry picked from commit 6666b070a9)
2018-11-05 09:51:38 -08:00
Jordan Borean
f5f571475d dnf yum: fix tests running on Fedora 29 - 2.6 (#47910) (#47949)
* dnf yum: fix tests running on Fedora 29 (#47910)

* dnf yum: fix tests running on Fedora 29

* wrap in always block

(cherry picked from commit f0535bac80)

* Remove extra yum tests
2018-11-05 09:48:29 -08:00
Matt Martz
37968a70a4 [stable-2.6] Detect the socket path after starting the service. Fixes #47582
(cherry picked from commit 10e129e)

Co-authored-by: Matt Martz <matt@sivel.net>
2018-10-31 16:34:01 -07:00
Toshio Kuratomi
afea9f4845 [stable-2.6] Fix mysql authentication errors
The mysql-server package on Ubuntu16.04 was recently updated to disallow
unauthenticated root user login over tcp/ip.  This, coupled with pymysql
using tcp/ip whenever host and port is specified causes us to fail to
connect to the database when testing Python3 on Ubuntu16.04.

The fix is to use the unix socket instead..
(cherry picked from commit 748ea39ecd)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2018-10-31 16:17:35 -07:00
Martin Krizek
f50cc0b8cb 2.6: user: do not pass ssh_key_passphrase on cmdline (#47487)
* user: do not pass ssh_key_passphrase on cmdline

* user: do not pass ssh_key_passphrase on cmdline

CVE-2018-16837

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
(cherry picked from commit a0aa53d1a1)

* Ignore user module use of subprocess.

(cherry picked from commit 8d00afc013)

* Fix python3 problem in user module cve fix

(cherry picked from commit 9088671c4e)

* Fix changelog entry for user module CVE fix

(cherry picked from commit 210a43ebeb)
(cherry picked from commit b618339c32)

* Remove E210
2018-10-31 08:55:54 -07:00
Jordan Borean
d8b05366b6 ansible-test: add retry for Windows httptester download (#47334)
(cherry picked from commit e6a327fb82)
2018-10-19 07:30:14 -07:00
Jordan Borean
fca7eec760 win httptester: add wait for endpoint in case it is still coming up (#47326)
(cherry picked from commit c0546b4133)
2018-10-18 21:02:19 -07:00
Matt Clay
948f82c6f4 Add constraint for requests on python 2.6. (#47306)
* Add constraint for requests on python 2.6.

(cherry picked from commit f74f7b0373)
2018-10-18 14:24:04 -07:00
Matt Clay
9b65337e5c
Backport/2.6/44755 - win_nssm: tests and several bug fixes (#47159)
* win_nssm: add failing tests for issue #44079

(cherry picked from commit a5d1241fa13b308813173e7686277e15c09c0bdb)

* win_nssm: add more failing tests

These tests highlight several issues with this module:
 * Service not started when state=started
 * Errors with app_parameters (see #25265)
 * Exception when passing several dependencies separated by comma as specified in doc

(cherry picked from commit e50234bdb32304703fd1ce1d4f6067a0d551049e)

* win_nssm: use Run-Command instead of Invoke-Expression to prevent interpretation issue

Fix #44079

(cherry picked from commit 20a0d90ebeec92fc498e29d57393b280f6e639a5)

* win_nssm: fix service not started when state=started

Nssm status returns a multiline output that doesn't match any of the strict patterns in the switch statement.

(cherry picked from commit 8180a7c39b2936426e6def0fa06edd974845d36b)

* win_nssm: fix incorrect separator in doc for service dependencies

The dependencies parameter works with space as separator, but not with comma as shown in the documentation

(cherry picked from commit ddd4b4bea69a39e8e2aadac9d23c1f64bd1355f5)

* win_nssm: fix error with app_parameters parameter

Fix #25265

(cherry picked from commit aba0d48ba5fe74842ceb3584753e4fc9bca1bc92)

* win_nssm: add idempotence tests

(cherry picked from commit 46a5e4f3bfbeecb34693d0a8597e5d9643a03624)

* win_nssm: fix several idempotence issues and misbehaviors

Add missing space between arguments when app_parameters contains several keys.
Use Argv-ToString and Escape-Argument to improve arguments handling (parameters with quotes, backslashes or spaces).

(cherry picked from commit 933a4092bf584108849b5161bbdd00092c4c8c09)

* win_nssm: test parameters with spaces, quotes or backslashes

(cherry picked from commit 51843a7b3c7120721d19b192408d7a5984b12d67)

* win_nssm: restore comma as separator for service dependencies

Revert commit ddd4b4b

(cherry picked from commit ead882bb9b0bb9e576eda9e074f9150785f9512f)

* win_nssm: restore support of string as dict form for app_parameters and remove support of literal YAML dict

(cherry picked from commit 862855252b5f8ff9cdd6ef8a4b3e6afee6a3c326)

* win_nssm: wrong variable in tests

(cherry picked from commit 9b9c839461bc428e0ab3897b7681492a45728f73)

* win_nssm: add changelog fragment
2018-10-16 17:58:04 -07:00
Toshio Kuratomi
115b919cfd [stable-2.6] Mocking out __future__ could cause problems
(cherry picked from commit 473f70c)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
2018-10-16 16:04:13 -07:00
Sam Doran
5cc5be07fb Use proper index value with insertbefore on a one line file (#46071)
Add tests and changelog

(cherry picked from commit b74279d14c)
2018-10-16 15:59:20 -07:00
Sam Doran
4f8c82ca2c Use bytes rather than native string for result (#46281)
This prevents a stack trace in Python 3 when the result is an empty file since
the file is open in binary mode and a native string in Python 3 is str,
not bytes.

(cherry picked from commit 8b1ae30e2e)
2018-10-16 15:57:45 -07:00
Matt Clay
7774b37626 [stable-2.6] Update requirements for urllib3 for python 2.6.
(cherry picked from commit d048785640)

Co-authored-by: Matt Clay <matt@mystile.com>
2018-10-16 15:40:01 -07:00
Jordan Borean
a0a7fd0297 ps-lint: ignore rules that are not relevant to Ansible (#46376)
(cherry picked from commit ba638f40cf)
2018-10-16 11:02:35 -07:00