Commit Graph

5412 Commits (32b3806e0e0818ed753ee39e8bebceb4010a35c3)

Author SHA1 Message Date
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)
6 years ago
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)
6 years ago
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 204b40f706)
6 years ago
Matt Clay f3dff6a6f6 Fix ansible-test invocation of pytest.
(cherry picked from commit 1939f6c412)
6 years ago
Matt Clay 7c97ca6ea1 Update default-test-container to version 1.4.1. (#47042)
(cherry picked from commit 5c7f876d0d)
6 years ago
Matt Clay 8d3b608c7c Use 4 nodes for sanity tests in CI.
(cherry picked from commit 6a51b5ed26)
6 years ago
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)
6 years ago
Matt Clay 6933c7e9e2 Add sphinx constraint for rstcheck compatibility.
(cherry picked from commit 7507bc9e19)
6 years ago
Matt Clay e8617eae6c Add constraint for pycparser.
(cherry picked from commit 6a1aa51a74)
6 years ago
Matt Clay 3fd9952476 Split pylint runs into more contexts.
(cherry picked from commit ad940b86e4)

See: https://github.com/ansible/ansible/pull/47036/
6 years ago
Matt Clay 35a6ec9f2e Fix issues reported by the latest pylint.
(cherry picked from commit 4db054364a)

