Commit graph

4356 commits

Author SHA1 Message Date
Felix Fontein
c54d79bc13
Extend docker_image tests. (#57090) 2019-06-01 15:29:00 +02:00
Abhijeet Kasurde
c8eda7773e
VMware: Update vmware_guest_powerstate (#57000)
* Updated documentation
* Updated testcases
* Updated example
* Updated logic
* Provided option to specify task name, task description, task enable status etc.

Fixes: #56987

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-06-01 08:10:05 +05:30
Felix Fontein
7cd229aa97
Fix assignments in docker tests. (#57249) 2019-05-31 23:47:53 +02:00
Matt Martz
8bd4e2a144 cert validation fixes - Attempt 2 (#55953)
* Attempt 2 of cert validation fixes

* Remove unused code

* Cleanup the tmp cert using atexit

* Fix linting issues

* Only add SSLValidationHandler when not HAS_SSLCONTEXT

* Catch value errors on non PEM certs

* Only catch NotImplementedError to avoid masking issues

* set self._context even with PyOpenSSLContext for conformity

* Fix error building

* normalize how we interact with the context we create

* Remove unused code

* Address test for py3.7 message difference

* open_url should pass the ca_path through

* Account for new error in url lookup test

* Guard some code behind whether or not we are validating certs

* Make _make_context public

* Move atexit.register up to where the tmp file is created
2019-05-31 16:35:25 -04:00
Rohit
ae033f1ec3
vyos interfacefix and test cases (#57169)
Signed-off-by: rohitthakur2590 <rohitthakur2590@outlook.com>
2019-05-31 16:13:40 +05:30
Sebastiaan Mannem
223f509ea3 Issue 56430 (#57147)
* Adding integration test for 127.0.0.1/32 and ::1/128.

* Making sure file is not corrupted when render fails

* Fixes #56430

* Adding changelog for MR 57147/Issue 56430
2019-05-31 12:32:28 +02:00
Will Thames
ac1895453f Add test case for k8s cascading deletes (#55987)
* Add test case for non-cascading deletes

Deleting a DaemonSet does not delete associated pods,
even though it should

* Add coverage module when using pip

Otherwise tests seemingly fail
2019-05-29 19:26:43 -04:00
Kevin Breit
5008e1d479 meraki_config_template - Enable check mode (#54502)
* Add support for check mode

* Check mode returns proper changed status
- Added is_template_valid()
- Restructured check_mode so it will always return data
- Check mode should show proper changed status
- Code is untested and integration tests need to be expanded

* Fix deleting networks
- Add integration tests for deleting networks
- Refine tests based on changed/unchanged

* Remove one task from integration test
2019-05-29 16:30:26 -04:00
Kevin Breit
4df53f869e meraki_network - Add support for disableRemoteStatusPage (#48971)
* Add support for disableRemoteStatusPage
- New feature in the Meraki API
- Yes, it's a double negative, I may fix at some point

* Remove double negative
- All disables became enable and logic is reversed
- This isn't yet tested

* Switching computers!!!

* Apply changes to make the logic work, even reversed

* Attempt to fix some formatting errors

* Add documentation fragment

* Fix whitespace

* Add disable_my_meraki back, with deprecation notice

* Edit changelog notice

* Update deprecation version

* Update example to be a block and change deprecation message.

* Remove duplicate delegate_to

* Change deprecation notice.
2019-05-29 16:29:40 -04:00
Ian Wienand
39945b8570 Make query with errors='ignore' return a blank list (#57038)
The jinja2 query() function (or lookup with wantslist=True, which is
the same thing) should always return a list.

However, if you combine a query with errors='ignore' and take the
error path, the current code returns a None value.  This is important
in a case such as

 - name: Conditional include file
   import_tasks: '{{ item }}'
   vars:
     params:
       files:
         - path/file1.yaml
         - path/file2.yaml
   loop: "{{ q('first_found', params, errors='ignore') }}"

If neither file1.yaml or file2.yaml exist, this should do nothing by
returning an empty list to the loop.  Currently if you run the above
task you'll get a rather unhelpful:

 Invalid data passed to 'loop', it requires a list, got this instead: .

This change ensures that when a query ignores an error, it returns a
empty list.  The errors='ignore' case is tested in several variants
with first_found.  The extant (but deprecated) "skip: True" for
first_found doesn't seem to be explicitly tested; a test is added here
to avoid regressions before removal in 2.12.

This fixes a regression you'll hit if you follow the suggestion in the
deprecation message included with
e17a2b502d to use errors=ignore over
"skip: True" for first_found.  This change adds an example that points
out the query/lookup difference and also fixes the error message to
not mention the now deprecated "skip: True".

Closes #56775
2019-05-29 13:23:02 -04:00
Kevin Breit
7864df8cb9 meraki - Rewrite update requirement check (#48394)
* Rewrite idempotency check
- Check now operates recursively and works on multiple types
- Order of lists matter

* Remove blank line for lint

* Fixed idempotency checks in meraki_ssid
- New sanitize() method for finding keys unique in compared dicts
- Fixed bug in meraki_ssid where SSID specified by number breaks
  - This will require a backport
- Converted ignored_keys from tuple to list

* Made changes required for idempotency

* Add changelog fragment

* Add unidirectional option for testing

* Disable option 1 check

* General fixes for is_update_required testing
- Added commented out debug statements in method
- Fixed ignored_keys modifications

* Remove old commented algorithm
2019-05-29 10:18:01 -04:00
Daniel Mellado Area
0ada6b8d8d Fix junos_facts test (#57065)
This commit fixes a non-passing junos_facts integration test, as it was
using a non-ordered frozenset to assert its result.
2019-05-28 20:25:45 -04:00
Nathaniel Case
1b66a13186
Fix flow in eos_l2_interface (#57059)
* Also fix test debug labels
2019-05-28 14:06:57 -04:00
The Magician
a837cc5694 Bug fixes for GCP modules (#55976) 2019-05-28 13:43:19 -04:00
The Magician
713ac29054 Bug fixes for GCP modules (#56689) 2019-05-28 13:42:12 -04:00
Paul Belanger
94e007ed77 ansible-test: use become for connection=local on ios_user (#56960)
ios_user requires escalated privledges, rather then doing this in the
inventory, we can just add it into the playbook tasks.

Also add missing provider settings for authorize.

Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2019-05-28 17:38:36 +05:30
Felix Fontein
d8dcd20294 docker_container: fix container creation with networks_cli_compatible=yes (#56687)
* Fix behavior.

* Add changelog.

* Add simple test to prevent #56620.
2019-05-28 03:19:52 -04:00
Andrey Klychkov
baac1df935 New module mysql_info - Gather information about MySQL servers (#55434)
* New module mysql_info: collect info about MySQL server instance

* mysql_info - CI tests

* mysql_info: fixes

* mysql_info: fixes Decimal

* mysql_info: fixes Decimal converters.py

* mysql_info: fixed err conn message and check_mode

* mysql_info: added decimal.Decimal to lib/ansible/parsing/ajson.py

* mysql_info: convert Decimal to float

* mysql_info: fix

* mysql_info: fix

* mysql_info: returned the args list as it was

* mysql_info: fix typo

* mysql_info: fixes

* mysql_info: removed aliases for login_db

* mysql_info: changed RETURN condition info

* mysql_info: fixed doc

* mysql_info: fixed role's parsing

* mysql_info: fixed role's parsing

* mysql_info: fixes

* mysql_info: fixed integration tests
2019-05-28 09:10:12 +02:00
Paul Belanger
89b73cb535
ios_ntp: Switch interface to GigabitEthernet0/1 for tests (#56964)
* ios_ntp: Switch interface to GigabitEthernet0/1 for tests

Lets use an interface we know that exists for testing, in some cases
Loopback0 maybe not be configured.

Signed-off-by: Paul Belanger <pabelanger@redhat.com>

* ios_ntp: properly register result variable for testing

This is currently broken, and tests don't work. Fix this by properly
registering the result variable.

Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2019-05-27 13:11:58 -04:00
Felix Fontein
7a0af34ba9
First batch _facts -> _info rename. (#56822) 2019-05-27 18:17:42 +02:00
Paul Belanger
4f8abde081 Fix syntax issue with ios_ntp tests (#56958)
This was missing a yaml anchor.

Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2019-05-27 19:51:07 +05:30
Lukas Kämmerling
7f08de6b6c hcloud_volume attach step should be idempotent (#56906) 2019-05-27 07:48:48 +02:00
Paul Belanger
d7f4f886f8 ansible-test: ios_command cli test should only be network_cli (#56955)
We do not support testing under ansible_connection=local

Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2019-05-27 10:04:02 +05:30
SirFerdek
6a50c6aae4 docker_network: Integration tests for IPAM config idempotence (#56975)
Integration tests for pull request #56901 which fixes found issues with idempotence.
2019-05-26 16:41:06 -04:00
Brian Coca
30210e7de0
added tests for log_plays (#56811)
* added tests for log_plays

* grep for warning

* Update tests to work with ansible-test.
2019-05-24 12:24:31 -04:00
Nathaniel Case
7834da41ff
Move eos l3 test IP addresses to documentation ranges (#56726) 2019-05-23 21:22:27 -04:00
Gonéri Le Bouder
6bb21c3db0 vmware: test-refactoring
- In order to keep the integration with `ansible-test`, we prefer to avoid any
  interaction with the Ansible inventory file.
- split up the prepare_vmware_tests/defaults/main.yml in two
  configuration files: one for vcsim and one for a real environment
- remove all the access to hostvars
- directly interact with the ESXi to mount/umount the datastore
  https://github.com/ansible/ansible/pull/56516
- record the virtual machine folder in the environment configuration
- vmware_guest_move: Use https://github.com/ansible/ansible/pull/55237
2019-05-23 17:40:19 -04:00
Gonéri Le Bouder
8cee127ee4 vmware_host_datastore: ability to target a ESXi
Until now, the module was only able to interact with vcenter. This
commit adds the ability to directly target an ESXi without the
`esxi_hostname` parameter.
2019-05-23 16:01:22 -04:00
Sam Doran
8f4f3750fe
Ensure uri module always returns status even on failure (#56240)
- Also return url and update docs for other values to indicate they are only returned on success.
- Add integration tests
- Use info variable for common return values
- Use -1 as default status rather than None. This is lines up with with existing code in urls.py
- Add unit tests to ensure status and url are returned on failure
2019-05-23 10:17:17 -04:00
Brian Coca
1da47bfa8c
Prevent vars premature templating (#56117)
Avoid premature vars templating
  * added tests
  * avoid 'is template' warning in vars, since we want them for latter templating
2019-05-23 09:42:19 -04:00
Abhijeet Kasurde
26d38dd642 VMware: Add folder param in vmware_datastore_cluster
* Make datacenter as alias and optional
* Add folder param to place datastore cluster in specific folder
* Updated examples
* Updated tests

Fixes: #48010

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-05-23 09:12:10 -04:00
Nathaniel Case
cebb363fcc eos_l2_interface handle "Interface does not exist" (#56787)
* Quick and dirty attempt to handle eapi error

* Well this should probably change

* Hopefully this works correctly?

* Fix check_rc handling with httpapi

* Add tests that should hopefully cover the error

* Fix warnings

* Improve tests
2019-05-23 17:02:46 +05:30
Jordan Borean
124400f319 win_get_url: ignore defender false positive in tests (#56812) 2019-05-22 23:16:47 -07:00
tknipper11
54aa6f3921 ACI CDP Interface Policy Module Creation (#54818)
* initial commit

* Fix typo in integration test which caused an assertion to fail

* Updated integration testing

* Fix Ansible Sanity Errors

* Changed version added to 2.8 from 2.9

* added from __future__ import absolute_import, division, print_function
__metaclass__ = type
2019-05-23 00:47:44 +02:00
Yunge Zhu
831d3c7b62 add azure_rm_keyvault_info (#55497) 2019-05-23 03:39:37 +08:00
Brian Coca
69b2d7e0f3 fix collection adjacent loading with --playbook-dir (#56194)
* added inventory adjacent test
2019-05-22 11:06:54 -04:00
Dag Wieers
4f89c1d508
Revert "ACI: Implement encoded query_string" (#56783)
This reverts commit 1690af04fe42c657cbf0092d18c86bb517fe86a7.
2019-05-22 15:44:22 +02:00
Abhijeet Kasurde
459776eb82
VMware: Add folder option for vmware_dvswitch (#56707)
* Added folder param
* Mark datacenter as optional parameter
* Updated docs
* Updated tests

Fixes: #54986

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-05-22 11:40:09 +05:30
Will Thames
4065692e13 k8s minor bug fixes (#56168)
Ensure `wait_condition`s with `Status: Unknown` actually
complete

Return k8s object after wait rather than k8s object before
wait when object is patched.
2019-05-22 08:08:22 +02:00
Martin Krizek
77f997474a yum: use Custom Group in integration tests (#56439) 2019-05-21 11:32:36 -04:00
Jakob Ackermann
3b4b2e5021 [docker] support the lookup of images by digest (#56649)
* [docker] images: add support for lookup by sha256 digest

Signed-off-by: Jakob Ackermann <das7pad@outlook.com>

* [tests] docker image by digest: work on a minimal test case

Signed-off-by: Jakob Ackermann <das7pad@outlook.com>

* [docker] group branch conditions per lookup

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

* [misc] add a news fragment for the added digest lookup for docker images

Signed-off-by: Jakob Ackermann <das7pad@outlook.com>
2019-05-21 02:54:05 -04:00
Will Thames
8e1dd58c2b Allow python_requirements_facts to cope with packages with dashes (#56166)
* Allow python_requirements_facts to cope with packages with dashes

```
python_requirements_facts:
  dependencies:
    - kubernetes-validate
```

should work as expected

* Ensure tests run for python_requirements_facts
2019-05-20 23:38:50 -04:00
The Magician
b712b01f6e Bug fixes for GCP modules (#55973) 2019-05-20 14:44:29 -04:00
The Magician
8d82df56ff Bug fixes for GCP modules (#55974) 2019-05-20 14:44:14 -04:00
The Magician
d4b29e7838 Bug fixes for GCP modules (#55975) 2019-05-20 14:43:57 -04:00
The Magician
e598eeeebe Bug fixes for GCP modules (#55977) 2019-05-20 14:43:37 -04:00
Zim Kalinowski
b37ae35ba0 azure_rm_azurefirewall (#56359)
* azure_rm_azurefirewall

* a few updates

* fixed mistake

* updated docs, fixed syntax

* updated priority

* use checkmode for idempotence test, as it's very long

* fix check mode
2019-05-20 10:38:55 -07:00
Matt Clay
470371d009 Remove unused cloud config files.
These files have no associated cloud config plugin for ansible-test.
2019-05-17 12:21:52 -07:00
Matt Martz
576593e175
Whitelist listen as a valid keyword on TaskInclude (#56586)
* Whitelist listen as a valid keyword on TaskInclude. Fixes #56580

* Move 'listen' to HandlerTaskInclude

* Remove trailing newline
2019-05-17 12:52:39 -05:00
Nathaniel Case
63e33f7e71
Fix eos_l2_interface idempotency (#56531)
* Attempt to handle just mode trunk properly

* Add test for trunk-only config and clean up tests

* Add missing eapi tests and remove references to provider as we do not test local
2019-05-17 13:06:27 -04:00