Commit graph

1330 commits

Author SHA1 Message Date
Sloane Hertel
ec1287ca7e
Fix notifying handlers by using an exact match (#55624)
* Fix notifying handlers by using an exact match rather than a string subset if listen is text rather than a list

* Enforce better type checking for listeners

* Share code for validating handler listeners

* Add test for handlers without names

* Add test for templating in handlers

* Add test for include_role

* Add a couple notes about 'listen' for handlers

* changelog

* Add a test for handlers without names

* Test templating in handlers

* changelog

* Add some tests for include_role

* Add a couple notes about 'listen' for handlers

* make more sense

* move local function into a class method
2019-06-27 17:29:20 -04:00
Hannes Ljungberg
1b90e10cf0 docker_swarm_service: Make secret_id and config_id optional (#58299)
* Lookup secret id by name if not set

* Lookup config id by name if not set

* Add changelog fragment

* Remove usage of secret/config_id in examples

* Python 2.6 compat

* Extend secrets and configs tests
2019-06-27 22:24:34 +02:00
Martin Krizek
5064e67d37 yum: take care of stale/invalid yum.pid (#58457)
* yum: take care of stale/invalid yum.pid

* Add changelog
2019-06-27 15:24:14 -04:00
Matt Martz
939e2b4c79 Use the filename from AnsibleFileNotFound instead of the included file. Fixes #58436 (#58464) 2019-06-27 15:05:42 -04:00
Sam Doran
20ad120829 Omit -A and -G options in local mode since luseradd does not support these (#55401)
Add integration tests
2019-06-27 14:46:38 -04:00
Matt Clay
f109184753 Recognize module tracebacks on stdout and stderr.
Module tracebacks may be reported on stdout instead of stderr when
using some connection plugins. For example, the ssh connection plugin
will report tracebacks on stdout due to use of the -tt option.

This change results in tracebacks being recognized on both stdout
and stderr, instead of the previous behavior of just stderr.

ci_complete
2019-06-26 15:45:46 -07:00
Brian Coca
1a9b1d0edd Fix unhandled errors in command module 2019-06-26 14:58:05 -07:00
Sam Doran
9ba7015458
podman_image_info - Do not fail when nonexistant image name is provided (#57962)
* Account for older versions of Podman lacking 'exists'
2019-06-26 17:04:26 -04:00
Brian Coca
4f78573a99
Added 'use' option to hostname (#56679)
* Added 'use' option to hostname

  fixes #25543
2019-06-26 10:39:28 -04:00
plastikat
88c0907fed rabbitmq_user: Handle non-zero exit codes (#56164) (#57738)
When provided with a wrong password `rabbitmqctl
authenticate_user` returns a non-zero exit code
(65). This seems to be unexpected by the module and
it fails when `update_password` is set to 'always'.

To mitigate this behavior we augment the `_exec`
method by adding a `check_rc` flag (which defaults
to `True`, hence it's backward-compatible) and
override it when we need it (in `check_password`
method to address #56164).
2019-06-26 14:40:17 +02:00
ShachafGoldstein
65b0e1425b win_pagefile - Fix idempotency when same settings as current (#57893)
* win_pagefile - Fix idempotency when same settings as current

* Fix tests and code

* Fix problem with system managed

* Fix again systemmanaged detection

* Change check of systemmanged in creation

* Fix readability and wrong flag for test
2019-06-25 13:19:59 -07:00
Matt Martz
bc25ac20e1
Set _ansible_verbose_override in gather_facts action plugin. Fixes #58310 (#58339) 2019-06-25 10:28:09 -05:00
Martin Krizek
9069a681aa sysctl: fix 'err' referenced before assignment (#58161)
* sysctl: fix 'err' referenced before assignment

Fixes #58158

* Add changelog
2019-06-25 11:13:34 -04:00
Ondra Machacek
d50ee592d0 kubevirt: Add hostname and subdomain parameters (#57223) 2019-06-25 15:19:27 +02:00
lolcube
547a29805e openssh_keypair: bugfix make regenerating keypairs via force possible… (#57801)
* openssh_keypair: bugfix make regenerating keypairs via force possible / add invalid file handling

* openssh_keypair: change permissions of read-only file instead of deleting it for regeneration; add changelog fragment

* address review feedbak, refactor

* add integration tests for bigfixes

* linter: fix indent

* fixup integration tests: use force when regenerating an invalid file

* linter: fix indent

* openssh_keypair: address review feedback

* openssh_keypair: fixup, remove backtick

* openssh_keypair: address review feedback

* Only pass 'y' into stdin of ssh-keygen when file exists.
2019-06-24 21:45:49 +02:00
Matt Martz
57d8b68c03
Use to_text on value to activate _fail_with_undefined_error (#58214)
* Use to_text on value to activate _fail_with_undefined_error. Fixes #12186

* Add comment explaining in depth what to_text gives us
2019-06-24 12:43:18 -05:00
Andrey Klychkov
278c59b17e postgresql_privs: bugfix of 27327 - incorrect views handling (#58272) 2019-06-24 18:08:12 +05:30
pratikgadiya12
44058e9425 Allow multiple databases(not all) to be dumped from mysql (#56721)
* Allow multiple databases(not all) to be dumped from mysql

Fixes: #56059

* Altered fail message to provide atleast one database name

* Minor grammatical fix
2019-06-24 09:29:18 +02:00
Felix Fontein
75ca8eb42f
openssl_certificate: fix failing SAN comparisons (#58256)
* Fix failing SAN comparison for older cryptography versions due to not implemented __hashh__ functions.

* Fix SAN comparison: IPv6 addresses need to be normalized before comparing strings.

* Add changelog.

* Fix comment.
2019-06-24 06:34:12 +02:00
Abhijeet Kasurde
73dc4d7e97
Move changelog entry to fragment directory (#58065)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-06-24 09:35:20 +05:30
Felix Fontein
4a12be31fb docker_* modules: improve error message when docker-py is missing (#57914)
* Improve error for docker modules when docker-py can't be imported.

* Add changelog.

* Mention platform and Python interpreter in more cases.

* Clarify wording.

* Adjust tests.
2019-06-23 06:27:33 -04:00
Klaus Frank
fbdf6e59f2 Fix ansible-vault cipher_whitelist (#57272)
* Fix ansible-vault cipher_whitelist Fixes: #57271

* Add changelog for #57272
2019-06-22 11:14:37 -04:00
Sam Doran
bd55617a5b
hostname - Correct distribution for various Linux distros based on output from distro library (#56936)
* Adjust hostname classes based on output from distro

Corrects the following:
- OpenSUSE Leap
- ArchARM
- Oracle Linux

* Add CoreOS and Clear Linux distributions
2019-06-21 14:29:41 -04:00
Ryan Kraus
7d4e3af11e Add Python 3 support to ovirt4 inventory script. (#57824)
Python 3 only allows strings through the config parser. This is fine for 
the URL, Username, and Password since these values are required. The CA 
File is optional so an empty string is used in leiu of None in the 
config dictionary.
2019-06-21 12:05:45 -04:00
akatch
200eed6177 Implement display_ok_hosts and display_skipped_hosts for unixy (#53179)
* Implement display_ok_hosts and display_skipped_hosts like default callback

* Implement show_custom_stats and display_failed_stderr like default callback

* Fix pep8

* Clarify conditional

* Changelog fragment

* Import from defaults.py per feedback
2019-06-21 11:22:16 -04:00
Tobias
e7c39460ed ipaddr: Handle ipaddress index in network correctly (#57896)
This commit prevents integer indices from being parsed as ip nets

Fixes #57895

Signed-off-by: Tobias Schramm <tobleminer@gmail.com>
2019-06-21 15:26:08 +02:00
Felix Fontein
f8f2738351 docker_*: make modules more robust on Docker errors (#57913)
* Improve general error behavior if a Docker error is not caught.

* Don't die when network doesn't exist.

* Add changelog.

* Make API version always available. Also catch errors when retrieving version.

* Fix error message.

* Adjust fallback error messages.
2019-06-20 16:59:15 -04:00
Dmitriy Yakovlev
122d4164c5 docker_swarm_service: Added default value for mounts.source (#58039)
* Added default value for mounts.source

* Added the changelog fragment

* Added tests

* Fixed separators

* Moved the teardown section at the end
2019-06-20 15:58:32 -04:00
Felix Fontein
4188cd299b crypto modules: Improve requirements / error messages (#57868)
* Reformat requirements.

* Include Python lib versions in lib required error messages, if available.

* Update lib/ansible/modules/crypto/openssl_publickey.py

Co-Authored-By: MarkusTeufelberger <mteufelberger@mgit.at>

* Add changelog.
2019-06-20 21:31:00 +02:00
Matt Martz
ffd117132f
Create new instance of the action plugin per until iteration. Fixes #57886 (#58022) 2019-06-20 09:17:50 -05:00
Matt Martz
375ac76e58
ssh: Ensure debug messages are properly converted to text (#57850)
* ssh: Ensure debug messages are properly converted to text. Fixes #57843

* surrogate_then_replace is default, be less explicit

* We only needed to_text for display, not exceptions
2019-06-20 09:15:53 -05:00
Yurii Vlasenko
8c1c2afd02 docker_container: Change expected config source (#57969)
* Change expected config source

* make it conditional

* rename property

* Add changelog fragment

* make it string

* Update changelogs/fragments/57969-docker_container-change-expected-config-source.yml

Co-Authored-By: Felix Fontein <felix@fontein.de>
2019-06-19 23:32:59 +02:00
Kevin Breit
8f68c8d438 meraki_snmp - Enable check mode (#54625)
* Add support for check mode

* Add diff support

* Remove check mode for idempotent action
2019-06-19 11:35:10 -04:00
Nathaniel Case
f656959861
Fix RESTCONF media types (#58015)
Fixes #56680
2019-06-19 10:22:24 -04:00
Guillaume Martinez
ec7b18952b gitlab_runner: Fix idempotency when creating runner (#57833) 2019-06-18 13:12:12 +02:00
Will Thames
a66687f2d2 rds_instance: allow empty iops and storage_type (#57943) 2019-06-18 07:56:01 +02:00
Jordan Borean
40540f4d98
Fix changelog entry (#57979) 2019-06-18 15:37:34 +10:00
ShachafGoldstein
66728cb93f win_get_url - Fix handling of restricted headers (#57892)
* fix 57880

* ADded test

* Remove host header from test

* TEst error

* Fix tests

* fix user agent test
2019-06-18 05:25:38 +10:00
Jordan Borean
d0c4914469
win_shell - fix space escaping for custom executable (#57455) 2019-06-17 05:14:58 +10:00
Abhijeet Kasurde
6b16be638d
VMware: add facts about tags in vmware_host_facts (#56837)
Fixes: #46461

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-06-16 09:02:26 +05:30
Sergey
7910361b52 Fix failed mounts in podman connector and handle errors (#57741)
Like it's described in issue #57740 ansible podman fails to run
because of failed mount of rootless container.
2019-06-15 07:35:55 -04:00
Brian Coca
342d77b32d
removal of chdir in controller (#57781)
* removal of chdir in controller

also ensure fetch/put uses relative to task cwd
2019-06-14 13:45:41 -04:00
Brian Coca
de87b25a45
show host_vars/ also in --graph (#56307)
* show host_vars/ also in --graph

  fixes #53422
2019-06-14 13:40:22 -04:00
Martin Krizek
e9c83b7a17 gather_facts: clean up tmp files upon completion (#57845)
Fixes #57248
2019-06-14 12:55:22 -04:00
Sander Steffann
71a704cc14 netbox: inventory: fix implementation of groups option (#57689) 2019-06-14 06:29:46 +02:00
Kevin Breit
a85750dc98 Meraki - Convert response keys to snake_case from camelCase (#53891)
* Initial proposal for new parameter option for response format
- output_version parameter dictates the response key case
- new is snake_case, old is camelCase
- If new, conversion is done at the end of module execution
- This is purely a proposal and not a final draft

* Add support for ANSIBLE_MERAKI_FORMAT env var
- If env var is set to 'camelcase' it will output camelcase
- Otherwise, will default to snakecase
- Added note to documentation fragment
- As of now, all module documentation needs to be updated

* Fix pep8 errors and remove output_version args

* Restructure check in exit_json so it actually works

* Add changelog fragment

* Change output_format to a parameter with env var fallback
- ANSIBLE_MERAKI_FORMAT is the valid env var
- Added documentation

* Convert to camel_dict_to_snake_dict() which is from Ansible
- Fixed integration tests

* Fix yaml lint error

* exit_json camel_case conversion handles no data
- exit_json would fail if data wasn't provided
- Updated 3 integration tests for new naming convention

* convert_camel_to_snake() handles lists and dicts
- The native Ansible method doesn't handle first level lists
- convert_camel_to_snake() acts simply as a wrapper for the method
- There maybe a situation where nested lists are a problem, must test
- Fixed integration tests in some modules

* A few integration test fixes

* Convert response documentation to snake case
2019-06-13 15:07:30 -04:00
Adam Miller
d2dc4c9bc4 assign a sane default to yum/dnf lock_timeout, in line with cli (#57383)
* assign a sane default to yum/dnf lock_timeout, in line with cli

Fixes #57189

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

* fix typo in changelog snippet

Signed-off-by: Adam Miller <admiller@redhat.com>
2019-06-13 11:17:23 -04:00
Abhijeet Kasurde
00604d3f2c
VMware: Fix vmware_guest_move undefined VM name error (#57582)
* Updated testcase
* Added check mode support
* Added check for mutual exclusive for Name and UUID

Fixes: #57580

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-06-13 13:07:26 +05:30
Strahinja Kustudic
8e9f29c40c Added environment variables to gcp_compute to align with gcp_* modules (#57776)
Added all variables that are also used by the gcp_* modules as described
in the docs
https://docs.ansible.com/ansible/latest/scenario_guides/guide_gce.html#providing-credentials-as-environment-variables
2019-06-12 17:36:57 -04:00
Brian Coca
73a16749cb
Enable adjacent collections for ansible-doc (#57764)
* enable adjacent collections for ansible-doc
2019-06-12 17:10:17 -04:00
Strahinja Kustudic
f6a0f9874d Improve speed of the gpc_compute dynamic inventory (#57591)
To get all instances gcp_compute made a call to the Google API for each
zone separately. Because of this if all zones needed to be queried
fetching hosts lasted 30+ seconds. Now the module will use a single
query that will return all the instances, so the execution should last
just a few seconds.

This commit also suppresses a warning from the google-auth library about
using user credentials because if an Ansible user wants to use user
credentials, there is no need to warn him about it.
2019-06-12 16:38:48 -04:00
Mike Garrett
4bf051b8bb redfish: fix a problem with Chassis/Power URI (#56185)
Fixes #56137 - problem with Chassis/Power URI and GetChassisPower command - assemble URI from data in Chassis resource
2019-06-12 20:40:30 +02:00
xuxiaowei0512
5bddd55703 update vxlan (#57264)
* update vxlan

* add a changelog fragment for the PR 57264

* Update 57264-update-vxlan-to-fix-bugs.yml

update for change request

* Update ce_vxlan_vap.py

remove commented codes.
2019-06-12 13:00:55 -04:00
Kevin Breit
17c475b101 meraki_ssid - Improve change reporting (#56201)
* Improve change reporting for meraki_ssid
- Documentation is more clear about dependencies
- Not all change reports are accurate without new algorithm
- Improved integration tests

* Rename changelog fragment

* Enable all tests in integration tests
- Fix type merging

* Add more integration tests for code coverage

* Update URL creation
2019-06-12 11:06:00 -04:00
Martin Krizek
1fa7bfcd5d Fix --diff to produce output when creating a new file (#57744)
* Fix --diff to produce output when creating a new file

Fixes #57618

* Make the check more defensive
2019-06-12 10:56:14 -04:00
Mikhail Yohman
d07d394779 Bugfix: Creating two IPs in single run of netbox_ip_address (#56550)
* Found bug, fixed by moving the serialization of objects out of try while creating objects

* Added changelog to document fix
2019-06-12 10:45:20 -04:00
Kevin Breit
a50b3d7695 meraki_syslog - Module properly handles net_id parameter (#57286) 2019-06-12 10:44:05 -04:00
Kevin Breit
87169c4aa4 meraki_vlan - Enable check mode (#54627)
* Add support for check mode

* Add diff support
- diff support is based on "have" and "want" data structures.
- Review needs to be done on the diffs for accuracy and usefulness.
- Changed change mode changed responses to be accurate.

* Remove config template based integration tests
2019-06-12 10:43:02 -04:00
Kevin Breit
b13e5242e0 meraki_mr_l3_firewall - Fix integration test cleanup (#57562) 2019-06-12 10:28:09 -04:00
Alexey Kamenskiy
793c18506a lvg: fix default value type, should be str (#57723) 2019-06-12 14:52:43 +02:00
Martin Nečas
4052d6d294 set ovirt disk active default (#57464)
* set ovirt disk active default value to True

* disk default activate only when creating

* correct comment syntax

* add changelog

* ovirt disk activate update docs
2019-06-12 12:32:58 +02:00
ShachafGoldstein
7880be240f Remove usage of global var log_path for win_domain_* modules (#57092)
* Remove usage of global var log_path

* Add changelog and edit ignore.txt

* win_pagefile: not using testPath

* Revert "win_pagefile: not using testPath"

This reverts commit c8bc10234048257414454905e1c860a8f57a3b3f.

* PSLint error

* Update win_domain_membership.ps1

* Update win_domain_controller.ps1
2019-06-12 05:31:19 +10:00
ShachafGoldstein
d2909d5ef0 win_scheduled_task: Fix start/end boundry triggers to allow for timezone sync (#57282)
* Fix 49327

* Add a test

* Join test

* Test issue

* Fix missed assertion
2019-06-12 05:27:51 +10:00
ShachafGoldstein
1b5975f17e Fixes #54550 (#56279)
* "setup.ps1" - Change $env:COMPUTERNAME to [System.Net.Dns]::GetHostName(), to support non NETBIOS compliant hostnames

* Change method to base on WMI

* changed ansible_domain to use WMI

* Fixed per review

* Fixed dot stuff

* Revert "Fixed dot stuff"

This reverts commit a1d5be00f1.

* dot stuff

* dot stuff 2.0

* Update setup.ps1

* Wrap this up to go
2019-06-12 05:25:38 +10:00
Abhijeet Kasurde
6c23a8df66 VMware: Restrict vcenter_folder for vCenter
Folder creation API is only supported by vCenter, specifying
Standalone ESXi system will raise error.
This fix adds an user warning for suggesting this restriction.

Fixes: #49938

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-06-11 14:51:38 -04:00
Andrey Klychkov
a25acbbf83 postgresql_idx: self.__exec_sql -> module_utils.postgres.exec_sql (#57684)
* postgresql_idx: self.__exec_sql -> module_utils.postgres.exec_sql

* postgresql_idx: exec_sql, added a changelog fragment

* postgresql_idx: exec_sql, fix the changelog fragment
2019-06-11 10:07:03 -04:00
Andrey Klychkov
a8ebbecd53 postgresql modules: use postgres.exec_sql instead of __exec_sql methods (#57674)
* postgresql modules: use postgres.exec_sql instead of __exec_sql methods

* postgresql modules: use exec_sql, added changelog fragment

* Update changelogs/fragments/57674-postgres_modules_use_exec_sql_instead_of_methods.yml

Co-Authored-By: Felix Fontein <felix@fontein.de>
2019-06-11 13:42:53 +02:00
ShachafGoldstein
a87495d07c win_pagefile: not using testPath (#57093)
* win_pagefile: not using testPath

* Added changelog
2019-06-10 17:07:10 -04:00
ShachafGoldstein
a8e133105c win_domain_group_membership: Fix missing @extra_vars on Get-ADObject to support different domain and credentials for retrieval (#57429)
* win_domain_group_membership - Fix missing @extra_vars on Get-ADObject to support dirrent domain and credentials for retrival

* win_domain_group_membership - Fix missing extra_vars on Get-ADObject
2019-06-11 06:26:01 +10:00
Felix Fontein
13f73adef5
AWS: _facts -> _info (part 4) (#57651)
* Rename ec2_vpc_dhcp_option_facts -> ec2_vpc_dhcp_option_info.

* Rename ec2_vpc_endpoint_facts -> ec2_vpc_endpoint_info.

* Rename ec2_vpc_igw_facts -> ec2_vpc_igw_info.

* Rename ec2_vpc_nacl_facts -> ec2_vpc_nacl_info.

* Rename ec2_vpc_nat_gateway_facts -> ec2_vpc_nat_gateway_info.

* Rename ec2_vpc_net_facts -> ec2_vpc_net_info.

* Rename ec2_vpc_peering_facts -> ec2_vpc_peering_info.

* Rename ec2_vpc_route_table_facts -> ec2_vpc_route_table_info.

* Rename ec2_vpc_subnet_facts -> ec2_vpc_subnet_info.

* Rename ec2_vpc_vgw_facts -> ec2_vpc_vgw_info.

* Rename ec2_vpc_vpn_facts -> ec2_vpc_vpn_info.

* Update module defaults, add changelog and porting guide.

* Update BOTMETA.
2019-06-10 21:40:05 +02:00
Sloane Hertel
598a058afe
[FactCache] define first_order_merge method (#55781)
* Add first_order_merge method

Add test for updating a key that already exists

* changelog
2019-06-10 14:34:06 -04:00
Felix Fontein
804d5eaf8e
AWS: _facts -> _info (part 3) (#57635)
* Rename ec2_ami_facts -> ec2_ami_info.

* Rename ec2_asg_facts -> ec2_asg_info.

* Rename ec2_customer_gateway_facts -> ec2_customer_gateway_info.

* Rename ec2_eip_facts -> ec2_eip_info.

* Rename ec2_elb_facts -> ec2_elb_info.

* Rename ec2_eni_facts -> ec2_eni_info.

* Rename ec2_group_facts -> ec2_group_info.

* Rename ec2_instance_facts -> ec2_instance_info.

* Rename ec2_lc_facts -> ec2_lc_info.

* Rename ec2_placement_group_facts -> ec2_placement_group_info.

* Rename ec2_snapshot_facts -> ec2_snapshot_info.

* Rename ec2_vol_facts -> ec2_vol_info.

* Update module defaults, add changelog and porting guide.

* Forgot one occurence of ec2_instance_facts.

* Update BOTMETA.

* Break too long line.
2019-06-10 19:33:38 +02:00
Felix Fontein
fc4bbff6e1
AWS: _facts -> _info (part 2) (#57626)
* Rename cloudwatchlogs_log_group_facts -> cloudwatchlogs_log_group_info.

* Rename elasticache_facts -> elasticache_info.

* redshift_facts -> redshift_info.

* Rename route53_facts -> route53_info.

* Rename rds_instance_facts -> rds_instance_info.

* Rename rds_snapshot_facts -> rds_snapshot_info.

* Rename iam_mfa_device_facts -> iam_mfa_device_info.

* Rename iam_role_facts -> iam_role_info.

* Rename iam_server_certificate_facts -> iam_server_certificate_info.

* Rename elb_application_lb_facts -> elb_application_lb_info.

* Renaming elb_classic_lb_facts -> elb_classic_lb_info.

* elb_target_facts -> elb_target_info.

* Rename elb_target_group_facts -> elb_target_group_info.

* Update porting guide.

* Add changelog.

* Fix module defaults (both for this PR and #57613).

* Two fixes.
2019-06-10 17:48:07 +02:00
Matt Martz
c3ca3757c9 Provide a better error when python-dnf install fails (#57622) 2019-06-10 09:21:41 -05:00
Felix Fontein
51229eb99c
AWS modules: _facts -> _info (#57613)
* Rename aws_acm_facts -> aws_acm_info.

* Rename aws_az_facts -> aws_az_info.

* Rename aws_caller_facts -> aws_caller_info.

* Rename aws_kms_facts -> aws_kms_info.

* Rename aws_region_facts -> aws_region_info.

* Rename aws_sgw_facts -> aws_sgw_info.

* Rename aws_waf_facts -> aws_waf_info.

* Adjust docs.

* Add changelog and update porting guide.
2019-06-10 15:52:49 +02:00
Felix Fontein
039eb892ba
Second batch for _facts -> _info rename (#57020)
* Second batch of _facts -> _info.

* Forgot one reference.
2019-06-10 13:04:07 +02:00
Felix Fontein
ef2d70a806
Rename ali_instance_facts -> ali_instance_info (#57036)
* Rename ali_instance_facts -> ali_instance_info.

* Add changelog.
2019-06-10 12:40:50 +02:00
Bill Dodd
e5972ccbab redfish_command: Avoid power on/off commands if system already in target state (#56069)
* avoid power on/off commands if system already in target state

* add changelog fragment
2019-06-10 09:50:04 +02:00
Hideki Saito
d86183f595 tower_user: Fix to create a system auditor properly (#54585)
- Fixed issue #54446: tower_user cannot create an auditor user

Signed-off-by: Hideki Saito <saito@fgrep.org>
2019-06-10 09:48:02 +02:00
Bill Dodd
7eae4761b8 redfish: Add MACAddress property to GetNicInventory (#56864)
* add MACAddress property to GetNicInventory

* add changelog fragment
2019-06-10 09:45:56 +02:00
Bill Dodd
9151f343da redfish: docs: Add type for options (#56809)
* add type: for options in docs for Redfish modules

* add changelog fragment
2019-06-10 09:27:52 +02:00
ECRR
5cc6486a2b Merge authentication options back into a single field to prevent losing options beyond the first (#57507)
* Merge authentication options back into a single field to prevent losing options beyond the first

* Add integration test and changelog

* Fix multiple options for local type connections. Also fix sorting errors between local type connections that lack a src

* Build again because of github problems?

* Add spaces before comments
2019-06-10 09:16:01 +02:00
René Moser
c001391555
vultr_server: implement support for IDs to match resources (#55762) 2019-06-09 13:34:25 +02:00
Eric Pulvino
1661c87bae Fix lack of support for Cumulus Linux with Hostname module in Ansible v2.8.0. (#57493) 2019-06-07 15:40:20 -04:00
Iain Madder
91d326cb68 Update file.py's initial_diff() to list existing when state: absent (#56353) 2019-06-07 09:55:51 -04:00
Mikhail Naletov
fba67bbe53 Updated documentation for zabbix-screen module (#57325)
Updated module settings.
Do not check screens options because of module screens.
2019-06-07 13:36:25 +02:00
Matt Martz
728fce0c44 Perf improvement for Templar.is_template (#57489)
* Faster is_template
2019-06-06 15:49:26 -04:00
Brian Coca
b9b0b23015
safe_eval fix (#57188)
* just dont pass locals

 - also fix globals
 - added tests

* fixed tests
2019-06-06 15:36:22 -04:00
pratikgadiya12
72297db686 Renames Digital Ocean cloud _facts modules to _info (#57315)
Fixes: #57276
2019-06-06 19:33:19 +02:00
Ondra Machacek
d88739367e ovirt: Resolve also list of hrefs (#57299) 2019-06-06 10:58:26 +02:00
Ian Wienand
6f06fc9945 openssh_keypair: make fingerprint result a string (#57295)
The extant documentation says that the fingerprint return value is a
single string, but it is currently being returned as a split list.
Convert the returned value to a string as documented, and add some
basic test-case coverage for the return values.
2019-06-06 07:58:50 +02:00
smile37773
c6097a268c rename modules azure_rm_..._facts to azure_rm_..._info (#57395) 2019-06-06 12:10:27 +08:00
Andrey Klychkov
ea9a0f36f3 postgresql_table: 57352 bugfix, add schema handling (#57391)
* 57352 bugfix, add schema handling

* 57352 bugfix, added a changelog fragment

* 57352 bugfix, added tests for rename

* 57352 bugfix, fixed tests

* 57352 bugfix, fixed typos, cosmetic changes
2019-06-05 15:06:23 -04:00
jelle van der Waa
7a3914bd8b Support --valid_pgpkeys option in Git module ()
PR #55396

Make Git module support `--valid-pgpkeys` option, which allows
configuring a list of valid PGP fingerprints which are compared with the
used PGP fingerprint if verify_commit is true. This requires
verify_commit to be set to 'yes'.

Signed-off-by: Jelle van der Waa <jelle@vdwaa.nl>
Co-authored-by: Sviatoslav Sydorenko <webknjaz@redhat.com>
2019-06-05 20:18:37 +02:00
Kevin Breit
72f2d05b6f meraki_content_filtering - Enable check mode (#54638)
* Add support for check mode.

* Add diff support
- Need to analyze diff for accuracy
- Updated check mode changed value

* Improve test coverage

* Remove a duplicate integration test
2019-06-05 10:31:50 -04:00
Kevin Breit
6da2d40500 meraki_admin - Enable check mode (#54499)
* Add support for check mode

* Add changelog fragment

* Add diff support
- Fix a few changed status
- Removed auth_key check since that's done in module_utils now
2019-06-05 10:23:54 -04:00
Ed Costello
30aeab4709 Make aws_ses_identity module work when region is provided via environment or config. (#51627)
fixes #51531
2019-06-05 09:51:58 -04:00
Martin Krizek
46f8bd47ce file: return 'useful' error message for recursion error (#57222)
* file: return 'useful' error message for recursion error

Fixes #56397

* Fix line length

* Re-phrase the error message
2019-06-05 09:30:09 -04:00
Martin Krizek
18f2ed63e0
file: fix setting relative paths for src for hard links (#56055) 2019-06-05 15:26:40 +02:00
Martin Krizek
705d0201cf
file: fix setting attributes for symlinked file (#57217) 2019-06-05 15:25:43 +02:00
Jordan Borean
b5b75daaa5
win_chocolatey - honour version when bootstrapping chocolatey and fix package listing (#57208)
* win_chocolatey - honour version when bootstrapping chocolatey

* skip upgrade all step

* Fix install latest step

* Remove test changes now that Chocolatey is released

* tweak the package version detection
2019-06-05 09:10:10 +10:00
James Cassell
1fb0335243 group_chars: default change warning only when needed 2019-06-04 14:04:17 -07:00
dw
3fadf4a1cb Fix file descriptor leak in lineinfile module. (#57328) 2019-06-04 12:45:19 -04:00
Mikhail Naletov
8cf6f56a01 Added sort option for zabbix_screen module (#56237)
* Added sort option for zabbix_screen module

* FIX: sort variable

* Added changelog file

* Fixed misspelling

* Update lib/ansible/modules/monitoring/zabbix/zabbix_screen.py

Changed spelling in the documentation

Co-Authored-By: flowerysong <junk+github@flowerysong.com>
2019-06-03 21:23:20 +02:00
Felix Fontein
7b40b569b2
Rename memset_*_facts to memset_*_info (#57030)
* Rename memset_*_facts to memset_*_info

* Add changelog.
2019-06-03 21:19:49 +02:00
Abhijeet Kasurde
5162d21ea3 VMware: vSphere Automation SDK installation docs (#57280)
* VMware: adds instructions for installing vSphere Automation SDK to the dynamic inventory scenario
2019-06-03 13:52:30 -05:00
Andrey Klychkov
86be0985ce removed_module func: removed extra spaces from msg and docstring (#57209) 2019-06-03 10:00:19 -04:00
Sam Doran
2e0229a4b6 ansible-vault: convert vault_password_files to list to prevent traceback (#57186)
* Convert vault_password_files to a list

* Add changelog and tests
2019-06-03 12:14:06 +02:00
Sloane Hertel
21cd24a0dd improve conditional warnings (#57190)
* Fix order for warning on templated conditionals

Fix bare variable warnings when the variable is a boolean

* changelog

* Add tests for cases that should and should not give warnings

If the behavior may change when the default behavior for CONDITIONAL_BARE_VARS becomes False there should be a warning. Boolean type conditionals will not change in behavior so don't warn.

* oops, forgot to add files

* typo
2019-06-03 12:12:32 +02:00
Fabrice
7364e79c0d k8s: Fix .to_dict not needed (#56147)
* k8s: Fix .to_dict not needed

* Add changelog fragment
2019-06-01 11:42:48 +10:00
Paddy Newman
2ef7759be1 Allow syslog_json callback options to be set in an Ansible configurat… (#57232)
* Allow syslog_json callback options to be set in an Ansible configuration file.

The syslog_json documentation says that it supports options via an Ansible
configuration file. In fact, they can only be specified via environment
variables.

I've updated the module to use the standard "get_options" handling which means
that it can now support options via environment variables *or* the
configuration file.

Options can be set in the configuration file as follows:

```
callback_whitelist = syslog_json

[callback_syslog_json]
syslog_server = localhost
syslog_port = 514
syslog_facility = user
```

* Use the original, documented, names for the modules options.

In the documentation text change syslog_server to server, syslog_port to port
and syslog_facility to facility.

* Add an item to the changelog.

* Update 57232-syslog-json-configuration-options.yml

Fix a YAML syntax error / typo.
2019-05-31 14:29:15 -04:00
Nathaniel Case
4142cd595e
Plugin paths need to be sent in exectutor, too (#57126)
* Combine `_start_connection` methods into executor
2019-05-31 11:44:42 -04:00
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
Tim Hunter
4c00fc7b32 update pkg_mgr.py for Amazon Linux support (#56618) 2019-05-30 10:18:31 +02: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
Kevin Backhouse
79bb7bde5f apt_repository: Fix crash caused by cache.update() raising an IOError on timeout. (#51996)
* Fix crash caused by cache.update() raising an IOError on timeout.

* Add changelog fragment.
2019-05-29 15:59:51 -04:00
Felix Fontein
c47e9d22b4
Rename one_image_facts -> one_image_info (#57035)
* Rename one_image_facts -> one_image_info.

* Add changelog.

* Forgot symlink.
2019-05-29 21:23:25 +02: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
Kevin Breit
57e1063fc7 meraki_config_template - Remove mandatory network lookup (#56525)
* Module only makes network lookups when needed instead of every execution

* Formatting fixes
2019-05-29 19:27:38 +05:30
ShachafGoldstein
486370a744 Fix win_iis_virtualdirectory to remove a virtual directory that contains children (#56569)
* FIX #49755

* Added changelog fragment

* Changes according to review

* Fixed changelog
2019-05-29 05:59:50 +10:00
ShachafGoldstein
4490c0ba51 correct behaviour of win_iis when using site_id if site not found (#56567)
* Fixed #47057

* Fix trailing whitespace

* Change for review
2019-05-29 05:31:00 +10:00
ShachafGoldstein
94566ed79c Win_hostname module: Change name check to WMI (#56420)
* Change name check to WMI

* Changelog fragment

* Fixed per review
2019-05-29 05:30:16 +10:00
Ilya Zonov
35c8739c2a Add full change check for rabbitmq policy (#19073)
Add check for all policy fields (name, apply_to, pattern, tags,
priority) to have correct changed state. Previosly changed state was
based on policy name only.

* Add support for rabbitmq 3.7
* Fix exec args for rabbitmqctl status
* Add changelog and fix description for Ansible 2.9
2019-05-28 15:06:06 -04:00
Tyler Hartley
1d22909f7c Make second group match of ufw status output optional (#56678)
* Make second group match of ufw status output optional

Fixes #56674

* Fix comparison logic.

* Add changelog fragment
2019-05-28 20:54:11 +02:00
Felix Fontein
86928a5f74
docker_image: fix module failing when build option is used without specifying path (#56940)
* Fix module failing when build option is used without specifying path.

* Add changelog.
2019-05-28 20:48:08 +02:00
Felix Fontein
56e2d48612
docker_image: fix default handling of old docker-build options nocache and rm (#56610)
* Fix usage of nocache parameter.

* Fix defaults.

* Add changelog.
2019-05-28 20:47:31 +02:00
Matt Williams
cf00883c9d Return results even when the cache is disabled (#55505)
* Return results even when the cache is disabled

By default the cache is disabled and so the results of the API call
are not placed in there for the return statement to fetch.

* Always update self._cache to return
2019-05-28 13:44:00 -04:00
Brian Coca
1a893a48a3
Allow finer grained control for dupe YAML keys (#56933)
* Allow finer grained control for dupe YAML keys

  fixes #16903

* expand option to handle errors

* remove clog for previous version of toggle

* added missing parens

* fix typoe
2019-05-28 11:57:16 -04:00
Brian Coca
615db8e6f4
clarify package facts errors and warnings (#56060)
* clarify package facts errors and warnings

  fixes #56056
2019-05-28 10:01:47 -04:00
Felix Fontein
61b48778a7
Rename _facts -> _info (#57028) 2019-05-28 13:43:04 +02:00
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
Yury V. Zaytsev
fcfc122205 route53_facts: add check mode support (#56900)
* route53_facts: add check mode support

* route53_facts: add changelog fragment mentioning check mode support

* route53_facts: alter changelog fragment type from `minor_changes` to `bugfixes`

* Update changelogs/fragments/56900-route53-facts-check-mode.yaml

Co-Authored-By: Felix Fontein <felix@fontein.de>
2019-05-27 23:44:55 +02:00
Felix Fontein
7a0af34ba9
First batch _facts -> _info rename. (#56822) 2019-05-27 18:17:42 +02:00
Lukas Kämmerling
7f08de6b6c hcloud_volume attach step should be idempotent (#56906) 2019-05-27 07:48:48 +02:00
Martin Adler
d5ab712fad DNS Made Easy fix locale for date string (#44624) 2019-05-26 23:49:17 +02:00
SirFerdek
37df89b2d8 [docker_network] Fix idempotency when using aux_addresses in ipam_config (#56901)
* [docker_network] Fix idempotency when using aux_addresses in ipam_config

Mismatch between keys returned by Docker API (AuxilliaryAddresses) vs
expected by Ansible module (aux_addresses) resulted in tasks always
have status 'changed'. The existing code normalizing one set of
keys to another missed this special case where converting
CamelCase to lowercase is not sufficent.

Please see
https://github.com/moby/moby/blob/master/api/types/network/network.go
for reference.

* Correct keywords formatting in changelog file

Co-Authored-By: Felix Fontein <felix@fontein.de>
2019-05-26 08:40:09 -04:00
Felix Fontein
2f523ad08e
docker conncetion plugin: accept 'dev' as 'newest version' (#56947)
* Accept 'dev' as 'newest version'.

* Add changelog.

* Fix YAML.
2019-05-26 14:15:25 +02:00
Brian Coca
a7837edcf2
some logging fixes (#56311)
* some logging fixes

  fixes #25757, #25758, #25761
  alternative to #41859 and #25765

* better color handling, courtesy of alikins
2019-05-24 16:43:47 -04:00
Brian Coca
27dcf8aaab
Not native, but text (#55676)
* use to_text instead of to_native
* cleaned up some imports and other pyflakisms
* fix missing lib messages
2019-05-24 14:49:04 -04:00
Martin Krizek
6e66ea9f78 Properly detect is_chroot fact on XFS for non-root (#56899)
Fixes #56437
2019-05-24 14:23:46 -04:00
Raimund Hook
6c74e29618 Add dns_domain into os_network.py (#56453)
* Add dns_domain into os_network.py

* Added changelog fragment for PR 56453

* fixed linting issue (lib/ansible/modules/cloud/openstack/os_network.py)
2019-05-24 10:27:20 -05:00
Dominik Holler
bc50a52ee2 Handle binding:vnic_type as optional (#55526)
According to the OpenStack Networking API
the attribute binding:vnic_type of a port is optional.
This change enables the os_port module to handle
binding:vnic_type as optional.
2019-05-24 11:22:16 -04:00
Brian Coca
f96529d20e
warn on systemd globs (#56645)
* warn on systemd globs
* added note to docs

  fixes 55476
2019-05-24 10:52:36 -04:00
Brian Coca
4adb7cfb5f
Always keep subset data for callbacks (#56881)
results were only being preserved during no_log
  fixes #56704
2019-05-23 17:15:04 -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
Martin Krizek
7b9d7e6b5c yum: handle "_none_" value for proxy (#56725)
* yum: handle "_none_" value for proxy

Fixes #56538

* Fix sanity check
2019-05-23 10:41:17 -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
22b9525aa9
Preserve ssh error (#56460)
* Preserve ssh error

* more details on fail

* removed redundant caption to errors
2019-05-23 10:03:35 -04:00
Andrew Gaffney
7f0bf0a98a
Config toggle for duplicate dict key warnings (fixes #56799) (#56805) 2019-05-23 08:42:44 -05: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
Gonéri Le Bouder
5005c353ef VMware: vcenter_folder: print full path of the new folder (#55237)
Print the full path of the freshly created folder in the output string.
2019-05-23 16:21:22 +05:30
Felix Fontein
391a1042c2 openssl_pkcs12: fix crash due to wrong path used for loading key in check mode (#56808)
* Used wrong path for private key.

* Add changelog.
2019-05-22 23:34:42 +02:00
Paddy Newman
57e42842b0 Add a new "log_folder" option to the log_plays callback plugin. (#56717)
* Add a new "log_folder" option to the log_plays callback plugin.

A a new option for the log_plays callback plugin which allows the user to
control where the callback where creates log files.

The option can be set via the ANSIBLE_LOG_FOLDER environment variable or in the
Ansible configuration file, e.g.:

[callback_log_plays]
log_folder = /path/to/my/log/folder
2019-05-22 17:00:00 -04:00
Brian Coca
8fe9618c84
preserve underlying block building error (#56465)
fixes #56462
2019-05-22 11:28:06 -04:00
Brian Coca
69b2d7e0f3 fix collection adjacent loading with --playbook-dir (#56194)
* added inventory adjacent test
2019-05-22 11:06:54 -04: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
a68ac729ea yum: fix false error msg about autoremove support (#56459)
* yum: fix false error msg about autoremove support
2019-05-21 11:37:04 -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
Matt Martz
493cf817a9 Don't rely on netloc for determining hostname and port, just use hostname and port (#56270)
* Add changelog fragment
* Fix IPv6 address parsing for py2.6, and add tests
* make sure hostname isn't None
2019-05-20 16:50:54 -04:00
Felix Fontein
708bda06aa docker connection plugin: make privilege escalation code more similar to local.py (#56288)
* Make more similar to local.py

* Fix typo.
2019-05-19 08:00:25 -04: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
Kevin Breit
27aca731b3 meraki_ssid - Add examples to documentation (#56425)
* Add standalone copy/paste-able examples
2019-05-17 08:21:34 -05:00
Kevin Breit
2a187f362a meraki - Unchanged requests now return the original data (#53576)
* Unchanged requests now return the original data

* Add changelog fragment

* Add integration tests for returned data for meraki_network

* Add integration tests for returned data

* Improve idempoetent output
- Make MX l3 rules always show default rule
- Add integration tests

* Add integration tests for returned data on meraki_network

* Improved idempotency in a few modules and improved tests
2019-05-17 08:34:16 +05:30
Matt Martz
867e357eb1
When not using file_per_task, make sure we don't prematurely close the perf files (#56477)
* When not using file_per_task, make sure we don't prematurely close the perf files

* add changelog fragment
2019-05-16 15:38:36 -05:00
Kevin Breit
d59eb9edab meraki_switchport - Improve reliability (#54275)
* Rewrite much of the execution of meraki_switchport
- Previous versions had problems with idempotency and allowed_vlans

* Modified payload creation
- Parameter map is used
- propsed is created using .copy()
- Much cleaner this way

* Add whitespace for lint

* Add bugfix snippet for changelog
2019-05-16 12:10:32 -04:00
Nathaniel Case
409c46b2fa
Properly handle check for session support on eos (#56407)
* Properly handle eos session check.

* Why is eos_use_sessions an int?

* Add changelog
2019-05-16 10:44:22 -04:00
Gonéri Le Bouder
a4f08617d4 VMware: vmware_datastore_maintenancemode: check params (#56515)
Check the `datastore` parameter and raise an error if nothing has been
found.
2019-05-16 19:52:17 +05:30
Gonéri Le Bouder
216260cbb4 VMware: vsphere_copy: ability to target an esxi instance (#55930)
*`vsphere_copy` was only able to interact with a vCenter instance. This
patch change that.
* In addition, it also makes use of the `vmware_argument_spec`.

Co-Authored-By: Abhijeet Kasurde <akasurde@redhat.com>
2019-05-16 10:40:07 +05:30
spidermila
ca7ff2ad05 VMware: return info about SCSI controller in vmware_guest_disk_facts (#56442)
vmware_guest_disk_facts module added bus number of the SCSI controller to the output
2019-05-16 10:27:17 +05:30
Brian Coca
183ba93ba3
removed previouslly deprecated settings (#55662)
* removed previouslly deprecated settings

  fixes #55304

* also removed from play context
2019-05-15 16:36:30 -04:00
Adam Miller
666dfdc551 YUM - handle enable of non-existent repo (#53286) 2019-05-15 08:45:54 +02:00
Jordan Borean
fd65f037f8
winrm - fix failure parsing for send input errors (#56245) 2019-05-14 19:55:41 -04:00
Martin Krizek
826b99d4bd dnf: fix wildcard matching for state: absent (#56013)
* dnf: fix wildcard matching for state: absent

Fixes #55938

* Add changelog...

* Fix sanity check failure...
2019-05-14 17:34:10 -04:00
Brian Coca
674a57c3fa
fix module defaults (#56020)
* fix module defaults

 - corrected precedence (specific module > group)
 - made into reusable function
 - use from gather_facts/service/package to match 'actual module used'
2019-05-14 09:59:18 -04:00
Tzur Eliyahu
ef0851dcd4 IBM_Storage: fixed a bug - Unwanted arguments cause failure (#56357)
* IBM_Storage: fixed a bug which caused several of our modules to pass unwanted arguments and fail

* IBM_Storage: Added a changelog for 56357 bug
2019-05-13 12:41:06 -04:00
Miguel Duarte Barroso
c6a8e99d34 Added the mtu property to the os_network module (#55881) (#54730)
The networking API v2 specification, which is implemented
by openstack neutron, features an optional MTU parameter that
allows operators to specify the value for the maximum
transmission unit value.
2019-05-12 10:26:27 +02:00
Bill Dodd
1a6b95a8f1 redfish: Add If-Match ETag header to PATCH requests (#56150)
* add If-Match ETag header to PATCH requests

* add changelog fragment

* ensure header keys are lowercase

* fix dict comprehension for python 2.6 and earlier
2019-05-12 10:24:07 +02:00
Abhijeet Kasurde
7e6be4e634
VMware: vmware_guest_disk support for use_instance_uuid (#56107)
All vmware_guest_* module support for use_instance_uuid from Ansible 2.8,
somehow vmware_guest_disk missed from this change.
This fix adds support for use_instance_uuid in vmware_guest_disk.

Fixes: #56021

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-05-11 11:58:13 +05:30
Abhijeet Kasurde
9f86257a65
VMware: support folder param in vmware_vm_facts (#56298)
folder can be used as a filter while gathering facts about VMs.

Fixes: #56125

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-05-11 11:56:57 +05:30
Lars Kellogg-Stedman
61e476b908 connection/docker: add privilege escalation support (#55816)
As described in #53385 (and #31759), the docker connection driver did
not support privilege escalation. This commit is a shameless
cut-and-paste of the privilege escalation support from the `local`
connection plugin into the `docker` plugin.

Closes: #53385
2019-05-09 15:02:53 -04:00
Sloane Hertel
463a7ff5ca [rds_instance] don't hardcode license_model choices (#53409)
* Don't hardcode license_model choices
2019-05-08 22:01:57 +05:30
Strahinja Kustudic
a5b6a161b5 sysctl will now return an error if the value is invalid (#55695)
* sysctl will now return an error if the value is invalid

sysctl can fail to set a value even if it returns an exit status 0. More
details: https://bugzilla.redhat.com/show_bug.cgi?id=1264080. Because of
this in case of an invalid value or a read-only file system, sysctl
module would return OK, even though it didn't set anything. To be sure
that sysctl correctly applied the changes we also need to check the
output of stderr.

* Run sysctl with LANG=C

Because we are parsing sysctl stderr we need to make sure that errors
are persistent across different system language settings.

* Add changelog fragment for sysctl
2019-05-08 11:34:55 -04:00
Brian Coca
deae5b1bce
remove deprecated get_md5 from stat (#55659)
* remove deprecated get_md5 from stat

  fixes #55309

* removed get_md5 from tests involving stat

* keep get_md5 but hide it

* rst it

* ammended comment

* ws

* added ignore for hidden md5
2019-05-08 10:45:45 -04:00
Will Thames
cd95843ea5 Make ansible adhoc work with include_role (#56163)
* Make ansible adhoc work with include_role

Fix logic condition so that include_role works
without

```
ERROR! 'async_val' is not a valid attribute for a IncludeRole

The error appears to be in 'None': line 0, column 0, but may
be elsewhere in the file depending on the exact syntax problem.

(could not open file to display line)
```

* Add include_role test for adhoc
2019-05-08 09:53:24 -04:00
Bojan Vitnik
2a39dc84b7 XenServer: Minor changes and fixes in xenserver_guest (#55678)
* XenServer: Minor changes and fixes in xenserver_guest

 - xenserver_guest module: ignore wait_for_ip_address when
   state=absent (fixes #55348). Module docs are updated to reflect this.
 - xenserver_guest module: show proper error message when maximum number
   of network interfaces is reached and multiple network interfaces are
   added at once (fix for changes introduced in #54697).
 - xenserver_guest module: fixed a bug in reconfigure() where VM would
   be powered off even though check mode is used when reconfiguration
   needs VM to be powered off.

* Added changelog fragment
2019-05-08 09:03:44 -04:00
Andrea Tartaglia
5a6f888036 ec2_instance: Force int when ebs.volume_size or ebs.iops is specified (#55716)
* Force int when volume_size is specified

* changelog

* both volume_size and iops must be int

* updated changelog fragment
2019-05-08 22:10:58 +10:00
James E. King III
1462fd740b ec2_instance fix name idempotency (#55224) 2019-05-08 10:07:18 +01:00
Felix Fontein
7a957ba64a openssl_certificate: fix passphrase handling for cryptography backend (#56155)
* Make sure passphrase is bytes string.

* Fix typo.

* Add more passphrase tests.

* Fix test names.

* Add changelog.
2019-05-07 23:58:15 -04:00
Abhijeet Kasurde
193f69064f
VMware: remove duplicate implementation of memory reservation (#56161)
mem_reservation and memory_reservation has redundant implementation.
Combining them together.

Fixes: #54335

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-05-08 08:44:30 +05:30
Anatoly Pugachev
6e73150244 refactor iscsi network facts module, remove external grep call, add unit test (#55643)
* remove external grep call and parse with python
* use function for repeated code
* use module.get_bin_path() for iscsiutil on HPUX
* some code opt for HPUX
* clean up non-module code, module being defined is a requirement for this code
* import get_bin_path() directly and use without module prefix
* Add integration tests for AIX and HP-UX
* add changelog fragment
* Apply suggestions from code review
Co-Authored-By: mator <matorola@gmail.com>
* Apply suggestions from code review #2
Co-Authored-By: Sam Doran <sdoran@redhat.com>
* Remove strict requirement on executable to exist for get_bin_path() as
it will allow facts gathering to continue without an error. Almost all
other files under facts do not have "required=True" (except 2 files,
which should be probably fixed). And check return value for
get_bin_path() , before run attempt.

* add check for AIX lsattr run_command return code
2019-05-07 12:26:20 -04:00
Abhijeet Kasurde
2007a79952
VMware: Add managed object id in VM facts (#53523)
Fixes: #53372

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-05-07 17:05:38 +05:30
Benjamin MALYNOVYTCH
f90398a31d mysql_user: fix regression (#55292) 2019-05-06 16:25:43 +02:00
Gonéri Le Bouder
23e63c9237 vmware: check the SSL certification
If `validate_certs` is enable, we now validate the server SSL
certificate.
2019-05-06 09:15:16 -04:00
Felix Fontein
f692261ea0 oom_killer and oom_score_adj are available since docker-py 1.8.0. (#56012)
* oom_killer and oom_score_adj are available since docker-py 1.8.0.

* Add changelog.
2019-05-05 06:13:55 -04:00
Gonéri Le Bouder
223321e7e2 vmware_datastore_facts: empty list if none found
When `vmware_datastore_facts` does not fine any datastore, it raises an error.
This is not consistent with the other _facts modules. It should just return
an empty list instead.
2019-05-03 18:29:00 -04:00
Felix Fontein
95d1564f70 docker_container: use restart() API function instead of stop/start sequence (#55894)
* Improve container restart.

* Adjust tests.

* Add changelog.

* Quote options.

* Move tests for restart/recreate options to start/stop tests.

* Fix changelog name.
2019-05-03 11:30:39 -04:00
flowerysong
2ef8b297ff Fix loading namespaced doc_fragments from collections (#55249)
* Fix loading namespaced doc_fragments

The syntax for specifying a different fragment name was already
using '.' as a separator, so the code needed to be tweaked to
avoid choking on names like `testns.testcoll.fragname` and
`testns.testcoll.fragname.altvar`.

`get_plugin_class()` returns 'docfragment' for the fragment loader;
mangling `subdir` provides consistent alignment with the normal plugin
directory names and avoids needing special handling of plugin types
with 'module' in the name.

* Add changelog entry
2019-05-02 21:15:57 -04:00
Sloane Hertel
47b2cb748b Allow config boolean options to default to None (#55951)
* Allow plugin boolean options to default to None

* fix mistake

* changelog

* be more specific
2019-05-02 12:09:14 -07:00
Brian Coca
24a46deef5
Package facts apt fix (#55963)
* fixes for apt on package_facts

* reverse order, apt is newer

* moved warnings prop to base
2019-05-01 22:11:12 -04:00
Hideki Saito
c455635500 Fix firewalld source option handling to be exclusive (#55715)
- Fix issue #55683
- Add integration test for source option of firewalld module

Signed-off-by: Hideki Saito <saito@fgrep.org>
2019-05-01 17:47:47 -04:00
Brian Coca
5d4c73e197 unite poll defaults (#55470)
* unite poll defaults and update docs
2019-05-01 13:47:50 -05:00
Kevin Breit
a89a2cf33f meraki/meraki_network - Enable/disable VLANs on network (#48820)
* Redo branch to fix merge commit

* Add changelog fragment

* Make VLAN settings idempotent

* Fix conflict

* Change `version_added` to 2.9 instead of 2.8.
2019-05-01 12:24:39 -04:00
Jordan Borean
cc3b8b9f72
win_acl - fix network path qualifier parsing (#55970) 2019-05-01 17:21:26 +10:00
Jordan Borean
5228133d74
Ansible.Basic - fix when deserialising a json string of an array (#55691)
* Ansible.Basic - fix when deserialising a json string of an array

* Added changelog fragment
2019-05-01 11:08:23 +10:00
jhawkesworth
0e8a77520c Refactor of win_xml (2nd attempt) to add support for processing multiple nodes and counting nodes matched by xpath (#53362)
* add multi-node manipulation, delete on xpath match only and count capability to win_xml

* fix pep8 and yamllint errors identified by ci tests

* fixed bugs when handling multiple elements, multiple attribute nodes and handling for attribute nodes when using xpaths that only select attributes like //@lang.  Added more tests and tweaked documentation.

* fixed line-too-long error

* fixed trailing space errors

* trailing whitespace expunged

* bump version_added to 2.9 for new changes

* fix PSAvoidUsingPositionalParameters sanity check failure

* refix sanity check as it broke the msg return value
2019-04-30 13:19:56 -07:00
Martin Krizek
f37476e247 template lookup: restore variables between calls (#55126)
* template lookup: restore variables between calls

Fixes #55113

* Address issues from the review
2019-04-30 15:22:37 -04:00
Matt Clay
9961d02547 Fix changelog sanity test failure. 2019-04-30 09:04:59 -07:00
Brian Coca
45d21b6474 Fix and refix help text for CLI (#55831)
fixes #23395 giving clearer information on installed role path
  re-fixes 'home display issue' for module-path
2019-04-30 11:16:26 -04:00
Sloane Hertel
11279a909d fix combine filter using undefined vars (#55840)
* Check variables are defined before using combine filter

* Add tests for the combine filter

* Remove dependencies that should already be installed

* relocate the function to recursively check for undefined vars

add another test

* changelog
2019-04-30 11:10:19 -04:00
James Cammarata
c4004b5fb1
Adding changelog for fix to issue #55515 (#55928) 2019-04-30 09:09:08 -05:00
Brian Coca
815a375177
allow empty plays again, for now (#55878) 2019-04-29 17:59:10 -04:00
Martin Krizek
8e82baba4a
zfs: deprecate key=value 'option' (#55699)
* zfs: deprecate key=value 'option'

Fixes #55318

* Not needed to ignore these anymore
2019-04-29 08:07:22 +02:00
Brian Coca
05fcb8502f
options not optional for callbacks (#55660)
fixes #55305
2019-04-25 22:22:06 -04:00
Matt Martz
2732cde031
Support using importlib on py>=3 to avoid imp deprecation (#54883)
* Support using importlib on py>=3 to avoid imp deprecation

* Add changelog fragment

* importlib coverage for py3

* Ansiballz execute should use importlib too

* recursive module_utils finder should utilize importlib too

* don't be dumb

* Fix up units

* Clean up tests

* Prefer importlib.util in plugin loader when available

* insert the module into sys.modules

* 3 before 2 for consistency

* ci_complete

* Address importlib.util.find_spec returning None
2019-04-25 10:28:18 -05:00
Martin Krizek
1a6df99aa5 apt: strip whitespaces in package names (#55750)
Fixes #55741
2019-04-25 15:29:26 +02:00
Matt Davis
03cac394cc
mark entire module result untrusted as template (#55717)
* prevents accidental templating on intra-action postprocessing of an untrusted module result
* makes the view of a module result within an action consistent with the way it would be stored for future use (eg facts, register)
2019-04-24 15:15:20 -07:00
Kevin Breit
56da3825c6 meraki_content_filtering - Remove redundant API call with get_nets() (#55531)
* Remove redundant API call with get_nets()

* Add changelog fragment
2019-04-24 14:27:21 -05:00
Kevin Breit
7b7d6a1fef meraki_static_route - Remove unnecessary API call (#55528)
* Make module not get all nets every time it's executed with net_id

* Add changelog fragment

* Update changelogs/fragments/meraki_static_route_api_calls.yml

Co-Authored-By: kbreit <kevin.breit@kevinbreit.net>
2019-04-24 12:16:51 -04:00
Martin Krizek
bc9074404e ec2_instance: remove network.ebs_optimized option (#55694)
Fixes #55307
2019-04-24 07:40:48 -04:00
Martin Krizek
43712f81e5 ec2_lc: deprecate device_type option (#55697)
Fixes #55308
2019-04-24 07:00:01 -04:00
Martin Krizek
27b64d6524 ec2: deprecate device_type option (#55692)
Fixes #55306
2019-04-24 06:42:55 -04:00
René Moser
1705ef5f26
vultr_server: fix idempotency for private network and IPv6 options (#55619)
* vultr_server: fix idempotency for private network and IPv6 options

* add changelog
2019-04-23 21:22:17 +02:00
Matt Martz
db6cc60352
Migrate command line parsing to argparse (#50610)
* Start of migration to argparse

* various fixes and improvements

* Linting fixes

* Test fixes

* Fix vault_password_files

* Add PrependAction for argparse

* A bunch of additional tweak/fixes

* Fix ansible-config tests

* Fix man page generation

* linting fix

* More adhoc pattern fixes

* Add changelog fragment

* Add support for argcomplete

* Enable argcomplete global completion

* Rename PrependAction to PrependListAction to better describe what it does

* Add documentation for installing and configuring argcomplete

* Address rebase issues

* Fix display encoding for vault

* Fix line length

* Address rebase issues

* Handle rebase issues

* Use mutually exclusive group instead of handling manually

* Fix rebase issues

* Address rebase issue

* Update version added for argcomplete support

* -e must be given a value

* ci_complete
2019-04-23 13:54:39 -05:00
Matt Martz
7ee6c136fd
Update bundled copy of six from 1.11.0 to 1.12.0 (#55456)
* Update bundled copy of six from 1.11.0 to 1.12.0. Fixes #55303

* Linting fix

* ci_complete
2019-04-23 11:53:25 -05:00
Matt Martz
acc675e4a8
Update bundled copy of backports.ssl_match_hostname from 3.4.0.2 to 3.7.0.1 (#55461)
* Update bundled copy of backports.ssl_match_hostname from 3.4.0.2 to 3.7.0.1. Fixes #51794

* Address linting issues

* ci_complete
2019-04-23 11:53:11 -05:00
Matt Martz
8f2976dcee
Update bundled copy of distro from 1.3.0 to 1.4.0 (#55459)
* Update bundled copy of distro from 1.3.0 to 1.4.0. Fixes #55302

* ci_complete
2019-04-23 11:52:51 -05:00
Matt Martz
e0f30ed0ee
Update bundled copy of selectors2 from 1.1.0 to 1.1.1 (#55457)
* Update bundled copy of selectors2 from 1.1.0 to 1.1.1. Fixes #55300

* ci_complete
2019-04-23 11:52:24 -05:00
Xaroth
a9f24e097f Add ansible_parent_role_names magic variable (#46687)
-Add: Test cases for ansible_parent_role_names and ansible_parent_role_paths
-Add: ansible_parent_role_names/paths variables for when a role is being included by another role.
2019-04-23 11:55:05 -04:00
Brian Coca
780ee45819
ensure inventory plugin loading rel to play (#51177)
Ensure inventory plugin loading rel to play

  fixes #51033

*  clarify paths
* now adding dirs funciton in loader
* better warnings
* each cli should handle adding dirs depending on context
2019-04-22 19:32:50 -04:00
Sam Doran
f27eccabbd
User - Fix shadow file parsing on AIX (#55230)
Implement a new method for shadow file parsing so it can be subclassed.
2019-04-22 15:24:10 -04:00
Marko Stanković
7e0603282d Add changelog fragments for #44811 (#55427) 2019-04-22 10:35:51 -05:00
Hannes Ljungberg
14c60e6ec8 docker_swarm_service: Use str type for configs/secrets gid/uid (#55591)
* Change type of secrets gid/uid to str
* Add changelog fragment

Co-Authored-By: hannseman <hannes@5monkeys.se>
2019-04-22 11:29:46 -04:00
rajaspachipulusu17
19c87d829f Pluribus Networks modules handling empty output (#54971)
* Handling empty output string
* Change log fragment for PR 54971
2019-04-22 14:57:47 +05:30
Anatoly Pugachev
701cf25891 [cosmetic] solaris wwn fix (#55154)
* Solaris WWN parsing cosmetic fix (commit 924f5b5467)

* simplify module.run_command by removing use_unsafe_shell and remove calling of external grep

* add changelog fragment
2019-04-18 16:31:40 -04:00
Felix Fontein
c8a15b9dbc crypto modules: use module_utils.compat.ipaddress when possible (#55278)
* Use module_utils.compat.ipaddress where possible.

* Simplify reverse pointer computation.

* Use dummy for unused variables.

* Remove from ignore list.

* Adjust fix.

* Fix text handling for Python 2.

* Add changelog.
2019-04-18 15:36:53 +01:00
Abhijeet Kasurde
ffce456de9
VMware: Check return of FindByInventoryPath (#55282)
Check return value of FindByInventoryPath API which is used for
finding desired folder to deploy OVF.

Fixes: #54823

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-04-18 09:26:30 +05:30
Jordan Borean
f247c21d23
win_region - fix format issues when using psrp (#55487) 2019-04-18 13:42:21 +10:00
Felix Fontein
12d26eceb1 docker modules: make sure everything works with older docker-py versions (#55258)
* General test improvements.

* Adjust tests to older docker-py versions.

* docker_swarm_server_info: work around problems with older docker-py versions

* Bump minimal docker-py version for options network_filters and disk_usage.

* More general test improvements.

* Correct usage of docker_image.

* Put files into output directory.

* Speed up test.

* Remove old check.
2019-04-17 13:50:57 -04:00
Brian Coca
24b44e1772
Ensure discovery unsafe (#55295)
* Ensure safe discovery by marking it Unsafe
2019-04-17 12:08:51 -04:00
Jordan Borean
fdf9df89f5
psrp - Fix raw and script tests for connection plugin (#55357)
* psrp - Fix raw and script tests for connection plugin

* Fix error propagation with raw in psrp

* uncomment test
2019-04-17 09:01:28 +10:00
Jordan Borean
49655a452d
psrp - fix test_command rc for win_reboot (#55354) 2019-04-17 08:38:42 +10:00
Jordan Borean
52946c49a4
psrp - Fix fetch for large files (#55351)
* psrp - Fix fetch for large files

* Fix typo
2019-04-17 08:19:33 +10:00
Brian Coca
aa8d23b42f
ensure facts marked as unsafe (#55326)
dont rely on plugin layer to do so
2019-04-16 15:50:52 -04:00
Matt Martz
ca83a5c110
Version in deprecate calls should be a string (#55395)
* Version in deprecate calls should be a string. Fixes #55312. Fixes #55313. Fixes #55314. Fixes #55315. Fixes #55316. Fixes #55317.

* Add changelog fragment
2019-04-16 14:40:20 -05:00
Matt Martz
07443a2bcd
Address 2.9 uri deprecations (#55330)
* Address 2.9 uri deprecations. Fixes #55310

* Add changelog fragment
2019-04-16 14:17:03 -05:00
Matt Martz
9f83139dcb
Don't register tests as filters (#55332)
* Don't register tests as filters. Fixes #55319

* Remove tests for deprecated functionality

* Remove no-tests-as-filters sanity tests

* Remove docs too

* Revert "Remove docs too"

This reverts commit 7daf457a74.

* Make no-tests-as-filters doc an orphan
2019-04-16 14:10:14 -05:00