See: https://github.com/ansible/ansible/pull/47036/
6 years ago
Matt Clay 1c3343e41d Split sanity tests into 3 groups.
(cherry picked from commit 5461bfbf31)
6 years ago
Jordan Borean 800dfc7a41 gem: fix tests to work on newer Fedora hosts (#47158)
(cherry picked from commit f720499337)
6 years ago
Jordan Borean 0387649206 postgresql_user: fix test errors on newer Fedora versions (#47166)
(cherry picked from commit dd46f953f6)
6 years ago
Jordan Borean 4c177661d0 test: filesystem update note on test comment (#47260)
(cherry picked from commit 5d2927c9a0)
6 years ago
Jordan Borean 8a6890108f filesystem: fix test to work on newer Fedora (#47176)
(cherry picked from commit ae5aeb9a67)
6 years ago
Jordan Borean 67d1df0d37 openss: fix various test and Python 3 issues (#47188)
(cherry picked from commit 6666b070a9)
6 years ago
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
6 years ago
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>
6 years ago
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>
6 years ago
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
6 years ago
Jordan Borean d8b05366b6 ansible-test: add retry for Windows httptester download (#47334)
(cherry picked from commit e6a327fb82)
6 years ago
Jordan Borean fca7eec760 win httptester: add wait for endpoint in case it is still coming up (#47326)
(cherry picked from commit c0546b4133)
6 years ago
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)
6 years ago
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 a5d1241fa1)

* 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 e50234bdb3)

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

Fix #44079

(cherry picked from commit 20a0d90ebe)

* 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 8180a7c39b)

* 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 ddd4b4bea6)

* win_nssm: fix error with app_parameters parameter

Fix #25265

(cherry picked from commit aba0d48ba5)

* win_nssm: add idempotence tests

(cherry picked from commit 46a5e4f3bf)

* 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 933a4092bf)

* win_nssm: test parameters with spaces, quotes or backslashes

(cherry picked from commit 51843a7b3c)

* win_nssm: restore comma as separator for service dependencies

Revert commit ddd4b4b

(cherry picked from commit ead882bb9b)

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

(cherry picked from commit 862855252b)

* win_nssm: wrong variable in tests

(cherry picked from commit 9b9c839461)

* win_nssm: add changelog fragment
6 years ago
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>
6 years ago
Sam Doran 5cc5be07fb Use proper index value with insertbefore on a one line file (#46071)
Add tests and changelog

(cherry picked from commit b74279d14c)
6 years ago
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)
6 years ago
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>
6 years ago
Jordan Borean a0a7fd0297 ps-lint: ignore rules that are not relevant to Ansible (#46376)
(cherry picked from commit ba638f40cf)
6 years ago
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)
6 years ago
Jordan Borean 67c117607c ansible-test: run win httptester with bypass policy (#47090)
(cherry picked from commit 69e1088ec1)
6 years ago
Jordan Borean 1cf3df53f0 win test: add http tester container to Windows tests (#46606)
(cherry picked from commit 6e2897647c)
6 years ago
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)
6 years ago
Jordan Borean 615d53ab42 win_uri: use variable for httpbin host (#46734)
(cherry picked from commit f34f75be45)
6 years ago
Matt Clay a95ba6ca39 Fix ansible-test custom docker image traceback.
(cherry picked from commit 712ad9ed64)
6 years ago
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)
6 years ago
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)
6 years ago
Matt Clay 503c4b9f97 Fix parametrize warning in unit tests.
(cherry picked from commit 1a28898a00)
6 years ago
Matt Clay 9693c67197 Add symlinks sanity test. (#46467)
* Add symlinks sanity test.
* Replace legacy test symlinks with actual content.
* Remove dir symlink from template_jinja2_latest.
* Update import test to use generated library dir.
* Fix copy test symlink setup.

(cherry picked from commit e2b6047514)
6 years ago
Matt Clay c68e1aafeb Improve ansible-test environment checking between tests. (#46459)
* Add unified diff output to environment validation.

This makes it easier to see where the environment changed.

* Compare Python interpreters by version to pip shebangs.

This helps expose cases where pip executables use a different
Python interpreter than is expected.

* Query `pip.__version__` instead of using `pip --version`.

This is a much faster way to query the pip version. It also more
closely matches how we invoke pip within ansible-test.

* Remove redundant environment scan between tests.

This reuses the environment scan from the end of the previous test
as the basis for comparison during the next test.

(cherry picked from commit 0dc7f38787)
6 years ago
Matt Clay d2268dcb37 Add file exists check in integration-aliases test.
(cherry picked from commit 33a8be9109)
6 years ago
Matt Clay 6db2c6d9ac Use default-test-container version 1.3.0.
(cherry picked from commit 6d9be66418)
6 years ago
Matt Clay 3dd444d170 Fix ansible-test encoding issues for exceptions.
(cherry picked from commit 0d7a156319)
6 years ago
Matt Clay 0bd9a73d47 Fix ansible-test multi-group smoke test handling. (#46363)
* Fix ansible-test smoke tests across groups.
* Fix ansible-test list arg defaults.
* Fix ansible-test require and exclude delegation.
* Fix detection of Windows specific changes.
* Add minimal Windows testing for Python 3.7.

(cherry picked from commit e53390b3b1)
6 years ago
Matt Clay 70c011481a Rebalance shippable/posix/ CI groups.
(cherry picked from commit 33b34f5c82)
6 years ago
Matt Clay 8d86820308 Reduce noise in docs-build test failures.
(cherry picked from commit 4085d01617)
6 years ago
Matt Clay 116554bee3 Fix ansible-test docker python version handling.
This removes the old name based version detection behavior and
uses versions defined in the docker completion file instead, as
the new containers do not follow the old naming scheme.

(cherry picked from commit 54937ba784)
6 years ago
Matt Clay ab2f54d864 Fix integration test library search path.
This prevents tests from loading modules outside the source tree,
which could result in testing the wrong module if a system-wide
install is present, or custom modules exist.

(cherry picked from commit d603cd41fe)
6 years ago
Matt Clay 441dfd4cbe Bug fixes and cleanup for ansible-test. (#45991)
* Remove unused imports.
* Clean up ConfigParser usage in ansible-test.
* Fix bare except statements in ansible-test.
* Miscellaneous cleanup from PyCharm inspections.
* Enable pylint no-self-use for ansible-test.
* Remove obsolete pylint ignores for Python 3.7.
* Fix shellcheck issuers under newer shellcheck.
* Use newer path for ansible-test.
* Fix issues in code-smell tests.

(cherry picked from commit ac492476e5)
6 years ago