Commit graph

3737 commits

Author SHA1 Message Date
Dave Bendit
fc558fb85f [docker_container] Adding support for mounts option (#49808)
* [WIP][docker_container] Adding support for `mounts` option

Fixes #42054

* Adjusting to current standards.

* Add changelog.

* Adjust types.

* Cleanup.

* Add idempotency checks for mounts.

* Improve diff for mounts.

* Linting.

* Python 2.6 compatibility.

* Fix error message formatting.

* Move mounts and volumes tests into own file.

* Add set of mount tests.

* Golang's omitempty for bool omits false values.

* Simplify sanity checks. Correct order of volume_options sanitization and usage.

* Fix key.

* Fix check.

* Add tests where both volumes and mounts show up.

* Add collision test.
2019-08-02 17:11:14 +02:00
Felix Fontein
a7573102bc
docker_container: fix port bindings with IPv6 addresses (#59715)
* Pass IPv6 addresses for port bindings without square brackets.

* Add changelog.

* Add test.
2019-08-02 17:10:39 +02:00
Ruediger Pluem
f94772f807 Only error out if the gid exists with a different group name (#59769)
Only error out if the gid exists with a different group name as
otherwise it will error out if the group with this gid already
exists, like on a rerun of the playbook. This fixes a regression
introduced by 4898b0a4a2.
2019-08-02 15:51:10 +02:00
Sumit Jaiswal
b847327645
Resource module for ios_interfaces and Facts Update (#59716)
* ios interfaces resource
2019-08-02 14:34:05 +05:30
Markus Bergholz
18aae0a02b add new module with integration tests to manage gitlab project variables (#56574)
* add new module with integration tests to manage gitlab project variables

* fix invalid yaml in DOCUMENTATION variable and don't import * from ansible module

* remove extends_documentation_fragment and put imports after DOCUMENTATION/EXAMPLES/RETURN/ANSIBLE_METADATA

* fix author in documentation and remove import from display

* add alias file for integration test

* split long lines and try to fix the author key

remove tailing whitespace

* replace email address with github username

* adding the at style to username

* add metaclass and future import

* add state variable to be able to delete selected variables

* add test with state = absent

* update documentation. scheme is necessary

* use singular in exmaple section

* use key purge instead of purge_vars

use purge instead of purge_vars also in the integration test

* create gitlab object in the ansible main function

* remove usedless .format

* follow best practice fail message

* add return documentation, return information about which variables were added, updated or removed and catch gitlab api auth error

* use module_utils.api with api_url and api_token

* use dict instead of list for vars

* use project name instead of name as playbook key

* add ansible checkmode_support, reduce variables in gitlab_project_variables class, remove wrong/duplicated HAS_GITLAB_PACKAGE check

* use extends_documentation_fragment and don't pop elements from basic_auth_argument_spec

* use just project_variable as output variable

* update mutually_exclusive as suggested

* re-add api_token documentation, because it is not included in api basic auth

* remove useless statement

remove unnecessary if

* add one test with a changing value

* put type at first position

* keep item to reduce api calls, build array and keep indexes by replacing with None instead of poping

* more asserts

* Update lib/ansible/modules/source_control/gitlab_project_variable.py

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

Update lib/ansible/modules/source_control/gitlab_project_variable.py

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

Update lib/ansible/modules/source_control/gitlab_project_variable.py

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

Update lib/ansible/modules/source_control/gitlab_project_variable.py

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

Update lib/ansible/modules/source_control/gitlab_project_variable.py

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

Update lib/ansible/modules/source_control/gitlab_project_variable.py

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

* remove unused return key from documentation

msg is only returned when failed

* Update lib/ansible/modules/source_control/gitlab_project_variable.py

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

* remove error key, because it is not returned

* change also documentation from purged_vars to purge

* Update lib/ansible/modules/source_control/gitlab_project_variable.py

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

Update lib/ansible/modules/source_control/gitlab_project_variable.py

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

Update test/integration/targets/gitlab_project_variable/tasks/main.yml

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

Update test/integration/targets/gitlab_project_variable/tasks/main.yml

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

* remove extra spaces

fix wrong spelling

* expand return value documentation with examples

* add check_mode test

reorder tests. first the check_mode test, later all other tests

* Update lib/ansible/modules/source_control/gitlab_project_variable.py

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

* fix existing keys in 'present' array

rework key handling (reduce code)

fix integration tests

use untouched instead of present to identify unchanged variable keys

fix wrong replacement

minor fixes on request

set aliases to unsupported, because the test succeed

remove posix group1 because it conflicts with unsupported

remove useless item from aliases

* rework gitlab connection
2019-08-02 09:08:37 +02:00
Jesse Evers
e410dcbfed Add logic to handle multiple actions in an ALB listener rule, Fixes #41861 (#41975)
* added logic to handle multiple actions in an ALB listener rule (#41861)

* fix linting and pep8 issues

* added test for multiple actions using OIDC authentication

* added error messages related to old versions of botocore and multiple actions

* fix action validation error checks (need to check the exception string)

* added logic to make oidc configs idempotent (remove clientsecret for check)

* modified TargetGroupName to TargetGroupArn substitution to account for multiple rule actions

* refactored tests so that it can be run against different versions of botocore

* fix runme.sh to refelct changes to cloud testsuite

* add UseExistingClientSecret to oidc config (AWS api change)

* remove tests for OIDC auth action; add tests for redirect and fixed-response

* add in fixes from markuman and mjmayer

* remove documentation for cognito integration (not sure how to test); added example config for fixed-response and redirect actions

* renamed oidc/multiple action tests; leaving commented due to some AWS API changes

* pep8 fix

* more pep8 fixes

* Restructure elb_application_lb test suite

Move from runme.sh to virtualenv based roles

Update policies to fix tests

Don't log temp dir deletion, so many files in the diff!
2019-08-02 10:40:53 +10:00
Sam Doran
bb1256ca9a Disable mongodb_shard and mongodb_replicaset tests
They are causing failures when run as part of the  entire group shippable/posix/group1/
2019-08-01 14:40:31 -07:00
dx0xm
c35b512413 vmware: new module vmware_dvs_portgroup_find (#59567)
* vmware: new module to find portgroup(s) based on different criteria
2019-08-01 14:52:51 +05:30
Mario Lenz
3aa73cb6b8 VMware: Refactor vmware_cluster into several modules (#58468)
Refactor vmware_cluster into several modules (vmware_cluster, vmware_cluster_drs, vmware_cluster_ha and vmware_cluster_vsan) as discussed in #58023.

vmware_cluster lacks a lot of configuration options for DRS, HA and vSAN. Implementing them
all in vmware_cluster would make the module hard to maintain. Therefore, splitting it into several
modules and implementing the missing configuration options in them seems a good idea to me.

This is step one, refactoring vmware_cluster into several modules. Step two, implementing more
configuration options for DRS, HA and vSAN, will follow.
2019-08-01 10:35:29 +02:00
Jordan Borean
349b2bdf43
Rebalance Windows CI groups based on recent delays to 2016 (#59838)
* Change to test out server 2016 CI issues

* ci_complete
2019-08-01 07:44:49 +10:00
Jordan Borean
093e2460b2
Windows testing - share code for creating a network device (#59847) 2019-08-01 07:43:31 +10:00
Rhys Campbell
dacfd72bd6 Integeration tests for mongodb_shard and mongodb_replicaset modules (#53900) 2019-07-31 12:45:21 -07:00
Nilashish Chakraborty
730fa78ca4
Add vyos_interfaces resource module (#58589)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2019-07-31 23:06:53 +05:30
Maciej Delmanowski
75be309242 Don't warn if local user is found in user database (#56838)
If the 'local' parameter of the 'user' Ansible module is enabled, and
the user has been found in the local user database, don't emit
a warning, because this is an expected outcome.

Add changelog and integration tests

Co-authored-by: drybed <drybjed@gmail.com>
2019-07-31 12:14:22 -04:00
Kevin Breit
b09fbc3bf3 New module - meraki_webhook (#57855)
* Initial commit for meraki_webhook

* Split integration tests into two files to avoid delegate_to
2019-07-31 11:31:16 -04:00
Kevin Breit
d105c205ef meraki_snmp - Add support for network SNMP settings (#57708)
* meraki_snmp module supports network SNMP settings
- Network SNMP settings were added to the API
- Parameters are different so it's a new data structure
- Full suite of integration tests
- Commit includes some cleanup as well

* Add reset task for SNMPv3
2019-07-31 11:29:57 -04:00
Kevin Breit
516b39b79a meraki_organization - Add deletion support (#59415)
* Add support for deleting organizations
- Still working on integration tests

* Update documentation and verify check mode works
2019-07-31 11:29:42 -04:00
Daniel Mellado Area
58a53fe0eb
Add junos_l3_interfaces (#59026) 2019-07-31 16:29:32 +02:00
Jill R
57e4312a36
Add metaclass-boilerplate to elb_target lamda test function (#59832)
* Add metaclass-boilerplate to elb_target lamda test function

This change makes elb_target pass after #59831
2019-07-30 17:40:24 -07:00
Markus Bergholz
196347ff32 ability to use lambda target in elb_target_group (#57394)
* enable elb_lambda_target test
2019-07-30 15:35:36 -07:00
Jordan Borean
652bfc7e19
win_template - use shared doc fragment for shared options (#59701)
* win_template - use shared doc fragment for shared options

* Change smart quote to em dash and fix whitespace issue
2019-07-31 08:05:24 +10:00
Sam Doran
691976c3d0
Fix podman_image integration tests (#59805)
Pin podman package at a specific version
2019-07-30 15:11:35 -04:00
Abhijeet Kasurde
2ebc4e1e7e inventory: Handle IndexError while parsing limit file (#59776)
Handle IndexError exception raised while parsing the limit file.

Fixes: #59695

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-07-30 13:02:17 -04:00
Gonéri Le Bouder
1ec155e773 vmware_guest: clone VM with attached CDROM
If a VM has an attached CDROM, `backing` attribute of the CDROM will
be defined.
As a result, we cannot just loop `vm_obj.config.hardware.device` and check
for the existance of the attribute to decide if the entry is a
harddrive.

Instead, we check the type of the device, and only keep the
`vim.vm.device.VirtualDisk` disk.

This issue is actually breaking our test-suite with regular environment
because we keep a Fedora ISO attached to the VM.
2019-07-30 14:09:07 +02:00
Lukas Kämmerling
5bddd2f04a Add hcloud_network module (#59366)
* Add hcloud_network module

* Apply suggestions from code review

Co-Authored-By: Matt Clay <matt@mystile.com>

* Add notice about dependency

* Adjust tests

* Apply suggestions from code review

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

* Allow changing of ip range

* Add Setup step
2019-07-30 14:00:33 +02:00
Abhijeet Kasurde
dbe618c084 podman_image: Disable unstable test
Disabling tests for podman_image until CI is green.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-07-30 11:43:03 +02:00
Sam Doran
19299f3310
Order data in xml integration test (#59742)
A recent update to lxml for Python >= 3.6 now preserves key order. Change the test input so the input is sorted, making tests pass on previous versions of lxml as well as the latest version.
2019-07-29 16:18:46 -04:00
Gonéri Le Bouder
93ea961205 vmware_guest: enable 3 extra tests
- network_with_dvpg
- network_with_portgroup.yml
- template_d1_c1_f0.yml
2019-07-29 15:28:52 +02:00
Tommy Brecher
4d775cbbf1 ec2_eip - added support for BYOIP and filtering reuse addresses by tag/value (#59180)
* change variable name from isinstance to is_instance (prevent overriding builtin function)

* Added support for:
  - Filtering existing Elastic IPs based on a tag name or it's value (when reuse_existing_ip_allowed is true)
  - Allocating new Elastic IPs from a given IPv4 pool (BYOIP support)

* yamllint corrections

* added examples for:
  -  tag_name,
  -  tag_value
  -  public_ipv4_pool

* remove aliases

* Added changelog fragment

* added integration tests for ec2_eip module

* removed space to trigger rebuild
2019-07-29 19:40:19 +10:00
Trishna Guha
6aaf0ea382
fix test typo nxos_lag_interfaces (#59710)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2019-07-29 12:40:23 +05:30
Paul Belanger
c562b53cb2 Fix nxos_facts integration tests (#59643)
This was incorrectly asserting the result of previous nxos_facts task.

Signed-off-by: Paul Belanger <pabelanger@redhat.com>
2019-07-29 12:05:35 +05:30
Tom Moore
a589cac18a Windows: new win_netbios module (#58331)
* Initial commit win_netbios module

* Ansibot sanity improvements.

* Corrected file permissions.

* Windows: module description update

* Adding integration tests

* Added missing alias file

* Improvements made to tests and WMI efficiency.

* Correction from sanity check failures

* Shippable corrections

* Moved reboot flag.

* Slight tweak to return value conditoin
2019-07-29 07:56:53 +10:00
Sorin Sbarnea
7c6fb57b7d Implements extra_hosts for docker_image module (#59540)
* Implements etc_hosts for docker_image module

Allows custom hosts on docker_image module.

The of this option made impossible to use docker_image module to build
images that required a custom hostname in /etc/hosts. For running
containers this option was already present.

While the python-docker API uses extra_hosts term, our existing module
already uses etc_hosts argument, so it sounds better to have some
consistency between docker_container and docker_image.

Fixes: #59233

* Update test/integration/targets/docker_image/files/EtcHostsDockerfile

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

* Update lib/ansible/modules/cloud/docker/docker_image.py

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

* Update changelogs/fragments/docker_image_etc_hosts.yml

Co-Authored-By: Felix Fontein <felix@fontein.de>
2019-07-26 16:39:21 -04:00
Andrey Klychkov
5b1a4f959a postgresql_set: improve CI tests (#59583) 2019-07-26 19:53:34 +02:00
Kevin Breit
3cdc667888 New module - meraki_mx_l7_firewall (#55485)
* Initial commit for meraki_mx_l7_firewall module

* Add argument checking

* Sanity fixes

* Fix crash and improve integration tests

* Improved integration tests and coverage

* Reformat response data
- Module does not match argument structure of API
- PR reformats the response to match Ansible arg spec
- Improved integration tests

* Fix reformatting for diffs

* Create rename_* functions
- is_update_required() ignores the key id
- Meraki expects one of the keys to be id
- Function temporarily renames key to appId to get around this

* Tweak documentation and tests
- Tests now do an include so each task doesn't need delegate_to

* Fix which files I'm editing
2019-07-26 11:43:28 -04:00
Kevin Breit
f8f3986871 New module - meraki_nat (#52889)
* Initial commit for meraki_nat module
- Query fully works
- Present is still very much in development

* Add initial code for present functionality, not complete

* Add request documentation

* Add examples and return documentation.

* Added payload to requests
- Module seems to need new idempotency check

* Allow 1:1 and 1:many NAT to work
- New idempotency check method is probably required to work

* Make all three options work
- Module isn't idempotent

* Diff support
- Added integration tests
- Diff support isn't quite done

* Fix diff output

* Enable idempotency assertion in tests

* Add test assertions for code coverage

* Update documentation and tests
- Split tests to separate file to avoid delegate_to

* Fix blank line
2019-07-26 11:42:36 -04:00
Kevin Breit
db783eb2b9 New module - meraki_firewalled_services (#57289)
* Initial commit for module
- Module can query or modify network services on Meraki gear
- Check mode supported
- Integration tests included

* Small change to examples

* Move mutual exclusive to build in approach

* Sanity err

* Split integration tests into two files to avoid delegate_to

* Add the integration tests, woops
2019-07-26 11:39:20 -04:00
Pilou
65013c4001 consul_session: ensure certificate is checked when HTTPS is used (#58693)
* consul_session: ensure SSL certificate is checked

* consul_session: don't ignore validate_certs param
2019-07-26 15:05:38 +02:00
Gonéri Le Bouder
8a821d57bd vmware_cluster_facts: fix the functional test
Fix the variable names.
2019-07-26 14:10:44 +02:00
Gonéri Le Bouder
964783fbd2 vmware_guest: speed up vmware_guest tests
- Use predictable VM name during the tests (test_vm1, test_vm2 and
  test_vm2). This to simplify the teardown of the newly created resource
  before the next test.
- Update the documentation to explain the new requirement
- Avoid VM creation with `with_items` when it's not mandatory. This to:
    - speed up the test execution, our hypervisors have limited resources
    - simplify the teardown
- Remove `create_d1_c1_f0_env.yml`, the test was just testing how Ansible
  pass environment variables.
- Correct the name for the `f0` variable (`f1`)
- Fix the DVS tests, the hosts can now reach the dvswitch1 vswitch
- Provision the VM with a poweroff status, this to improve the
  idempotency and sleep up the tests
- Avoid the use of `prepare_vmware_tests` to prepare virtual machines
  when we just need one machine
2019-07-26 14:07:01 +02:00
Nilashish Chakraborty
3da4c0dd3a
Update argspec to normalize across platforms (#59596)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2019-07-26 12:30:26 +05:30
Sam Doran
3ceeae0de9
Make docker swarm integration tests more reliable (#59473) 2019-07-25 12:49:30 -04:00
basos g
3c8838f0f7 Add check mode indicators at the beginning and the end of the playbook, play, and task (#49432)
* Add integration tests for default callback check mode markers
2019-07-25 12:05:43 -04:00
Will Thames
60c76be03c rds_instance: add point-in-time instance restore test (#59411) 2019-07-25 09:49:08 -04:00
Gonéri Le Bouder
ef59dd2ca2 vmware_guest_network: fix the network look up
Before this fix, the module was not able to look up a `VM Network` located at
`/DC0/network/VM Network`. As a consequence, the test module was failing
with a real environment (Non-govcsim).
2019-07-25 14:02:52 +02:00
Nilashish Chakraborty
f2b0bfd4aa
Add iosxr_lacp resource module (#59281)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2019-07-24 22:55:42 +05:30
Gonéri Le Bouder
fb96f0b8ae vmware_content_library_info: init the functional test
`vmware_content_library_info` functional test is currently broken because it
assumes the vCenter content library is not empty.
With this commit, the test inits the vCenter content library database using
`prepapre_vmware_tests`, this before the functional test execution.
2019-07-24 16:47:25 +02:00
Gonéri Le Bouder
47496098e7 vmware_dvs_portgroup_facts: test depends on a dvswitch
Creates the missing dvswitch that is used by the test.
2019-07-24 16:46:48 +02:00
Strahinja Kustudic
5fc769f6b1 sysctl - Reload also when current system values differ (#56153)
Previously if `sysctl_set=no` (which is the default) this module only
checked for changes in the sysctl.conf file to decide whether it should
reload it or not. This means that if the values in the conf file are the
same as they are set with the module, but the current values on the
system are different, that this module wouldn't apply the changes on the
system and thus the value set with the module wouldn't be applied on the
OS. This isn't obvious and it doesn't make sense that the module works
like that by default, especially because there is a separate option
`reload`. Now sysctl will also check if the current value differs on the
system and if it does, it will reload the file again.
2019-07-24 10:04:15 -04:00
Abhijeet Kasurde
401e70c0a2
VMware: add facts about tags in vmware_cluster_facts (#56848)
Fixes: #46458

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-07-24 15:45:15 +05:30