Commit graph

3064 commits

Author SHA1 Message Date
Jordan Borean
aab1f30906
group - fix explicit git scenario (#52769)
* group - fix explicit git scenario

* Use str for simplicity and remove changelog

* dynamically get gid and remove Jinja2 check
2019-02-22 12:40:42 +10:00
Jordan Borean
63c22f6eb0
test - add Python 3 package for OpenSUSE in setup_openssl (#52775) 2019-02-22 10:48:18 +10:00
Rafael Driutti
c68838fb13 AWS Redshift: port module to boto3 and fix parameters check (#37052)
* fix parameters check and port module to boto3

* begin with integration tests

* allow redshift iam policy

* Wait for cluster to be created before moving on to delete it

* Allow sts credentials so this can be run in CI

Don't log credentials

ensure cluster can be removed

* - Replace DIY waiters with boto3 waiters
- test multi node cluster

* catch specific boto3 error codes

* remove wait from test

* add missing alias for shippable

* - Rework modify function.
- Default unavailable parameters to none.
- Add cluster modify test

* Ensure resources are cleaned up if tests fail

* Ensure all botocore ClientError and BotoCoreError exceptions are handled
2019-02-21 17:04:42 -06:00
Jordan Borean
5e3e0eb946
fix filesystem tests on OpenSUSE 15+ (#52716) 2019-02-22 08:15:12 +10:00
Hannes Ljungberg
dd4b4aa941 docker_swarm_service: Add stop_grace_period option (#52519)
* Add stop_grace_period option

* Add changelog fragment

* Move doc type to last

* Add version_added
2019-02-21 20:12:13 +00:00
Abhijeet Kasurde
1b3cde353d osx_defaults: refactor (#52452)
* Code refactor
* Documentation update
* Add 'list' parameter
* Example update
* Testcase for osx_defaults

Fixes: #29329

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-02-21 14:37:16 +01:00
Hannes Ljungberg
da8574c567 docker_swarm_service: Allow passing period strings on relevant options (#52530)
* Allow duration to be passed as duration strings

* Remove whitespace

* Add changelog fragment

* Fix broken test

* Better error handling
2019-02-21 11:47:06 +00:00
Hannes Ljungberg
7276344f85 docker_swarm_service: Don’t remove service when networks change (#52634)
* Don’t remove service when networks change

* Add changelog fragment

* Some more network integration tests

* Add hannseman as author

* Remove return on self.client.fail
2019-02-21 11:46:50 +00:00
Yunge Zhu
55e9acb043 support application security group in network interface (#52450) 2019-02-21 17:23:09 +08:00
Piotr Wojciechowski
995c4bf02e Integration tests for docker_host_facts module (#52487)
* Integration tests for docker_host_facts

* Integration tests for docker_host_facts (update to cover #52432 fix)

* Integration tests for docker_host_facts updates after review

* Integration tests for docker_host_facts updates after review

* Integration tests for docker_host_facts updates after review

* Integration tests for docker_host_facts - adding comments and integrated test for all options combined together

* Integration tests for docker_host_facts - small code improvement

* Adjusting variable name
2019-02-21 00:21:59 -05:00
Zim Kalinowski
4292c33649 adding tags to azure_rm_sqldatabase (#52615)
* adding tags to sql database

* can't add version_added, so have to ignore sanity test

* removed ignore
2019-02-20 16:17:45 -08:00
Zim Kalinowski
20a96bcc4e dev test labs artifacts and virtual machine modules (#51462)
* dev test labs vm and artifacts

* fix sanity

* fixing sanity

* disable artifact test for now

* + vn update

* fix sanity

* fixed test issue

* one more merge update

* fixed assert
2019-02-20 16:02:09 -08:00
Anil Kumar Muraleedharan
c9fea2b74b Lenovo cnos lldp (#52568)
* To add new module cnos_lldp.
2019-02-20 17:30:09 -05:00
Zim Kalinowski
9d11cd311b adding vmss instance module (#51461)
* adding vmss instance

* fix indent

* fixing doc
2019-02-20 13:50:46 -08:00
The Magician
471b20bab3 New Module: gcp_cloudbuild_trigger (#52621) 2019-02-20 13:11:40 -05:00
Christian Kotte
bd0cad6ed7 Improve vmware_vmkernel module (#47270)
* update description and examples
* show updated settings
* add check mode support
* Remove unused option `vlan_id`
* add vDS support
* add TCP/IP stack support
2019-02-20 21:27:35 +05:30
René Moser
4b379745ca
tests: cloudscale_server: convert legacy to target tests (#52576) 2019-02-20 16:15:40 +01:00
Zim Kalinowski
d75f118b5e
Adding subnet facts (#52611) 2019-02-20 13:56:36 +08:00
Martin Krizek
be9f07279e Add stats on rescued/ignored tasks (#48418)
* Adding rescued/ignored tasks to stats gathering

Fixes #31245

* Amend integration tests to pass

* callback/dense.py: fix too-many-format-args

* Add changelog

* Amend counter_enabled and unixy callbacks

* Fix syntax error

* Fix typo in the changelog

* Remove not needed comment

* Re-add skipped

* Add test for rescued

* Fix colors...

* Fix unstable tests?

* Add a note to the porting guide

* Re-word the note in the porting guide

Fixes #20346
Fixes #24525
Fixes #14393

Co-authored-by: James Cammarata <jimi@sngx.net>
Co-authored-by: Martin Krizek <martin.krizek@gmail.com>
2019-02-20 13:00:47 +10:00
Zim Kalinowski
b1a9e7b8c8
adding dlt vn facts (#52552) 2019-02-20 10:45:47 +08:00
David Soper
63ea76d174 intersight_rest_api module and integration tests. (#52430)
* intersight_rest_api module and integration tests.
Fix intersight module_utils issues when using POST/PATCH/DELETE.

* Update json returns based on code review
2019-02-19 16:40:40 +01:00
Abhijeet Kasurde
24d1886499
template: add additional variable for dest path (#52015)
Signed-off-by: Dustin Spicuzza <dustin@virtualroadside.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-02-19 14:15:19 +05:30
Zim Kalinowski
fbf4e32b43
adding sqldatabase facts (#43324) 2019-02-19 13:09:53 +08:00
Zim Kalinowski
3316f00131 adding devtest labs facts (#52001) 2019-02-19 13:01:44 +08:00
Yunge Zhu
79f9fc415d add redis cache facts (#48652) 2019-02-19 12:43:23 +08:00
Jordan Borean
c312287731
test suse: get tests working on newer OpenSUSE distributions (#52539) 2019-02-19 13:20:08 +10:00
Jordan Borean
2991c5d47c
foreman: Use generic python in test run (#52544) 2019-02-19 13:19:54 +10:00
Zim Kalinowski
103b4c1d09 Adding cosmosdb account facts module (#51993) 2019-02-19 11:18:12 +08:00
Kevin Breit
a499244a53 New module - meraki/meraki_content_filtering (#51223)
* Initial commit
- Module mostly works but doesn't work for URL categories
- Additional tests should be added
- Documentation is needed
- Module is close to being complete

* Improved documentation
- Added parameter documentation
- Added examples

* Lint changes and bug fixes
- Fixed content filtering syntax bug per Meraki documentation update

* Change test cases so they work

* Remove duplicate key

* Improve documentation and check mode
2019-02-18 19:27:21 -05:00
Kevin Breit
ef2c00e106 Rename orgAccess parameter to org_access (#51347) 2019-02-18 19:27:11 -05:00
Kevin Breit
48128ec2fc meraki_ssid - Modifying SSID won't work when specifying number (#51645)
* Fix bug when specifying SSID by number
- Migrated integration test to blocks with always
- Minor URL fixes

(cherry picked from commit ed79c294f2e3f82d4828226004c055dcd7ce9f63)

* Create changelog file

* Add new line
2019-02-18 19:25:41 -05:00
Hannes Ljungberg
0bf9052e06 docker_swarm_service: Remove defaults (#52420)
* Remove update_parallelism default

* Remove update_delay default

* Add documentation about removing defaults

* Present porting guide changes as a list
2019-02-18 14:19:19 -05:00
Abhijeet Kasurde
e8b3adeb2b
VMware: add new module vmware_host_kernel_manager (#52503)
Signed-off-by: Aaron Longchamps <a.j.longchamps@gmail.com>
2019-02-18 21:57:49 +05:30
Felix Fontein
5b28cd65f0 luks_device: add integration tests (#52359)
* Add first version of luks_device tests.

* Do ~ expansion manually.

* Try to enable RHEL8.

* Adjust to older losetup version.

* Make sure cryptsetup is installed.
2019-02-18 17:16:57 +01:00
Matt Clay
687279c7bd Set user expires on FreeBSD using UTC. (#52276) 2019-02-18 09:59:13 -05:00
Hannes Ljungberg
c80ad43371 docker_swarm_service: Add working_dir option (#52425)
* Add working_dir option

* Check local mounts var to align with other checks

* Add changelog fragment

* Add trailing comma
2019-02-18 13:42:19 +00:00
Felix Fontein
37b0f5c81b docker: provide alternatives to ansible_facts results (#51192)
* Try to stop using ansible_facts for docker modules.

* Stop using facts returned from regular modules.
2019-02-18 13:41:34 +00:00
Hannes Ljungberg
64b12d2c0d docker_swarm_service: Add groups option (#52428)
* Add groups option

* Add changelog fragment

* Remove whitespace

* Remove whitespace
2019-02-18 13:12:05 +00:00
Jordan Borean
bb0a69e084
git: kill gpg-agent in tests on newer OpenSUSE hosts (#52476) 2019-02-18 21:30:31 +10:00
Hannes Ljungberg
18b968d486 docker_swarm_service: Add healthcheck option (#52419)
* Define yaml versions as strings

* Add healthcheck option

* Add changelog fragment

* Don’t set version_added as strings

* Use single quoted string

* Disable healthcheck tests on python 2.6

* Bring back quoting on already quoted version-added

* Python 2.6 compat

* Move functions to docker-common

* Move parse_healthcheck to docker-common

* Cast exception to str before printing failure

* Extend parse_healthcheck tests
2019-02-18 09:46:14 +00:00
Hannes Ljungberg
77d116f66e docker_swarm_service: Add stop_signal option (#52424)
* Add stop_signal option

* Add changelog fragment
2019-02-18 09:43:35 +00:00
Yuwei Zhou
664e6fb9c8 modified storageaccount fact return curated result with connection string (#49702) 2019-02-18 16:48:56 +08:00
Zim Kalinowski
896e320142
adding postgresqlconfiguration facts (#45071) 2019-02-18 15:14:56 +08:00
Zim Kalinowski
fa73abcf5d
fixing force_update in azure_rm_mysqldatabase (#52389) 2019-02-18 14:20:30 +08:00
Jordan Borean
3ecd6e19f7
alternatives - fix OpenSUSE dir on newer distros (#52458) 2019-02-18 16:07:01 +10:00
Zim Kalinowski
8422e23533
Fixing azure_rm_postgresqldatabase force_update parameter (#52388) 2019-02-18 14:04:01 +08:00
Jordan Borean
d6453a79f5
zypper_repository: fix return check on newer OpenSUSE versions (#52457) 2019-02-18 15:52:15 +10:00
Jordan Borean
4b296da6a2
zypper: fix tests to use new URL for OpenSUSE 15.0 (#52453) 2019-02-18 15:04:02 +10:00
Zim Kalinowski
777441719f
azure_rm_cosmosdbaccount - fix for virtual network rules (#52416) 2019-02-18 11:58:43 +08:00
Jordan Borean
4a94bd8d9d
opensuse - install password-store from specific repo (#52439) 2019-02-18 13:12:01 +10:00
Piotr Wojciechowski
e284a1546f Integration tests for docker_node_facts (#52423) 2019-02-17 12:08:29 -05:00
Piotr Wojciechowski
d27ac7a816 Integration tests for module docker_swarm_facts (#52208)
* * docker_swarm_facts integration tests

* * docker_swarm_facts integration tests

* * docker_swarm_facts integration tests

* Removing commented lines

* Extended and updated integration tests for docker_swarm_facts module

* Cosmetic integtration tests playbook changes

* Cosmetic integtration tests playbook changes from PR comments
2019-02-16 16:20:54 -05:00
Matt Clay
f5c92f6bc1
Allow setting resource.RLIMIT_NOFILE in modules (#51989) 2019-02-15 17:52:35 -08:00
saranyasridharan
1db6d5598a Adding custom module to get PID of the process (#50896) 2019-02-15 17:08:55 -08:00
Matt Clay
6ac22416af Fix tests to use ANSIBLE_TEST_PYTHON_INTERPRETER. 2019-02-15 11:24:07 -08:00
David Soper
958653e282 Cisco Intersight module_utils and intersight_facts module (#51309)
* Cisco Intersight module_utils and intersight_facts module

* Add RETURN information and fix pylint, import, and pep8 issues.

* Review updates for specifying type of params/returns and not polluting ansible_facts.

* BSD one line license, validate_certs used, urls.fetch_urls replaces requests
2019-02-15 16:32:29 +01:00
Andrey Klychkov
8e0f95951d Module postgresql_idx: added ci tests, new params, returned values, code refactoring (#52230)
* postgresql_idx: ci tests, refactoring, return values

* postgresql_idx: ci tests, new params, return values

* postgresql_idx: ci tests, fix

* postgresql_idx: ci tests, fix

* postgresql_idx: ci tests, fix

* postgresql_idx: ci tests, fix

* postgresql_idx: ci tests, fix

* postgresql_idx: ci tests, fix

* postgresql_idx: ci tests, fix

* postgresql_idx: ci tests, fix

* postgresql_idx: ci tests, fix

* New module postgresql_table - fix tests

* New module postgresql_table - fix tests

* New module postgresql_table - fix tests

* New module postgresql_table - fix state choices order
2019-02-15 15:38:56 +01:00
Zim Kalinowski
2f3960558d
Fix for PostgresSQL server update and storage_mb (#51653) 2019-02-15 17:46:52 +08:00
Zim Kalinowski
1f5cda37b3
Fix for MySQL server update and storage_mb (#51661) 2019-02-15 17:33:21 +08:00
Jordan Borean
de118734e9
Ansible.Basic - add required_by to module spec (#51407)
* Ansible.Basic - add required_by to module spec

* fix typo in docs
2019-02-15 13:00:25 +10:00
René Moser
0cc23de776
cloudstack: test: ensure network is implemented (#52204)
In ACS 4.12, it is no longer possbile to acquire IPs to a (...) network
not already in implemented state.

With deployment of a VM instance, we enforce the implementation of the
network. Also see 323f791efc
2019-02-14 23:44:50 +01:00
Jordan Borean
7b8e814a10 Ansible.Basic: make module options case insensitive with dep warning (#51583)
* Ansible.Basic: make module options case insensitive with dep warning

* Add porting guide info
2019-02-13 21:55:43 -05:00
Matt Clay
7016559b1a Fix openssl_privatekey test on FreeBSD 12.0. 2019-02-13 18:34:45 -08:00
Yunge Zhu
bccf6d31bd add azure_applicationsecuritygroup module (#51214)
* add applicationsecurity group module

* fix lint
2019-02-13 19:34:44 -05:00
Adam Miller
ea0e2bf2b3 yum always return changes dict, not only in check mode (#51987)
Previously the yum module would provide a `changes` dict when
executed in check mode but omit it when not in check mode in favor
of the `results` data which is raw output from the yum command. This
pull request makes that output uniform.

Fixes #51724

Signed-off-by: Adam Miller <admiller@redhat.com>
2019-02-13 17:46:32 -05:00
おすし
c2a409a9e0 Fix: Yum module does not use proxy when username is not set #51548 (#51994)
* add test of yum with proxy

* Properly handle unauthenticated yum proxy config

Fixes #51548

* shell executable is bash
2019-02-13 14:10:47 -05:00
Sam Doran
ad386290b4
Update command/shell docs with note about modules for rebooting(#51499)
- Update integration test syntax
2019-02-13 13:54:36 -05:00
Matt Martz
cdb53ff1a4
Restore behavior for detecting only localhost, and no limit match. Fixes #52152 (#52172)
* Restore behavior for detecting only localhost, and no limit match. Fixes #52152

* Add test for non-matching limit
2019-02-13 11:52:30 -06:00
Jordan Borean
847d089d6b Re-add support for setting shell from play context (#52139)
* Re-add support for setting shell from play context

* Add integration tests

* Add more tests for shell override

* fix sanity issue
2019-02-13 11:49:13 -06:00
Abhijeet Kasurde
32fce43311
hashi_vault: fix multiple spaces in params (#51524)
Fixes param parsing in hashi_vault

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-02-13 18:32:00 +05:30
Abhijeet Kasurde
22bddb434a
test for ipaddr filter (#52088)
based upon work of mscherer

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-02-13 16:53:43 +05:30
Pilou
51270be883 tower modules: check that 'verify_ssl' defined in ~/.tower_cli.cfg isn't ignored (#50687)
* Check that verify_ssl defined in tower_cli.cfg isn't ignored

* Avoid to override verify_ssl value defined in tower_cli.cfg

By default, tower-cli library enables SSL certificates check. But
verify_ssl false value defined in config files read by default by
tower-cli library (for example /etc/tower/tower_cli.cfg) was ignored
because overriden by the tower_verify_ssl parameter default value.

* fix a typo in comment
2019-02-13 10:26:43 +00:00
Straff
d4a07f9573 Added support for user-specified log file in win_package (#51104)
* Added support for user-specified log file in win_package - feature (#38353)

* added integration tests for win_package log_path support feature (#38353), and applied review feedback

* win_package log_path support feature (#38353) - fixed typo in win-package.py documentation

* win_package log_path support feature (#38353) - improved an integration test and better doc in win-package.py
2019-02-13 19:08:07 +10:00
Amol Kahat
563725ba98 Fixed typo from adress to address (#52143)
Signed-off-by: Amol Kahat <akahat@redhat.com>
2019-02-13 13:57:13 +05:30
Abhijeet Kasurde
928c4f08ca
Fix test case in vmware_guest (#52142)
Due to changes in https://github.com/ansible/ansible/pull/45412
vmware_guest testcase delete_vm failed. This patch will fix that testcase.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-02-13 10:28:03 +05:30
Will Thames
46fbcf08bc
aws_kms enhancements (#31960)
* Allow creation and deletion of keys (deletion just schedules for
  deletion, recreating an old key is just cancelling its deletion)
* Allow grants to be set, thus enabling encryption contexts to be
  used with keys
* Allow tags to be added and modified
* Add testing for KMS module
* Tidy up aws_kms module to latest standards
2019-02-13 13:06:58 +10:00
Wojciech Sciesinski
a431e802ed Add posibilities to run the integration tests for PowerShell < 5.0 (#50808)
* Add posibilities to run the integration tests for PowerShell < 5.0

* Update of tests - based at a review comments for #50612

* The correction of YAML structure
2019-02-12 15:51:03 -05:00
Wojciech Sciesinski
a7528cdd25 Update the NuGet package provider when needed (#50759)
* Update the NuGet package provider when needed

* Update NuGet provider conditionally
2019-02-12 12:22:22 -08:00
Andrew Gaffney
9c35f18dd6 Custom jinja Undefined class for handling nested undefined attributes (#51768)
This commit creates a custom Jinja2 Undefined class that returns
Undefined for any further accesses, rather than raising an exception
2019-02-12 15:04:00 -05:00
Abhijeet Kasurde
fab815fc3b
VMware: Handle duplicate VM names in vmware_vm_facts (#45412)
This fix changes facts returned from vmware_vm_facts to list of dict from
dict of dict.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-02-12 16:31:42 +05:30
Abhijeet Kasurde
5c992fcc3f
ansible-vault: handle utf-8 filename in vault (#50341)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-02-12 16:13:51 +05:30
Hannes Ljungberg
70d8f02db7 docker_swarm_service: Extend env and add env_files support (#51762)
* Extend env and add env_files support

* Python 2.6 compat

* Handle lists passed as string

* Add changelog fragment

* Use correct link formatting

Co-Authored-By: hannseman <hannes@5monkeys.se>

* Fix typo

Co-Authored-By: hannseman <hannes@5monkeys.se>

* Handle empty env and env_files values
2019-02-12 08:06:58 +00:00
Felix Fontein
09f78d2f6c ufw: allow to insert rules relative to first/last IPv4/IPv6 rules (#49796)
* Insert should have type int.

* Add insert_relative_to option.

* Add changelog.

* Add tests.

* Improve comment.
2019-02-12 08:05:14 +00:00
Jordan Borean
179cbb9891
win_dsc - return warning from DSC invocation (#51927) 2019-02-12 13:50:00 +10:00
Ari Stark
2f85d62989 Add state option to git_config module (#50578)
* Add state option to git_config module

State present/absent option works like --set/--unset option for 'git config'.

* Change git_config to avoid useless parameter passed to git command

When unsetting value, command was : git config --unset foo ''.
Now command is : git config --unset foo.

* Add some integration tests to git_config module

* Add missing aliases file

* Change set up method

Using git command seems to cause troubles on some OS : changing config
by changing '.gitconfig' file.

* Remove some distros from tests pool

Git is not installed or is out of date on these distros.

* Fix aliases to skip tests on centos6

* Refactor tests of the git_config module

* Add use case when state=absent and value is defined
2019-02-11 21:49:53 -05:00
Dag Wieers
031a1a5cc2 vsphere_file: New module to manage files on datastores (#48180) 2019-02-11 21:26:12 +01:00
Matt Martz
445ff39f94
Become plugins (#50991)
* [WIP] become plugins

Move from hardcoded method to plugins for ease of use, expansion and overrides
  - load into connection as it is going to be the main consumer
  - play_context will also use to keep backwards compat API
  - ensure shell is used to construct commands when needed
  - migrate settings remove from base config in favor of plugin specific configs
  - cleanup ansible-doc
  - add become plugin docs
  - remove deprecated sudo/su code and keywords
  - adjust become options for cli
  - set plugin options from context
  - ensure config defs are avaialbe before instance
  - refactored getting the shell plugin, fixed tests
     - changed into regex as they were string matching, which does not work with random string generation
     - explicitly set flags for play context tests
 - moved plugin loading up front
 - now loads for basedir also
 - allow pyc/o for non m modules
 - fixes to tests and some plugins
 - migrate to play objects fro play_context
 - simiplify gathering
 -  added utf8 headers
 - moved option setting
 - add fail msg to dzdo
 - use tuple for multiple options on fail/missing
 - fix relative plugin paths
 - shift from play context to play
 - all tasks already inherit this from play directly
 - remove obsolete 'set play'
 - correct environment handling
 - add wrap_exe option to pfexec
 - fix runas to noop
 - fixed setting play context
 - added password configs
 - removed required false
 - remove from doc building till they are ready

future development:
  - deal with 'enable' and 'runas' which are not 'command wrappers' but 'state flags' and currently hardcoded in diff subsystems

* cleanup

  remove callers to removed func
  removed --sudo cli doc refs
  remove runas become_exe
  ensure keyerorr on plugin
  also fix backwards compat, missing method is attributeerror, not ansible error
  get remote_user consistently
  ignore missing system_tmpdirs on plugin load
  correct config precedence
  add deprecation
  fix networking imports
  backwards compat for plugins using BECOME_METHODS

* Port become_plugins to context.CLIARGS

This is a work in progress:
* Stop passing options around everywhere as we can use context.CLIARGS
  instead

* Refactor make_become_commands as asked for by alikins

* Typo in comment fix

* Stop loading values from the cli in more than one place

Both play and play_context were saving default values from the cli
arguments directly.  This changes things so that the default values are
loaded into the play and then play_context takes them from there.

* Rename BECOME_PLUGIN_PATH to DEFAULT_BECOME_PLUGIN_PATH

As alikins said, all other plugin paths are named
DEFAULT_plugintype_PLUGIN_PATH.  If we're going to rename these, that
should be done all at one time rather than piecemeal.

* One to throw away

This is a set of hacks to get setting FieldAttribute defaults to command
line args to work.  It's not fully done yet.

After talking it over with sivel and jimi-c this should be done by
fixing FieldAttributeBase and _get_parent_attribute() calls to do the
right thing when there is a non-None default.

What we want to be able to do ideally is something like this:

class Base(FieldAttributeBase):
    _check_mode = FieldAttribute([..] default=lambda: context.CLIARGS['check'])

class Play(Base):
    # lambda so that we have a chance to parse the command line args
    # before we get here.  In the future we might be able to restructure
    # this so that the cli parsing code runs before these classes are
    # defined.

class Task(Base):
    pass

And still have a playbook like this function:

---
- hosts:
  tasks:
  - command: whoami
    check_mode: True

(The check_mode test that is added as a separate commit in this PR will
let you test variations on this case).

There's a few separate reasons that the code doesn't let us do this or
a non-ugly workaround for this as written right now.  The fix that
jimi-c, sivel, and I talked about may let us do this or it may still
require a workaround (but less ugly) (having one class that has the
FieldAttributes with default values and one class that inherits from
that but just overrides the FieldAttributes which now have defaults)

* Revert "One to throw away"

This reverts commit 23aa883cbed11429ef1be2a2d0ed18f83a3b8064.

* Set FieldAttr defaults directly from CLIARGS

* Remove dead code

* Move timeout directly to PlayContext, it's never needed on Play

* just for backwards compat, add a static version of BECOME_METHODS to constants

* Make the become attr on the connection public, since it's used outside of the connection

* Logic fix

* Nuke connection testing if it supports specific become methods

* Remove unused vars

* Address rebase issues

* Fix path encoding issue

* Remove unused import

* Various cleanups

* Restore network_cli check in _low_level_execute_command

* type improvements for cliargs_deferred_get and swap shallowcopy to default to False

* minor cleanups

* Allow the su plugin to work, since it doesn't define a prompt the same way

* Fix up ksu become plugin

* Only set prompt if build_become_command was called

* Add helper to assist connection plugins in knowing they need to wait for a prompt

* Fix tests and code expectations

* Doc updates

* Various additional minor cleanups

* Make doas functional

* Don't change connection signature, load become plugin from TaskExecutor

* Remove unused imports

* Add comment about setting the become plugin on the playcontext

* Fix up tests for recent changes

* Support 'Password:' natively for the doas plugin

* Make default prompts raw

* wording cleanups. ci_complete

* Remove unrelated changes

* Address spelling mistake

* Restore removed test, and udpate to use new functionality

* Add changelog fragment

* Don't hard fail in set_attributes_from_cli on missing CLI keys

* Remove unrelated change to loader

* Remove internal deprecated FieldAttributes now

* Emit deprecation warnings now
2019-02-11 11:27:44 -06:00
Jérôme BAROTIN
b99de25f32 Enable changed var with ufw check mode (#49948)
* Enable 'changed' var with ufw check mode

* Fix from comment of the PR + Unit Test

* Fix on ufw module after the second review

- delete rules change works in check mode
- simplify execute def & use it on every call process
- improved regexp
- rename vars defaults to current_default_values

* Add ignore error to execute() and use it in get_current_rules()

* Update after third code review (introduce change in changed status)

* Adjust tests and fix some problems (#1)

* 'active' also appears in 'inactive'.

* 'reject' is also a valid option here.

* For example for reloaded, changed will be set back to False here.

* Improve and adjust tests.

* Fix after merging integration test

* handle "disabled" on default routed

* Add /var/lib/ufw/.. rules files

* add unit test

* Fix pep8 formatting error

* Separate ipv6 and ipv4 rules process from checkmode

* fix non-ascii error on ci

* Some change after review

* Add unit test with sub network mask

* rename is_match function by is_starting

* add changelog fragment
2019-02-11 11:05:35 +00:00
Felix Fontein
9b1cbcf3a4 openssl_csr: ignore empty strings in altnames (#51473)
* Ignore empty strings in altnames.

* Add changelog.

* Add idempotence check without SAN.

* Fix bug in cryptography backend.
2019-02-11 10:30:56 +00:00
Hannes Ljungberg
153e996760 docker_swarm_service: Remove defaults (#51216)
* Drop descriptions of docker-py constraints <=3.0.0

* Properly indent documentation

* Clearer examples

* Spelling

* Fix example

* Revert "Drop descriptions of docker-py constraints <=3.0.0"

This reverts commit 8106215af62ae5880c3b748cec562a85f2247bdc.

# Conflicts:
#	lib/ansible/modules/cloud/docker/docker_swarm_service.py

* Add min versions for placement preferences

* Add endpoint_mode and publish to option_minimal_versions

* Restrict update max_failure_ratio and monitor versions

* Remove defaults and only pass required arguments

* Fix indentation

* Fix args documentation

* Fix replicas documentation

Co-Authored-By: hannseman <hannes@5monkeys.se>

* Add type to all documented options

* Add suboptions for mounts, secrets and configs

* Add suboptions to argument spec

* Remove redundant validation and casting

* Don’t default Spec.EndpointSpec.Mode to vip

* Use single quotes as string literal

* Catch ImportError explicitly

* Move init to top of class

* Align closing brackets

* Spelling

* Import LooseVersion

* Documentation fixes

* Documentation fix

* Documentation fixes

* Remove required: false and default=None

* Defaults for update_delay and update_parallelism

* Set correct key for default

* Handle empty idempotency

* Clearer image documentation

Co-Authored-By: hannseman <hannes@5monkeys.se>

* Clearer constraint documentation

Co-Authored-By: hannseman <hannes@5monkeys.se>

* Better documentation of corresponding service opts
2019-02-10 14:17:59 +00:00
Adam Miller
2721ed260e Properly handle unauthenticated yum proxy config (#51915)
Fixes #51548

Signed-off-by: Adam Miller <admiller@redhat.com>
2019-02-09 01:17:22 -05:00
gyorgypeter
7fa5694975 VMware: Module for managing mirroring sessions. (#50338)
This module manages the mirroring sessions, and the necessary port settings.

* Correct Documentation and CS
* PEP8, YAML, Documentation Error Fix
* Added empty return statement

Co-Authored-By: gyorgypeter <32464524+gyorgypeter@users.noreply.github.com>
2019-02-08 10:16:57 +05:30
Matt Davis
46bf38711c fix azure_rm_deployment test
* recent changes to args for hosted template file broke the test; changed test to use a specific known-working commit instead of `master`.
* long-term may want to consider hosting the template in httptester or just embedding a local copy
2019-02-07 12:21:36 -08:00
Jordan Borean
c92fcf0b57 Get docker tests working on OpenSUSE (#51896) 2019-02-07 15:18:08 -05:00
Abhijeet Kasurde
c20722474a
ec2_vol_facts: set filters to default value (#51589)
Fixes: #51554

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-02-07 21:53:25 +05:30
Jordan Borean
6fcbfcf6b6
win_rds: wait for reboot to be complete (#51849) 2019-02-07 10:51:11 +10:00
Zim Kalinowski
d252cc7a2b adding cosmos db account module (#47181)
* adding cosmos db account module

* fixes

* fixed issues

* cosmos db account test fixes

* updating cosmosdb

* fixed required

* version from autogereneator

* several upgrades

* idempotency changes

* idempotency improvements

* updated cosmos db module with new idempotency check

* and idempotency check shall fail now....

* try to fail it again

* now should really fail

* one more

* introducing comparison template

* fixes + sorting of arrays

* updated comparisons

* don't compare if parameter is none

* one more test

* fixed compare

* fixed idempotency?

* more logging

* fix comparison rules

* make smaller change

* actually compare multiple write locations

* just change failover

* remove debugging stuff

* one more fix

* fixed remaining sanity test

* updating comparison stuff

* fix pep8

* fix pep8

* will pep8 finally work?

* one more fix

* cosmos db updates

* updating cosmos db account

* fixed pep8

* fix type

* fixed indent

* fixed problem with python 3

* another fix for python 3

* bool type here

* cosmos db fixes

* fix

* fix

* fix

* fixed syntax
2019-02-06 16:06:44 -08:00
Jordan Borean
0f0d33a954 start getting modules to use shared import error code (#51787) 2019-02-06 12:39:17 -05:00
David Passante
cbde04606a Cloudstack: New module cs_vlan_ip_range (#51597) 2019-02-06 11:33:27 +01:00
Wojciech Sciesinski
b8a7e35b22 Correct integration tests for the win_disk_facts module (#51044)
* Correct integration tests for the win_disk_facts module

* Exclude W2K8, W2K8-R2 from tests run under CI
2019-02-06 07:42:11 +10:00
Jordan Borean
e284d21139
win_rds: move the tests into 1 target to make it quicker (#51728) 2019-02-06 05:28:49 +10:00
Martin Krizek
33b07f322c
yum: disableexcludes is supported on centos6 (#51698)
* yum: disableexcludes is supported on centos6

* Add changelog
2019-02-05 18:18:56 +01:00
Hannes Ljungberg
4a5d38b55a docker_swarm_service: Enable tests (#51170)
* Enable tests

* Comment fixes

* Try lowering timeouts

* Comment fix

* Comment fix

* Comment fix

* Add a pause to let service update

* Fix comment

* Disable dns_search tests

* Disable dns_servers test

* Fix comment

* Fix comment

* Fix comment

* Fix comment

* Fix comment

* Fix comment

* Fix comment

* Revert "Disable dns_servers test"

This reverts commit 763e9da716b78f4986f313b3ba1ab98faacb742e.

* Revert "Disable dns_search tests"

This reverts commit 2859e4e3a5ebdca078de84d821bb53bbdf967dfd.

* Revert "Add a pause to let service update"

This reverts commit e990dfae1a62e9a42b07960819818bc75fd04427.

* Revert "Try lowering timeouts"

This reverts commit 1617772de81ecef0e560b38c7564646ec3874c3c.

* Ensure that services are running while testing

* Retry tasks on update out of sequence error

* Remove unnecessary check for APIError.explanation

Co-Authored-By: hannseman <hannes@5monkeys.se>

* Ignore errors when tearing down test suite

* Retry with a loop instead of tail recursion

* Initialize self.diff_trace in run

* Add change log fragment

* Actually raise error

* Add unit test for retrying

* Lint

* Change to bugfix

* Remove whitespace

* Mock docker dependency

* Use download.fedoraproject.org

* Revert "Use download.fedoraproject.org"

This reverts commit 5931791f7c.
2019-02-05 08:25:29 +00:00
Jordan Borean
c572d17c2e
ansible-test: fix incompatibilty with the RDS tests and httptester (#51716)
* test out win_uri on Shippable

* run all tests for group 3 - ci_complete

* use shared setup and cleanup role for RDS

* Set shippable matrix back to normal

* cleanup changes to support Server 2008 R2
2019-02-05 16:03:12 +10:00
Jordan Borean
6ad5002712
win_updates - mark as unstable again (#51713) 2019-02-05 06:44:24 +10:00
Jordan Borean
f78cdcd2c5
test win_setup - make py3 compatible (#51693) 2019-02-05 05:38:04 +10:00
Pilou
7a3582d651 uri: check unexpected failure doesn't occur when file cannot be saved (#45824)
* uri: fix TypeError when file can't be saved

Fix the following exception (and others):

    Traceback (most recent call last):
      File "/home/lilou/debug_dir/__main__.py", line 604, in <module>
        main()
      File "/home/lilou/debug_dir/__main__.py", line 554, in main
        write_file(module, url, dest, content, resp)
      File "/home/lilou/debug_dir/__main__.py", line 320, in write_file
        module.fail_json(msg="Destination dir '%s' not writable" % os.path.dirname(dest), **resp)
    TypeError: fail_json() got multiple values for keyword argument 'msg'

I would rather remove **resp from returned values but this module is
flagged as stableinterface.

* Static imports are more straight forward and preferred unless dynamic inclusion is required.
2019-02-04 10:29:05 -05:00
Jordan Borean
2e99dea867
win_service - use custom binary for tests (#51689) 2019-02-04 20:29:29 +10:00
Kairo Araujo
a355686987 new module: aix_devices, manage AIX devices (#32290)
* new module: aix_devices AIX devices management

This module discovery, defines, removes and modifies attributes of AIX
devices.

* Added hide attributes that can be used for aliases

Added hid attributes that can be used to manage aliases on en
interfaces.

* After tests: docs and attributes tests

Fixed attributes tests and doc explaining how to use
attributes with comma.

* Fixed grammar on module description

Fixed grammar on module description

* Included test/legacy/aix_devices.yml for tests

As discussed on IRC ansible-devel channes, was include the
legacy tests for further manual tests.

* Added 'attributes' as dictionary

Added 'attributes' as a dictionary makes the configuration
simple.

* Changed the added version from 2.5 to 2.7

Fixed the shippable error from 2.5 to 2.7

```
2018-06-01 08:28:02 ERROR: Found 1 validate-modules issue(s) which
need to be resolved:
2018-06-01 08:28:02 ERROR:
lib/ansible/modules/system/aix_devices.py:0:0: E307 version_added
should be 2.7. Currently 2.5 (75%)
```

* Various changes

* Revert

* Changed the tests to integration dir

* Implement 'available' state

'available' state is the AIX state used, that works same as 'present'

* The states were changed to AIX expressions and kept Ansible states.

Makes sense keep the states names to AIX and use the Ansible 'standards'
states.

'available' is 'present'
'removed' is 'absent'

It makes easy to AIX sysadmins use the module, however it keep the
Ansible meanings.

* Fixed choices according with latest patchset (commit)

* A few doc changes

Nothing material
2019-02-04 03:49:25 +01:00
Jordan Borean
ebc9e4caf7
add pause to make test more stable (#51680) 2019-02-04 11:42:40 +10:00
Felix Fontein
89a1c68f98 docker_volume: improve force option (deprecate, add new option) (#51145)
* docker_volume: Deprecating force option, adding recreate option.

* Add changelog.

* Remove mis-placed force: yes for docker_volume.
2019-02-03 15:09:24 -05:00
Feike Steenbergen
38e70ea317 Add session_role to postgresql modules (#43650)
* Allow session_role to be set for PostgreSQL

By implementing session_role it becomes possible to run the specific
PostgreSQL commands as a different role.
The usecase that is immediately served by this, is the one that one
ansible playbook can be shared by multiple users, which all have
their
own PostgreSQL login_user. They do not need to share login
credentials,
as they can share the role within the PostgreSQL database.

The following example may give some insight:

$ psql -U jdoe -X -d postgres

postgres=> CREATE DATABASE abc;
ERROR:  permission denied to create database
postgres=> set role postgres;
SET
postgres=# CREATE DATABASE abc;
CREATE DATABASE

fixes #43592

* Tests for session_role in PostgreSQL

* Bump version_added for session_role feature

* Remove explicit encrypted parameter from tests
2019-02-02 20:12:14 +01:00
Kevin Breit
a55838b013 Digital Ocean integration test for digital_ocean_tag (#49169)
* Add Digital Ocean integration test template

- Actual integration tests will come shortly

* Add digital_ocean-tag test

* Add integration test for creating and deleting tags

* Remove cloud confiugration file

* Enhancements for integration test for idempotency
- Added new lines per review
- Added proper tests for idempotency checks
- Actual module is broken so deletion test doesn't work

* Add check for do_api_key and instruct if it doesn't work.

* Fix indentation

* Remove idempotency test for nonidempotency action

* Add notes for delete idempotency
2019-02-02 05:19:25 +01:00
Dag Wieers
cfa028677d
ACI: Fix integration tests using urldecode (#51610)
This is in result of changes to use urlencode to encode query strings.
2019-02-01 16:19:35 +01:00
Federico87
f94378fc2f ios_ntp module (#50705)
* ios_ntp module

* add execute_module for config func

* fix units test

* test empty list

* update example

* change want logic to follow have - removed try/except

* update commands list for config test

* add idempotent test case

* add more test
2019-02-01 09:20:02 -05:00
Anil Kumar Muraleedharan
004d8b03d4 Lenovo cnos l3interface (#51322)
* Adding cnos_l3_interface module in alignment with others vendors.
2019-02-01 09:17:52 -05:00
Alex Stephen
27c5e38e10 Bug fixes for GCP modules (#51573) 2019-01-31 17:03:38 -05:00
Alex Stephen
2b0f16443c Bug fixes for GCP modules (#51574) 2019-01-31 17:03:24 -05:00
Alex Stephen
6a79468acf Bug fixes for GCP modules (#51576) 2019-01-31 17:02:56 -05:00
Alex Stephen
802827536c New Module: gcp_redis_instance (#51578) 2019-01-31 17:02:20 -05:00
Brian Coca
e010034151
unquote ev (#51560)
* unquote ev

* properly test for defined var
2019-01-31 16:55:10 -05:00
Jordan Borean
f27078df52
win_power_plan: fix for Windows 10 and Server 2008 compatibility (#51471) 2019-02-01 06:32:12 +10:00
Jordan Borean
2a701d22f4
win_rds move to test group 3 (#51559) 2019-02-01 06:29:03 +10:00
Andrea Tartaglia
042aeba46c Base integration test for gitlab modules (#51490)
* Added basic integration test targets for gitlab modules

* Removed cloud/gitlab config from aliases, it doesn't exist yet

* Fixed CI issues
2019-01-31 10:20:33 +00:00
Jordan Borean
6a2aac487d
win_stat - add follow option and fix broken tests (#51522)
* win_stat - add follow option and fix broken tests

* fix docs issues
2019-01-31 15:56:06 +10:00
Andrew Saraceni
30b25d53d2 Add "pure" state functionality for win_group_membership (#51298)
* add pure state functionality for win_group_membership

* fixing typos in docs

* fix syntax for adding removed array depending on state

* remove trailing whitespace from docs

* fix issue in testing pure (again)

* adding note for pure being added in Ansible 2.8
2019-01-31 11:48:49 +10:00
Yunge Zhu
dd2032a3ad add new module for webapp slot (#48862)
* add new module for webapp slot

* fix lint and resolve comments

* fix lint

* fix lint

* fix lint

* fix name in test

* add variable

* fix test parameter

* fix test frameworks

* fix test

* remove delete due to swap not finish

* resolve comments

* fix lint

* fix typo
2019-01-30 15:20:32 -08:00
Dag Wieers
3cfe08b191 win_stat: Rewrite using AnsibleModule (#49653)
* win_stat: Rewrite using AnsibleModule

Simple rewrite using AnsibleModule.

* Remove custom deprecate block

Since we already have the `removed_in_version` option set, this is not
really needed. However the error message was a bit more specific.

* Fix typo

* Fixes after review

* Fixes to get tests working
2019-01-31 06:02:23 +10:00
Brian Coca
4ac0c23db6
added unsafe toggle to vars_prompt (#49219)
* added unsafe toggle to vars_prompt

	fixes #47534
2019-01-30 15:01:13 -05:00
Brian Coca
4a0fceaa3b remove bare var handling in conditionals (#51030)
* remove bare var handling in conditionals

  this makes top level and multilevel vars (dicts keys) behave the same
  it will require adding |bool for 'string comparissons' in indirect templates

  - added new tests to ensure uniform handling
  - switched to 'is' testing for status
  - changed warning to 'conditional' as 'when:' is not only place it gets triggered

* updated to include toggle and deprecation

* fix deprecated

* updated tests to handle toggle

* fixed typo and added note about the future
2019-01-30 15:00:24 -05:00
Akshay Gaikwad
0493ef359a Add integration tests for docker_image options (#48574)
* Add integration tests for docker_image options

Tests for options in docker_image module

Signed-off-by: Akshay Gaikwad <akgaikwad001@gmail.com>

* Add force option tests

Signed-off-by: Akshay Gaikwad <akgaikwad001@gmail.com>

* Add repository option tests

Signed-off-by: Akshay Gaikwad <akgaikwad001@gmail.com>

* Modify test for option force

Signed-off-by: Akshay Gaikwad <akgaikwad001@gmail.com>
2019-01-30 14:11:49 -05:00
Zim Kalinowski
f0f23378db
support for custom data in vmss (#51380) 2019-01-30 12:09:29 +08:00
Jordan Borean
670a45c3ac
test dnf - fix groups idempotency on RHEL and fix postgresql issue (#51319) 2019-01-30 10:56:57 +10:00
Dag Wieers
9eef9a3702
aci_aaa_user: Fix an issue with clear_password_history (#51459) 2019-01-30 01:49:33 +01:00
Varun Chopra
19441df7e9 Update module to use Ansible.Basic (#51365) 2019-01-30 07:30:59 +10:00
Kevin Subileau
5d15a539c7 Add modules to manage Remote Desktop Services (#43406)
* Add windows module win_rds_settings

* Add windows module win_rds_rap

* Add windows module win_rds_cap

* Add tests for module win_rds_settings

* Add tests for module win_rds_rap

* Add tests for module win_rds_cap

* Validate user and computer groups in module win_rds_cap

* Validate user groups in module win_rds_rap

* Support additional formats (UPN, Down-Level Login Name, SID and Login Name) for user and computer group names in module win_rds_cap

* Support additional formats (UPN, Down-Level Login Name, SID and Login Name) for user group names in module win_rds_rap

* Validate computer group parameter and support additional formats (UPN, Down-Level Login Name, SID and Login Name) in module win_rds_rap

* Validate allowed ports parameter in module win_rds_rap

* Ensure user group list is not empty in module win_rds_rap

* Remove unwanted value in result object

* Ensure user group list is not empty in module win_rds_cap

* Ensure order parameter value never exceed the number of existing CAPs in module win_rds_cap

* Add diff mode support to win_rds_cap

* Add diff mode support to win_rds_rap

* Add diff mode support to win_rds_settings

* Add SSL bridging and messaging policy settings to module win_rds_settings

* Fix copyright

[skip ci]

* Add missing trailing dots in documentation

[skip ci]

* Fix incorrect variable passed to Fail-Json

* Minor changes and doc update

* Avoid using Powershell aliases

* Use WMI instead of PSProvider to handle group names to avoid conversion in UPN form

* Use CIM instead of WMI cmdlets
2019-01-30 07:21:56 +10:00
Dag Wieers
d8a0e1a9b7
aci_aaa_user: Fix changing user description (#51408)
This fixes a reported problem with the aci_aaa_user module.
2019-01-29 03:16:58 +01:00
Jordan Borean
a259b810ad
Ansible.Basic - make choices validate case insensitive (#51203)
* Ansible.Basic - make choices validate case insensitive

* fix win_certificate_store tests
2019-01-29 05:42:01 +10:00
Zim Kalinowski
2bb8eea413 Adding mysql configuration facts module (#45075) 2019-01-28 16:36:23 +08:00
Karsten Jakobsen
99a4a3dc33 VMware: New module vmware_vm_host_drs_rule (#50651)
* Added new vmware module for creating DRS VM-HOST rules Host groups in a given cluster
* Fixing punctuation in lib/ansible/modules/cloud/vmware/vmware_vm_host_drs_rule.py
* Added better Docstring
* Better messaging and documentation. Removed unused lib
* Added operation to determine create or update msg
* Fixed class params to only take module. This is less error prone
* Bugfix, undefined names
2019-01-28 06:15:45 +01:00
Zim Kalinowski
be859a9f8e
Automatically removing all resources allocated by VM (#50652) 2019-01-28 12:27:32 +08:00
Hannes Ljungberg
72a44e144a docker_swarm_service: Compare image by digest (#51134)
* Compare image by digest

* Add changelog fragment

* Fix version check

* Remove unused import

* Add note about image resolving

* Don’t overwrite image

* Fix documentation error

* Add resolve_image option

* Add version_added

* Remove whitespace

* Remove unused attribute

* Remove unused attribute
2019-01-27 11:48:16 -05:00
Samuel Carpentier
6846152c46 New module: tower_notification (#50512)
* New module: tower_notification

* Fix CI check failures

* Add integration tests and extend examples

* Add missing required field for deletion tests and examples

* Add missing required field for deletion tests and examples

* Set port type to int

* Add missing field for Slack notification

* Add missing field types for IRC notification

* Update module documentation

* Correct field name and type for IRC notification

* Uniformize 'targets' field

* Uniformize 'targets' field
2019-01-27 16:28:49 +00:00
Hannes Ljungberg
ee39853426 docker_swarm_service: Fix endpoint mode idempotency (#51232)
* Fix endpoint mode idempotency

* Remove newline
2019-01-27 09:06:09 -05:00
Matt Clay
a8116497ba More test fixes for split controller/remote tests. 2019-01-25 20:46:53 -08:00
Will Thames
195de8b460 k8s: turn off wait in check_mode (#51310) 2019-01-25 11:08:46 +01:00
Matt Clay
35761a99c6 Make sure force_handlers is off for handlers test. 2019-01-25 00:26:09 -08:00
Matt Clay
215b27eb10 Enable paramiko connection tests on RHEL 8.0. 2019-01-24 19:57:35 -08:00
Matt Clay
d2a7cc0b9f Fix integration tests to support remote hosts. 2019-01-24 19:57:04 -08:00
Zim Kalinowski
6f63ba6520 vmss extension facts (#51263) 2019-01-25 10:04:44 +08:00
Zim Kalinowski
c788591580 Adding Azure Virtual Machine Extension Facts (#51258) 2019-01-25 09:47:23 +08:00
Brian Coca
be776daefe
add static facility and apply to register (#49737)
* add static facility and apply to register

* added warning

* added test for templated register

* test register 'static' status

* rely on subshell to deal with quote context

* use corrects pb for test

* bring constants back cause new code in devel
2019-01-24 11:51:52 -05:00
Jordan Borean
b2114a9ddf
test - skip dnf on RHEL 8 until test is fixed (#51260) 2019-01-24 16:43:20 +10:00
Ganesh Nalawade
70bf9b9919
Add backup filename and dir path option for config network modules (#50801)
* Add configurable backup path option for network config modules

Fixes #50283
Fixes #32724

*  Add back_options in network config module argspec
*  Handle backup path options in network action plugin

* Fix review comments

* Add integration tests

* Update changelog
2019-01-24 09:36:16 +05:30
Zim Kalinowski
4041f02389
adding devtestlabs (#50961) 2019-01-24 08:03:16 +08:00
Zim Kalinowski
a6bbf21282 adding vmss extension (#50709)
* adding vmss extension

* added alias

* fixed one thing

* + better idempotence handling

* fixed mistake in module

* removed location check as not reliable
2019-01-23 15:51:10 -08:00
Matt Clay
a20d0d1afb
Fix dnf integration test issues. (#51251)
* update/enable rhel8 beta integration tests for yum and dnf

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

* fix typo in conditional for dnf/tasks/main.yml

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

* fix var scoping for environment checks

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

* Disable install via path on RHEL.
2019-01-23 13:52:03 -08:00
Alex Stephen
73e7e663c6 New GCP module: gcp_iam_service_account_key (#50682) 2019-01-23 16:49:50 -05:00
Alex Stephen
7ceffb7ba2 New GCP module: gcp_sourcerepo_repository (#51249) 2019-01-23 16:44:54 -05:00
Adam Miller
2d83db7036 update/enable postgresql integration test target for rhel8 beta
Signed-off-by: Adam Miller <admiller@redhat.com>
2019-01-23 11:09:10 -08:00
Adam Miller
14a1199dfc update/enable filesystem integration test target for rhel8 beta
Signed-off-by: Adam Miller <admiller@redhat.com>
2019-01-23 11:08:52 -08:00
Adam Miller
1ad5bae359 update sefcontext integration target and enable for rhel8 beta
Signed-off-by: Adam Miller <admiller@redhat.com>
2019-01-23 10:51:42 -08:00
Adam Miller
f0df9760d3 enable groupby_filter test target for rhel8 beta (#48962) 2019-01-23 10:27:48 -08:00
Matt Martz
8c08d03989
Fieldattribute inheritance with defaults (#50891)
* Add tests for check_mode at play and task level

These test inheritance of check_mode from the various levels (command
line, as a play attribute and as a task attribute) so they will be
useful for checking that the change to fieldattribute inheritance with
defaults works

* Add a sentinel object

The Sentinel object can be used in place of None when we need to mark an
entry as being special (usually used to mark something as not having
been set)

* Start of using a Sentinel object instead of None.

* Handle edge cases around use of Sentinel

* _get_parent_attribute needs to deal in Sentinel not None

* No need to special case any_errors_fatal in task.py any longer

* Handle more edge cases around Sentinel

* Use Sentinel instead of None in TaskInclude

* Update code to clarify the vars we are copying are class attrs

* Add changelog fragment

* Use a default of Sentinel for delegate_to, this also allows 'delegate_to: ~' now to unset inherited delegate_to

* Explain Sentinel stripping in _extend_value

* Fix ModuleArgsParser tests to compare with Sentinel

* Fixes for tasks inside of roles inheriting from play

* Remove incorrect note. ci_complete

* Remove commented code
2019-01-23 11:40:07 -06:00
Brian Coca
b6824669df
Handle complex quoting in extra args in pull cli (#50212)
* Handle complex quoting in extra args in pull cli

fixes #40729
2019-01-23 10:58:37 -05:00
Jordan Borean
419727a6da
file - allow touch on files not owned by user (#50964)
* file - allow touch on files not owned by user

* use Sentinal value and preserved existing args

* Do no instantiate the Sentinel object
2019-01-23 10:14:59 +10:00
MarkusTeufelberger
c1bc556b0a Relative time support for crypto modules (openssl_certificate) (#50570)
* Move relative time handling to module_utils and rewrite it

* Fix cases with no seconds defined

* fix a small typo along the way

* add relative time handling to the ownca provider in openssl_certificate

* add initial integration test for relative time ownca

* quote the documentation to produce valid yaml

* move timespec conversion and validation to the init function

* fix small edge case in conversion function

* add relative timestamp handling to the selfsigned provider

* add get_relative_time_option

* add relative timestamp handling to valid_in

* pep8 fix indentation

* add quotes in error message

* add changelog fragment

* Update changelogs/fragments/50570-relative_time_crypto.yaml

Co-Authored-By: MarkusTeufelberger <mteufelberger@mgit.at>
2019-01-22 20:41:02 +00:00
Matt Clay
37767849ee Disable failing azure_rm_postgresqlserver test. 2019-01-22 10:17:29 -08:00
Abhijeet Kasurde
7561aaf619 Update documentation for ignore_unknown_extensions (#50383)
* Example updated
* Testcase added

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-01-22 12:56:10 -05:00
Nathaniel Case
9702893729
Remove deprecated options from modules (#50246)
* Remove deprecated options from modules

* Update tests

* Add porting guide notes
2019-01-22 09:18:26 -05:00
Jordan Borean
6c26256945
win_user_profile - new module (#50637)
* win_user_profile - new module

* Fix typo

* Fix 2012 CI issues

* changed bool in docs and revert other test changes
2019-01-22 11:04:22 +10:00
Jordan Borean
828df4b336
ansible-test: add Ubuntu 18.04 container (#50790)
* ansible-test: Add Ubuntu 18.04 to Shippable CI nodes

* re-add ubuntu1604/3 to matrix

* forgot to add environment for git kill gpg-agent
2019-01-22 10:30:35 +10:00
Martin Krizek
9ec9f18b13 dnf: allow to operate on file paths (#51080)
Fixes #50843
2019-01-21 17:20:27 -05:00
Felix Fontein
e3f8e05ecb Temporarily disable tests. (#51148) 2019-01-21 17:13:44 -05:00
Jan Sušnik
70a39d358b Docker Network module labels support (#50883)
* Added support for labels for Docker Network

* Fixed missing comma in Docker Network module

* Specified minimal versions for dependencies and added changelog

* Fixes based on suggestions after code review

* Added integration tests
2019-01-21 16:19:34 -05:00
Hannes Ljungberg
e3f61f4480 docker_swarm_service: Add command option (#50984)
* Add command option

* Fix test task name

* Changelog fragment

* Fix indendation

* Add version_added

* Better command description

* Test passing command as list

* Handle invalid command types

* Cleaner command type checking

* Check that all items in command list are strings

* Better error about command list items

* Better type checking errors

* Add tests for command type checking

* Update command tests

* Fix messed up rebase
2019-01-21 16:01:22 -05:00
Hannes Ljungberg
9c44dc371b docker_swarm_service: Fix crash when using configs parameter (#50606)
* Fix crash when using configs parameter

* Don’t add difference for configs set to None

* Add changelog fragment

* Revert "Add changelog fragment"

This reverts commit 8df497e3881d976e7417d2662a167694fbc33147.

* Enable config tests

* Pass empty list of configs to docker

* Properly clean up after all tests
2019-01-21 15:29:00 -05:00
Hannes Ljungberg
393bf5e4b1 docker_swarm_service: Add placement_preferences option (#51082)
* Add placement_preferences option

* Add changelog fragment

* Python 2.6 compat

Python 2.6 compat

* Cleaner check

* Better description

* Don’t compare placement_preferences if None

* Add placement_preferences example
2019-01-21 14:55:26 -05:00
Hannes Ljungberg
7ceb2ac95a docker_swarm_service: Fix publish idempotency when mode is None (#50882)
* Fix publish idempotency when mode is None

* Add changelog fragment

* Python 2.6 compat

* Use self.publish

* Check length of publish before comparing content

* Sort publish lists before zipping

* Enable publish tests

* python3 compat

* Don’t sort by mode as it is not safe

* Document publish suboptions and add them to args

* Add type to publish documentation

* Add choices to publish argument_spec suboptions

* Make tcp the default protocol

* Make documentation reflect protocol default

* Simplify setting mode

* Remove redundant string quoting

* Test order of publish

* Add comment about publish change detection
2019-01-21 14:02:08 -05:00
Matt Clay
ab70172651 Remove obsolete alias from nios_txt_record test. 2019-01-21 09:31:36 -08:00
Felix Fontein
345011e024 openssl_csr cryptography backend, try II (#50894)
* Revert "Revert "openssl_csr: Allow to use cryptography as backend (#50324)""

This reverts commit bbd2e31e9f.

* Remove more complicated selection copy'n'pasted from openssl_privatekey.

* Add tests for backend selection.

* Add openssl_csr test for arbitrary string commonName.

* Allow to disable commonName -> SAN copying (fixes #36690).
2019-01-21 17:19:05 +00:00
Brian Coca
30da7a363c
allows loop pause for subseconds (#50461)
* allows loop pause for subseconds
* skip test on os x and bsd since date commands lacks nano

fixes #49951
2019-01-18 22:41:29 -05:00
Matt Clay
d4dbc7f2e0
Fix subversion integration test on Fedora 29. (#51089)
* Fix subversion integration test on Fedora 29.

This upgrades the sqlite-libs and subversion packages to make sure
that the version of sqlite expected by subversion is installed.

* Fix compatibility with RHEL and CentOS.
2019-01-18 16:07:17 -08:00
Matt Clay
b3601435c4 Enable yum integration tests on RHEL 8.0. 2019-01-18 14:54:36 -08:00
Matt Clay
c7b9ef740c Enable seboolean integration test on RHEL 8.0. 2019-01-18 14:07:36 -08:00
Matt Clay
85689a3eec Enable pip integration test on RHEL 8.0. 2019-01-18 13:50:48 -08:00
John Westcott IV
0ce9593986 Adding TowerCLI receive module (#51023) 2019-01-18 11:11:17 +00:00
John Westcott IV
e1b7acde87 Adding tower_workflow_launch (#42701) 2019-01-18 11:08:04 +00:00
John Westcott IV
9722254618 Adding TowerCLI send module (#37843) 2019-01-18 11:05:54 +00:00
Zim Kalinowski
308e4c31c6
fixed vmss required parameters handling (#51012) 2019-01-18 10:25:47 +08:00
Jordan Borean
18c35b69fb
setup_rabbitmq - fix erlang pinned dependencies (#51048) 2019-01-18 10:29:39 +10:00
Jordan Borean
b7620c161a
win_updates - fix category return value to be a list (#51001)
* win_updates - fix category return value to be a list

* remove unstable test alias
2019-01-18 05:35:10 +10:00
Matt Clay
d95c716249 Fix azure_rm_rediscache test resource naming. 2019-01-17 10:59:47 -08:00
Matt Clay
f06474ae4f Remove unnecessary absolute paths from tests. 2019-01-17 00:23:25 -08:00
Alex Stephen
4746781423 New GCP module: gcp_bigquery_dataset (#50676) 2019-01-16 14:16:51 -05:00
Alex Stephen
937fe2f658 New GCP module: gcp_bigquery_table (#50678) 2019-01-16 14:16:37 -05:00
Alex Stephen
263e266f68 New GCP module: gcp_compute_interconnect_attachment (#50680) 2019-01-16 14:16:28 -05:00
Alex Stephen
b9dd0e2286 New GCP module: gcp_iam_service_account (#50681) 2019-01-16 14:16:14 -05:00
Alex Stephen
caedfcbfb0 New GCP module: gcp_resourcemanager_project (#50683) 2019-01-16 14:15:59 -05:00
Alex Stephen
a0a199fb93 New GCP module: gcp_storage_object (#50684) 2019-01-16 14:15:46 -05:00
Alex Stephen
36fd9d1b6a Bug fixes for GCP modules (as of 2019-01-09T15:35:45-08:00) (#50783) 2019-01-16 14:15:35 -05:00
Alex Stephen
41c1f8b9a5 Bug fixes for GCP modules (as of 2019-01-09T15:35:45-08:00) (#50784) 2019-01-16 14:15:15 -05:00
Alex Stephen
5ca5936e05 Bug fixes for GCP modules (as of 2019-01-09T15:35:45-08:00) (#50785) 2019-01-16 14:15:03 -05:00
Brian Coca
eca7c3c8c7 Prevent duplicate role insertion into roles: (#50552)
* Corner case in which import_role would add another instance of a role with the same signature into roles: when it already existed there.

  roles:
	- name: a
  tasks:
       - import_role: name=a

  would execute role 'a' 3 times instead of the intended 2 (x2 in roles: phase +1 in tasks:)

* added tests
2019-01-16 13:39:03 -05:00
Alex Stephen
5137bd5958 Bug fixes for GCP modules (as of 2019-01-09T15:35:45-08:00) (#50786) 2019-01-16 12:58:57 -05:00
Dag Wieers
a79441ca30
Rename MSC modules to MSO nomenclature (#50959)
* msc_tenant: improve docs

* Rename MSC modules to MSO

* Rename MSC-related objects to MSO nomenclature

* Add missing doc fragments
2019-01-16 14:53:38 +01:00
Hannes Ljungberg
d264bf4f4e docker_swarm_service: Add option tests (#50699)
* Add option tests

* Check for api version on publish

* Enable configs tests

* Remove unsupported test

* Let main.yml hande creation/destruction of swarms

* Revert "Remove unsupported test"

This reverts commit 50f46bb04e.

* Revert "Enable configs tests"

This reverts commit a94054b0bb.

* Fix typo to properly clear secrets
2019-01-16 03:50:06 -05:00
Matt Clay
1d51c425ba Add missing file deps to vmware_inventory test. 2019-01-16 00:49:18 -08:00
Matt Clay
634533208e Fix integration test shebangs and update tests.
* Integration tests now have their own list of allowed shebangs.
* Use `#!/usr/bin/env bash` instead of `#!/bin/bash`
  since the location is different on various platforms.
2019-01-15 14:08:26 -08:00
Matt Clay
bca50b47ed Switch set_fact test to private inventory.
Fixes a test failure when there is no explicit localhost in inventory.
2019-01-15 00:32:27 -08:00
Matt Clay
6a0452559b Handle non-target file deps for integration tests.
Some integration test targets have dependencies on files outside
the `test/integration/targets/` directory tree. Changes to these
dependencies can result in unexpected test failures since they do
not trigger integration tests which depend on them.
2019-01-14 23:58:10 -08:00
Jordan Borean
3db6b9b416
ansible-test git: kill gpg-agent to remove locks (#50917)
* ansible-test git: kill gpg-agent to remove locks

* skip gpg-agent kill for OpenSUSE
2019-01-15 17:26:03 +10:00
Jordan Borean
03669cdcdd
ansible-test: fix cloud_init_data_facts for Ubuntu 18.04 (#50916) 2019-01-15 14:58:43 +10:00
Jordan Borean
a54eb58156
ansible-test: fix dpkg_selections on Ubuntu 18.04 (#50915) 2019-01-15 14:37:20 +10:00
Matt Clay
7b4bc572de
Fix ansible-test target dependency issues. (#50908)
* Log dependencies at verbosity level 4.

This makes it easier to debug target dependency issues.

* Scan symlinks for target dependencies.

Some test targets use symlinks to files in other test targets.
These dependencies were previously undetected. This could result in
changes made to dependencies without triggering the dependent tests.

* Track missing target deps with `needs/target/*`.

Some existing test targets have untracked dependencies on other
test targets. This can result in changes to those dependencies
not triggering their dependent tests, resulting in test failures
after a PR is merged.

This PR adds the appropriate `needs/target/*` aliases to track
those dependencies, along with appropriate processing in
ansible-test to handle the new aliases.

* Scan meta dependencies in script targets.

Script targets are often former role targets which were converted
to allow custom invocations of ansible-playbook. These targets still
have their meta dependencies, but they were not being detected.

This could result in changes to dependencies not triggering the
targets which depend on them.
2019-01-14 19:57:32 -08:00
Jordan Borean
8c5b2048de
ansible-test: add postgresql var file for Ubuntu 18.04 (#50914) 2019-01-15 13:39:42 +10:00
Jordan Borean
518699988f
ansible-test: rename setup_mysql_db Ubuntu name to work with 18.04 (#50907) 2019-01-15 12:19:40 +10:00
Jordan Borean
bbad033a5e
ansible-test: apt cleanup and futher 18.04 fixes (#50906) 2019-01-15 11:16:15 +10:00
Jordan Borean
2fcc3593cc
ansible-test setup_dep_repo trust package repo (#50795) 2019-01-15 09:02:32 +10:00
Matt Clay
15b1a31aa8 Use different test package in pip test.
This avoids conflicts with other tests such as firewalld,
which use the decorator package installed using OS packages.
2019-01-14 13:02:51 -08:00
Strahinja Kustudic
eb8294e6d9 Fix create home dir fallback (#49262)
When a user home dir is not created with `useradd`, the home dir will now
be created with umask from /etc/login.defs. Also fixed a bug in which
after a local user is deleted, and the same user exists in the central
user management system, the module would create that user's home.
2019-01-14 16:01:26 -05:00
Jordan Borean
91522bd9c4
test subversion - support Ubuntu 18.04 (#50791) 2019-01-15 06:26:16 +10:00
Felix Fontein
bbd2e31e9f Revert "openssl_csr: Allow to use cryptography as backend (#50324)"
This reverts commit 409f8a15bd.
2019-01-14 09:10:38 -08:00
Karsten Jakobsen
53437e80d9 VMware: New module vmware_drs_group_facts (#50649)
* Added new vmware module for gathering facts for DRS groups
* Update lib/ansible/modules/cloud/vmware/vmware_drs_group_facts.py
* Updated doc
* Fixed integration test with mutual exclusive paramteres

Co-Authored-By: karstenjakobsen <karsten@karstenjakobsen.dk>
2019-01-14 21:56:12 +05:30
Karsten Jakobsen
8fa01a22a1 VMware: New module vmware_drs_group (#50650)
* Added new vmware module for creating DRS VM or Host groups in a given cluster
* Fixed typo in module name
* Added better docstrings. Fixed better messaging for existing groups. Added delete example.
* Update doc
* Update lib/ansible/modules/cloud/vmware/vmware_drs_group.py
* Updated logic, so result is populated with correct data even if no changes are made
* Update lib/ansible/modules/cloud/vmware/vmware_drs_group.py
* Improved performance by getting group_obj in init()
* Fixed syntax error and added group_name as required if state is
* Added state= to integration test

Co-Authored-By: karstenjakobsen <karsten@karstenjakobsen.dk>
2019-01-14 21:55:26 +05:30
Felix Fontein
409f8a15bd openssl_csr: Allow to use cryptography as backend (#50324)
* Allow to use cryptography as backend for openssl_csr.

* Use different curve.

* Adding changelog.

Includes changelog fragment for #49416, which didn't include one.
2019-01-14 13:33:51 +00:00
Yuwei Zhou
eaf9da4dff Support curated return value for network interface and refine test (#50482) 2019-01-14 14:17:31 +08:00
Matt Clay
d59bc9ae48 Move unrelated connection test to separate target. 2019-01-11 15:27:06 -08:00
Felix Fontein
0e7a9a2771 docker_volume: revert #47390 (#50663)
* Revert "Fix option change detection / force support for docker_volume. (#47390)"

This reverts commit 8ef994fbc5.

* Update changelog.

* Adjusting tests.
2019-01-11 14:41:37 -06:00
Matt Clay
fd56788a14 Fix dpkg_selections integration test.
Download package from S3 since the previous location no longer exists.
2019-01-11 09:39:27 -08:00
hyperized
64bacb0e02 Setup TLS integration test for RabbitMQ (#50363)
* Make TLS available for RabbitMQ

* Use correct path

* Include cleanup

* Also remove unused package

* Don't generate a TLS cert every time if one already has been generated

* Add newlines, clean up repository and clarify block purpose

* One too many new lines :)

* Make TLS certs static
2019-01-11 17:25:04 +00:00
James E. King III
1ae365c112 azure_rm_managed_disk: properly handle os_type on creation and update (#49385) 2019-01-11 22:09:26 +08:00
Yuwei Zhou
0f6252baf3 dns zone enhancement and return curated value (#50740) 2019-01-11 16:38:29 +08:00
Yuwei Zhou
9487815a26 azure virtualmachine scaleset supports loadbalancer update (#50132) 2019-01-11 16:33:13 +08:00
Yuwei Zhou
3e2e67c677 Add support for idle_timeout, version and ipTags, curated in facts module (#48923) 2019-01-11 13:36:50 +08:00
Matt Clay
6c7003127f Compare output as JSON to avoid sort issues. 2019-01-10 17:42:58 -08:00
Matt Clay
e5094e8071
Cleanup integration test inventory. (#50753)
* Move var_blending test inventory into test.
* Remove Amazon specific inventory entry for tests.
* Remove Azure specific inventory entry for tests.
* Move var_precedence test inventory into test.
* Move unicode test inventory into test.
* Remove unused inventory entry.
* Move gathering_facts test inventory into test.
* Move delegate_to test inventory into test.
* Clean up inventory for binary_modules test.
* Clean up integration test inventory.
2019-01-10 14:45:12 -08:00
Yuwei Zhou
07c6ce2dbf Curate the virtual network facts module (#50311) 2019-01-10 15:53:23 +08:00
Matt Clay
4915920d71 Use relative inventory paths instead of symlinks. 2019-01-09 19:10:34 -08:00
Matt Clay
c04b69208d Move any_errors_fatal test inventory into test. 2019-01-09 19:09:33 -08:00
Matt Clay
828e8d4957 Move include_import test inventory into test. 2019-01-09 19:09:33 -08:00
Matt Clay
dfc97dcefd Move meta_tasks test inventory into test. 2019-01-09 19:09:33 -08:00
Matt Clay
893548addb Move strategy_linear test inventory into test. 2019-01-09 19:09:33 -08:00
Yuwei Zhou
c405fe3098 azure_managed_disk enhancement (#50317) 2019-01-10 10:41:43 +08:00
Matt Clay
6179f2f51c
Merge pull request #50735 from mattclay/callback-inv
Move callback_default test inventory into test.
2019-01-09 18:00:17 -08:00
Felix Fontein
c89d14da99 Add delay to fix spurious test breaks. 2019-01-09 14:04:40 -08:00
Matt Martz
6918b4e8f4
Add tests for WANT_JSON and old style modules (#50555)
* Add tests for WANT_JSON and old style modules

* quote source path

* Attempt to further appease tests

* Check for file and not just exists

* omg don't be dumb

* moar fixes

* shellcheck is the worst :)

* Test the custom modules for failure without arg files
2019-01-09 14:43:25 -06:00
Abhijeet Kasurde
17bb4f4932 default: callback plugin allow unreachable task to stderr (#50533)
Provide toggle flag to allow display of unreachable task to stderr
using default callback plugin.

Fixes: #48069

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-01-09 11:43:59 -05:00
Anil Kumar Muraleedharan
cb89b1758d Lenovo cnos l2interface (#50641)
* Adding cnos_l2 interface module and its associated Integration test as well as Unit test code
2019-01-09 10:46:56 -05:00
Anil Kumar Muraleedharan
f5ebd9736c Lenovo cnos banner new module (#50145)
* Adding cnos_banner module to the list.
2019-01-09 10:43:57 -05:00