Commit Graph

2507 Commits (3c484831f87035db7eeb7ed405f905c134b56a53)

Author SHA1 Message Date
Mike Wiebe d1a38f1f72 Fix issues with nxos_os_install module (#48811)
* Use expect module to copy files

* Remove old and redundant upgrade files

* Return error message instead of code

* Cleanup copy command code

* Fix force issue in nxos_install_os

* new nxos_install_os integration tests

* Uncomment transport tests

* Revert negative test change

* Remove combined option that is no longer required

* Make shippable happy

* Add n5k test files

(cherry picked from commit a721572206)
6 years ago
Anil Kumar Muraleedharan bbb47eedc0 Backport/2.7/46623 (#48154)
* To backport PR 46623 to 2.7.2

* Lenovo finetune modules (#46623)

* Making username password etc non mandatory as we use persistence connection.
Some documentation fine tuning also done.

* To update version which was tested against.

* Adding Bacon switch (NE0152T) to device rules

* Qalthos Review catch

* Updating version

* Changing documentation to add Bacon switch. This is effective since 2.8

(cherry picked from commit d0e89bc1bb)

* Delete cnos-46623-support-bacon-in-modules.yaml

* Update cnos_devicerules.py

* Update cnos.py

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md
6 years ago
Martin Krizek 660f46be13 Fix using vault encrypted data with jinja2_native (#49025)
Fixes #48950

(cherry picked from commit d4568d97d4)
6 years ago
Matt Clay 1986e9ed89 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)
6 years ago
Matt Clay f1b6f5d204 [stable-2.7] Use virtualenv in pip test to remove distribute.
(cherry picked from commit 6f29eafef4)

Co-authored-by: Matt Clay <matt@mystile.com>
6 years ago
Sviatoslav Sydorenko cee7642188 [stable-2.7] pip: Fix the mistake replacement from 'distribute' to 'setuptools' (#47403) (#49132)
* [stable-2.7] pip: Fix the mistake replacement from 'distribute' to 'setuptools' (#47403)

* Fix the mistake replace from distribute to setuptools

* Add a testcase for this bug
(cherry picked from commit 93c5781)

Co-authored-by: Zhikang Zhang <zzhang63@ncsu.edu>

* Add a change note
6 years ago
Matt Davis 2f8d3fcf41
split PS wrapper and payload (CVE-2018-16859) (#49143)
* 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)
6 years ago
Martin Krizek 316d3abb42 Properly handle FieldAttribute.default if callable (#48992)
* Properly handle FieldAttribute.default if callable

Fixes #48673

* Add changelog...

* Add integration test

* Add aliases file

(cherry picked from commit 48ffd8789f)
6 years ago
Jordan Borean 7e32f1ffb0 [ec2_group] fix comparison of determining which rules to purge - 2.7 (#48967)
* Added changelog fragment

* Fix comparison of determining which rules to purge by ignoring descriptions (#48443)

AWS uses rule type, protocol, port range, and source as an idempotent identifier.
There can only be one rule with that unique combination. Rules that differ only by description are allowed but overwritten by AWS.
Add a test

Co-authored-by: Will Thames <will@thames.id.au>
(cherry picked from commit 54a2f21f93)
6 years ago
Adam Miller 64cea41f6b dnf to support modularity module appstream specs
Fixes #48743

Signed-off-by: Adam Miller <admiller@redhat.com>
(cherry picked from commit 4a06e95671)

fix up sanity tests and with_modules conditional

Signed-off-by: Adam Miller <admiller@redhat.com>
(cherry picked from commit 23b60035a1)

fix yamllint sanity

Signed-off-by: Adam Miller <admiller@redhat.com>
(cherry picked from commit 2b878546d3)

fix group-missing/invalid-group detection

Signed-off-by: Adam Miller <admiller@redhat.com>
(cherry picked from commit 41176b5e0f)
6 years ago
Felix Fontein a96efa43f0 docker_* tests: check API version (#48620)
* Check minimal API and docker-py versions for all docker_* tests.

* Improve docker_swarm creation/destruction for tests.

* Fail when conditions aren't met.

* Don't hardcode address for advertise_addr.

(cherry picked from commit 3bb41ccb8e)
6 years ago
Brian Coca 1469ec4487 better handling of bad type in config (#48821)
* better handling of bad type in config

 fixes #22468, fixes #22476


(cherry picked from commit 87e44a7ed1)
6 years ago
Dave Bendit 51a3d60991 [docker_network] Add handling for Python booleans in driver_options
Fixes #26708
6 years ago
Matt Clay b6d3599e00 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)
6 years ago
Martin Krizek 82baf1c746 apt: disable ubuntu repos to not change test env
(cherry picked from commit 0c86df33a4)
6 years ago
Felix Fontein ce9f2e6147 docker_container: fix tests and idempotency for init and shm_size (#48551)
* Fix tests: use same command if not testing command option.

* Fix idempotency of init option.

* Fix shm_size idempotency (it is included in inspect results from docker API version 1.22 on).

* Add changelog.

(cherry picked from commit b1acabcd03)
6 years ago
Felix Fontein b126a21963 Docker volume fix labels (#48536)
* Add integration test for labels (which fails).

* Changing labels from list to dict.

* Add changelog.

(cherry picked from commit feb60b947c)
6 years ago
Andrea Tartaglia 50e6361c3f (Backport) ec2_instance, ebs_optimized not sub-option of network (#48467)
* ec2_instance: ebs_optimized is not sub-option of 'network' (#48341)

* ebs_optimized is not suboption of 'network'

* Add Shaps as ec2_instance maintainer

* Added workaround-backward compatible check for ebs_optimized

* Added ebs_optimized test

* CI fixes, dynamic select of ENA-enabled AMI

(cherry picked from commit b7d9feb7dc)

* Added changlog fragment for PR #48341

* fixed yaml errors in changelog
6 years ago
Strahinja Kustudic f027f44ce4 [stable-2.7] Fix pip idempotence in check mode
PIP package names must be case insensitive, and must consider hyphens
and underscores to be equivalent
(https://www.python.org/dev/peps/pep-0426/#name), because of this the
module didn't work correctly in check mode. For example if the passed
package name had a different case or an underscore instead of a hyphen
(or the other way around) compared to the installed package, check mode
reported as changed, even though packages were installed. Now the module
ignores case and hyphens/underscores in package names, so check mode
works correctly.
(cherry picked from commit b89b688)

Co-authored-by: Strahinja Kustudic <kustodian@gmail.com>
6 years ago
Felix Fontein 33ccd3b78d [2.7] Fix advertise addr (#48405)
* Fix advertise addr (#47608)

* Fix issue #46326

* Update example to create a default swarm

(cherry picked from commit 87de2dde9f)

* Add changelog.
6 years ago
Christopher Gadd 264bc930ef [stable-2.7] 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>
6 years ago
Martin Krizek 9138a95402 [stable-2.7] user: fix removing the expiry time when it's 0 (#47115)
* user: fix removing the expiry time when it's 0

* Improve tests and add changelog

Co-authored-by: Martin Krizek <martin.krizek@gmail.com>
(cherry picked from commit 41dfc5162f)

Co-authored-by: Martin Krizek <martin.krizek@gmail.com>
6 years ago
Matt Clay fda6fff39b [stable-2.7] Pin openshift version for k8s test.
This will avoid spontaneous test failure for new releases of openshift on PyPI.
(cherry picked from commit 150cdd7931)

Co-authored-by: Matt Clay <matt@mystile.com>
6 years ago
Sam Doran bab062d639 [stable-2.7] User module - allow bang and exclamation in password field without warning (#46498)
* Allow bang and exclamation without warning

Allow the password field to be ! or * without warning when using this feature to create accounts that are locked.

Add documentation  and tests to cover this.

* Use set() rather than braces for Python 2.6
(cherry picked from commit 066af3b6ca)

Co-authored-by: Sam Doran <sdoran@redhat.com>
6 years ago
Dag Wieers 5dfd7c181f [2.7] aci_iplpg: Support missing aep (#48115)
* aci_iplpg: Support missing aep

* Adapt integration tests to fix

* Add changelog fragment

* Fix PEP8 issue
6 years ago
Dag Wieers 5201ffcf3a Adapt integration tests to fix
Conflicts:
	test/integration/targets/aci_access_port_to_interface_policy_leaf_profile/tasks/main.yml
6 years ago
Jesse Pretorius 7adc293f65 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
Pilou 161ae2659c tower{job,workflow}_template: use same retries value (#47865)
(cherry picked from commit 6f8ffeb6bf)
6 years ago
Dag Wieers d876421b41 Adapt integration tests to fix 6 years ago
Felix Fontein bb2281c3e2 Make tests fail less often with strange errors. (#48059) 6 years ago
Felix Fontein 49de1f1c7c Improve paused test and behavior. (#48056)
(cherry picked from commit 569ec812e7)
6 years ago
Felix Fontein 0742f00c29 docker_container: fix paused and add some tests (#47900)
* cleanup is already tested.

* Add test for paused.

* Add recreate and restart tests.

* timeout is a common docker option

* Implement paused and fix paused test.

* Add changelog.

* Improve paused test.

(cherry picked from commit 65768b996d)
6 years ago
Felix Fontein eef35f19bc Fixing idempotency test. (#48038)
(cherry picked from commit 8eb656de8b)
6 years ago
Felix Fontein 0dd8d73a38 docker_network: adding/updating tests (#47775)
* Add substring test (fixes #32927).

* Extend idempotency tests (fixes #32580).

(cherry picked from commit 2dab10f1ec)
6 years ago
Felix Fontein fb551bf62c docker_container: simplify minimal required version per option handling (#47711)
* Store parsed docker-py / docker API versions in client.

* Began refactoring 'minimal required version' for docker_container options.

* Removing some fake defaults.

* Added changelog.

* Improve tests (check older docker versions).

* Fix comparison. The breaking point is not docker-py 2.0.0, but 1.10.0.

(Verified by testing with these versions.)

* Move docker-py/API version detection to setup_docker.

* Add YAML document starter.

* docker_network requirement for docker-py was bumped to 1.10.0 in #47492.

(cherry picked from commit 3cca4185be)
6 years ago
Felix Fontein 5153286719 docker_container: fix ipc_mode and pid_mode idempotency (#47997)
* Fix ipc_mode and pid_mode idempotency when container names are used.

* Add changelog.

* Update pid_mode documentation.

(cherry picked from commit 35809e99bc)
6 years ago
Mike Wiebe 35eec7b1b0 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
Jordan Borean a89cd5a30f 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)
6 years ago
Abhijeet Kasurde 1293076d7b plugin_filter: check for type error (#46664)
* Parsing plugin filter may raise TypeError, gracefully handle this exception
and let user know about the syntax error in plugin filter file.

* Test for plugin_filtering

Fixes: #46658

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit b32b4111b2)
6 years ago
Martin Krizek 44088ef64d yum: fix 'package == version' syntax (#47744)
(cherry picked from commit 4b8f2c99d2)
6 years ago
John R Barker 5bacb732ce Backport/2.7/44324 Fixes #30599 ini_file module: Options within no section managed (#47741)
* Addresses comments in #38971 (#44324)

* Controlled params within no section

* Added tests to control params within no section

* Cleaning output_file before creating no-section params and check the content

* addresses comment in PR "s/hate/beverage/g"

(cherry picked from commit d3fe6c01f2)

* 44324-ini_file
6 years ago
Felix Fontein 37da0b2cec docker_image, docker_image_facts, docker_volume: add basic integration tests (#47383)
* Add docker_image_facts tests.

* Add basic integration test for docker_volume.

* Add basic docker_image tests.

* Only start test registry when tests are actually run (i.e. not on CentOS 6).

(cherry picked from commit f19ab56eb4)
6 years ago
Matt Martz c901f2c3c4 [stable-2.7] 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 c5df4c538d 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)
6 years ago
Dag Wieers 136da25bbf WinRM/PSRP: Ensure shell returns UTF-8 output (#47404)
* WinRM/PSRP: Ensure shell returns UTF-8 output

This PR makes UTF-8 output work in PSRP shells.

* Add win_command and win_shell integration tests

* Fix tests

* more test fixes

(cherry picked from commit 691ff4b9e6)
6 years ago
Jordan Borean 1626b4c5cb psrp - fix unicode handling in Python 2 (#47461)
* psrp - fix unicode handling in Python 2

* skip psrp become test when on Server 2008

(cherry picked from commit f28b7c7ab1)
6 years ago
Matt Martz 8a40514d2b [stable-2.7] Handle sets differently than lists in wrap_var. Fixes #47372 (#47510).
(cherry picked from commit f6ecdf0b87)

Co-authored-by: Matt Martz <matt@sivel.net>
6 years ago
Matt Martz 376b199c05 [stable-2.7] Ensure we don't overwrite roles from include/import_role when loading the play (#47512)
* Ensure we don't overwrite roles from include/import_role when loading the play. Fixes #47454

* Add changelog fragment
(cherry picked from commit d5e4f37)

Co-authored-by: Matt Martz <matt@sivel.net>
6 years ago
Sviatoslav Sydorenko 702820d673 [stable-2.7] Fix problem where pip module cannot accept multiple extras (#47449)
* [stable-2.7] Fix problem where pip module cannot accept multiple extras

PR #46937
Fixes #46519
(cherry picked from commit b697da3)

Co-authored-by: Zhikang Zhang <zzhang63@ncsu.edu>

* Add changelog
6 years ago
Felix Fontein f0a706e4a0 docker_container: fix interaction of detach:no with auto_remove:yes (#47396)
* Behave better if auto_remove and output_logs are combined. Warn if output cannot be retrieved because of auto_remove.

* Add tests.

* Added changelog.

(cherry picked from commit 3afdb28209)
6 years ago
Adam Miller 2d39ad036e fix yum proxy username/password handling (#47435)
* fix yum proxy username/password handling

Fixes #46249

Signed-off-by: Adam Miller <admiller@redhat.com>
(cherry picked from commit e4a4357322)

* add backport changelog
6 years ago
Toshio Kuratomi 3b2a0de548 [stable-2.7] Revert "[stable-2.7] Handle sets differently than lists in wrap_var. Fixes #47372."
This reverts commit 0e933f76ba.

The tests for this were broken on centos6 because jinja2 does not have
a map filter on that platform.  Tests need to be rewritten.
(cherry picked from commit ccabc2bff5)

Co-authored-by: Toshio Kuratomi <a.badger@gmail.com>
6 years ago
Will Thames bac6f99608 Ensure that k8s_facts always returns resources key (#46733) (#47253)
* Ensure that k8s_facts always returns resources key (#46733)

Fix bug returning `items` key if NotFound exception is hit

(cherry picked from commit b772485d97)

* Add changelog for k8s_facts fix
6 years ago
Martin Krizek b618339c32 2.7: user: do not pass ssh_key_passphrase on cmdline (#47445)
* 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)
6 years ago
Matt Martz 0e933f76ba [stable-2.7] Handle sets differently than lists in wrap_var. Fixes #47372.
(cherry picked from commit c58de75f38)

Co-authored-by: Matt Martz <matt@sivel.net>
6 years ago
Pablo ce16286dee [stable-2.7] Fix exception when including tasks from handlers (#47307)
Set _notified_handlers for the task's _uuid that is run as a handler

Fix #47287
(cherry picked from commit 6497049)

Co-authored-by: Pablo <pablorf.dev@outlook.com>
6 years ago
Felix Fontein b47bf26c67 docker_network: add basic integration tests (#46137)
* Adding very basic integration tests for docker_network.

* Fixing some details (review comments).

(cherry picked from commit 131efcff9d)
6 years ago
Matt Martz f1db8985e3 [stable-2.7] Don't use the task for a cache, return a special cache var (#47243)
* Don't use task to cache loop results, use hostvars. Fixes #47207

* Avoid a race condition, supply _ansible_loop_cache through get_vars directly

* Add tests

* Add changelog fragment

* Remove unnecessary copy

* Remove unnecessary host from _get_delegated_vars signature.
(cherry picked from commit 77d32b8f57)

Co-authored-by: Matt Martz <matt@sivel.net>
6 years ago
Martin Krizek 46c217feda Do not strip new lines in native jinja (#46751)
* Do not strip new lines in native jinja

* Add changelog/fragment

(cherry picked from commit 541255a2d8)
6 years ago
Jordan Borean 7690659f7f openss: fix various test and Python 3 issues (#47188)
(cherry picked from commit 6666b070a9)
6 years ago
Jordan Borean 429c8f50fe test: filesystem update note on test comment (#47260)
(cherry picked from commit 5d2927c9a0)
6 years ago
Jordan Borean 682e4957d4 filesystem: fix test to work on newer Fedora (#47176)
(cherry picked from commit ae5aeb9a67)
6 years ago
Jordan Borean 20fc17a55f postgresql_user: fix test errors on newer Fedora versions (#47166)
(cherry picked from commit dd46f953f6)
6 years ago
Jordan Borean 940eb3ae47 gem: fix tests to work on newer Fedora hosts (#47158)
(cherry picked from commit f720499337)
6 years ago
Jordan Borean 7269eb5413 ansible-test: add retry for Windows httptester download (#47334)
(cherry picked from commit e6a327fb82)
6 years ago
Jordan Borean 7f4945a8f1 win httptester: add wait for endpoint in case it is still coming up (#47326)
(cherry picked from commit c0546b4133)
6 years ago
Matt Clay a2c2dffceb Add constraint for requests on python 2.6. (#47306)
* Add constraint for requests on python 2.6.
* Use constraints in lookup_hashi_vault test.

(cherry picked from commit f74f7b0373)
6 years ago
Matt Clay 62914e04be Add constraints to pip install in setup_docker.
(cherry picked from commit 14da4d66f2)
6 years ago
Matt Clay c0b0dd7e6e Mark azure_rm_{appserviceplan,webapp} unstable.
(cherry picked from commit 1947d903cd)
6 years ago
Jordan Borean c085cae991 test: openssl 1.1.x compatibility (#47112)
(cherry picked from commit 9ba33f6ac1)
6 years ago
Matt Clay 02bd829dd2 [stable-2.7] 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 ff5073c10b win test: add http tester container to Windows tests (#46606)
(cherry picked from commit 6e2897647c)
6 years ago
Jordan Borean 377540348c 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
Zim Kalinowski f16bb4daf4 Fixing assigning ssl certificate to http listener in app gateway (#45… (#46027)
* Fixing assigning ssl certificate to http listener in app gateway (#45830)

* fixed ssl certificate reference

* modified test

(cherry picked from commit 83645963fb)

* added chagelog
6 years ago
Matt Martz 30c1a1933e [stable-2.7] Do not use mutable defaults in FieldAttribute, instead allow supplying a callable for defaults of mutable types. Fixes #46824 (#46833).
(cherry picked from commit a06a5ded61)

Co-authored-by: Matt Martz <matt@sivel.net>
6 years ago
Abhijeet Kasurde c982295f6c VMware: Refactor disc logic (#39285)
* Refactoring related to network device
* Assign unique random temporary key while creating SCSI or/and IDE controller devices
* Add testcase for this change

Fixes: #38679

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
(cherry picked from commit fd985db72d)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
6 years ago
Adam Miller f5df17ca51 yum module properly check for None config_file (#46641) (#46820)
* yum module properly check for None config_file (#46641)

* yum module properly check for None config_file
* add conf_file test cases to yum integration tests

Signed-off-by: Adam Miller <admiller@redhat.com>

(cherry picked from commit fb6e91bf98)

* add changelog for 2.7 backport

Signed-off-by: Adam Miller <admiller@redhat.com>
6 years ago
Adam Miller 4fe7671d34 yum module handle list optional empty strings properly (#46634) (#46819)
* yum module handle list optional empty strings properly (#46634)

Fixes #46517

Signed-off-by: Adam Miller <admiller@redhat.com>
(cherry picked from commit ad405fc21e)

* add changelog

Signed-off-by: Adam Miller <admiller@redhat.com>
6 years ago
Jordan Borean c888058973 win_uri: use variable for httpbin host (#46734)
(cherry picked from commit f34f75be45)
6 years ago
Felix Fontein 10fd0251e8 docker_container: improve publish all ports functionality (#46594)
* Improve handling of published_ports: all.

* Add changelog.

(cherry picked from commit 8afe46dc02)
6 years ago
Matt Clay 7ce940cb41 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 970e6542b5 Rebalance shippable/posix/ CI groups.
(cherry picked from commit 33b34f5c82)
6 years ago
Felix Fontein 85e227d338 Remove regression test for fix which is in another backport PR (#45769). 6 years ago
Felix Fontein 1d01543e34 docker_container: fix various idempotency problems and non-working options (#45905)
* Sorting args.

* Doing comparisons of options with container parameters in a more context-sensitive way.

This prevents unnecessary restarts, or missing restarts (f.ex. if parameters are removed from ``cmd``).

* Make blkio_weight work.

* Fix cap_drop idempotency problem.

* Making groups idempotent if it contains integers.

* Make cpuset_mems work.

* Make dns_opts work.

* Fixing log_opts: docker expects string values, returns error for integer.

* Adding tests from felixfontein/ansible-docker_container-test#2.

* Make uts work.

* Adding changelog entry.

* Forgot option security_opts.

* Fixing typo.

* Explain strict set(dict) comparison a bit more.

* Improving idempotency tests.

* Making dns_servers a list, since the ordering is relevant.

* Making dns_search_domains a list, since the ordering is relevant.

* Improving dns_search_domains/dns_servers.

* Fixing entrypoint test.

* Making sure options are only supported for correct docker-py versions.
6 years ago
Felix Fontein 18b575b593 integration tests for docker_container (#45747)
* First round of integration tests for docker_container.

* Added regression test for #45700.

* Work around dict order randomization.
6 years ago
Pieter Avonts 190cdd3a29 VMware: Rewrite get_resource_pool method for correct resource_pool selection (#39792)
* rewrite get_resource_pool method for correct resource_pool selection
* only keep name if path is given for cluster, esxi_hostname or resource_pool
* Revert "only keep name if path is given for cluster, esxi_hostname or resource_pool"
* This reverts commit 50293ec763c024b0eaceac5d775ccc0ad3ff8bd7.
* if the name argument contains a path, only use the last part for matching
* remove path from cluster argument in tests
* remove find_objs in favour of reusing find_obj with an extra folder argument
* fix find_obj ignoring first if name is not given

(cherry picked from commit 1a810f8f11)
6 years ago
Sam Doran 19fe83d786 Use proper index value with insertbefore on a one line file (#46071)
Add tests and changelog

(cherry picked from commit b74279d14c)
6 years ago
Jordan Borean 2388126bdf win_chocolatey: remove test packages after tests are run (#46431)
(cherry picked from commit 1de88cbaa9)
6 years ago
Kévin Subileau 6a27a4251e win_nssm: wrong variable in tests
(cherry picked from commit 9b9c839461)
6 years ago
Kévin Subileau 7601f1c153 win_nssm: restore support of string as dict form for app_parameters and remove support of literal YAML dict
(cherry picked from commit 862855252b)
6 years ago
Kévin Subileau 2de895a07b win_nssm: restore comma as separator for service dependencies
Revert commit ddd4b4b

(cherry picked from commit ead882bb9b)
6 years ago
Kévin Subileau 4215feeb5e win_nssm: test parameters with spaces, quotes or backslashes
(cherry picked from commit 51843a7b3c)
6 years ago
Kévin Subileau da801283ee win_nssm: add idempotence tests
(cherry picked from commit 46a5e4f3bf)
6 years ago
Kévin Subileau df1aaab3df 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)
6 years ago
Kévin Subileau 2409ae5f27 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)
6 years ago
Kévin Subileau 14cccb9488 win_nssm: add failing tests for issue #44079
(cherry picked from commit a5d1241fa1)
6 years ago
Sam Doran 8b0c46a51a 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
Daniel Speichert bc08cf12ea [stable-2.7] Migrate from MySQLdb to PyMySQL (#40123)
* 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>
6 years ago
Jordan Borean 547be8c957 powershell: do not quote join_path result to reflect ShellBase join_path (#45944)
(cherry picked from commit 198423d6fb)
6 years ago
Jordan Borean 742e15d03b skip installing linux-image-extra in CI as it shouldn't be needed (#46101)
(cherry picked from commit 40379b76b1)
6 years ago
Sloane Hertel 37df3796e1 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)
6 years ago
Jordan Borean 7cce4dfbb0 add skip/docker alias to skip tests when running on Docker (#45955)
* add skip/docker alias to skip tests when running on Docker

* changed warning message wording

(cherry picked from commit 27c10fa502)
6 years ago
Sloane Hertel 98e31e98c8 ec2_group: fix regression for targets that are a list containing strings and lists (#45594)
* Fix targets that may be a list containing strings and lists which worked prior to 2.6.

* Add ec2_group integration tests for lists of nested targets

* changelog

* Add diff mode support for lists of targets containing strings and lists.

(cherry picked from commit d7ca3f2bd3)
6 years ago
Pilou 92f7429fb6 hashi_vault lookup: add integration tests (#44814)
* hashi_vault lookup: add integration tests

* hashi_vault lookup tests: use ansible-ci-files

(cherry picked from commit 9984c0fd40)
6 years ago
Yuwei Zhou e16d36f0f7 Backport: fix the autoscale resource id #45477 (#45532)
* fix the autoscale resource id (#45477)

* fix the autoscale resource id

* Update main.yml

(cherry picked from commit fa04387550)
6 years ago
David Rodríguez c41681b888 [backport-2.7] Fix remote checksums when paths have leading dots (#45287) (#45501)
* Fix remote checksums when paths have leading dots (#45287)

* Fix remote checksums with paths have leading dots

* Fix result recorded from the wrong file

* Add changelog fragment

(cherry picked from commit 600c7ac108)
6 years ago
Matt Martz 99171a9c6f [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+
6 years ago
Matt Clay 4a8a931d0f Reduce cost of Azure DB tests.
(cherry picked from commit ed49f37957)
6 years ago
Jordan Borean d559213b31 fix Ansible.ModuleUtils.FileUtil to respect ErrorAction if running in a try/catch (#45451)
(cherry picked from commit d4ce1b9f31)
6 years ago
Jordan Borean f2d5954d11 win_say - fix up syntax and test issues (#45450)
(cherry picked from commit c9c141fb6a)
6 years ago
Jordan Borean 89ab0b5d32 reordered windows test groups for better efficiency (#45445)
(cherry picked from commit 25ae4f2b73)
6 years ago
Kevin Breit 47410bdf5c meraki_mr_l3_firewall - Integration test fix (#45366)
* Fix integration test as wrong module was called

* Create block section for failures on integration test for mr_l3_firewall integration test

(cherry picked from commit 6c67674eab)
6 years ago
Will Thames e74a681337 Use a sensible default for k8s merge_type (#45284)
* Use a sensible default for k8s merge_type

The sensible default for merge_type is `['strategic-merge', 'merge'].
However, we can't make this the default default, as we need to support
users who are using openshift 0.6.0, where the merge_type parameter is
unsupported.

* Refactor k8s test suite for merge_type tests

Allow tests with pre-merge-type openshift and post-merge-type
openshift.

(cherry picked from commit 1463c2e4a8)
6 years ago
Matt Martz 3e14a34744 [stable-2.7] Ensure loop with delegate_to can short circuit the same as without delegate_to. Fixes #45189 (#45231)
(cherry picked from commit 2ac647d)

Co-authored-by: Matt Martz <matt@sivel.net>
6 years ago
Sloane Hertel c96a440063 Fix backwards compatibility without providing prefix since boto3 does more parameter validation than boto (#45308)
Use .get() instead of assuming a rule has a Transitions or Filter key (both of which are optional)

(cherry picked from commit 8b341619ae)
6 years ago
Ryan Brown 55eebfc6b7 [aws] ec2_group multi-account and peered VPC bugfix (#45296)
* Add tests to replicate bug #44788 

* Handle when userId is same account due to in-account peering

* Module defaults for main.yml

* Turn off VPC peering tests in CI
6 years ago
Ganesh Nalawade d3225b0494 Fix diff_ignore_lines option issue for candidate configuration (#45201)
* Fix diff_ignore_lines option issue for candidate configuration

*  diff_ignore_lines option is to handle the running config fetch from
   remote host and ignore the lines that are auto updated eg: commit time and date
*  This option should not be used while processing candidate (input) configuration

* Fix review comment

(cherry picked from commit a3c137c1ab)
6 years ago
Deepak Agrawal 0c6c29900d iosxr dci failure on devel/2.7 (#45268)
(cherry picked from commit 23d54ed1d4)
6 years ago
Ryan Brown f0eebf9187 Fix ec2_group for numbered protocols (GRE) (#42765)
* Fix spurious `changed=True` when int is passed as tag

* Fix for all AWS module using compare_aws_tags

* Handle improperly stringified protocols and allow inconsistency between None/-1 on non-tcp protocols

* Add integration test that reproduces the same bug

* Return false if the comparsison is not equal

(cherry picked from commit 20f21779d3)
6 years ago
Dag Wieers c5f6aa69a1 Backport of 45091 6 years ago
Dag Wieers 055c3e8d0d Backport of 45088 6 years ago
Adam Miller e857157072 Improve dnf group output for clarity
Add note about group removal bug upstream dnf

Signed-off-by: Adam Miller <admiller@redhat.com>
6 years ago
Anil Kumar Muraleedharan fbf55a09cc Lenovo image refactor (#44953)
* Refactoring code to adhere to persistence connection.

* Update cnos_rollback.py

* Updating license for the refactored method

* Update cnos_rollback.py

* Removing the BSD License as suggested by Legal

* Adding cnos_image after testing on sftp. Test code is also added

* Removing debug comments

* adding space
6 years ago
Ganesh Nalawade 005233f814
Fix iosxr_config integration test failure (#44969)
*  Check for commands presence in case running config
   is used as base config for diff
*  Correct the fixtures
6 years ago
Matt Clay 1b54af068d Disable azure_rm_virtualmachine_scaleset test.
Temporary solution to avoid quota issues.
6 years ago
Matt Clay debc1e229e Split Azure tests into 8 groups. 6 years ago
Nilashish Chakraborty 0f268e70a1
Fix ios_user issues (#44904)
* Fix ios_user issues

* Modify regex and fix unittests
6 years ago
Ubuntu 7d81de2516 updates to azure_rm_sqlfirewallrule
updates to azure_rm_sqlfirewallrule

small fixes

move sql client to common

adding state

fixed sample

fixed sanity

fixed aliases

removed unnecessary object

removed unused resource_group

changed group to less crowdy

tags

no tags on firewall rule
6 years ago
Yuwei Zhou b7d614df78 add auto scale module (#41533)
* add autoscale modules

* add test alias
6 years ago
Yunge Zhu f6fa5a11bb azure vm test: async second vm deletion (#44887)
* async second vm deletion

* fix typo

* random resource names, comment out disable steps

* fix syntax

* fix syntax error again

* fix test

* fix typo
6 years ago
Roman Belyakovsky 4f70eb3e26 ec2_vol_facts: moved to boto3 (#43348)
* ec2_vol_facts: moved to boto3

* vol_facts: formatting fixes

* vol_facts: formatting fixes

* vol_facts: added integration tests

* vol_facts: improved integration tests

* vol_facts: integration tests, fixed ami

* vol_facts: integration tests, fixed ami

* vol_facts: refactor, post-review update

* vol_facts: implemented pagination

* vol_facts: pep8 style fix

* CI IAM policy requirements fix

* Tests fixed, added to unsupported, removed empty files

* removed shippable alias
6 years ago
Zim Kalinowski 59a302152a added missing alias in container registry tests (#44936) 6 years ago
Richard Levenberg c759381b0b win_xml module for manipulating XML files on Windows (#26404)
documentation fixups

handling backup in a more ansible canonical way

remove quotes from $dest

Handle elements with only text child nodes
6 years ago
Sloane Hertel 113336d6f1 rds_instance module and tests (#43789)
* Add functions to retrieve the allowed and required parameters for boto3 client methods

* Add custom waiter for stopping an RDS DB instance

* Add rds_instance module

* Add rds_instance integration tests

* address requested changes from ryansb

* address requested changes from willthames

* address requested changes from dmsimard

* Fix final snapshots

Fix idempotence with already-deleting DB instances

Remove unused import from module_utils/aws/core.py

Consolidate function to get all boto3 client method parameters and the subset of required parameters

* Add some additional rds_instance integration tests

* Add some common functions to module_utils/aws/rds

* Move common code out of rds_instance

* Remove hardcoded engine choices and require the minimum boto3

* Document wait behavior

* Provide a list of valid engines in the error message if it is invalid

Add supported methods to whitelist

Remove AWSRetry around waiter

Wait for a less crazy amount of time

Remove unused variables

* Add a test for an invalid engine option

* pep8

* Missed adding a method to the whitelist

* Use retries

* Fix some little things

* Fix more things

* Improve error message

* Support creating cross-region read replicas

* Remove unused imports

* Add retry when getting RDS instance

* Soft-check required options so module fails properly when options are missing

* Fix mariadb parameter version

* Fix cross-region read_replica creation and tests

* fix modify tests

* Fix a modification test

* Fix typo

* Remove test for option_group_name that exists for this account but may not for others and added as a TODO to do properly
6 years ago
Dag Wieers dbe30cc050
win_wait_for_process: Fixes and integration tests (#44801)
* win_wait_for_process: Add integration tests

* Disable reporting changes

* Added more tests checking PID

* Various improvements

This PR includes:
- Use Get-Process instead of CIM Win32_Process
- Rewrite of process filter logic (speedup)
- Fix error messages
- Fixes to documentation, examples and return output

* win_wait_for_process: Limit to PowerShell 4 and higher

* Improve RESULT documentation

* Last minute fixes for CI

* Catch Powershell exceptions

* Increase timeout to make tests more stable
6 years ago
Will Thames ce110ff081 K8s retry merge (#44821)
* Make merge_type a list and apply merge_type in order

Allow use case of preferring strategic-merge and failing
back to merge, or just preferring a different merge type

* Improve k8s module test coverage
6 years ago
Matt Martz 2a4e92aab7
ensure if we get a non-Task object in _get_delegated_vars, we return early (#44934) 6 years ago
Matt Martz a0d7d4b82f Change insertion order of apply block to not affect the include_X task itself (#44912) 6 years ago
Matt Martz 9d89e15ff0
Ensure we only cache the loop when the task had a loop (#44901)
* Further restrict caching of loop when the task actually had a loop. Fixes #44874

* Extend tests for loop caching
6 years ago
Matt Clay 4b9c2cb97d
Prototype test for ansible-runner. (#44803)
* Prototype test for ansible-runner.

Based on https://github.com/ansible/ansible/pull/44746

* Limit test to RHEL 7 and CentOS 7.
6 years ago
yaakov kuperman 6b7ea5078f [aws] New module: elb_target_facts (#43565)
* initial source of the elb_target_facts module, which gathers all
registered ELBv2 target groups for a given instance id

* updating

* initial dump of tests

* updating docs, adding AWSRetry decorators

* updating tests

* More brush up, some refactoring

* updating for sanity tests

* removing extra space

* updating elb_target_facts to use a new name for the return value, not return a fact, and use instance variables for the AWS connections.  updating tests to go along with that

* updating classes to be 'new-style' classes
6 years ago
Will Thames 0c22c0cefb Add delete_on_termination to all EC2 root volumes (#44818)
Not terminating volumes on instance deletion causes
unwanted costs
6 years ago
Dag Wieers bf9ed0263a Ensure action plugins accept only valid args (#44779)
* Ensure action plugins accept only valid args

This fixes #25424
This also fixes #44773

* Add missing parameters, use private _VALID_ARGS
6 years ago
Zim Kalinowski bd866ed69a adding container registry facts (#43325) 6 years ago
Yunge Zhu b731732616 add azure_rm_webapp_facts module (#43631)
* add webapp facts module

* remove certified

* remove useless argument

* add tests

* return curated output

* add description of return value, move test to webapp folder

* fix lint

* fix lint

* fix lint

* fix test

* fix bug

* fix test, will get all webapp with same tag created by previous test

* fix test

* fix test

* fix test

* add properties description, refine return name

* refine properties, add request_id when exception

* fix bug

* update doc, add publish profile

* fix error

* flatten properties, add option for return publish profile
6 years ago
Zim Kalinowski 3b5b15ee5a
Adding azure_rm_virtualmachine_facts to azure_rm_virtualmachine test alias (#44881)
* add virtual machine facts to virtual machine test

* removed empty line
6 years ago
Hai Cao ccb7909cc5 [new module] Azure Traffic Manager profile module (#43812)
* add traffic manager client and models in azure_rm_common
- add traffic manager management client
- import traffic manager models to 'traffic_manager_models' proprety
- azure.mgmt.trafficmanager doesn't have models(), so use direct import
for now

* add traffic manager facts module

* add traffic manager module

* add integration test for two modules

* fix package info in requirements

* fix sanity check

* fix monitor config default value

* fix facts module doc

* move model import into module

* resolve comments except seprating endpoint

* remove endpoint operation

* fix test after removing endpoint operation

* change module name to azure_rm_trafficmanagerprofile/facts

* fix sanity test

* seperate endpoint into delegate module

* fix typo

* fix lint

* fix lint

* fix test

* fix test

* resolve comments

* fix test

* fix test

* fix test

* fix bug in return

* resolve comments

* fix lint

* fix lint

* add sample in endpoint module
6 years ago
Matt Clay 78bd020429 Remove obsolete `test/utils/docker/` directory. 6 years ago
Jasper Aorangi 2541a8c494 azure_rm_virtualmachine: Add 'accept_terms' for accepting terms when deploying paid marketplace images (#44701)
azure_rm_storageaccount: Add 'StandardSSD_LRS', and choices to correct unrelated sanity error
6 years ago
Anil Kumar Muraleedharan 4b2495a54c Lenovo integration test roles 1 (#44559)
* Integration test suit for cnos_facts, cnos_config, cnos_command, enos_facts, enos_config and enos_command.

* Update all_facts.yaml

* Update invalid_subset.yaml

* Update not_hardware.yaml

* Adding cnos_backup, cnos_bgp, cnos_conditional_command, cnos_condtional_template, cnos_ethernet, cnos_portchannel, cnos_rollback.

* Update README.md

* Adding the sample roles for cnos_save, cnos_show_run, cnos_template, cnos_vlag and cnos_vlan
6 years ago
Matt Clay cac51e6da8 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.
6 years ago
Adrien Fleury 4249c5ca7f New module : tower_credential_type (#37243)
* Add new module *tower_credential_type*

* Add support for credential type creation and/or deletion
* Add test coverage for tower_credential_type
6 years ago
Adrien Fleury aaa157f140 New module tower_workflow_template. (#37520)
* Add new module *tower_workflow_template*

Manage Tower workflows and their schemas.
6 years ago
Ganesh Nalawade eb9c75caad
Fix rollback option in cli_config module (#44834)
* Fix rollback option in cli_config module

* Update rollback flag in cliconf plugins
* Add rollback api for junos cliconf plugin

* Update doc

* Update doc
6 years ago
Jordan Borean 9d91607754
win_psexec: fix arg handling when command contains multiple args (#44797) 6 years ago
Yunge Zhu 2bd0a66c08 start/stop/restart azure webapp (#44498)
* add webapp start/stop/restart

* disable test with facts

* fix lint

* fix lint

* fix check mode

* rename power_action to app_state

* refine names of choices

* fix renaming bug
6 years ago
René Moser 8979af45a5
test: cs_template: fix missing cross_zone in tests (#44794) 6 years ago
Adam Miller 1e3b927a73 Improve error condition handling for dnf module (#44770)
- Fix comma separated list handling for package names
- Fix error message for unavailable/unknown package install attempt
- Fix pkg install result output generation

Signed-off-by: Adam Miller <admiller@redhat.com>
6 years ago
Jordan Borean 0c3216c565 win_reboot: fix minor issues with the latest refactor (#44740)
* win_reboot: fix minor issues with the latest refactor

* Always return elapsed with win_reboot
6 years ago
René Moser dd953dbe96
cs_template: implement update and revamp (#37015) 6 years ago
Michael Price 70fd1ec130 Define module for NetApp E-Series iSCSI targets (#40632)
Create a new module for managing E-Series iSCSI targets.
6 years ago
Michael Price 054b87acb8 Define module for managing E-Series email alerts (#42643)
Email alerts can be enabled for an E-Series system to provide
information to interested users by email when a warning or critical
level event occurs on the system. This module will allow a system owner
to configure whether or not system alerts are enabled, and who will
receive them.
6 years ago
Michael Price 97157cf876 New module for managing NetApp E-Series iSCSI Interfaces (#39877)
* New module for NTAP E-Series iSCSI Interfaces

Define a new module for configuring NetApp E-Series iSCSI interfaces.

* Improve netapp_e_iscsi_interface integration tests

Restructured integration test to set all iscsi ports to disabled, then
defines the ports either statically or with dhcp, next updates the ports
with the other definition type (static <-> dhcp), and lastly disables
all ports.  Each netapp_eseries_iscsi_interface call is verified with the
array.
6 years ago
Alex Stephen d38bccfc3e New GCP Module: gcp_compute_router (#42796) 6 years ago
Michael Price f781f341a2 Define NetApp E-Series ASUP module (#41153)
* Define NetApp E-Series ASUP module

ASUP, or Auto-Support, is a mechanism that allows NetApp support
to receive information on the status of E-Series storage-systems
in order to proactively resolve issues for customers. This module
gives customers the ability to tune ASUP settings to their liking,
including disabling the feature entirely.

* Improved testing for netapp_e_asup module

Added coverage and validation to asup integration and unit testing
6 years ago
Jasper Aorangi 56ea56f2b5 azure_rm_networkinterface: Feature/dns servers (#43588)
* Working through tests and fixing dumb mistakes

* Fix sanity issues and tests. All G

* Correct type test for azure_rm_networkinterface

* azure_rm_networkinterface correct type comparison

* Post rebase cleanup

* Remove erroneous reference to dns_servers
6 years ago
Alex Stephen 0972d37872 New GCP Module: gcp_spanner_database (#42799) 6 years ago
Alex Stephen 48de2cf214 New GCP Module: gcp_spanner_instance (#42800) 6 years ago
Alex Stephen 6d548d405b New GCP Module: gcp_sql_user (#42803) 6 years ago
Alex Stephen e9c9ccc561 Bug fixes for gcp_dns_resource_record_set (#42832) 6 years ago
Alex Stephen 473b6dbe8a New GCP Module: gcp_sql_instance (#42802) 6 years ago
Alex Stephen 26cf8fafb5 New GCP Module: gcp_sql_database (#42801) 6 years ago
Michael Price 1f2ae0d4cd Define a module for managing E-Series settings (#41010)
There are multiple settings that are defined at a global level for
E-Series systems, but don't necessarily fit with anything else. This
module is intended to provide a place to encapsulate those.
6 years ago
Abhijeet Kasurde fe8af27e5d
VMware: new module: vmware_host_ntp_facts (#44306)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
6 years ago
Yunge Zhu d5cbb53f5a fix linux webapp java framework bug (#44753)
* fix linux web app java linux_fx_version

* fix lint

* fix test

* resolve comments
6 years ago
Zim Kalinowski 289be02224 Revert "fix linux web app java linux_fx_version (#44715)" (#44750) 6 years ago
Yunge Zhu 661172ab40
fix linux web app java linux_fx_version (#44715) 6 years ago
jainnikhil30 884c74a6c5 Add 'tower_settings' module for managing Ansible Tower Settings (#43933)
* add the tower_settings module
6 years ago
Matt Clay 22d5f5d97f Get packages for dnf and yum tests from S3. 6 years ago
Matt Clay 83fd82ca7e Download hello package from S3 for apt test. 6 years ago
Adam Miller 397febd343 YUM4/DNF compatibility via yum action plugin (#44322)
* YUM4/DNF compatibility via yum action plugin

DNF does not natively support allow_downgrade as an option, instead
that is always the default (not configurable by the administrator)
so it had to be implemented

 - Fixed group actions in check mode to report correct changed state
 - Better error handling for depsolve and transaction errors in DNF
 - Fixed group action idempotent transactions
 - Add use_backend to yum module/action plugin
 - Fix dnf handling of autoremove (didn't used to work nor had a
   default value specified, now does work and matches default
   behavior of yum)
 - Enable installroot tests for yum4(dnf) integration testing, dnf
   backend now supports that
 - Switch from zip to bc for certain package install/remove test
   cases in yum integration tests. The dnf depsolver downgrades
   python when you uninstall zip which alters the test environment
   and we have no control over that.
 - Add changelog fragment
 - Return a pkg_mgr fact if it was not previously set.
6 years ago
Matthias Fuchs 7871027c9d Share the implementation of hashing for both vars_prompt and password_hash (#21215)
* Share the implementation of hashing for both vars_prompt and password_hash.
* vars_prompt with encrypt does not require passlib for the algorithms
  supported by crypt.
* Additional checks ensure that there is always a result.
  This works around issues in the crypt.crypt python function that returns
  None for algorithms it does not know.
  Some modules (like user module) interprets None as no password at all,
  which is misleading.
* The password_hash filter supports all parameters of passlib.
  This allows users to provide a rounds parameter, fixing #15326.
* password_hash is not restricted to the subset provided by crypt.crypt,
  fixing one half of #17266.
* Updated documentation fixes other half of #17266.
* password_hash does not hard-code the salt-length, which fixes bcrypt
  in connection with passlib.
  bcrypt requires a salt with length 22, which fixes #25347
* Salts are only generated by ansible when using crypt.crypt.
  Otherwise passlib generates them.
* Avoids deprecated functionality of passlib with newer library versions.
* When no rounds are specified for sha256/sha256_crypt and sha512/sha512_crypt
  always uses the default values used by crypt, i.e. 5000 rounds.
  Before when installed passlibs' defaults were used.
  passlib changes its defaults with newer library versions, leading to non
  idempotent behavior.

  NOTE: This will lead to the recalculation of existing hashes generated
        with passlib and without a rounds parameter.
        Yet henceforth the hashes will remain the same.
        No matter the installed passlib version.
        Making these hashes idempotent.

Fixes #15326
Fixes #17266
Fixes #25347 except bcrypt still uses 2a, instead of the suggested 2b.

* random_salt is solely handled by encrypt.py.
  There is no _random_salt function there anymore.
  Also the test moved to test_encrypt.py.
* Uses pytest.skip when passlib is not available, instead of a silent return.
* More checks are executed when passlib is not available.

* Moves tests that require passlib into their own test-function.

* Uses the six library to reraise the exception.

* Fixes integration test.

When no rounds are provided the defaults of crypt are used.
In that case the rounds are not part of the resulting MCF output.
6 years ago
Rafael ad993ca734 one_host environment variables, Fixes #44163 (#44568)
* including test case using environment variables as per issue #44163

* including missing environment variable in shared documentation fragement, related to issue #44163

* fixes parameters via environment variables, issue #44163
6 years ago
coreywan 50750c7363 Added nios_txt_record module (#39264)
* Added nios_txt_record module

Whitespace cleanup and version fix

First stab at txt record integration test

Fix for CI version requirement

Added nios_txt_record module

Whitespace cleanup and version fix

First stab at txt record integration test

Fix for CI version requirement

force re-run

* added alias for cloud group1
6 years ago
Shuang Wang b03feb6d40 Implement part of #27617 [expend checksum format to <algorithm>:(<checksum>|<url>)] (#43751)
* expend checksum format to <algorithm>:(<checksum>|<url>)

* continue to code at office

* ALPHA - expend checksum format to <algorithm>:(<checksum>|<url>)

* clean up tmpfile and comment

* try to add test code for 27617

* try to add test code for 27617

* try to add test code for 27617

* try to fix [Could not find or access 'testserver.py']

* fix test code [Could not find or access 'testserver.py']

* fix test code [add files dir]

* fix test code [files dir not exists]

* as [connection was closed before a valid response was received]

* [connection was closed before a valid response was received]

* [connection was closed before a valid response was received]

* add test item [sha1 and sha256]

* since [connection was closed before a valid response was received]

* fix [connection was closed before a valid response was received]

* fix test code typo

* add docs for #27617

* PR #43751 is minor change

* fix pep8 issue.

* fix test code style.

* fix unexpected quote
6 years ago
Michael Price ad91793428 Resolve issues in NetApp E-Series Host module (#39748)
* Resolve issues in NetApp E-Series Host module

The E-Series host module had some bugs relating to the update/creation
of host definitions when iSCSI initiators when included in the
configuration. This patch resolves this and other minor issues with
correctly detecting updates.

There were also several minor issues found that were causing issues with
truly idepotent updates/changes to the host definition.

This patch also provides some unit tests and integration tests to help
catch future issues in these areas.

fixes #28272

* Improve NetApp E-Series Host module testing

The NetApp E-Series Host module integration test lacked feature test
verification to verify the changes made to the storage array.

The NetApp E-Series rest api was used to verify host create, update, and
remove changes made to the NetApp E-Series storage arrays.
6 years ago
Trishna Guha 8b175d99c6
ignore file_pull (#44614)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
6 years ago
Abhijeet Kasurde 33f5b1aa0f
VMware: new module: vmware_local_role_facts (#44553)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
6 years ago
Matt Clay c2d16b754d Move azure_rm_appgateway certs into files.
This avoids ~20 minutes of runtime on the no-tests-as-filters sanity test.
6 years ago
Sam Doran 4d9218cec4 Add reboot action plugin (#35205)
* Update docs

* Add reboot action plugin

Refactor win_reboot so it is subclassed from reboot

* Use new connection methods

* Test fixes

* Use better uptime command for Linux

Use who -b to get the last time the system was booted rather than uptime, which changes every second.

* Use distribution specefic commands and flags

Query the managed node to determien its distribution, then set the appropriate command and flags.

* Tune debug messages a bit

* Update module docs with details about pre_reboot_delay

s docs

* Ensure that post_reboot_delay is a positive number

* Remove the stringification

* Add integration tests

* Make sure aliases are honored

* Handle systems that have an incorrect last boot time

SystemD and fakehw-clock do not properly set the
last boot time and instead always set it to epoch.
Use a different command if that is the case.

* Copyright and encoding fixes

* Minor fixes based on feedback

* Add exponential backoff to sucess check method

* Update integration test

Skip the integration test if it would try to reboot the control node. We need a new mechanism to account for this scenario in ansible-test, so tests must currently be run manually for this plugin.

* Update integration test

Skip the integration test if it would try to reboot the control node. We need a new mechanism to account for this scenario in ansible-test, so tests must currently be run manually for this plugin.

* Fail early with running with local connection

* Update docs based on feedback

* minor refactoring, state mgmt changes
6 years ago
Will Thames 60e3af42d5 sns_topic boto3 port (#39292)
* Port sns_topic to boto3 and add tests
6 years ago
Stephen SORRIAUX a78cc15099 Add new parameters to manage mtime and atime for file module, fixes #30226 (#43230)
* Add new parameters related to mtime and atime for file module, fixes #30226
6 years ago
Brian Coca 9cc56981b5
Add new host_pinned strategy (#44586)
The 'free' strategy still attempts to do all hosts per task before going to the next, it just doesn't wait for slow hosts,
This strategy processes each host as fast as possible to the end of the play before trying to process another host in the pool.
6 years ago
Sloane Hertel 79ecb4c41f
Add diff mode for ec2_group (#44533)
* Add (preview) diff mode support ec2_group

* Add diff mode to some ec2_group integration tests

* Remove unnecessary arguments and add comment to the module notes

* Add changelog
6 years ago
Sloane Hertel b152515fcb RDS inventory plugin (#41919)
Comments out uses of rds_instance in the integration tests and replace with AWS CLI until rds_instance has been merged
6 years ago
Dag Wieers 3d70274864
Added an async 'started' test (like 'finished') (#43445) 6 years ago
Matt Clay 18da873531 Ignore CentOS 6.10 for passwordstore test. 6 years ago
Felix Fontein 0e6234ab04 Adding module which allows to complete certificate chains (#44169)
* Adding certificate_complete_chain module.

* Avoid code smell errors.

* Removing input_chain_src.

* Make sure line ending is there.
6 years ago
Zim Kalinowski 1704c5932a adding app gateway module (#39940)
* adding app gateway module

* improved application gateway

* added register output

* subnet_output

* debugging

* dumping params

* fix dump

* fixed mapping

* fixed bug

* fixed param problem

* small fixes in code and added sample test

* fixed syntax

* fixing sanity stuff

* sanity fixes

* more sanity tests fixed

* added azure_tags

* tags

* pruning app gateway

* pruning app gateway

* string -> str

* removed type: str

* trying to add idempotency

* fixed syntax

* fix sanity

* fixed bugs

* fixed error

* disabled ssl policy check for  a while

* fixed dict comparison

* fixed syntax

* compare just http listeners & frontend ports

* fix syntax

* syntax

* syntax

* just compare sku

* fix syntax

* just http settings collections

* fixing appgw module

* make it green

* fix items issue

* compare all arrays

* fixed sanity

* adding snake_to_camel transformations

* fix

* another fix

* snake to camel

* additional snake to camel fixes

* fixed public ip address conversion

* version added is now 2.7

* changed alias

* dict_merge

* added ssl policy spec

* fixed new sanity issue

* renamed module

* fixed ssl policy translation

* added test for ssl & certificates

* updated doc

* fixed docs improved tests

* fix

* fixed test
6 years ago
Sam Doran df335d91b0
Properly un expire account on creation (#44174)
When creating a new account, check to see if the expiration parameter is negative and pass in the appropriate parameter. Since the negative integer passed into expires is converted to time.struct_time which in turn gets converted to a formatted time string when passed to the underlying command, a -1 or large negative number would result in passing a date before 1970-01-01 to the underlying command.

This had the opposite effect of creating an account with no expiration account resulting in a newly created account that was already expired, or just throwing an error on certain systems.
6 years ago
jctanner 653d9c0f87 New keyword: ignore_unreachable (#43857) 6 years ago
Pilou 2603604fd6 gather facts improvements (#44008)
* gather_subset is a list of strings

When gather_subset is an integer, a message pointing out the problem, current tb error 
is replaced by this one:

    ERROR! the field 'gather_subset' should be a list of (<class 'str'>,), but the item '42' is a <class 'int'>
...
* gathering_facts test: ensure smart gathering is on
6 years ago
Guillaume Delpierre 23e44319ce crypto: Add new module openssl_pkcs12 (#27320)
[module] Create new module to handle PKCS#12 file.
6 years ago
Ganesh Nalawade 7a4ed53d08
Fix junos cli_command integration test (#44558)
* Issue rollback command before exit from config
  mode
6 years ago
Zim Kalinowski 9788951789
Adding os_disk_size_gb parameter to Virtual Machine (#43316)
* added os disk size gb

* fixed mistake

* added os_disk_size_gb to test

* fixed test

* no default for disk size
6 years ago
Ryan Brown 4c8808ec9d
Extend `module_defaults` by adding default groups for cloud modules (#44127)
Extends `module_defaults` by adding a prefix to defaults `group/` which denotes a builtin list of modules. Initial groups are: `group/aws`, `group/azure`, and `group/gcp`
6 years ago
Yuwei Zhou fff5fb2077 Add route table and route module (#41175)
* add route module

* add test

* add table

* add  route table

* fix dict

* fix

* fix

* route  table accept no name

* add default

* fix

* fix

* fix

* fix pep

* support route table

* fix line ending

* fix pep

* fix

* fix

* set the default to 'None'

* make return value only id

* camel and snake

* set test alias

* change facts line ending

* change test

* fix

* add default

* fix

* fix line break

* remove unsafe args

* fix comment

* fix
6 years ago
Zim Kalinowski a73340ee74 adding postgresql server facts (#43328)
* adding postgresql server facts

* updating postgresql server facts, minor changes

* changed return dict to list

* fixed test

* fixed several issues

* several updates

* fixed naming

* list -> complex

* try again

* fixed mistake

* added user_visible_state to the result

* added fully_qualified_domain_name

* fixed second test

* updates

* fixed test

* updated samples in return value

* wait for postgresql server to be actually ready

* another approach for test

* second server was not created

* fixing pr comments

* fix sanity

* removed forgotten  ansible_facts
6 years ago
sdubrul 061877d584 added account_alias in the response of module aws_caller_facts (#42345)
* added account_alias in the response of module aws_caller_facts

* added comment to explain list_account_aliases

* renamed caller_identity to caller_facts as the content is extended

* created changelog

* security-policy needs the iam:ListAccountAliases for this module to work

* test now checks for the added field account_alias

* gracefully handle missing iam:ListAccountAliases permission
6 years ago
Felix Fontein 960d99a785 ACME: new helper module for ACME challenges which need TLS certs (#43756)
* Added helper module for generating ACME challenge certificates.

* Soft-fail on missing cryptography. Also check version.

* Adding integration test.

* Move acme_challenge_cert_helper from web_infrastructure to crypto/acme.

* Adjusting to draft-05.

* The cryptography branch has already been merged.
6 years ago
Felix Fontein ad0d10db0d ACME: improve tests (new Pebble version, strict mode) (#44518)
* Bump ACME test container version.

* Re-adding key rollover test.
6 years ago
Alex Stephen 261b90edc0 New GCP Module: gcp_compute_ssl_policy (#42797) 6 years ago
Alex Stephen 613a53c114 New GCP Module: gcp_compute_target_vpn_gateway (#42798) 6 years ago
Brian Coca bda074d34e
fix tempating issues with no_log and loops (#44468)
* fix tempating issues with no_log and loops

 - task is no log if any item is
 - added test cases

fixes #43294
6 years ago
Jordan Borean 6982dfc756 psrp: Added new Windows connection plugin (#41729)
* psrp: Added new Windows connection plugin

* Tweaks to connection options from review
6 years ago
Florian Apolloner 6cf341b40e Fixed hash_host option in known_hosts module. Fixes #44284 6 years ago
Matt Martz 2bf6507c44
Use newer is_sequence function instead of MutableSequence (#44331)
* Use newer is_sequence function instead of MutableSequence. Fixes #44327

* Add changelog for #44331

* Update changelog fragment to describe the fix in more detail
6 years ago
Ganesh Nalawade ce541454e9
Update netconf_config module (#44379)
Fixes #40650
Fixes #40245
Fixes #41541

*  Refactor netconf_config module as per proposal #104
*  Update netconf_config module metadata to core network supported
*  Refactor local connection to use persistent connection framework
   for backward compatibility
*  Update netconf connection plugin configuration varaibles (Fixes #40245)
*  Add support for optional lock feature to Fixes #41541
*  Add integration test for netconf_config module
*  Documentation update
* Move deprecated options in netconf_config module
6 years ago
Ryan Brown 91a16990d8 New module: Python Requirements Facts (#43108)
* New boto3_facts module

boto3_facts aims to help users see whether their python and module
versions are as expected.

* Rename to `assert_python_requirements`

* Update integration tests

* Document options

* fix imports

* boilerplate

* fix docs

* reorder import

* Make distutils optional and fail gracefully when it is not available

* fix example doc

* fix docs on requirements_facts
6 years ago
Matt Martz 617372f8c0
Mass nuke deprecated items that are easily removed. ci_complete (#44320) 6 years ago
Monty Taylor 27ac2fc67c Ensure that apt is always chosen on debian/ubuntu (#44413)
One can install alternate packages managers on debuntu machines.
However, doing so doesn't mean you want to suddenly start using them.

Add in a check similar to the fedora yum/dnf check that sets apt as the
pkg_mgr if the ansible_os_family is Debian.
6 years ago
Ryan Brown 6d52afeed6 New module cloudformation_stack_set (#41669)
* [AWS] new module cloudformation_stack_set with integration tests
6 years ago
Julien PRIGENT 3921f34253 ec2_instance.py: Add CpuOptions to EC2 (#43799)
* ec2_instance.py: Add CpuOptions to EC2

* ec2_instance_facts.py: Add CpuOptions to EC2 facts

* ec2_instance.py: LooseVersion and pylint indentation

* Implement nested cpu_options dict

* Fix botocore required version

* ec2_instance: Split integration tests to add executions with old botocore versions

* Ensure runme.sh is executable
6 years ago
Abhijeet Kasurde adf3ab5e72
VMware: Add cluster fact in vmware_vm_facts (#44292)
This fix adds an additional fact about cluster in VM facts.

Fixes: #44101

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
6 years ago
Fabian von Feilitzsch 519987d1b0 Revert "Disabled failing k8s integration test."
This reverts commit 9cc16ca9d8.
6 years ago
Matt Clay 9cc16ca9d8 Disabled failing k8s integration test. 6 years ago
Matt Martz 727beaf9f5 Fix invalid task attrs. ci_complete 6 years ago
Nathaniel Case b56639447f
Replace missing become: yes (#44312) 6 years ago
Alex Stephen 0c0fce7532 New GCP Module: gcp_compute_vpn_tunnel (#44051) 6 years ago
Zhikang Zhang 501503f4cb
Allow version specifiers for pip install (#41792)
Allow version specifiers for pip install.
6 years ago
Adam Miller 6d95624c22 Refactor yum and dnf, add feature parity (#43621)
* Refactor yum and dnf, add feature parity

Signed-off-by: Adam Miller <admiller@redhat.com>

* remove unnecessary module_utils, move the classes into the module code

Signed-off-by: Adam Miller <admiller@redhat.com>

* remove yum -> yum4, out of scope

Signed-off-by: Adam Miller <admiller@redhat.com>

* use ABCMeta

Signed-off-by: Adam Miller <admiller@redhat.com>

* re-arrange run() caller vs callee

Signed-off-by: Adam Miller <admiller@redhat.com>

* make sanity checks happy

Signed-off-by: Adam Miller <admiller@redhat.com>

* fix yum unit tests

Signed-off-by: Adam Miller <admiller@redhat.com>

* remove unecessary debug statements, fix typo

Signed-off-by: Adam Miller <admiller@redhat.com>

* fix licensing and attribution in yumdnf module_util

Signed-off-by: Adam Miller <admiller@redhat.com>

* include fix from PR 40737

original commit 5cbda9658a
original Author: Strahinja Kustudic <kustodian@gmail.com>

yum will fail on 'No space left on device', fixes #32791 (#40737)

During the installing of packages if yum runs out of free disk space,
some post install scripts could fail (like e.g. when the kernel
package generates initramfs), but yum would still exit with a status
0.  This is bad, especially for the kernel package, because it makes
it unable to boot.  Because the yum module is usually used for
automation, which means the users cannot read every message yum
prints, it's better that the yum module fails if it detects that
there is no free space on the disk.

Signed-off-by: Adam Miller <admiller@redhat.com>

* Revert "fix licensing and attribution in yumdnf module_util"

This reverts commit 59e11de5a2.

* move fetch_rpm_from_url out of yumdnf module_util

Signed-off-by: Adam Miller <admiller@redhat.com>

* fix the move of fetch_rpm_from_url

Signed-off-by: Adam Miller <admiller@redhat.com>
6 years ago
Zhikang Zhang d7921b4d5b
Support `--separate-git-dir` option in Git module (#41712)
Make git module support --separate-git-dir option. When git version is higher than 1.7.5, use built-in --separate-git-dir option during the clone. When lower, adjust the location of git dir manually after clone to achieve the same effect.
6 years ago
Felix Fontein a99cfc1814 New acme_account_facts module. (#44301) 6 years ago
Felix Fontein cfba02bc3b Allowing to force account URI. (#44282) 6 years ago
Abhijeet Kasurde 6caf0e8149
VMware: New module : vmware_host_ssl_facts (#43871)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
6 years ago
Zim Kalinowski 5f36c73fe5 adding mysql database facts (#43322) 6 years ago
Zim Kalinowski c8649f8b73 adding postgresql database facts (#43327) 6 years ago
Madhura-CSI 47cb3856b5 Support for accelerated networking and network security group for scaleset vms (#34788)
* Support for accelerated networking and network security group for scaleset vms
6 years ago
Nilashish Chakraborty d63ba5999b
Use single parameter for source-interface (#44260)
* Compress src interface into one key

* Modified regex to support varied interface types

* Fixed documentation

* Unpacking return values from splitting method
6 years ago
Yunge Zhu ee4b879328 remove unstable tag from azure tests (#44258) 6 years ago
Zim Kalinowski ac895828c1 adding mysqlserver facts (#43321) 6 years ago
Yunge Zhu aef5099695 add azure app service plan facts (#44156)
* add app service plan facts

* fix lint

* fix missed tags

* remove  azure_

* fix test random
6 years ago
Zim Kalinowski 0a9c58f866 adjusting curated response format, notification of raw format depreciation. (#43587) 6 years ago
Bjorn Hansen ff6d4e6bf4 azure_rm_common: only remove tags from new_tags if append_tags is not… (#24040) 6 years ago
Sam Doran 00e7c020b2 Add backup feature to user module (#41854)
*  Add backup option

* Only backup shadow file when the OS has one

* Only backup shadow file for SunOS

* Update docs on backup feature

* Add changelog fragment

* Add tests for shadow backup

* Remove backup option, make it automatic

Remove the option to enable/disable backups and make it automatic. Add note to docs describing this behavior.

Change tests to account for new module behavior.

Change section name in changelog fragment since minor_features is not a valid section.
6 years ago
Alex Stephen 63e87a3a0a Bug fixes for gcp_compute_route (#42820) 6 years ago
Alex Stephen f5f0d16516 Bug fixes for gcp_compute_subnetwork (#42822) 6 years ago
Alex Stephen 97b3845e89 Bug fixes for gcp_compute_url_map (#42828) 6 years ago
Alex Stephen 82678b9bac Bug fixes for gcp_pubsub_topic (#42834) 6 years ago
Alex Stephen 87c6d4be57 Bug fixes for gcp_storage_bucket (#42835) 6 years ago