Commit graph

4937 commits

Author SHA1 Message Date
Andrey Klychkov
d8109550ec mysql_replication: setup a later version of MariaDB (#62993) 2019-10-01 08:29:40 +02:00
Nilashish Chakraborty
67213ccb4d
Fix traceback for empty config (#62520)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2019-09-30 20:37:28 +05:30
Rene Moser
6370c63efc lookup: lmdb_kv: add tests 2019-09-30 11:00:00 +02:00
Felix Fontein
62c0cae29a
docker_container: fix idempotency for network IP addresses (#62928)
* Specifying IP addresses needs API version 1.22 or newer.

* Simplify code.

* Use IPAMConfig.IPv*Address instead of IPAddress and GlobalIPv6Address.

* Add changelog.

* Fix syntax errors.

* Add integration test.

* Don't rely on netaddr.

* Normalize IPv6 addresses before comparison.

* Install netaddr, and use it.
2019-09-30 10:47:02 +02:00
Felix Fontein
a79f7e575a
docker_image and docker_login: move tests needing a registry into own target, add tests for docker_login (#62721)
* Move tests with docker registry into own target.

* Add docker_login tests.

* Add step which makes sure hello-world:latest is around.

* Make work inside docker container.

* Add dependency.

* Use plaintext password.

* Forgot check_mode.

* Add no_log to avoid double log output in verbose mode.
2019-09-30 06:09:00 +02:00
psharkey
ee91714eb2 New module: Add module to collect Amazon AWS IAM user info (cloud/amazon/iam_user_info) (#23382)
* AWS: new module iam_user_info

Signed-off-by: psharkey <psharkey@cleo.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>

Rename from iam_user_facts to iam_user_info.

Rename and target 2.10.

Fixing docs.

* Adding iam_user_info integration test.

Removing unnecessary tasks.

Fixing yamllint failure test/integration/targets/iam_user_info/defaults/main.yml:5:1: empty-lines: too many blank lines (1 > 0).

* name paramter is optional

* Switch to use AnsibleAWSModule.

* Convert to using fail_json_aws

* Rework asserts to inspect ARN.

* Move integration tests from iam_user_info to iam_user.

* Fix pep8 problems.

* ec2_argument_spec not needed with AnsibleAWSModule.

* Switch to use helper in AnsibleAWSModule.

* Add iam_user_info to the aws group.

* Add support for pagination and backoff.

* Check improper parameter usage first.

* Adding test cases for multiple users.

* Rmoving unneeded line.

* Remove unneeded imports.

* Switch to catch BotoCoreError.

* Adding tests for exception coverage.

* Compare user info directly with values from created user.
2019-09-28 22:00:59 +10:00
Andrey Klychkov
334d2ce764 mysql_replication: add CI tests for MariaDB (#62907) 2019-09-27 09:29:34 -04:00
Pilou
3c8abc0b82 cron: add integration tests (#59830)
* cron: add integration tests

Use faketime in order to reduce waiting time. Using opensuse15
container:

    Tuesday 30 July 2019  23:03:19 +0000 (0:00:05.410)       0:01:28.291 **********
    ===============================================================================
    cron : install cron and faketime packages ------------------------------ 78.65s
    cron : wait 70 seconds max ---------------------------------------------- 5.41s
    Gathering Facts --------------------------------------------------------- 0.97s
    cron : enable cron service ---------------------------------------------- 0.72s
    cron : Use faketime with cron service ----------------------------------- 0.71s
    cron : command ---------------------------------------------------------- 0.41s
    cron : create directory for cron drop-in file --------------------------- 0.41s
    cron : add cron task ---------------------------------------------------- 0.40s
    cron : command ---------------------------------------------------------- 0.25s
    cron : command ---------------------------------------------------------- 0.25s
    cron : include_vars ----------------------------------------------------- 0.06s

* cron test, simplify: use Environment instead ExecStart

Thanks to mscherer for the suggestion.

* clean up comment: remove reference to outdated path

$OUTPUT_DIR is a plain path which doesn't reference any other
environment variables

* cron test: display elapsed time

* cron test: display some logs in case of failure

* cron test: handle FreeBSD

* cron tests: add checks
2019-09-26 21:50:54 +02:00
Andrey Klychkov
5b1c047a56 postgresql: move CI test to separate targets (#62855) 2019-09-26 05:53:13 -04:00
Andrey Klychkov
53ba3c46cc postgresql: move CI test to separate targets (#62823) 2019-09-25 09:03:48 -04:00
Varun Chopra
3b409f2f50 win_format - Add allocation_unit_size (#56966)
* Fix allocation_unit_size

* Some final changes and added tests

* Cleanup...

* Fixes issues on 2012/R2

* Update tests for 2012/R2

* Suggested changes
2019-09-25 08:58:30 -04:00
Jordan Borean
322e225830
Fix issue when setting an empty pass to no_log param (#62804)
* Fix issue when setting an empty pass to no_log param

* Fix typo
2019-09-24 21:45:53 -04:00
Andrey Klychkov
6be46b59fa postgresql: move CI tests to separate targets (#62773) 2019-09-24 10:42:08 +02:00
Pilou
278398555d package_facts: check 'vital' and 'automated' values ('pkg' manager) (#62766) 2019-09-24 10:03:56 +02:00
Andrey Klychkov
0530a08b67 postgresql: move CI tests to separate targets (#62732) 2019-09-23 04:28:52 -04:00
Mark Chappell
0239f70648 cloudtrail: Initial integration tests (#61919) 2019-09-20 18:46:37 -07:00
Mark Chappell
40660e7f6e iam_role : support managing max session duration and deleting the instance profile it creates (#62014)
* iam_role: Add support for managing MaxSessionDuration

* iam_role: Add support for deleting the IAM Instance Profiles we created

* iam_role: migrate all boto failures to fail_json_aws for consistency

* iam_role: test validity of path so we can throw a more understandable error

* iam_role: (integration tests) Split iam_role integration tests from sts_assume_role tests

- Make the iam_role tests more comprehensive
- Add tests for iam_role_info

* iam_role: (integration tests) Make some of our pauses optional

If the tests appear to be flakey we may need to enable standard_pauses
2019-09-20 13:26:29 -07:00
Sam Doran
987265a6ef
Account for empty strings when splitting the host pattern (#62442)
Improve tests
- add more unit test cases
- add specific integration test with more cases

Testing shows no major downside to calling .strip() twice in a comprehension vs. using a regular for loop and only calling .strip() once. Going with the comprehension for ease of maintenance and because comprehensions are optimized in CPython.
2019-09-20 16:03:51 -04:00
Gonéri Le Bouder
5ecbe9cbbb vcenter provider: Only rely on VMWARE_TEST_PLATFORM
Until now, the vcenter provider was switching between `static` and
`govcsim` depending on the presence of the following configuration file:
`test/integration/cloud-config-vcenter.ini`.

This was not consistent with Worldstream, which we enable with the
`VMWARE_TEST_PLATFORM` environment variable.

We now only rely on `VMWARE_TEST_PLATFORM` to know which platform should be
used. `govcsim` is still the default, this to preserve the original
behaviour.

This commit also rename the following variables to be consistent with the rest
of the code base. It also ensures they are alway defined, even with `govcsim`:

- `VCENTER_HOSTNAME`
- `VCENTER_USERNAME`
- `VCENTER_PASSWORD`
2019-09-20 10:33:44 -04:00
Andrey Klychkov
be9bf8cd15 postgresql: move CI test of *_publication, *_ext, *_slot to separate targets (#62646) 2019-09-20 12:47:13 +01:00
Gonéri Le Bouder
cee55ab718 mongodb_replicaset/test: properly kill the nodes
The `pids` module returns the list of the PID in a `pids` key.

This change ensures we correctly wait for the end of the previous mongod
instances before we start the next ones.

In addition, we remove an unnecessary `ignore_errors`.
2019-09-19 17:19:48 -04:00
Andrey Klychkov
7b3d8431dd postgresql: move CI tests of *_tablespace, *_membership, *_idx to separate targets (#62575)
* postgresql: move CI tests of *_tablespace, *_membership, *_idx to separate targets

* postgresql: move CI tests of *_tablespace, *_membership, *_idx to separate targets, change formatting
2019-09-19 14:57:45 +01:00
Sumit Jaiswal
35463d45f4
Fix traceback empty config error to meaningful msg for IOS (#62538)
* fix empty config msg

* fix space

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>
2019-09-19 10:13:36 +05:30
Zim Kalinowski
054519920e
snapshot fix for backporting (#62559) 2019-09-19 11:42:08 +08:00
Will Thames
a684bb9f5b Ensure k8s apply works with check mode (#60572)
* Ensure k8s apply works with check mode

Update the new predicted object with fields from the previous object
before applying in check mode

Don't log output of `file` with `state: absent` on huge virtualenvs!

Fixes #60510

* Use openshift client fix to improve apply for check mode

Use new apply_object method to get a better approximation
of the expected object in check mode.

Requires released upgrade to openshift

* Add changelog fragment for k8s apply check mode fix

* Update changelogs/fragments/60510-k8s-apply-check-mode.yml

Co-Authored-By: Felix Fontein <felix@fontein.de>
2019-09-19 05:30:31 +02:00
Rohit
978def38d8
error message updated (#62536)
* error message updated

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>

* test cases updated

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>

* error message updated

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>
2019-09-19 08:34:31 +05:30
Matt Clay
1c64dba3c9 Fix plugin names for collection plugins. (#60317)
* Fix plugin names for collection plugins.

Add an integration test to verify plugin __name__ is correct for collection plugins.

* Fix collection loader PEP 302 compliance.

The `find_module` function now returns `None` if the module cannot be found. Previously it would return `self` for modules which did not exist.

Returning a loader from `find_module` which cannot find the module will result in import errors on Python 2.x when using implicit relative imports.

* add changelog

* sanity/units/merge fixes
2019-09-18 17:47:56 -07:00
Rohit
b24f7d2800
vyosnoconfig tracebackfix (#62518)
* vyosnoconfig tracebackfix

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>

* vyos noconfig tracebackfix test cases added

Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>

* test/integration/targets/vyos_lldp_global/tests/cli/empty_config.yaml
2019-09-18 21:58:39 +05:30
Andrey Klychkov
b87b359df5 postgresql: move CI tests of *_owner, *_info, *_ping, *_query to separate targets (#62500) 2019-09-18 14:22:13 +01:00
Lukas Kämmerling
d5449eed11 tests: hcloud: Enable hcloud_floating_ip_info tests (#62494) 2019-09-18 13:55:05 +02:00
Mike Wiebe
97b15e9f0c [stable-2.9] Stabilize nxos initiated copy for nxos_file_copy plugin (#62355)
* Retry spawn connection on failure

* Add debug logs

* Additional debug logs

* Close session before respawn attempt

* More debug info and increase loops

* Remove debug info and reset error dict on reconnect

* Add epdb debuger

* Add epdb debuger

* Add epdb debuger

* Wait before sending password and close pexpect session

* Fix comment typo

* Scrub error logs

* Scrub error logs

* Add more specific initial connect pattern

* Fix shippable errors

* Dont make remote_scp_server_password a hard requirement

* Add saftey check
2019-09-18 17:07:50 +05:30
Lukas Kämmerling
fd7e156ccd Add hcloud_floating_ip module (#62409) 2019-09-18 11:26:53 +02:00
Matt Clay
3b86dc3e12
WIP - Fix ansible-doc bugs and add integration tests. (#62461)
* Add integration tests for ansible-doc.

* Enable tests that now pass

* Cleanup processing of plugin docs

* Mostly separate the steps of processing plugin docs

  1) Acquire source data
  2) Transform and calculate additonal data
  3) Format data for output
  4) Output data

  format_plugin_doc() is still mixing transformation and formatting but
  that should be fixed in a devel-only change

* Raise exceptions in _get_plugin_doc() on errors.

* Remove check to exclude on blacklisted extensions.  We already request
  only .py files

* If there is no DOCUMENTATION entry in the plugin, raise an exception
  from _get_plugin_doc().  Everywhere we use _get_plugin_doc(), this is
  treated as an error

* If there is no ANSIBLE_METADATA raise an exception as well as
  displaying of docs assumes that this has been set.

* If there is neither DOCUMENTATION nor ANSIBLE_METADATA, warn about the
  lack of METADATA and error on the lack of DOCUMENTATION.  Lack of
  DOCUMENTATION is more important so it is what the user should see.

* Add a few special cases for backwards compat.  These should probably
  be made errors in 2.10:
  * no docs but has metadata shows no documentation rather than an error
  * empty plugin file shows no doumentation rather than an error

* Simplify backwards compatibility logic.
2019-09-17 15:45:30 -07:00
Gonéri Le Bouder
459677877a hcloud_networ_info: be more resilient is network already exists
We may already have an existing network or subnet. This commit ensures
we don't raise an error in this case.
e.g: https://app.shippable.com/github/ansible/ansible/runs/143559/145/tests
2019-09-17 16:20:38 -04:00
Gonéri Le Bouder
edf15b346f test: disable hcloud_floating_ip_info
Temporarily disable `hcloud_floating_ip_info`, this until #62414 is
resolved.
2019-09-17 13:19:40 -04:00
Sumit Jaiswal
9addad0f4a
fix ios_lldp_global (#62420) 2019-09-17 22:11:20 +05:30
Andrey Klychkov
98415dec86 postgresql_copy: move ci tests to a separate target (#62398) 2019-09-17 13:32:45 +01:00
Mike Wiebe
b0668e17ed nxos_telemetry replaced state (#62368) 2019-09-17 16:49:30 +05:30
krisvasudevan
8bc397c229 Bug fixes to the Infoblox NIOS modules (#58521)
* Update nios_ptr_record to fix bug #58378

* Update to api.py to fix bug #58378 and #56856

* Update test_nios_ptr_record.py to fix bug #58378

* Update nios_ptr_record_idempotence.yml to fix bug #58378

*  Update test_nios_ptr_record.py to fix bug ansible#58378
2019-09-17 09:45:50 +05:30
Gonéri Le Bouder
6d8743d5f1 test: temp disable azure_rm_azurefirewall
Disabled `azure_rm_azurefirewall` until #62307 is fixed.
2019-09-16 21:24:30 -04:00
Ganesh Nalawade
a9a5f4e40d
Change enable to enabled for junos_interfaces module (#62321)
Fixes #62319

Change `enable` option to `enabled` in junos_interfaces
and junos_lldp_interfaces
data model to be in sync with other network platform
resource modules added in 2.9 version.
2019-09-16 12:17:27 +05:30
Shachaf92
74a3eec1d9 win_format - Idem not working if file exist but same fs (#59819)
* win_format - Idem not working if file exist but same fs

* Test fix

* Fix test assertion syntax

* Update tests.yml
2019-09-15 22:45:44 -04:00
Chris Trufan
14bccef2c2 Add ecs_domain module (#62007)
* Add ecs_domain module

* Fixes to integration tests and module

* Fixes to tests and module

* Corrections to revalidation behavior, cna only revalidate domains in expiring.

* Remove debugs for final test run, fix sanity check test fails.

* Add checks for domain status

* Add changelog fragment for new module.

* Removed extra space in backtick

* Minor fixes to make behavior more consistent and correct documentation.

* Update lib/ansible/modules/crypto/entrust/ecs_domain.py

Co-Authored-By: Felix Fontein <felix@fontein.de>

* Update lib/ansible/modules/crypto/entrust/ecs_domain.py

Co-Authored-By: Felix Fontein <felix@fontein.de>

* Update lib/ansible/modules/crypto/entrust/ecs_domain.py

Co-Authored-By: Felix Fontein <felix@fontein.de>

* Apply suggestions from code review

Co-Authored-By: Felix Fontein <felix@fontein.de>

* Change casing of verification method enum, remove redundant changelog fragment

* Return ov_eligible and ev_eligible fields even if false, as long as they're returned by ECS API
2019-09-14 19:33:48 +02:00
Gonéri Le Bouder
2421ad3e87 azure: re-balance tests to avoid timeout
- azure_rm_azurefirewall currently takes more than 25m to run: #62307
- azure_rm_manageddisk takes around 2 minutes
2019-09-13 18:19:01 -04:00
Matt Martz
7d51cac330 Don't treat no checksum as a checksum match (#62146)
Fixes #61978
* moar tests for get_url fetch behavior with existing file
* add changelog fragment
2019-09-13 13:24:15 -04:00
Felix Fontein
098a13dff4 Re-enable some docker_swarm tests. (#61875) 2019-09-13 12:08:45 -04:00
Nathaniel Case
7917d4def7
Standardize eos resource modules (#61736)
* Fix eos_l3_interfaces case sensitivity

* Unify EOS module notes

* Add normalize_interfaces to eos_l2_interfaces

* Pull normalize_interface into eos_interfaces

* Add normalize_interface to lag_interfaces

* Add normalize_interface to lldp_interfaces

* Add normalize_interface to lacp_interfaces

* more module cleanup

* Add changelog
2019-09-13 09:35:50 -04:00
Ganesh Nalawade
200ed25648
Fix for junos cli_config replace option (#62131)
* Fix for junos cli_config replace option

*  For device that support replace option by loading
   configuration from a file on device `config` option
   is not required and value of `replace` option is the
   path of configuration file on device. This fix allows
   invoking run() function in cli_config if `config` option
   is None and `replace` option is not boolean

*  The command to replace running config on junos device
   is `load override <filename>` and not `load replace <filename>`
   This is fixed in the junos cliconf plugin.

* Add integration test
2019-09-13 18:52:33 +05:30
Sloane Hertel
efdf52a254
remove undefined YAML anchor (#62273) 2019-09-13 08:50:42 -04:00
Jeff Geerling
a6ec6c3175 Fixes #56832: Remove warning when falling back to apt-get if aptitude is missing. (#61782) 2019-09-12 15:29:36 -04:00