Commit graph

2437 commits

Author SHA1 Message Date
Jordan Borean
7e36b632ca win_hotfix: use S3 bucket for update files in test (#49696)
(cherry picked from commit 478fcf7abb)
2018-12-10 10:29:10 -08:00
Jordan Borean
a280a8ac0b create local subversion server for tests (#49047) - 2.5 (#49583)
* 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)

* manually add setup_passlib for 2.5
2018-12-06 10:12:27 -08:00
Xaroth
8c3f780693 [stable-2.5] -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) (#49441)
-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-06 09:11:48 -08:00
Matt Clay
1059dee51f [stable-2.5] Backport test infra updates and test fixes. (#49204)
* Switch tests from RHEL 7.5 to 7.6.

(cherry picked from commit 6745ee7cc8)

* Remove CI platform: freebsd/10.4

(cherry picked from commit e6ffc4f89a)

* Add `--raw` option to ansible-test shell command.

It is currently supported only with the `--remote` option.

This makes it easier to troubleshoot new instances which are not
yet supported by the setup scripts used by ansible-test.

(cherry picked from commit 0826a00803)

* Support skip of platforms by version in tests. (#48826)

* Support skip of platforms by version in tests.

Previously a remote platform could be skipped completely using the alias:

`skip/{platform}` such as `skip/rhel`

Now a specific platform version can be skipped using the alias:

`skip/{platform}{version}` such as `skip/rhel7.6`

This feature is available for platforms specified with the `--remote` option.

* Add skip by version to the docs.

(cherry picked from commit 8066acc90c)

* Fix ansible-test skip warning message.

(cherry picked from commit 3b705efc93)

* Fix lookup_passwordstore test skipping. (#49178)

* Fix lookup_passwordstore test skipping.

Skip all of RHEL instead of specific versions.
Skip all of CentOS < 7 instead of specific versions.

This makes the test more robust when testing newer versions.

Tests could be executed on RHEL if EPEL was installed during the test.
(cherry picked from commit 704dae2cda)
2018-12-04 13:35:00 -08:00
Matt Davis
0d746b4198
split PS wrapper and payload (CVE-2018-16859) (#49145)
* 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-26 15:33:48 -08:00
Matt Clay
37274de7a2 [stable-2.5] Backport test infra bug fixes. (#48700)
* Download hello package from S3 for apt test.

(cherry picked from commit 83fd82ca7e)

* Fix passing of env vars to Shippable.

(cherry picked from commit 9979a32e5c)

* Use correct interpreter for ansible-test injector.

(cherry picked from commit eec21a3d12)

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

* Fix ansible-test merge change detection.

(cherry picked from commit aa7fe919d3)

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

* 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-15 10:32:42 -08:00
Jordan Borean
f38a596e5f openss: fix various test and Python 3 issues (#47188) (#47235)
(cherry picked from commit 6666b070a9)
2018-11-08 11:38:02 -08:00
Jordan Borean
4d76990ff4 filesystem: fix test to work on newer Fedora 2.5 (#47176) (#47232)
* filesystem: fix test to work on newer Fedora (#47176)


(cherry picked from commit ae5aeb9a67)

* test: filesystem update note on test comment (#47260)

(cherry picked from commit 5d2927c9a0)
2018-11-08 11:37:31 -08:00
Jordan Borean
0ee1f1ed4f postgresql_user: fix test errors on newer Fedora versions (#47166) (#47172)
(cherry picked from commit dd46f953f6)
2018-11-08 11:36:51 -08:00
Jordan Borean
7794ad9f53 gem: fix tests to work on newer Fedora hosts (#47158) (#47167)
(cherry picked from commit f720499337)
2018-11-08 11:36:13 -08:00
Toshio Kuratomi
ffcad9adec [stable-2.5] Detect the socket path after starting the service. Fixes #47582 (#47626)
(cherry picked from commit 10e129e)

Co-authored-by: Matt Martz <matt@sivel.net>
2018-10-25 15:20:47 -07:00
Matt Davis
cdc798df8f
[stable-2.5] Fix mysql authentication errors (#47596)
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-25 14:05:08 -07:00
Martin Krizek
77928e6c3a 2.5: user: do not pass ssh_key_passphrase on cmdline (#47486)
* 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)

* zap ignore entry
2018-10-24 11:04:14 -07:00
Jordan Borean
97826dc970 ansible-test: add retry for Windows httptester download (#47334)
(cherry picked from commit e6a327fb82)
2018-10-19 07:29:53 -07:00
Jordan Borean
5e7d057b36 win httptester: add wait for endpoint in case it is still coming up (#47326)
(cherry picked from commit c0546b4133)
2018-10-18 21:03:31 -07:00
Jordan Borean
1d3aef6917 win test: add http tester container to Windows tests (#46606)
(cherry picked from commit 6e2897647c)
2018-10-16 16:51:33 -07:00
Jordan Borean
481c48c708 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 16:51:33 -07:00
Jordan Borean
00bf656c89 win_uri: use variable for httpbin host (#46734)
(cherry picked from commit f34f75be45)
2018-10-16 16:51:33 -07:00
Matt Clay
abef1d5dd3 [stable-2.5] 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:16 -07:00
Matt Clay
ca13e678ae Backport test infra fixes and updates to stable-2.5. (#46992)
* Fix unit test parametrize order on Python 3.5.

(cherry picked from commit 53b230ca74)

* Fix ansible-test unit test execution. (#45772)

* Fix ansible-test units requirements install.
* Run unit tests as unprivileged user under Docker.

(cherry picked from commit 379a7f4f5a)

* Run unit tests in parallel. (#45812)

(cherry picked from commit abe8e4c9e8)

* Minor fixes for unit test delegation.

(cherry picked from commit be199cfe90)

* add support for opening shell on remote Windows host (#43919)

* add support for opening shell on remote Windows host

* added arg completion and fix sanity check

* remove uneeded arg

(cherry picked from commit 6ca4ea0c1f)

* Block network access for unit tests in docker.

(cherry picked from commit 99cac99cbc)

* Make ansible-test available in the bin directory. (#45876)

(cherry picked from commit f3d1f9544b)

* Support comments in ansible-test flat files.

(cherry picked from commit 5a3000af19)

* Fix incorrect use of subprocess.CalledProcessError (#45890)

(cherry picked from commit 24dd87bd0a)

* Improve ansible-test match error handling.

(cherry picked from commit 2056c981ae)

* Improve error handling for docs-build test.

(cherry picked from commit 2148999048)

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

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

* Update default container to version 1.2.0.

(cherry picked from commit d478a4c3f6)
(cherry picked from commit 21c4eb8db5)

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

* Reduce noise in docs-build test failures.

(cherry picked from commit 4085d01617)

* Fix ansible-test encoding issues for exceptions.

(cherry picked from commit 0d7a156319)

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

* Use default-test-container version 1.3.0.

(cherry picked from commit 6d9be66418)

* Add file exists check in integration-aliases test.

(cherry picked from commit 33a8be9109)

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

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

* Fix parametrize warning in unit tests.

(cherry picked from commit 1a28898a00)

* Update MANIFEST.in (#46502)

* Update MANIFEST.in:

- Remove unnecessary prune.
- Include files needed by tests.
- Exclude botmeta sanity test.

These changes permit sanity tests to pass on sdist output.
(cherry picked from commit cbb49f66ec)

* Fix unit tests which modify the source tree. (#45763)

* Fix CNOS unit test log usage.
* Use temp dir for Galaxy unit tests.
* Write to temp files in interfaces_file unit test.
* Fix log placement in netapp_e_ldap unit test.

(cherry picked from commit 0686450cae)

* Fix ansible-test custom docker image traceback.

(cherry picked from commit 712ad9ed64)

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

* Fix and re-enable sts_assume_role integration tests (#46026)

* Fix the STS assume role error message assertion when the role to assume does not exist.

(cherry picked from commit 18dc928e28)

* Fix ACI unit test on Python 3.7.0.

The previous logic was only needed for pre-release versions of 3.7.

(cherry picked from commit c0bf9815c9)

* Remove placeboify from unit tests that are not calling AWS (i.e. creating a recording) (#45754)

(cherry picked from commit 2167ce6cb6)

* Update sanity test ignore entries.
2018-10-13 10:44:11 -07:00
Jordan Borean
ade5934d33 skip installing linux-image-extra in CI as it shouldn't be needed (#46101) (#46131)
(cherry picked from commit 40379b76b1)
2018-09-25 13:25:33 -07:00
Daniel Speichert
7aad590d3d [stable-2.5] Migrate from MySQLdb to PyMySQL (#40123) (#45982)
* Migrate from MySQLdb to PyMySQL

* Deduplicate driver loading and failure message

* Explain requirements

* Apply requirements docs change to proxysql too

* Add changelog.
(cherry picked from commit d34cf93f1a)

Co-authored-by: Daniel Speichert <DSpeichert@users.noreply.github.com>
2018-09-25 10:10:28 -07:00
Jordan Borean
c484a6efdd add skip/docker alias to skip tests when running on Docker (#45955) (#45959)
* add skip/docker alias to skip tests when running on Docker

* changed warning message wording

(cherry picked from commit 27c10fa502)
2018-09-25 09:14:31 -07:00
Matt Martz
0ba6cbfd02 [stable-2.5] Fix logic to not re-download existing files when force=no (#45495) (#45509) (#45567)
* [stable-2.5] [stable-2.7] Fix logic to not re-download existing files when force=no (#45495) (#45509)

* [stable-2.7] Fix logic to not re-download existing files when force=no (#45495)

* Fix logic to not re-download existing files when force=no. Fixes #45491

* Reduce logic complexity.
(cherry picked from commit 5785de582f)

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

* Backport of get_url fix cannot use result

result was only added in 2.8+.
(cherry picked from commit 99171a9c6f)

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

* Update get_url.py
2018-09-25 09:09:18 -07:00
Jordan Borean
1c8aeb0410 reordered windows test groups for better efficiency (#45445) (#45449)
(cherry picked from commit 25ae4f2b73)
2018-09-25 09:07:00 -07:00
Matt Martz
9046c3e63c [stable-2.5] Ensure loop with delegate_to can short circuit the same as without delegate_to. Fixes #45189 (#45231). (#45354)
(cherry picked from commit 2ac647def8)
2018-09-25 09:00:24 -07:00
Matt Clay
38b9fee32f Get packages for dnf and yum tests from S3.
(cherry picked from commit 22d5f5d97f)
2018-09-05 15:35:01 -07:00
Zim Kalinowski
019c28bc3b Broken dependencies in 2.5 (#41952)
* essential fixes in 2.5

* one more fix

* disable try to see whats the problem

* fix indent

* try to fix msrest version

* fixed test

* undo try-except commenting out

* updated tests
2018-09-05 11:02:00 -07:00
Matt Clay
0724f4bfc2 Remove obsolete test/utils/docker/ directory.
(cherry picked from commit 78bd020429)
2018-08-30 09:12:26 -07:00
Matt Clay
053273fc7e Ignore CentOS 6.10 for passwordstore test.
(cherry picked from commit 18da873531)
2018-08-30 09:12:26 -07:00
Matt Clay
8ab11c3228 Restore repos after zypper_repository test runs.
This also allows the test to run on newer containers by not
manipulating any of the pre-configured repositories.

(cherry picked from commit cac51e6da8)
2018-08-30 09:12:26 -07:00
Sam Doran
f73ac53e58 Only template values in vars_prompt rather than all vars (#39304) (#44082)
This allows the use of variables in vars_prompt fields but allows variables entered in the prompt to affect play vars rather than throwing an undefined error.

Add tests for vars_prompt

(cherry picked from commit 6d38167d49)
2018-08-13 18:18:48 -07:00
Shuang Wang
3f7ca8daf1 fix issue [ get_url does not change mode when checksum matches ] (#43342) (#43623)
* fix  #29614

* add change log for #43342

* Cleanup tests and add tests for this scenario


Co-authored-by: ptux
(cherry picked from commit 68683b4c73)
2018-08-13 18:14:53 -07:00
Jiri Tyr
8a0fa4a3e3 Fix for creation and removal of swap record in fstab (fixes #42706, #31437 and #30090) (#42837) (#43518) 2018-08-13 18:13:25 -07:00
Deepak Agrawal
8b2abfe446 openvswitch_db : Handle column value conversion and idempotency in no_key case (#43869)
* change column value to string. handle idempotency in no key case

* fix unit test failures in baseline

(cherry picked from commit 8eaebf86b6)
2018-08-13 17:52:47 -07:00
Matt Clay
445a3e4127 Fix download URL for yum integration test.
(cherry picked from commit 3b693be80f)
2018-08-09 14:47:07 -07:00
Jakub Libosvar
6b81a39daa openvswitch_db: Make 'key' parameter optional (#42110) (#43552)
* openvswitch_db: Split key-value pairs correctly (#33335)

Map values can contain commas, e.g.
    - name: Configure OVN bridge mapping
      openvswitch_db:
        state: present                                                                                                                                                                                                                                table: open_vswitch                                                                                                                                                                                                                           record: .                                                                                                                                                                                                                                     col: external_ids                                                                                                                                                                                                                             key: ovn-bridge-mappings
        value: '"vmnet-static:br-vmnet-st,vmnet-dynamic:br-vmnet-dyn"'

Previous behaviour was splitting the value and raised an exception.
(cherry picked from commit 3c53e2f8ea)

* openvswitch_db: Make 'key' parameter optional (#42110)

The OVSDB schema consists of typed columns. The 'key' parameter is
required only for columns with type of a 'map'. This patch makes 'key'
an optional parameter to allow setting values for other column types
like int.

Fixes #42108

(cherry picked from commit 26b0908270)
(cherry picked from commit 01097715fd9466c64bfb37d7604d095275a5e9d8)
2018-08-08 16:01:42 +02:00
Matt Clay
bf8f228fd5 Update Shippable integration test groups. (#43118)
* Update Shippable integration test groups.
* Update integration test group aliases.
* Rebalance AWS and Azure tests with extra group.
* Rebalance Windows tests with another group.

(cherry picked from commit 4e489d1be8)
2018-07-24 10:02:00 -07:00
Matt Clay
5805e6a89b Mark win_uri unstable.
(cherry picked from commit 547f11ad8f)
2018-07-23 18:28:04 -07:00
Nathaniel Case
dc37b41b72 [2.5] Update ios tests (#42509) (#42515)
* [2.5] Update ios tests (#42509)

* 192.168.0.1/24 conflicts with management IP

* Images don't have the hostnames we expect
(cherry picked from commit 399d13d)

Co-authored-by: Nathaniel Case <this.is@nathanielca.se>

* ios test cleanup pt 2 (#42570)

* Remove local from ios_config to avoid needing to add provider

* ios_smoke should test all with local to pick up the slack

(cherry picked from commit 381263ad99)
2018-07-23 09:21:16 -07:00
Trishna Guha
e3993bd01b nxos_nxapi fix pick-2.5 (#42490)
* Enforcing NXAPI default HTTP behavior (#41817)

* nxos_nxapi http default behavior

* Use nxos_nxapi module in prepare_nxos_tests

* Refactor nxos_nxapi configure test to use yaml block

* Extend nxos_nxapi https & http test cases

* Removed NXOS internal release naming

* Resolved ansibot sanity errors

* Fix typo in prepare_nxos_tests

* Address PR comments

* Shippable indicates this is no longer needed

* Add port change logic and testing

(cherry picked from commit db7300904d)

* add changelog

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

* Add get_capabilities in nxapi module_utils (#42688)

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
(cherry picked from commit d5e9653c96)
2018-07-23 09:20:54 -07:00
Sam Doran
306be9f23c Fix pause module so it does not stack trace when redirecting stdout. (#42217) (#42441)
* Use separate variables for stdin and stdout file descriptors

* Do not set stdout to raw mode when output is not a TTY

(cherry picked from commit 1d1595b990)
2018-07-23 09:20:14 -07:00
Sam Doran
0fa56ed65d Add warning when using an empty regexp in lineinfile (#42013) (#42207)
* Revert "Account for empty string regexp in lineinfile (#41451)"

This reverts commit 4b5b4a760c.

* Use context managers for interacting with files

* Store line and regexp parameters in a variable

* Add warning when regexp is an empty string

* Remove '=' from error messages

* Update warning message and add changelog

* Add tests

* Improve warning message

Offer an equivalent regexp that won't trigger the warning.
Update tests to match new warning.

* Add porting guide entry for lineinfile change

(cherry picked from commit fb55038d75)
2018-07-05 09:41:07 -07:00
Sam Doran
ab93ad8a0a Backport #41767 for 2.5 -Skip if insertbefore is using BOF until later in the module (#41930)
* Skip if insertbefore BOF until later (#41767)

If a line match is found in the file and no regexp is specified, insertbefore would improperly try to add a line if set to BOF.

Add tests for this scenario.

(cherry picked from commit eaae1318f8)

* Add changelog fragment
2018-07-03 13:08:49 -07:00
Martin Krizek
ab18048147 Fix rabbitmq_* integration tests (#41836) (#41922)
(cherry picked from commit a8d4bf8642)
2018-07-03 12:08:03 -07:00
Nilashish Chakraborty
9101dd6857 Fixed eos_logging test issue (#41777) 2018-07-03 12:04:35 -07:00
Nilashish Chakraborty
b9904b9fe7 Fix vyos_vlan aggregate issue & added tests CP into 2.5 (#41638) (#41775)
* Fix vyos_vlan aggregate issue & added tests (#41638)

* Fix vyos_vlan aggregate issue & Added tests

* Fix #2 for vyos_vlan aggregate issue

(cherry picked from commit 837c216587)

* Added changelog for vyos_vlan aggregate issue fix
2018-07-03 12:02:11 -07:00
Toshio Kuratomi
7b325baa22 Bkprt recursive copy fix (#40268)
* Fixes #34893 (#40166)

Fixes several bugs exposed in #34893
* Fixes relative path handling in copy so that it splits directories and
  reconstructs the correct file path
* Return failed in the proper circumstances

(cherry picked from commit ca4147f2cc)

* Add changelog for recursive copy fix

(cherry picked from commit cab0f21564)
2018-07-03 11:49:45 -07:00
Matt Clay
9fcf256817 Disable remaining failing rabbitmq_* tests.
(cherry picked from commit 5880404151)
2018-06-21 15:56:22 -07:00
Matt Clay
cd9d18a93b Revert "Disable failing rabbitmq_user test."
This reverts commit e954633739.
2018-06-21 15:55:33 -07:00