Commit graph

1370 commits

Author SHA1 Message Date
Martin Krizek
7346b699ee
Use templated loop_var/index_var when looping include_* (#58866)
Fixes #58820
2019-07-10 13:49:24 +02:00
Jordan Borean
b6791e6ae3
ansible-galaxy: add collection sub command (#57106)
* ansible-galaxy: add collection init sub command

* Fix changelog and other sanity issues

* Slim down skeleton structure, fix encoding issue on template

* Fix doc generation code to include sub commands

* Added build step

* Tidy up the build action

* Fixed up doc changes and slight testing tweaks

* Re-organise tests to use pytest

* Added publish step and fixed up issues after working with Galaxy

* Unit test improvments

* Fix unit test on 3.5

* Add remaining build tests

* Test fixes, make the integration tests clearer to debug on failures

* Removed unicode name tests until I've got further clarification

* Added publish unit tests

* Change expected length value

* Added collection install steps, tests forthcoming

* Added unit tests for collection install entrypoint

* Added some more tests for collection install

* follow proper encoding rules and added more tests

* Add remaining tests

* tidied up tests and code based on review

* exclude pre-release versions from galaxy API
2019-07-10 05:47:25 +10:00
Sam Doran
1c2c1c15d0 dnf - fix error formatting of module name in error message (#58647) 2019-07-09 10:16:42 +02:00
Shachaf92
7ddcaafee5 many pslint fixes (#55862)
* Handles:

PSAvoidTrailingWhitespace
PSAvoidGlobalVars
PSAvoidAssignmentToAutomaticVariable
PSAvoidUsingCmdletAliases
PSAvoidUsingWriteHost
PSUseDeclaredVarsMoreThanAssignments
PSUsePSCredentialType
PSAvoidUsingPositionalParameters
PSAvoidUsingEmptyCatchBlock
PSAvoidUsingWMICmdlet

Replaced Write-Host with Write-Output
Added smart reboot check for win_domain feature installation
Modify the Creation of the pagefileto fit to CIM
Changelog fragment addition
Ignore.txt without fixes

* Changes after community reviews

* Change Out-Null to '> $null'

* Fixes after jborean93 comments

* Test

* Revert "Test"

This reverts commit 35c5c0648fa9d2868a18094d84954e53ffa28880.

* Removed all  > $null since they broke the module since the output got dumped

* run test again

* Revert "run test again"

This reverts commit 80eaf07143f9d8cb0116cbbc68a6a69c0ace840c.

* Changes after community review

* ignore PSUseDeclaredVarsMoreThanAssignments that are on a diffrent PR

* CI failed on extra line in ignore.txt

* Review changes

* PSlint errors

* Trail space

* send to null breaks the tests for  Set-Workgroup

* Lint stuff

* win_domain_user issue of indent.

* Update win_domain_user.ps1

* Update win_domain_membership.ps1

* Fix redirect to null

* lint space issue

* removed return from set-workgroup

* removed send to null
2019-07-09 05:41:58 +10:00
Will Thames
88364d4cfd Add purge_tags to s3_bucket to allow preservation of existing tags (#58754)
* Add purge_tags to s3_bucket to allow preservation of existing tags

Adding `purge_tags` with default `True` to maintain existing behaviour
allows users to set it to `False` to preserve existing tags

Fixes #29366

* s3_bucket: Add further tests and improve tag handling further

Additional tests for purge_tags: False suggested some incorrect
logic and thus further improvements

Increase wait timeout on bucket deletion as it wasn't always completing
in the default 100 seconds
2019-07-08 10:19:01 -07:00
Abhijeet Kasurde
79fdc2190a role: Fix role's hash_params (#55263)
* role: Fix role's hash_params

Fix based upon work done by alikins.

Fixes: #20596

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

* review comments

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-07-08 09:25:59 -04:00
Shachaf92
5b953581b4 win_domain_user - MAke the query user try catch block more accurate (#58782)
* win_domain_user - MAke the query user try catch block more accurate for missing identity

* change to minor_changes

* Update win_domain_user-make-query-try-catch-accurate.yml

* Update win_domain_user-make-query-try-catch-accurate.yml
2019-07-08 07:13:48 +10:00
Klaas Demter
faf50dbace Fix nagios module to recognize if file exists and is fifo pipe (#58569)
add felixfontein suggestion to changelogs/fragments/58569-nagios-fifo-fix.yaml

Co-Authored-By: Felix Fontein <felix@fontein.de>
2019-07-06 22:37:23 +02:00
Joseph
4f642daae5 Correct machinectl become plugin function arguments (#58734)
* Correct get_option function name and change flags to become_flags

* Remove the '--' from the returned command

* add changelog fragment

* change changelog fragment description

* move the -q argument to machinectl before the shell argument to resolve issues with machinectl v230 (see #56571)
2019-07-05 11:03:24 -04:00
Abhijeet Kasurde
1bd91279d0
Fixed fail_json call in command module (#58615)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-07-05 11:00:10 +05:30
Shachaf92
a6b7d0d00b win_domain_user and win_domain_group: add created result boolean (#57901)
* win_domain_user and win_domain_group: add created result boolean

* Fix YML

* add docs

* brackets

* Update win_domain_group.py

* Update win_domain_user.py

* Update win_domain_user.ps1

* fix indent
2019-07-05 08:44:07 +10:00
Shachaf92
07edcab051 win_acl: Fix problems with special IDRef in different languages than english (#57281)
* Change special id ref recognitionto avoid language diff

* Changelog added

* specialIdRefPrefixes to array

* Changed to the more generic option
2019-07-05 08:08:23 +10:00
Shachaf92
e0b8bc1ef9 win_firewall_rule: Only report changed when change is made (#57267)
* Fix bug https://github.com/ansible/ansible/issues/44450

* Added tests

* I will make this CI work

* Update win_firewall_rule.ps1
2019-07-05 08:06:34 +10:00
Shachaf92
6e319ff088 win_psmodule - Missing SkipPublisherCheck in Prerq installations (#58090)
* win_psmodule - Missing SkipPublisherCheck in Prerq installations

* Handle different minors of PS5

* community revisions

* Update win_psmodule.ps1
2019-07-05 08:00:58 +10:00
Shachaf92
48a518d9a3 win_get_url - Fix proxy_url not used correctly (#58738) 2019-07-05 07:42:05 +10:00
Andrey Klychkov
6cf722fed6 postgresql_query module: add autocommit parameter (#58704)
* postgresql_query: add autocommit parameter

* postgresql_query: add autocommit parameter, add CI tests

* postgresql_query: add autocommit parameter, add a changelog fragment

* postgresql_query: add autocommit parameter, fix sanity

* postgresql_query: add autocommit parameter, cosmetic fix
2019-07-04 12:25:51 +02:00
Pierre Riteau
1eb3fba51f Fix os_quota when volume service not available (#57364)
os_quota checks the current quotas for compute, network and volume
services and fails when no volume service is found in the catalog.

Since openstack test deployments without volume services are common,
os_quota shouldn't fail if such service is missing.

This was originally fixed in d31a09ceb7
and later adapted to catch exceptions raised by shade. Since then, this
module moved to using openstacksdk, which doesn't catch the exception
raised by keystoneauth1.

Fixes #41240
2019-07-04 00:48:28 -04:00
Brian Coca
9808ffecc7
Add JSON output option to ansible-doc (#58209)
* allow json from ansible-doc

* save the var

* try to yaml load

* let examples stay as text blob
2019-07-03 17:52:20 -04:00
Brian Coca
ee4cba1b85 ensure bytes in run_command (#58411)
* ensure we pass bytes to run_command

* changed tests for new behaviour

* dont b the pytest

* fixes by sivel
2019-07-02 17:07:48 -05:00
lijok
63bdd0d6cd VMware: looking up maxMksConnections in incorrect location (#58061)
maxMksConnections is contained in vim.vm.ConfigInfo not vim.vm.VirtualHardware

Fixes: #58060

Signed-off-by: lijok <28689084+lijok@users.noreply.github.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-07-02 11:49:00 -07:00
Andrey Klychkov
e5203a0f39 postgresql_ext: add a changelog fragment for PR 58381 (#58634) 2019-07-02 13:03:01 -04:00
Pluggi
7f15331510 Add build.target option to docker_image module (#58487)
Signed-off-by: Antoine Bardoux <pluggi512@gmail.com>
2019-07-02 09:42:35 -04:00
Jordan Borean
c260721ce5
win_domain_user: do not hide error on failures (#58357)
* win_domain_user: do not hide error on failures

* Was a bit too overzealous in the removal

* Remove uneeded sanity ignore rule
2019-07-02 07:40:51 +10:00
Felix Fontein
5d5a7d6ebe
openssl_privatekey: forgot to add secp256r1 (#58605)
* Forgot to add secp256r1. This one is the interoperable one.

* Add changelog.
2019-07-01 23:08:54 +02:00
mj84
d2ccf90610 Added missing SSL parameters to rabbitmq_binding (#58064)
In rabbitmq_binding.py the SSL parameters ca_cert, client_cert, client_key were only passed to requests for post requests.
This change updates the DELETE and GET requests to include these parameters as well.
2019-07-01 07:22:40 -04:00
Felix Fontein
f0801879c7 Rename xenserver_guest_facts -> xenserver_guest_info (#57032)
* Rename xenserver_guest_facts -> xenserver_guest_info.

* Add changelog.

* Forgot one test.
2019-06-30 10:04:30 -04:00
Simon Dodsley
35dcd231be purefa_user: Fix Incorrect parameter used causing crashes. (#57588) 2019-06-29 17:32:22 +02:00
YuandongXu
78c8ee9261 ce_snmp_target_host: update to fix bug: None has no 'lower()' function. (#57904)
* update to fix bug: None has not 'lower()' function.

* add a changelog fragment.

* update changlog fragment.

* Update 57904-ce_snmp_target_host.yml
2019-06-29 09:36:28 +02:00
YuandongXu
36cfa9e931 ce_bgp: update bgp to fix bugs (#57317)
* update bgp to fix bgus

* add a changelog fragment for bgp
2019-06-28 16:47:35 -04:00
Sam Doran
6cf6f5a34b
Use atexit to cleanup tmp dirs (#56532)
* Wrap everything in try/except to avoid leaving files behind
* Add unit tests, integration tests, and changelog
* Do text the correct way
2019-06-28 16:19:27 -04:00
YuandongXu
da72644317 update acl interface. (#57905)
* update acl interface.

* update ce_interface

* update

* add a changelog fragment.

* update
2019-06-28 16:03:47 -04:00
YuandongXu
e02353026d update ce_interface to fix bugs (#57907)
* update ce_interface

* update ce_interface

* add a changelog fragment.
2019-06-28 15:52:39 -04:00
Sloane Hertel
826f224f02
Handle vaulted non-ascii characters for Python2 (#58503)
* Handle vaulted non-ascii characters for Python2

* Add a test to ensure str() no longer raises UnicodeEncodeError
2019-06-28 13:23:15 -04:00
Olivier Scherler
7ed7d374e4 Fix onepassword lookup plugin and onepassword_facts module when a field has no name. (#58308)
* Fix onepassword lookup plugin crashing on fields with no 'name' or 't' property.

* Fix onepassword_facts module crashing on fields with no 'name' or 't' property.

* Add unit test for onepassword lookup plugin failing on entries without a name.

* Add changelog fragment for onepassword lookup plugin and onepassword_facts module fixes on fields without a name.
2019-06-28 12:37:14 -04:00
Sam Doran
1a5ae366f4
hostname - fix Oracle Linux (#58510) 2019-06-28 12:24:03 -04:00
Abhijeet Kasurde
760dc19284
VMware: Set vapp settings while creating VM (#58156)
vApp Settings can be set while creating VM.

Fixes: #50617

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-06-28 11:57:26 +05:30
Abhijeet Kasurde
e2d159c40c
VMware: Handle user unauthorization in tagging scenarios (#58405)
Handle unauthorization scenarios in VMware tagging APIs.

Fixes: #58326

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-06-28 07:59:54 +05:30
YuandongXu
242f160747 update ce_vxlan_global to fix bugs. (#57947)
* update to fix bugs.

* add a changelog fragment.

* update a changelog fragment.
2019-06-27 21:42:07 -04:00
René Moser
cf7ee8eb12
doc: ce_snmp_location: fix changelog fragement missing module (#58481) 2019-06-28 01:10:17 +02:00
YuandongXu
afe7cd3fda ce_snmp_location: fix for out of array index. (#57903) 2019-06-28 00:53:55 +02:00
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 a1d5be00f1c54e7d2576e468612c9a5bf16bb049.

* 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