Commit graph

5423 commits

Author SHA1 Message Date
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
Jordan Borean
2f66f26991 ansible-test: setup up http runner in between each target (#47100)
* ansible-test: setup up http runner in between each target

* review changes

(cherry picked from commit 9a5561da0f)
2018-10-16 11:02:06 -07:00
Jordan Borean
67c117607c ansible-test: run win httptester with bypass policy (#47090)
(cherry picked from commit 69e1088ec1)
2018-10-16 11:02:06 -07:00
Jordan Borean
1cf3df53f0 win test: add http tester container to Windows tests (#46606)
(cherry picked from commit 6e2897647c)
2018-10-16 11:02:06 -07:00
Jordan Borean
5dd58923a1 ansible-test: add skip/windows/... alias to skip tests on specific Windows versions (#46845)
* ansible-test: add skip/windows/... alias to skip tests on specific Windows versions

* show what tests were skipped

* changes to logic to only skip if all Windows targets are set to skip

* codestyle improvements

* change warning message based on review

* check args type before running the Windows path

(cherry picked from commit 0f5331645f)
2018-10-16 11:02:06 -07:00
Jordan Borean
615d53ab42 win_uri: use variable for httpbin host (#46734)
(cherry picked from commit f34f75be45)
2018-10-16 11:02:06 -07:00
Matt Clay
a95ba6ca39 Fix ansible-test custom docker image traceback.
(cherry picked from commit 712ad9ed64)
2018-10-11 18:32:58 -07:00
Jordan Borean
7b93d6e31b ansible-test: set ulimit to enforce consistent test environment (#46652)
* ansible-test: set ulimit to enforce consistent test environment

* fixed santiy issue

(cherry picked from commit 7b774117ab)
2018-10-09 23:40:12 -07:00
Jordan Borean
c46d799dc5 ansible-test: Create public key creating Windows targets (#43760)
* ansible-test: Create public key creating Windows targets

* Changed to always set SSH Key for Windows hosts

(cherry picked from commit adc0efe10c)
2018-10-09 18:54:41 -07:00
Matt Clay
503c4b9f97 Fix parametrize warning in unit tests.
(cherry picked from commit 1a28898a00)
2018-10-09 18:54:41 -07:00