Commit graph

18337 commits

Author SHA1 Message Date
Jacob McGill
037ef743c3 ACI Contract Subject to Filter: Update module to use new URL Method (#28621) 2017-08-25 03:14:36 +02:00
Nicolas Porcel
ba420c47cd synchronize: Use private_key and ssh_user with delegate_to (Fixes #16215) (#21686) 2017-08-24 21:09:15 -04:00
Jacob McGill
061fe51e9a ACI AEP: Update module to use new URL Method (#28619)
* ACI AEP: Update module to use new URL Method

* ACI AEP: Update module to use new URL Method

* ACI AEP: Update module to use new URL Method
2017-08-25 02:46:09 +02:00
Jacob McGill
ddd3e6fb91 ACI: Update ACIModule to dynamically build URLs (#28618) 2017-08-25 02:37:34 +02:00
Dag Wieers
2634ef955a xml module: Better change detection, improved tests (#28460)
This PR includes:

- Improvements to change-detection by comparing 2 objectified XML trees
- Implement better integration tests by comparing 2 files using copy
2017-08-25 02:07:58 +02:00
banzo
3302248616 [cloud] Amazon Redshift module cluster deletion fix (#25164)
* Fix typo (#25161)

* Fixed cluster deletion: added final snapshot management

This adds 2 new options to the module API (only for the "delete" command):

* skip_final_cluster_snapshot: skip a final snapshot before deleting the cluster
* final_cluster_snapshot_identifier: identifier of the final snapshot to be created before deleting the cluster

Ref: http://boto.cloudhackers.com/en/latest/ref/redshift.html

* Fixed cluster deletion: added final snapshot management

This adds 2 new options to the module API (only for the "delete" command):

* skip_final_cluster_snapshot: skip a final snapshot before deleting the cluster
* final_cluster_snapshot_identifier: identifier of the final snapshot to be created before deleting the cluster

Ref: http://boto.cloudhackers.com/en/latest/ref/redshift.html

* add version_added information

* Review corrections:

* used required_if instead of checking parameters compatibility inside the code
* renamed aliases to be more explicit

Also added an example for the "delete" command

* Review corrections correction - make "delete" command specific parameters mandatory only when the command is "delete"

* updated doc with aliases

* Fix YAML docs syntax

* Set default to match API for skip_final_cluster_snapshot.
2017-08-24 16:41:32 -04:00
Dag Wieers
7a182fc43e xml module: Add backup to pretty_print too (#28604) 2017-08-24 22:14:17 +02:00
Peter Sprygada
b34cfd03b3 implements missing code to handle before and after arguments (#28612)
fixes #21683
2017-08-24 16:00:54 -04:00
Nathaniel Case
07cd4fda0e Remove module_utils.shell (#28560)
* Get rid of module_utils.shell

* There is no way this actually raises ShellError
2017-08-24 14:55:03 -04:00
Peter Sprygada
ac6892efe4 set the play_context connection_user before mapping magic variables (#28599)
This change moves when the connection_user is set in the play_context to
set it before the magic variables are mapped.  If the connection_user
is not set before the mapping, the connection_user will be incorrectly set
for local connections

fixes #26120
2017-08-24 14:49:42 -04:00
Joel Kaasinen
fc7301671e [cloud] Add check mode for cloudformation module (#23483)
* cloudformation: dummy check mode

* cloudformation: use changesets to implement check mode

* cloudformation: wait at most 5min for change set

* cloudformation: handle stack creation and deletion in check mode

* cloudformation: standardize output format in check mode

msg is a string, meta is a list

* cloudformation: use same naming convention in get_changeset as create_changeset

also add comment about code duplication between said functions

* Remove unused imports

* PEP8 whitespace fix

* Fix CI, convert success=True check to for/else
2017-08-24 14:07:48 -04:00
Sloane Hertel
cf1a9d4d22 New module: Add ec2 Vpn Connection module and tests (cloud/amazon/ec2_vpc_vpn) (#24385)
* Add VPN module and unittests

* remove unnecessary imports

* fix documentation

* raise custom exception rather than passing module everywhere

* remove recordings

Rerecord tests

Fix docs

Ensure vpn_connection_id is a list of strings when checking if it exists

* fix check mode

* Rerecord tests

* remove superfluous code and comments and make exception handling uniform

fix docs

* Fix ec2_vpc_vpn documentation

* make ec2_vpc_vpn compatible with python 2.6 and make check mode logic more succinct

* fix comparison of list of dicts

* Fix typos and docstrings

make requested changes for imports

make code clearer

* Fix copyright and metadata version.
2017-08-24 12:18:40 -04:00
CsilLAB
8d3546af60 Update eos_config documentation. (#28512)
Added note to documentation about Jinja2 file used as src.
2017-08-24 21:40:36 +05:30
Felipe Garcia Bulsoni
fb6ed8d76c EthernetNetworkModule for HPE OneView (#28336)
* Adding module to manage ethernet network on HPE OneView

* Adding unit tests to EthernetNetwork module

* Added OneViewModuleException custom exceptions to module

- Removed exception imports from hpOneView
- Updated unit tests

* Fixing mock import inside ethernet network module unit test

* Fixing issues found in METADATA by CI

* Updated paths to use solution name instead of vendor name

* Fixed documentation, removed redundant if and improved readability

* Updated _bulk_present to use and return `result`, same way as _present

* Changed __ to _ in private methods following ansible style

* Fixed some example inconsistencies and turned states doc into a list

* Added adriane-cardozo to list of maintainers
2017-08-24 17:57:13 +02:00
Simon Dodsley
000ccc838a Set protection group enabled by default with option to disable (#28582) 2017-08-24 17:48:01 +02:00
Fabio Alessandro Locati
c850bf15d0 windows/win_command: improve examples (#20465)
* windows/win_command: improve examples

* Improve description

* Improvements

* minor updates based on PR feedback
2017-08-24 11:14:05 -04:00
Ganesh Nalawade
55fa4d54aa Add tested against junos version for junos modules (#28598)
* Add tested against junos version for junos modules
2017-08-24 10:31:47 -04:00
AlexZolotarenko
69bf5331b4 Fix incorrect command-line parameters for Solaris (#22865)
* Fix incorrect command-line parameters for Solaris

* Update mount.py
2017-08-24 10:22:48 -04:00
Trishna Guha
10467efaba Tested against VYOS version (#28562)
* Tested againset VYOS version

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* fix duplicate dict key error vyos_command

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-08-24 19:08:05 +05:30
Dag Wieers
11b50671ba win_robocopy: Check-mode support, improved return code and docs (#25410)
* win_robocopy: Cleanup logic, check-mode support

* win_robocopy: Cleanup logic, check-mode support

This PR includes:

- Improved check-mode support
- Clean up documentation
- Clean up code structure
- Add warnings in special cases

* minor fix for typo
2017-08-24 09:35:53 -04:00
Dag Wieers
967fbcb662 xml module: Add backup support (#28595)
This fixes #27949
2017-08-24 15:20:59 +02:00
Brian Coca
725d4d4bc8 added diff as new keyword (#28581)
added diff to fake options in ec2_vpc_nat_gateway test
2017-08-24 14:43:19 +02:00
Kira Rose
46cd8ba7cd Check Windows service status before nssm STOP (#28379)
* Check Windows service status before nssm STOP

Add a condition on calling nssm STOP inside Nssm-Remove, to check whether or not a service has already been stopped. Currently nssm throws an exception:

```
failed: [...] (item=...) => {"changed": false, "failed": true, "item": "...", "msg": "an exception occurred when invoking NSSM: serviceName: STOP: The service has not been started."}
failed: [...] (item=...) => {"changed": false, "failed": true, "item": "...", "msg": "an exception occurred when invoking NSSM: serviceName: The service has not been started."}
```

Behaviour after change:

```
ok: [...] => (item=...)
ok: [...] => (item=...)
```

* Added named parameter to new Get-Service cmdlet
2017-08-24 08:40:48 -04:00
Dag Wieers
e7a525bd4a vmware_vswitch; Improve integration tests (#28484)
So the module was now not doing anything except adding a nic to a
vswitch. This PR adds idempotency checks, and removal checks.

We should probably add modification chacks as well, but I don't know
what the limitations are for vcsim.
2017-08-24 14:31:13 +02:00
Nathaniel Case
ada7f248c0 Add 'Tested on' string to NX-OS modules (#28531) 2017-08-24 08:27:39 -04:00
Dag Wieers
d830186e27 Fix the reboot_required return value (#28579)
As reported in #28565
2017-08-24 08:14:14 -04:00
Dag Wieers
d8429a69c5 xml module: Parse and evaluate xpath on input (#28591)
* xml module: Parse and evaluate xpath on input

This fixes cmprescott/ansible-xml#68

* Update error string
2017-08-24 14:09:26 +02:00
Dag Wieers
26d75144b2 xml module: Implement diff mode (#28592)
This fixes #27952
2017-08-24 14:05:13 +02:00
Reid Wahl
3026e5eb15 Fixes #28584: modules/windows/win_get_url.ps1: Change -msg option to -message (#28585) 2017-08-24 10:48:37 +02:00
Ganesh Nalawade
cd8c1c1108 Create persistent socket path using port and connection type (#28492)
* Create persistent socket path using port and connection type

*  Use remote address, port, connection type and remote user
   to create a socket path.

* Fix review comment
2017-08-23 18:28:44 -04:00
Matt
9407a17c40 Fix example
change count_tags to count_tag
2017-08-23 17:56:38 -04:00
Brian Coca
7b73ee0818 also strip strings to avoid spaces breaking match 2017-08-23 16:01:02 -04:00
Will Thames
fbfa5624c3 [cloud] New module: aws_waf_facts module (#26671)
Initial implementation of waf_facts module

* Enhance waf_facts module to provide more info

Support check_mode trivially
Enhance rule and predicate information
Use AWSretry and wrap proper exception handling
Finish documentation
Remove arbitrary limits
Meet latest ansible standards.

* Rename module to use aws_ prefix.

Fix copyright.

Fix metadata version.
2017-08-23 15:09:27 -04:00
Patrick Murray
b828b5d33b Fixing Issue #27270 - EFS TypeError (#27318)
* Fixing Issue #27270 regarding a TypeError invoked by the addition of a Filter type and List type.

* Fix SecurityGroup from always being reported as changed on PY3

On Python3, filter returns a generator.  This causes us to report that
security groups are always defined on Python3 even when there are none.

Also change filter() calls into list comprehensions.
2017-08-23 11:43:09 -07:00
Michael Tinning
282e743eb0 elb_application_lb: fix issue with boto parameter validation on Rules (#27333) 2017-08-23 13:49:52 -04:00
Trishna Guha
cfc6d9f904 Tested against IOS XR version (#28563)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-08-23 22:55:21 +05:30
Stephen Jennings
be2d4cc1c9 Check for an existing docker_network before trying to modify it (#24048)
This eliminates a TypeError in check mode.
2017-08-23 12:10:53 -04:00
Will Thames
b1df75fc1c [cloud] Return AMI info on ec2_ami module when changed=false (#27867)
Fixes #27861
2017-08-23 12:01:49 -04:00
Sloane Hertel
24b49c2539 [cloud] New module: AWS Direct Connect connection (#26152)
* New module for AWS Direct Connect connections

Unittests for new module

Added utils that will be used by other Direct Connect modules

* pep8 fixes

* Correct aws_direct_connect_connection EXAMPLES to be valid yaml

* Make requested changes

* remove use of the variable changed

get rid of unnecessary parentheses

* Fix unit test

* Rename variable.

* Fix metadata version
2017-08-23 11:56:19 -04:00
David M. Lee
1d4ca0fd51 amazon: extract copies of boto_exception to module_utils.ec2 (#20403)
* amazon: extract boto_exception to ec2 module

This function was copy/pasted throughout several Amazon modules. This
causes a consistency problem, since some improvements to message
formatting were applied to some modules but not others. Now all modules
use the same, improved function.

* Rebase and make requested changes

* Rebase and make requested changes
2017-08-23 11:40:32 -04:00
mzizzi
587ab33415 [cloud] Add jittered backoff+retries to CloudFormation module (#27907) 2017-08-23 11:38:19 -04:00
Trishna Guha
4070a22c5b Tested against IOS version (#28559)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-08-23 21:03:09 +05:30
Trishna Guha
340f52ae96 tested against eos version (#28556)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-08-23 20:39:31 +05:30
Laurent Ribot
f92ae0831b Fix : get proper snapshotVersion when no classifier (#27102) (#27103) 2017-08-23 10:42:48 -04:00
mikedlr
f93515adb9 [MERGE] AWS module Guidelines - multiple changes to bring up to date and start on aws.core (#26871)
* aws module Guidelines - rewrite - add AWS WG - add fail_json_aws - more modern
practices and fix some spelling

* aws module Guidelines - minor further changes with agressive fill to 99 width

* aws module Guidelines - formatting fix as per gundalow request

* aws module Guidelines - mark more keywords and code with backquotes

* AWS module guidelines - fixes from ryansb review + minor other changes
2017-08-23 10:34:30 -04:00
Muhammad Panji
8ed0222eff fix sts_session_token parameter example (#28549) 2017-08-23 09:11:51 -04:00
Lukas Bednar
8c5b9d99ed ovirt_disks: added option to export disk to glance (#27959)
* ovirt_disks: added option to export disk to glance

* ovirt_disks: Moving exporting to separate branch

* ovirt_disks: removed redundant line obtaining disk obj
2017-08-23 08:46:51 -04:00
Yaniv Kaul
6b18a23385 [oVirt] Fix ovirt_disk.py example of adding a disk (#28496)
It was missing a required field - the storage_domain field.
2017-08-23 08:46:19 -04:00
Tareq Alayan
abc5910d86 cloud/ovirt: set mac pools via ovirt_clusters (#28120)
MAC pools are set per cluster since ovirt 4.1. Before that it was set
per data center.
2017-08-23 08:45:25 -04:00
Nijin Ashok
3c1ee57155 [cloud] ovirt: Add VM lease option to the ovirt_vms module (#27710)
Ovirt 4.1 is having new feature of VM lease for high availability.
The commit add support for configuring this in ovirt_vms module.
2017-08-23 08:44:51 -04:00
maorlipchuk
07feec30d3 [oVirt] Update/Add functionalities for import storage domain (#26568)
* ovirt_templates: Update the argument spec of templates.

Add id of template since it is needed for register.

* ovirt_vms: Register unregistered VM.

Use register of VM with id instead of name since an
unregitered entity can be registered also without name attribute.

* ovirt_hosts: Add iscsidiscover to ovirt_hosts

Adding functionality of iscsidiscover to be used to discover iscsi
targets.

* ovirt_storage_domains: Add support for import block storage domain.

* Add functionality of partial import to unregistered VMs.

* Add functionality of partial import to unregistered Templates.

* ovirt_hosts: Add iscsilogin to ovirt hosts.

Add functionality of iscsi login to ovirt hosts to be used to connect to
iscsi targets and to be able to import iSCSI storage domain eventually.

* Add ovirt_storage_templates_facts

Adding fact module for storage templates.
The module should help with registering unregistered templates.

* Add ovirt_storage_vms_facts

Adding fact module for storage VMs.
The module should help with registering unregistered VMs.
2017-08-23 08:44:02 -04:00
Ryan S. Brown
2f3d9566f9 Remove exec bit on elb_application_lb module 2017-08-23 08:32:20 -04:00
René Moser
fbcf6e23af yum: fix state=latest (#28547) 2017-08-23 10:22:16 +02:00
Jordan Borean
4382216e10 win_copy: changes that were missed (#28533) 2017-08-22 23:23:07 -04:00
Jordan Borean
e631676546 fixed up win_robocopy return values (#28538)
* fixed up win_robocopy return values

* reduced lin size for validator
2017-08-22 23:22:08 -04:00
Sloane Hertel
a48e0b5101 New Module to manage AWS direct connect link aggregation groups (#27250)
* Add module_utils/aws/direct_connect.py for frequently used functions

* new AWS Direct Connect link aggregation group module with tests and placebo recordings

* remove extra argument

* Remove use of undefined var

* Fix param name for extra exception codes for AWSRetry to use.

* Fix undefined var and line length and metadata version number

* Fix copyright headers
2017-08-22 18:24:54 -04:00
Eduard Iskandarov
fe21dd272d Kubernetes PATCH operation (#19428)
* add patch_operation parameter for kubernetes module

* Fix test errors
2017-08-22 18:11:10 -04:00
Trishna Guha
4271f6e5e6 fix aggregate doc example (#28528)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-08-23 02:16:45 +05:30
Trishna Guha
c2e41bf1ef remove net_command (#28525)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-08-23 02:07:39 +05:30
Martin Krizek
711ae03845 yum: fix reporting group changes in check_mode (#28331) 2017-08-22 16:35:23 -04:00
Felipe Garcia Bulsoni
84005498bc Support Fibre Channel over Ethernet resource of HPE OneView (#28359)
* Added new oneview_fcoe_network module and unit tests

* Fixing metadata issues and importing unittest from ansible.compat.tests

* Fixing shebang and adding correct copyright header

* Renamed remote_management/hpe to remote_management/oneview

* Updated documentation and default state according to review comments

- Added present as the default state
- Added delegate_to: localhost in all examples
- Changed config path from a variable to illustrate a location
- Other documentation fixes
2017-08-22 22:14:10 +02:00
Martin Krizek
c59f3f841e yum: remove duplicite code introduced in d1fa210be (#28511) 2017-08-22 22:03:50 +02:00
Sloane Hertel
cbb94a75fe Enable deleting IAM users with associated MFA devices. (#27288)
Refactore delete_user() since most of the heavy lifting was being done in the exception handling, which is not at all necessary and resulted in changed=False being shown after changes were successfully made.
2017-08-22 15:59:02 -04:00
Sloane Hertel
7551e8c921 AWSRetry: allow retrying on additional ClientError exceptions (#28483)
* Added the ability to extend the exception list in CloudRetry

* AWSRetry boto and boto compatible

* Updated tests to reflect boto/boto3

* Added boto to shippable requirements

* Have base_class and added_exceptions default to None in CloudRetry

AWSRetry - only retry on boto3 exceptions and remove boto requirement from tests

* Make requested changes.
2017-08-22 15:31:20 -04:00
Jordan Borean
9b7dbc78c3 win_wait_for: added module (#26556)
* win_wait_for: added module

* Increased timeout on async task

* added more debug messages for test debug

* revert to using win_shell instead of win_command

* rebased from master and updated copyright string

* Updated metadata version

* Capitalised start of short_description

* disabled win_wait_for tests until async issues are solved
2017-08-22 15:02:07 -04:00
Guido Günther
398f643c58 Check existence of SSL certs in Foreman callback (#25796)
* Fix typo

* foreman callback: check existence off SSL certs

This leads to confusing error messages later on otherwise.
2017-08-22 14:25:14 -04:00
Nathaniel Case
e1def05ba2 fix networking *_command check_mode (#28407)
* Fix check_mode in nxos_command

* Fix check_mode for ios_command

* fix check_mode for iosxr_command

* Fix check_mode in vyos_command

* Fix check_mode in eos_command

* Fix check_mode in junos_config
2017-08-22 14:02:55 -04:00
Nathaniel Case
96abfde189 Fix idempotence for nxos_vrf_af (#28419) 2017-08-22 14:02:01 -04:00
Yanis Guenane
f7f3f4b62c crypto: Add new module openssl_certificate (#28263)
This commit aims to add the openssl_certificate module.

This module allows a user to manage openssl certificates.
This module implement the notion of backend provider, making this module
extensible to anyone wish as long as a provider is coded for it.

The current three providers are the following:

  * selfsigned: Allows a user to self signed a certificate
  * acme: Allow a user to generate acme-based CA challenges certificate.
          (As of this writing this targets letsencrypt)
  * assertonly: Allow a user to assert the characteristic of her SSL
                certificate

Co-Authored-By: Markus Teufelberger <mteufelberger+ansible@mgit.at>
2017-08-22 19:40:24 +02:00
Rastislav Barlik
f0a6f1637b Update xattr.py (#28458)
Fix wrong default value in documentation
2017-08-22 11:45:41 -04:00
Simon Dodsley
1fe71eacab Fix typo created in PR28485 (#28509) 2017-08-22 17:43:14 +02:00
Sloane Hertel
f7e67dc3b1 Rename s3 module to aws_s3. Update CHANGELOG.md. (#28398)
Use aws_s3 in examples.
2017-08-22 11:17:20 -04:00
Brandon Davidson
2ceff476bf [cloud] support tags in ec2_group module (#22472)
* Add tags support to cloud/amazon/ec2_group

* Finish making ec2_group tag support boto3 compatible.

Add integration tests to validate that tags are working as expected.
2017-08-22 11:11:38 -04:00
Romain Dartigues
050de6d6b5 bug: lvol fail when LV already exists (#23635) 2017-08-22 10:47:56 -04:00
Tomáš Karásek
b3a90253fc Improvements in the packet_device module (#23127)
* Improvements and fixes in the packet_device module

* add version_added to new args

* remove default value from facility

* changed 'lock' from deprecated arg to alias of 'locked'
2017-08-22 06:43:37 -07:00
Karol Chrapek
0954fadff7 Correct mute function in datadog_monitor (#19662) 2017-08-22 09:38:07 -04:00
Rene Moser
4a2b4d07db exoscale: similar env vars as in cloudstack
* update docs
2017-08-22 14:43:48 +02:00
Rene Moser
58cd107166 exoscale: fix api_key param auth typo 2017-08-22 14:43:48 +02:00
Ganesh Nalawade
5d1d1a72c5 Fix junos integration test failure (#28491)
Pass ssh_config value to ncclient manager api as None
if it is not set.
2017-08-22 07:25:19 -04:00
Dag Wieers
96da0047ac Fix an issue causing win_copy to fail
It seems win_copy can fail because `will_change` was not returned in the dictionary when doing a query.
This is an easy fix to get it working again.
2017-08-22 13:03:32 +02:00
tmarlok88
982e322287 java_cert role pkcs12 import (#24616)
* java_cert pkcs12 import

* documentation and formatting

* update examples

* update examples #2

* integration tests

* integration tests #2

* added aliases.txt

* renamed aliases

* bugfix

* empty it alieses
2017-08-22 09:45:30 +02:00
Dag Wieers
6d015294c2 purestorage: Various changes, and one check-mode fix (#28485)
These were the changes I propose twice, a nullified PR edit, and then as
review comments when the PR was being merged.

I made those changes now to all purestorage modules.
2017-08-22 02:25:13 +02:00
Simon Dodsley
b150f49187 purefa_volume: Add volume copy, aka clone (#28376) 2017-08-22 00:15:51 +02:00
Abhijeet Kasurde
69d03d26e5 Fix multiple issues in vmware_vswitch (#27969)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-21 23:07:04 +02:00
Brian Coca
a897193bce Moar constructive (#28254)
* made composite vars and groups generic

now you can do both in every plugin that chooses to suport it
renamed constructed_groups as it now also constructs vars ... to constructed
moved most of constructed_groups logic into base class to easily share

* documented inventory_hostname

* typo fix
2017-08-21 16:06:15 -04:00
Mike Wiebe
ec11cd2696 nxos_bgp_neighbor_af fix problem with advertise-map properties (#28413)
* Fix problem with advertise-map properties

* Change limit_to back to run all tests

* Fix unit tests

* Move advertise_map out of get_custom_value
2017-08-21 15:28:02 -04:00
Dag Wieers
d902b9a36e Fix booleans in win_psexec documentation 2017-08-21 19:58:17 +02:00
bonuscheese
7c366f5cbd Fix 'format' method syntax to support Python 2.6 (Fixes #28198) (#28304)
Fixes #28198
Changed how string format method is used to support Python 2.6 syntax. By adding in positional arguments to braces in format method (e.g. {0}, {1}), Python 2.6 can support this module, without causing issues in newer versions of Python.

See ref for info on format differences w/ 2.6:
https://docs.python.org/2/library/string.html#format-string-syntax
2017-08-21 13:57:26 -04:00
Matt Clay
44f4294f5c Fix metadata in syslogger module. 2017-08-21 13:14:55 -04:00
Tim Rightnour
c1e4702ff4 Add the syslogger module
Remove tabs from docs

Pass ansible sanity test
2017-08-21 12:33:54 -04:00
Yanis Guenane
d4e7b045b7 Extend test coverage for openssl modules (#27548)
* openssl_privatekey: Extend test coverage

Extend the coverage of the integration test for the module
openssl_privatekey.

New tests have been added:

  * passphrase
  * idempotence
  * removal

Co-Authored-By: Pierre-Louis Bonicoli <pierre-louis.bonicoli@gmx.fr>

* openssl_publickey: Extend test coverage

Extend the coverage on the integration test for the module
openssl_publickey.

New tests have been added:

  * OpenSSH format
  * passphrase
  * idempotence
  * removal
2017-08-21 12:19:41 +01:00
Emma
4653f892c8 Documentation fix - subnet_name (#28462)
virtual_network was incorrectly stated as an alias for subnet_name. It should be 'subnet'.
2017-08-21 08:30:30 +01:00
nrwahl2
535ede4d15 Fixes #28444: Renamed function print_match to match_print due to variable name conflict (#28445)
* Fixes #28444: Renamed print_match function to match_print due to name conflict

* Rename `match_print` to `do_print_match`

I think this is less confusing.
2017-08-20 05:28:30 +02:00
Dag Wieers
b9cee65756 Original author wishes not to be notified by ansibot (#28447)
And moving maintainers to BOTMETA.yml as well.
2017-08-20 03:56:31 +02:00
David Kretch
beed59f303 Fix trailing space in ec2_vol example, fix 'the the' typos (#28440)
* Fix 'the the' typos, fix 'pahting' filename typo

* Change 'the the' typos to a single 'the'.
* Change `playbook_pahting.rst` to `playbook_pathing.rst`.

* Delete trailing space in ec2_vol example

Delete the trailing space in `instance: "{{ item.id }} "`, which makes the
example fail when run because it looks for instance "i-xxxx ".
2017-08-19 23:00:51 +02:00
Mike
b5a00d05d3 fixed #28183 - user module shadowfile update on SunOS (#28276)
* fixed #28183 - user module shadowfile update on SunOS
2017-08-19 13:14:58 -07:00
Jordan Borean
8e40ac54dd win_copy: rewrite with new tests and functionality (#27678)
* win_copy rewrite with new tests and functionality

* minor pep fixes

* Handle UTF-8 filenames in zip

* fix for template

* when zip assemblies are not available in .net revert to old behaviour of copying one by one

* typo fix

* some more typos

* updated logic to correctly handle when new directories can be created

* removed testing file as it is not needed

* updated documentation based on PR
2017-08-18 20:33:37 -07:00
Matt Clay
7fc4e6b4af Fix PEP 8 issue. 2017-08-18 16:19:27 -07:00
Brian Coca
49c54024e6 added helper function to convert objects to dicts 2017-08-18 18:13:51 -04:00
Brian Coca
de16ce42ef optimize reserved names warning 2017-08-18 17:45:39 -04:00
René Moser
b3a57a4014 cloudstack: cs_host: add host_tag alias (#28417) 2017-08-18 22:41:52 +02:00
Drew Bomhof
ea51567697 Allow a miq token as an argument passed into the ManageIQ Python API Client (#28088) 2017-08-18 16:25:09 -04:00
Nathaniel Case
33f342435a Attempt to detect and abort when 'fex-fabric' is present (#28342) 2017-08-18 16:13:12 -04:00
Ganesh Nalawade
4f54d6cea1 eos aggregate spec validation and doc changes (#28414)
*  Add aggregate validation for eos DI modules
*  Doc change to add aggregate examples
2017-08-19 01:41:20 +05:30
Rene Moser
f6b7c1a6c1 cloudstack: cs_storage_pool: fix state handling, add tests
cs_storage_pool: rm CloudStackException dependency

cs_storage_pool: fix UnboundLocalError in check mode
local variable 'pool' referenced before assignment
2017-08-18 22:08:41 +02:00
John McEleney
7549b27544 Add new module cs_storage_pool
- Changed zone_name to name - Changed cluster_name to cluster - Changed pod_name to pod - Corrected tags type in docs - Remove unneeded returns - Other simplifications
2017-08-18 22:08:41 +02:00
Abhijeet Kasurde
be86d77a70 Add check for correct parsing of sysctl (#24540)
* PEP8 fixes
* Refactoring of code
* Check to skip non-comment lines which doesn't
  contain = character

Fixes #24453

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-18 15:31:26 -04:00
Deyan Stoykov
2f732a621d haproxy: fix fail_on_not_found behaviour (#24790)
* haproxy: fix fail_on_not_found behaviour

* fix pep8 compliance
2017-08-18 15:31:12 -04:00
Dmitriy Khomutov
277b8bfaf0 Alternatives module: Add a check that the path to the executable exist (#24800)
* Add check that the path to the executable exists

* Corrected a typo
2017-08-18 15:31:06 -04:00
Sloane Hertel
29ab182537 elasticache_parameter_group: fix KeyError bug #24475 (#24509)
* Fix KeyError bug by appending None if key doesn't exist

ensure value is the expected type; if if expecting something parsed as truthy try to turn it back into the desired value - fixes result showing always changed since bool compared to str

use to_text

* use string_types instead of str, remove inline conditionals, abbreviate boolean logic
2017-08-18 15:23:38 -04:00
Guillaume Coré
ccdea1c3b8 archive: allow ZIP64 by default (#24200)
allowZip64 is True by default since python 3.4,
see https://docs.python.org/3/library/zipfile.html#zipfile-objects

With python 2.7, when the file or folder to zip is >2G,
zipfile raises LargeZipFile.

This commit set allowZip64 to true.

Fixes #24125
2017-08-18 14:55:40 -04:00
Ganesh Nalawade
c4b9dfe542 Remove default description in network DI modules (#28411) 2017-08-19 00:09:01 +05:30
Abhijeet Kasurde
a572de626c Pep8 fixes for acl module (#24666)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-18 14:31:16 -04:00
Catatonic
b146ba37da Update capabilities.py (#23879)
Fixes issue when using python3 interpreter: 'filter' object has no attribute 'append'
Ensure list type of data is used before appending data.
2017-08-18 14:24:33 -04:00
Konstantin Shalygin
343da35381 mail: Fix auth over starttls. (#24089) 2017-08-18 12:13:24 -06:00
Peter Sprygada
03b888052b fixes bugs in network filter for parsing ip address (#28404)
also adds parse_cli and parse_cli_textfsm to changelog
2017-08-18 14:05:26 -04:00
Gaige B Paulsen
54c50cc983 netconfig module updated to pay attention to .ssh/config (#23876) 2017-08-18 12:04:30 -06:00
Sloane Hertel
b9762b52af s3_sync was setting HAS_BOTO3 by the existence of botocore alone. Fixes #28023 (#28339)
* s3_sync was setting HAS_BOTO3 by the existence of botocore alone. Fixed to import from module_utils.ec2 to ensure boto3 + botocore are present.

Also documented module requirements.

* Remove unused import
2017-08-18 13:21:10 -04:00
Bobby Watson
8e8a7c869a Changed string check to verify that EOS device is not in config mode. (#28332)
Changed string check to verify that EOS device is not in config mode. This was required in order to work with Arista 7500 series modular switches.
Resolves #2830
2017-08-18 09:06:46 -06:00
Chris Alfonso
bd56e6c9ce Removing deprecated openswitch modules (#28397) 2017-08-18 08:58:45 -06:00
Doug Gorley
5e6984a34c Added support to GCE module for image families and external projects. (#26711)
* Added support to GCE module for image families and external projects.

* Added image_family and external_projects to gce_pd.

* Added version_added for new options.
2017-08-18 10:45:13 -04:00
Nathaniel Case
db5d799122 Fix nxos_pim idempotence (#28348) 2017-08-18 09:47:41 -04:00
TaoBeier
be6c4908a2 executor stats and task_executor pep8 error (#23651) 2017-08-18 08:55:48 -04:00
Abhijeet Kasurde
6fd579b9f5 Refactor DigitalOcean modules
Fix adds refactoring of DigitalOcean modules by adding
common functionality to module_utils.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-18 00:23:54 -07:00
Ganesh Nalawade
9ab9945cf3 iosxr modules aggregate check and other minor refactor (#28360)
*  iosxr aggregate validation
*  vyos_user, junos_user minor changes
*  Aggregated documentation
2017-08-18 09:50:35 +05:30
Ganesh Nalawade
ceef4f97ed Use merge operation for load configuration in junos modules (#28369)
*  Change load configuration operation from replace to merge
2017-08-18 09:50:02 +05:30
Mehran Kholdi
ecfa7f696d Enforce state='file' in copy module
This was causing wrong behaviour when `prev_state` was `hard`-link,
since the `file` module tried to apply the same `state` on the new
file, causing unexpected errors.

Particularly, both `overlay` and `devicemapper` storage drivers in
docker use hardlinks to share files between layers. This causes
most ansible playbooks to fail when working with files from layers
below.
2017-08-17 18:16:17 -07:00
Dag Wieers
78dfbed2a5 openbsd_pkg: Fix when failed, PEP8-compliant (#26018)
This PR includes:
- PEP8 compliancy
- A fix to ensure the module fails when it failed for a package
- Various cosmetic changes to documentation
- Make `state: present` the default (and not required)
2017-08-17 18:20:02 -04:00
Sam Doran
9fe898add6 Make options match others in the file 2017-08-17 17:44:27 -04:00
Kurt Bomya
05fd51f77d Added "choices" true/false for user_install 2017-08-17 17:44:27 -04:00
Julien Stroheker
0b29162b97 Azure Availability Set module (azure_rm_availabilityset) (#28353)
* Adding the module and int. tests

* upgrading metadata to 1.1
2017-08-17 17:20:16 -04:00
Sergio Millan
400085aa5b return EXCL_STATE when color property is not in the response 2017-08-17 17:17:49 -04:00
Artem Loginov
6e8eb7612a Fixed issue with legacy jenkins instances 2017-08-17 17:17:49 -04:00
Filipe Azevedo
6868c892ed Fixes https://github.com/ansible/ansible-modules-extras/issues/2462 (#21891) 2017-08-17 17:16:55 -04:00
Adrian Likins
01c0b2f714 Handle errors in jmespath in json_query better (#22109)
* Handle errors in jmespath in json_query better

Catch any exceptions raised from jmespath and raise
an AnsibleFilterError instead.

Avoid a traceback.

Fixes #20379

* pep8
2017-08-17 17:16:35 -04:00
Lukas Beumer
eebc0cea6e [cloud][gcp] Add region and versioning parameter to gc_storage (#27802) 2017-08-17 15:58:29 -04:00
John Bond
722579356d correct handeling of execute option (#23814) 2017-08-17 15:50:38 -04:00
Nihlaeth
e5ff8e3407 Don't remove comment from public key, and improve error message for duplicate keys (github_key) (#22282)
* improve error message for duplicate public keys

* don't consider self when searching for duplicates

* don't strip comment from key
2017-08-17 15:38:39 -04:00
Antony Messerli
e0d0446183 Updates lldp module example to use ifname instead of ifalias (#23064) 2017-08-17 15:38:30 -04:00
Anthony Arnaud
3da1036baa zfs bad volume block size #23090 (#23092) 2017-08-17 15:38:24 -04:00
Elachance
7b8b444602 Fix logic in os_nova_host_aggregate module (#23191)
* Fix logic in os_nova_host_aggregate module

Fix logic around adding availability zone to metadata and comparing existing host list to parameter host list. 

Previously, when no availability zone was defined, an empty availability zone was being appended to metadata. This was causing 'empty named availability zone' errors when running the module against an already existing host aggregate with no availability zone. This was fixed by only appending availability zone to metadata if it is not an empty parameter.

Also added set() casting when comparing existing and new host lists. Previously, if existing host list was not in the same order as the host list in the .yml parameter file the module would consider this a change even if the two lists had the same entries.

* Update os_nova_host_aggregate.py
2017-08-17 15:30:38 -04:00
Michael Leer
ce2c14757d the use of --puppet has been deprecated (#23356) 2017-08-17 15:30:21 -04:00
Sloane Hertel
25a9ababcc ec2.py: filter by client-token if id is specified (#26114)
fixes #26021
2017-08-17 15:17:13 -04:00
Sloane Hertel
1300680d30 [cloud] Cast port to an integer in elb_application_lb listener spec (#28341) 2017-08-17 15:13:58 -04:00
Dag Wieers
e801187899 Bugfix and assorted fixes (#28352)
These are updates from aci-ansible.
2017-08-17 21:00:23 +02:00
disappear89
d4cedbee20 nmcli: Changed parameter ordering in create_connection_bond (#23571)
nmcli: Changed parameter ordering in create_connection_bond
2017-08-17 14:48:58 -04:00
Jun Guo
655667527d [docker] Fix ignore_image option not work issue. (#19039)
Currently the ignore_image option can be set, but can not work as it is
descripted in document. The reason is the code will check the difference
of configurations between current container and target image, and it
will mark the `different` to `True` when the image is different even we
set `ignore_image=true`, that will cause the container being re-create.
2017-08-17 13:47:52 -04:00
Simon Dodsley
e7b0849886 Fix incorrect bool check in Pure Storage modules (#28007) 2017-08-17 10:35:52 -07:00
jctanner
f4e93ccc1a Fix the authors in pure storage modules so the bot can ping the right users. (#28347) 2017-08-17 13:32:23 -04:00
Aleksandr Vinokurov
a55cef3cba Fix postgresql_user module to treat quoted identifier well, Fixes #18937 (#18938) 2017-08-17 12:40:24 -04:00
Jasper Lievisse Adriaanse
955cc5a99e Fix for hponcfg on ESXi hypervisors (#27362)
Add new option to pass the path to the hponcfg binary which may not live in
$PATH. For example on ESXi hypervisors it tends to be located in
/opt/hp/tools/ instead. Also properly implement a verbose option for which the
code was already commented out.
2017-08-17 18:20:55 +02:00
Lucas Alvares Gomes
119a79cf0c Replace lxc-clone with lxc-copy (#19890) (#20373)
The command lxc-clone is deprecated in favor of lxc-copy. This patch
changes the lxc module to use the new lxc-copy command by default. If
not present, it will fallback to the old lxc-clone command to keep it
backward compatible with older versions of lxc.
2017-08-17 12:01:47 -04:00
alex lustenberg
ff4fa6ac29 fix for empty hostnames in mysql users (#20523) 2017-08-17 12:00:26 -04:00
Jonathan Davila
974d988703 Updated consul_kv lookup plugin so that it can take in host and port
parameters as keyword arguments instead of only being able to specify
it as environment variables.
2017-08-17 10:42:22 -04:00
Alvaro Aleman
f8e79eb481 Fix changed event for docker_image in force mode 2017-08-17 10:42:09 -04:00
Ryan Fitzpatrick
b905a349ac Correct config manager deprecation warning 2017-08-17 10:24:42 -04:00
David Newswanger
b818e986b6 Change network *_user modules to use configured_password to set a users password (#28187)
* WIP, update eos_user args

* refactor password for ios_user

* add eos tests, fix ios tests

* fixed password check

* refactor iosxr_user password

* fixed password arg for nxos

* [WIP] fix vyos_user password

* fix vyos tests

* update docs for net_user

* fix typo

* fix eos tests

* add warning when attempting to use password arg

* fix sanity/unit tests

* fix eos unit tests

* fix vyos_user aggregate

* fix typo in eos documentation string

* re add configured_password to vyos tests after rebase
2017-08-17 19:06:44 +05:30
Peter Sprygada
b1d297d144 fixes asa_acl module to work with persistent connections (#28320)
* updates module_utils/asa.py to add missing common argument 'passwords'
* fixes asa_acl.py module to work with persistent connections
2017-08-17 07:48:35 -04:00
Abhijeet Kasurde
86f23dc620 Update connection logic in vmware module_utils (#26323)
Fix updates logic of connection in vmware module_utils

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-17 13:30:56 +02:00
Ricardo Carrillo Cruz
5a6f3ebed1 WIP Implement declarative intent arguments on eos_vlan (#28270)
Implement declarative intent arguments on eos_vlan
2017-08-17 09:45:50 +02:00
Trishna Guha
2e211078ce fix vyos_user aggregate (#28317)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-08-17 12:44:55 +05:30
Ganesh Nalawade
403f6db53f ios aggregate and common argument support (#28316)
*  ios aggregate spec validation
*  ios common argument for aggregate support
2017-08-17 12:07:08 +05:30
Benjamin
c9e5842c47 Fix maven_artifact documentation (#28295)
Display the string 'no' as default for the keep_name attribute.
2017-08-17 11:47:09 +10:00
Dag Wieers
2960f5feac Rename ACI modules according to new conventions (#28306)
As discussed in full at https://github.com/datacenter/aci-ansible
we desired a better naming convention for ACI modules before they ship
with Ansible v2.4

The result is summarized in this PR.

The modules now also include the classes from the object model, as well
as a link to the documentation.
2017-08-17 02:27:42 +02:00
Matt Clay
15be0e91e8 Fix PEP 8 issues. 2017-08-16 14:32:11 -07:00
Jordan Borean
46b80bc18e win_update: added extra job parameters to run even if on battery (#28212)
* win_update: added extra job parameters to run even if on battery

* added info about battery power change
2017-08-16 14:15:20 -07:00
kletiz
a42b81132e win_dns_client failing on 2008R2 SP1 (Fixes #25216) (#28172) 2017-08-17 07:11:02 +10:00
Paulo Matias
c8124ca39a os_router: fix checking if router needs update (#19780)
When verifying if a router needs update, the os_router module should
take into account only network ports which are owned by routers. Other
ports might have been added e.g. by the HA network tenant, which would
lead the router to always be detected as changed and cause the module to
try removing these network interfaces.
2017-08-16 22:38:49 +02:00
Meirong
e75a256cfa add Fusionlayer Infinity ansible module into ansible package (#26855)
* add infinity ansible module into ansible package

* move infinity to be the correct direction without a folder

* remove dependency on requests library and use ansible built-in method to send rest api call

* add missing whitespace

* Use open_url from module_utils instead of urlopen based on suggestions

* correct the path for infinity ansible modue, moving it into the  ansible/modules/network/infinity

* make change on the documentation and code based on feedback

* change the data type in the Return documentation based on feedback

* add importing  for path and define metaclass based on testing failure

* change the postion of importing __future__

* Move Infinity module from Network module into net_tools directory based on review

* put back the file that is accidently removed

* change ansible-metadata version to be 1.1
2017-08-16 20:11:10 +01:00
Keisuke.K
de27e8d228 nmcli should not return error if trying to delete an absent connection (#20677) 2017-08-16 12:57:57 -06:00
Andrew Klaus
c9cfc9be07 os_recordset fix for names with multiple DNS record types (#19588)
* Fix for os_recordset.py to filter based on record type. Fixes https://github.com/ansible/ansible/issues/19572

* remove redundant variable

* Needing to use recordset ID to update and delete records. Using the record name for update/delete causes issues when A and AAAA records exist for a name

* Adding exception handling for dictionary item
2017-08-16 14:32:13 -04:00
George Nikolopoulos
b339f23485 Various small fixes (#27766) 2017-08-16 14:14:21 -04:00
Anil Kumar Muraleedharan
55df3e05ed Solving Coverity issues (#28057) 2017-08-16 17:29:34 +01:00
Anil Kumar Muraleedharan
ffd701c8d1 Resolving Coverity Issues. (#28056) 2017-08-16 17:21:02 +01:00
Mike Wiebe
8f4bc8150f Fix default nxapi port setting when use_ssl set (#28236)
* Fix port setting when use_ssl set
2017-08-16 11:38:38 -04:00
Martin Krizek
bcb9644f39 yum: cover "Nothing to do" not only for groups (#28283) 2017-08-16 17:24:51 +02:00
Ganesh Nalawade
8a6e1531b7 Fix config timeout issue for network modules (#28261)
* Fix config timeout issue for network modules

* Re-enable network test

* Remove unwanted persistent connection timer

* Minor changes in description
2017-08-16 10:55:39 -04:00
Pilou
016cd0691c alternatives: handle absent link, add integration tests (#27967)
* alternatives: add integration tests

* alternatives: handle absent link (fix AttributeError)

Error occurred at least on Debian Stretch and OpenSuse 42.2:
Traceback (most recent call last):
  File "/tmp/ansible_RY6X41/ansible_module_alternatives.py", line 161, in <module>
    main()
  File "/tmp/ansible_RY6X41/ansible_module_alternatives.py", line 113, in main
    current_path = current_path_regex.search(display_output).group(1)
AttributeError: 'NoneType' object has no attribute 'group'

update-alternatives stdout sample:
dummy - manual mode
  link best version is /usr/bin/dummy1
  link currently absent
  link dummy is /usr/bin/dummy

* alternatives: PEP 8 fixes

* alternatives: fix copyright in integration tests

* alternatives: nested loops handle more than 2 items

Thanks to Michael Scherer (@mscherer) for pointing that.

* alternatives: enable integration tests
2017-08-16 10:35:56 -04:00
Peter Sprygada
6886153b54 refactors nxos_vrf_af module (#28208)
* refactors nxos_vrf_af module

fixes #27595

* fix up unit test cases

* add commands to result dict

* add route-target on afi create

* adds deprecation note to safi argument
2017-08-16 10:11:12 -04:00
Peter Sprygada
37524b798d updates network parse_cli filter to handle blocks from output (#28245)
* updates network parse_cli filter to handle blocks from output

* minor updates to finish up parse_cli filter

* all vars are now under the vars key
* attributes key has been changed to keys
* added the start_block and end_block directives

* update PEP8 failures
2017-08-16 08:59:14 -04:00
Yanis Guenane
b658ea8da2 openssl_csr: Ensure array comparison is deterministic (#28265)
When comparing expected and current value for keyUsage and
extendedKeyUsage current behavior is not deterministic.

As we compare two arrays, based on the order the value have been
specified, False might be returned when the two arrays actually matches.
In order to have a deterministic comparison we compare sets rather than
arrays.
2017-08-16 14:35:25 +02:00
David Newswanger
a37c5e53e6 fix prompt error when deleting ios user (#28175)
* fix prompt error when deleting ios user

* placate pep8

* wrap delete user command in function

* fix python 3 unit tests
2017-08-16 15:15:41 +05:30
Trishna Guha
ce3d1c6ba0 eos_user fix username param (#28114)
* eos_user fix username param

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* Add setup eos_user test and rename username for consistency

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* update unit test and pep8 fix

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* pep8 fix
2017-08-16 12:08:59 +05:30
Toshio Kuratomi
d8b1cb9a63 Assign network modules maintained by the network team the network metadata 2017-08-15 23:12:08 -07:00
Toshio Kuratomi
f203ca7907 Update metadata to 1.1 2017-08-15 23:12:08 -07:00
Toshio Kuratomi
af2073d057 metadata 1.1
* Add network value to support_by field.
* New support_by value, certified
* Deprecate curated in favor of certified
* Add conversion from 1.0 to 1.1 to metadata-tool
* Add supported by Red Hat field to ansible-doc output
2017-08-15 23:12:08 -07:00
CyberArk BizDev
d50d65d448 Added cyberarkpassword lookup plugin (#21857)
* Added cyberarkpassword lookup plugin

Added cyberarkpassword lookup plugin: It allows to retrieve credentials
(password, sshkey) from CyberArk Digital Vault
2017-08-15 23:06:46 -07:00
Toshio Kuratomi
bf4858d042 metadata change was lost in conflict resolution. 2017-08-15 21:43:13 -07:00
Ganesh Nalawade
4caddad224 Doc fixes for junos lldp modules (#28228) 2017-08-16 09:32:39 +05:30
David Newswanger
b7d886840b standardized agreggate as arg, and collection and users as aliases for user modules (#28244) 2017-08-16 09:31:25 +05:30
Dag Wieers
edba563e9a ACI fixes (#28257) 2017-08-16 04:13:16 +02:00
Pierre-Louis Bonicoli
572ab3987a circonus_annotation: check requests library version 2017-08-15 19:07:21 -07:00
Pierre-Louis Bonicoli
f69333b80d circonus_annotation: fix broken import, update requirements 2017-08-15 19:07:21 -07:00
Matt Davis
9b383403ce switch become/runas to LogonUser/CreateProcessWithTokenW (#28253)
* non-uac works

* switch become/runas to LogonUser/CreateProcessWithTokenW

* fixes #22218
* provides consistent behavior across authtypes
* auto-elevates on UAC if target user has SE_TCB_NAME ("Act as part of the operating system") privilege
* sets us up for much more granular capabilities later (eg, network/service/batch logons)
2017-08-15 18:55:17 -07:00
Pilou
1b6b74f655 alternatives: link is required when alternative is unknown (#27942)
Fixes #25598
2017-08-15 18:35:09 -07:00
Andy Freeland
9e8a3f4302 stdin arg: add documentation to shell module 2017-08-15 18:24:01 -07:00
Guillaume Coré
905c25559d add stdin argument to command module
fixes #14380
2017-08-15 18:24:01 -07:00
Jacob McGill
b7d99f43d5 ACI EPG Contract Binding: New Module (#28251)
new module: managing EPG to Contract bindings [network/aci/aci_epg_contract_binding]
2017-08-16 02:58:01 +02:00
Toshio Kuratomi
872255b791 Revert "Add 'stdin' argument to command/shell modules"
This reverts commit 393909d0cc.
Reverte so that we can maintain authorship
2017-08-15 17:10:31 -07:00
schunduri
4729981eba new module: Manage end point groups [network/aci/aci_epg] (#28207)
* Cisco ACI EPG

* Fixed errors

* Updated module

* Update to version from aci-ansible repository
2017-08-16 01:46:38 +02:00
schunduri
ebbb5369b5 new module: manage application network profiles [network/aci/aci_anp] (#27984)
* New Cisco ACI Application Profile Module

* PEP8 verified

* Various Fixes

* aci_anp:Refactored

* aci_anp changed short description

* Changes from the aci-ansible repository
2017-08-16 01:04:46 +02:00
schunduri
83d9f2d9ed new module: manage attachable entity profiles [network/aci/aci_aep] (#27987)
* New Cisco ACI Attachable Entity Profile Module

* PEP8 Verified

* Various Fixes

* Refactored: aci_aep

* Updated to the latest changes from aci-ansible

* And a small cosmetic change
2017-08-16 00:59:43 +02:00
Ozi Boms
da3f8df20d Azure azure_rm_common update (#28227)
* include support for DNS modules

added code to allow DNS modules to run

* fixed issue with dns

* removed extra end of file line
2017-08-15 15:55:13 -07:00
Ivan Bojer
c2b2176893 deprecated panos_nat_policy in lieu of panos_nat_rule (#28033)
* - deprecated panos_nat_policy in lieu of pano_nat_rule that uses next generation SDK (PanDevice). Also renamed the module so that is aligns with API calls and UI framework.

* - ansible_metadata requires metadata_version instead of just version key in 2.4

* PEP8 changes

* PEP8 changes

* Emit deprecation warning and add boilerplate
2017-08-15 17:45:37 -04:00
Andy Freeland
393909d0cc Add 'stdin' argument to command/shell modules
Fixes #14380 #23428
2017-08-15 14:27:57 -07:00
Brian Coca
c27248db60 ansible-inventory cli tool (#22477)
* ansible-inventory cli tool

added vars dump to graph
made yaml inventory dump actual yaml inventory format
cleaner dump
fixed graph, no dump needed
add pulling in host/group vars
pep indentation crime
added docstring for manpage autodoc
remove ansible_facts from output
added api compat layer
allow import from new and old APIs
better conditional for <2.4
pe4+p4

test stuck on OS X (seems popular today) but passes rest, merging anyways
2017-08-15 16:45:54 -04:00
Ivan Bojer
178cf6e82e Rename panos_security_policy to panos_security_rule + extra features (#28031)
* - renamed panos_security_policy to panos_security_rule in order to better align with UI and API calls

* - fixed PEP8 issues

* - ansible bot does not like multiline comments. Using > for now.

* Add deprecation warning and boilerplate
2017-08-15 16:42:10 -04:00
Brian Coca
f921369445 Ansible Config part2 (#27448)
* Ansible Config part2

- made dump_me nicer, added note this is not prod
- moved internal key removal function to vars
- carry tracebacks in errors we can now show tracebacks for plugins on vvv
- show inventory plugin tracebacks on vvv
- minor fixes to cg groups plugin
- draft config from plugin docs
- made search path warning 'saner' (top level dirs only)
- correctly display config entries and others
- removed unneeded code
- commented out some conn plugin specific from base.yml
- also deprecated sudo/su
- updated ssh conn docs
- shared get option method for connection plugins
- note about needing eval for defaults
- tailored yaml ext
- updated strategy entry
- for connection pliugins, options load on plugin load
- allow for long types in definitions
- better display in ansible-doc
- cleaned up/updated source docs and base.yml
- added many descriptions
- deprecated include toggles as include is
- draft backwards compat get_config
- fixes to ansible-config, added --only-changed
- some code reoorg
- small license headers
- show default in doc type
- pushed module utils details to 5vs
- work w/o config file
- PEPE ATE!
- moved loader to it's own file
- fixed rhn_register test
- fixed boto requirement in make tests
- I ate Pepe
- fixed dynamic eval of defaults
- better doc code

skip ipaddr filter tests when missing netaddr
removed devnull string from config
better becoem resolution

* killed extra space with extreeme prejudice

cause its an affront against all that is holy that 2 spaces touch each other!

shippable timing out on some images, but merging as it passes most
2017-08-15 16:38:59 -04:00
Ivan Bojer
8b617aaef5 Panos object (#28028)
* - deprecated panos_address and panos_service in lieu of common panos_object

* - deprecated/removed panos_address and panos_service in lieu for panos_object

* squash! - deprecated/removed panos_address and panos_service in lieu for panos_object

* - fixed PEP8 issues

* - ansible_metadata requires metadata_version instead of just version key in 2.4

* add > to multi line descriptions

* update version string to 2.4

* Update legacy-files.txt
2017-08-15 16:24:15 -04:00
Simon Dodsley
08767946cb Add Pure Storage Snap module (#28027)
* Add Pure Storage Snap module

* Use one line GPL license

https://github.com/ansible/community/wiki/Testing:-boilerplate,-wildcard-imports,-and-get_exception
2017-08-15 15:27:34 -04:00
saichint
064ab7a92d fix for remove idempotent issue (#28226) 2017-08-15 13:14:40 -04:00
Adrian Likins
8003437ebc prompt for new pass on create/encrypt if none specified (#28185)
* prompt for new pass on create/encrypt if none specified

Make 'ansible-vault' edit or encrypt prompt for a password
if none or provided elsewhere.

Note: ansible-playbook does not prompt if not vault password
is provided

* dont show vault password prompts if not a tty
2017-08-15 13:09:24 -04:00
giovannisciortino
09cc84c796 Fixes #27635: pam_limits fix add comment (#27999) 2017-08-15 13:07:31 -04:00
Sam Doran
a8e4c9be7a Cause copy module to fail on empty string as source (#27975)
* Fail if an empty string is set as src for copy module

Fixes #27363

* Cleanup task formatting on copy tests

Use multi-line YAML
Add debug statements with verbosity: 1 rather than leave them in there commented out.

* Add test for empty string as source

* Do more checks in order to add more specific errors messages

Add more integration tests for the various failure scenarios.
Cleanup some syntax on existing integration test tasks.
2017-08-15 12:41:16 -04:00
saichint
d69440c4ef Fix nxos_vpc issues (#28188)
* fix for nxos_vpc issues

* fix unit tests

* clean documentation
2017-08-15 12:08:55 -04:00
Nathaniel Case
1d13624eae Clean up nxos_aaa_server (#28177)
* cleanup nxos_aaa_server

* Specify nxos_aaa_server output format

Fixes #27289
2017-08-15 12:08:03 -04:00
Adrian Likins
5739bb075f Vault secrets default vault ids list (#28190)
* Add config option for a default list of vault-ids

This is the vault-id equilivent of ANSIBLE_DEFAULT_PASSWORD_FILE
except ANSIBLE_DEFAULT_VAULT_IDENTITY_LIST is a list.
2017-08-15 11:56:17 -04:00
Jiri Tyr
1b8fe94e5a Support list for baseurl and gpgkey params in yum_repository (fixes #24948) (#24967)
* Support list for baseurl and gpgkey params in yum_repository

* Adding tests
2017-08-15 11:51:33 -04:00
Nathaniel Case
20a35d0c1c Fix python3 str <-> bytes in connection/persistent.py (#28224) 2017-08-15 11:36:20 -04:00
Adrian Likins
e287af1ac8 Vault secrets empty password (#28186)
* Better handling of empty/invalid passwords

empty password files are global error and cause an
exit. A warning is also emitted with more detail.

ie, if any of the password/secret sources provide
a bogus password (ie, empty) or fail (exception,
 ctrl-d, EOFError), we stop at the first error and exit. 

This makes behavior when entering empty password at
prompt match 2.3 (ie, an error)
2017-08-15 11:01:46 -04:00
Sam Doran
271127113f Add comment option to authorized_key (#27781)
* Add comment option to authorized_keys

* Update version_added for authorized_keys comment

* PEP8

* Include index rank in parsed_key_key

*  Properly display diff

Only display diff if specificed via settings

* Fix PEP8 test failure

Removed from legacy files since it is now properly formatted

* Cleanup integration test formatting and add test for new comment feature

* Correct version_added for new option
2017-08-15 10:50:50 -04:00
René Moser
d1fa210bed yum: using install to update specified packages (#26266)
* yum: using install for update packages

* yum: fix return changed when latest version installed

* yum: fix changed when nothing to do
2017-08-15 16:20:10 +02:00
Ganesh Nalawade
a12e9807ba Add intent arguments for ios and iosxr interface modules (#28018)
* Add intent arguments for ios_interface

*  Intent argument support
*  Integration test case for intent arguments

* Fix ci issue

* Add intent arguments for iosxr_interface

*  Add intent check support for iosxr_interface
*  Integration test for intent + configuration

* Fix ci failure
2017-08-15 19:20:28 +05:30
Ganesh Nalawade
38c0b581c3 Handle common argument in aggregate parameter for vyos module (#28182)
* Handle common agrument in aggregate parameter for vyos module

*  Add supoort to set parameter in aggregate to it's respctive
   top level argument if value not provided in aggregate.
*  Aggregate argument spec validation
*  Documentation for aggregate

* Fix unit test failure
2017-08-15 19:09:44 +05:30
Ganesh Nalawade
0c4706897c Fix minor issue in junos_vlan (#28218) 2017-08-15 18:41:53 +05:30
Ondra Machacek
e9c9473819 Add power_manage_enabled option to ovirt_hosts module (#28154)
* cloud: ovirt: Add possibility to enable PM of host

* cloud: ovirt_hosts: user self.param to get module params
2017-08-15 05:32:18 -04:00
Fran Fitzpatrick
5fec649052 ipa_dnsrecord: Allow for PTR Records (supporting reverse DNS) (#26709) 2017-08-15 11:25:28 +02:00
Yanis Guenane
8ed7417ff9 openssl_csr: Allow user to specify criticality of extensions (#28173)
Allow user to mark the x509v3 extensions as critical, by specifying the
$extension_critical boolean, where $extension is the name of the
extension.

Currently this module supports only 3 differents x509v3 extensions:

  * keyUsage
  * extendedKeyUsage
  * subjectAtlName

There are more to come.
2017-08-15 04:29:29 -04:00
Andreas Olsson
c9cdc3a259 Fix zip filter for Python3
Using the now bundled six library.

Fixes #28117
2017-08-14 23:03:15 -07:00
Jordan Borean
f0a0e5674c win_iis_webapppool: tests, check_mode, bugfixes (#25869)
* win_iis_webapppool: Added integration testa and cleanup

* Updated docs and tests

* fixes from linter

* fixed up typo in docs
2017-08-15 01:14:39 -04:00
Andrew Saraceni
b0db1a1cf6 New Module: Manage Windows event logs (win_eventlog) (#27827)
* initial commit for win_eventlog module

* remove type for retention_days in documentation
2017-08-15 01:13:52 -04:00
Andrew Saraceni
bb7813f16f New Module: Write Windows event log entries (win_eventlog_entry) (#27828)
* initial commit for win_eventlog_entry module

* added test module for integration tests and minor documentation fixes
2017-08-15 01:13:14 -04:00
Jacob McGill
a8a3ad70ad ACI Subnet: New Module (#28202)
* ACI Subnet: New Module

* fix docstring

* update docstring
2017-08-15 03:46:39 +02:00
Pilou
a3f91274b3 circonus_annotation: DOCUMENTATION & argument_spec cleaning (#26832)
* circonus_annotation: clean description

- add 'default' field
- default value for 'required' field is false
- use formatting function

* circonus_annotation: clean argument_spec

remove useless conversion
default of 'required' False
use 'default' when possible

* circonus_annotation: fix pep8

* circonus_annotation: add RETURN block

* circonus_annotation: check_mode isn't supported, add a note
2017-08-14 18:40:00 -07:00
Jacob McGill
46956f0273 ACI Subject Filter Binding: New Module (#28201)
* ACI Subject Filter Binding: New Module

* add metadata

* fix whitespace
2017-08-15 03:33:11 +02:00
Dag Wieers
f8d24b4111 new module: Manage MCP interface policies [network/aci/aci_mcp] (#28206)
Manage MCP interface policies on Cisco ACI fabrics.
This module is idempotent, and supports check-mode and has diff-support.
2017-08-15 03:26:43 +02:00
Jacob McGill
5efe713bea ACI EPG Domain: New Module (#28203)
new module: managing EPG to VMM and Physical Domains [network/aci/aci_epg_domain_binding]
2017-08-15 03:24:58 +02:00
Jacob McGill
24ec04cbfc ACI Filter Entry: New Module (#28200)
* ACI Filter Entry: New Module

* fix aliases key
2017-08-15 03:24:04 +02:00
Dag Wieers
835ef7dd66 new module: Manage Layer 2 interface policies [network/aci/aci_l2_policy] (#28205)
Manage Layer 2 interface policies on Cisco ACI fabrics.
This module is idempotent, and supports check-mode and has diff-support.
2017-08-15 03:23:26 +02:00
Jacob McGill
cece18a777 aci_bd_l3out_binding.py (#28199)
new module: support for binding Bridge Domains and L3 Outs [network/aci/aci_bd_l3out_binding]
2017-08-15 03:14:53 +02:00
Jacob McGill
79afb2eff1 new module: manage Bridge Domains [network/aci/aci_bridge_domain] (#28196)
* ACI Bridge Domain: Add new module

* fix type in docstring

* fix type in docstring
2017-08-15 03:13:50 +02:00
Dag Wieers
68d487eacf new module: Manage route tag policies [network/aci/aci_route_tag_policy] (#28204)
Manage route tag policies on Cisco ACI fabrics.
This module is idempotent, and supports check-mode and has diff-support.
2017-08-15 03:13:03 +02:00
Dag Wieers
fdfb4f736d new module: manage LLDP interface policies [network/aci/aci_lldp_policy] (#28099)
* aci_lldp_interface_policy: Manage LLDP interface policies

Module to manage LLDP interface policies on Cisco ACI fabrics.
This module is idempotent, and supports check-mode and has diff-support.

* Rename aci_lldp_interface_policy to aci_lldp_policy
2017-08-15 03:12:20 +02:00
Jacob McGill
5e24fb298e Enhance module_utils to be cleaner and support more modules (#28197) 2017-08-15 02:53:29 +02:00
Dag Wieers
5a887fb1f6 aci_port_channel: Manage port channel interface policies (#28141)
Manage port channel interface policies on Cisco ACI fabrics.
This module is idempotent, and supports check-mode and has diff-support.
2017-08-15 01:51:23 +02:00
Dag Wieers
af39ed86e5 aci_span_dst_group: Manage span destination groups (#28143)
Manage span destination groups on Cisco ACI fabrics.
This module is idempotent, and supports check-mode and has diff-support.
2017-08-15 01:51:13 +02:00
Dag Wieers
9b05195a04 aci_taboo_contract: Manage taboo contracts (#28144)
Manage taboo contracts on Cisco ACI fabrics.
This module is idempotent, and supports check-mode and has diff-support.
2017-08-15 01:51:01 +02:00
Dag Wieers
42d8a9ea89 aci_port_security: Manage port security (#28142)
Manage port security on Cisco ACI fabrics.
This module is idempotent, and supports check-mode and has diff-support.
2017-08-15 01:50:12 +02:00
Dag Wieers
f7244ebb49 aci_monitoring_policy: Manage monitoring policies (#28140)
Manage monitoring policies on Cisco ACI fabrics.
This module is idempotent, and supports check-mode and has diff-support.
2017-08-15 01:49:52 +02:00
Dag Wieers
ec8b99ac06 aci_action_rule_profile: Manage action rule profiles (#28139)
Manage action rule profiles on Cisco ACI fabrics.
This module is idempotent, and supports check-mode and has diff-support.
2017-08-15 01:49:35 +02:00
Dag Wieers
67111e7fec aci_fc_policy: Manage FC interfaces on Cisco ACI fabrics (#28095)
Module to manage FC interfaces on Cisco ACI fabrics.
This module is idempotent, and supports check-mode and has diff-support.
2017-08-15 01:49:19 +02:00
Dag Wieers
4e3c3a1aa1 aci_filter: Manage filter objs on ACI fabrics (#28094)
Module to manage top level filter objects on Cisco ACI fabrics.
This module is idempotent, and supports check-mode and has diff-support.
2017-08-15 01:48:47 +02:00
Dag Wieers
d4fae9bbbc aci_contract: Manage contracts on ACI fabrics (#28093)
Module to manage contracts on ACI fabrics.
This module is idempotent, and supports check-mode and has diff-support.
2017-08-15 01:48:27 +02:00
3onyc
554496c404 [passwordstore] Use builtin _random_password function instead of pwgen (#25843)
* [password] _random_password -> random_password and moved to util/encrypt.py
* [passwordstore] Use built-in random_password instead of pwgen utility
* [passwordstore] Add integration tests
2017-08-14 15:19:40 -07:00
Dag Wieers
f345ba5c38 More maintainers is a good thing, right ? 2017-08-14 23:50:21 +02:00
Evan Kaufman
767be93f77 Replace - Clarified regex docs (#26727)
* Clarified docs regarding multiline mode and negated character sets

Refs #26712

* Escaped newline
2017-08-14 14:25:08 -07:00
René Moser
13dec9259f galaxy-cli: selective install roles in requirements file (#21412)
* galaxy-cli: force install selected roles in requirements file

* only when requirements file but also handle uninstalled roles
2017-08-14 17:17:22 -04:00
Brian Coca
d95fd7414a use proper booleans for vars_prompt 2017-08-14 16:52:53 -04:00
Sam Doran
68060002e8 Rename modules from plural to singular (#27185)
* First batch of modules renamed from plural to singular

Related to this proposal: https://github.com/ansible/proposals/issues/10

* Emit rename deprication warning

* Update legacy-files.txt and skip.txt to reflect new names
2017-08-14 16:35:15 -04:00
saichint
9d84a4e530 fix for nxos_ospf_vrf invalid cmd and ntp errors (#27977)
* fix for nxos_ospf_vrf invalid cmd

* fix for nxos_ntp issues
2017-08-14 16:09:16 -04:00
Nathaniel Case
19a6000d97 Fix nxos_bgp_af networks parameter (#28169)
* Split 'networks' and 'redistribute' in get_value

* Add missing `'` in docs
2017-08-14 15:18:10 -04:00
Jacob McGill
59f704c766 add module to support ACI Contexts (#28091) 2017-08-14 13:11:21 -06:00
Ganesh Nalawade
c9b2869f06 Add regex to retrieve socket path (#28181) 2017-08-15 00:17:20 +05:30
Toshio Kuratomi
47b534d809 Move more modules out of curated
pip to core because users frequently use pip to install packages to run
ansible modules.

win_chocolatey to community as it still needs some work before we'd be
ready to include it in core support.
2017-08-14 10:58:15 -07:00
Abhijeet Kasurde
09cabaf702 Use response.content instead of response object (#25772)
vca module utility uses response object instead of
response.content which raises exception in while fail_json
call. Use content attribute from response object instead which
is exact description of HTTP Response error.

Fixes #25378

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-14 12:40:06 -04:00
Abhijeet Kasurde
8b7a58c961 Remove redundant get_obj method (#26819)
Fix removes redundant get_obj method in favor of
find_datacenter_by_name API. Also, strict checking for
datacenter object.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-14 12:37:36 -04:00
rahushen
b74300b657 Additional fix for #27167: port-channel interface idempotence (#27979) 2017-08-14 11:44:12 -04:00
giovannisciortino
d3e48a51f5 Add check mode support to ansible-pull (#28021)
Fixes #27989
2017-08-14 11:20:05 -04:00
Toshio Kuratomi
3edac559d3 the smart transport is broken by ssh retry code
1fe67f9 introduced retries to the ssh connection put file and fetch
file.  Unfortunately, that change broke the smart transport because it
started raising exceptions instead of returning from _run().  This
breakage is documented in #23711.

An attempt to fix it was made at #23717 but the first attempt was
objected to as needing to touch too much code.  The second attmept was
objected to as smart was forced to encapsulate retries (thus retrying
a sftp "rety" times before trying scp "retry" times and then finally
moving onto piped).  This third attempt has retries encapsulate smart.
So each sub-transport is tried once and if all three fail, another retry
attempt is made which tries each of the three again.

Fixes #23711
Fixes #23717
2017-08-14 08:08:00 -07:00
Giovanni Sciortino
ab81c6c0f3 strategy: lost list order using with_items during displaying results Fixes #21008 2017-08-14 10:59:25 -04:00
Nathaniel Case
820d7e805a Streamline nxos_smu (#28030) 2017-08-14 10:54:50 -04:00
rahushen
b9c3329950 nxos_ip_interface: Fixes for #27170, #27172 (#27935)
* Fixes for #27170, #27172

* Add nxos_ip_interface IT tests

* For ipv6 check if ip address configured before doing a no ip address
2017-08-14 10:16:08 -04:00
Arne Demmers
000df2709d Support downgrade to specific version in yum module. 2017-08-14 04:55:39 -07:00
David Newswanger
cfda267b2b fixes pipe issue (#28127) 2017-08-14 17:21:32 +05:30
Trishna Guha
60ce6438e3 fix nxos_overlay_global idempotence (#28150)
* fix nxos_overlay_global idempotence

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* modify nxos_overlay_global unittest

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-08-14 16:09:53 +05:30
David Newswanger
a01aa6e9df Fix structured output not supported in nxos_pim_interface (#28125)
* fixed unstructured error

* fix unit tests so they accept commands in dictionary form
2017-08-14 12:34:05 +05:30
Trishna Guha
12460dd713 Add ios_vrf declarative intent config check (#28001)
* Add ios_vrf declarative intent config check

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* add version for delay param

* modify ios_vrf unit test
2017-08-14 12:27:03 +05:30
Ganesh Nalawade
eb33cc88bd Add state intent argument in vyos interface (#28066)
* Add state intent argument in vyos interface

*  State intent argument support
*  Integration test for supported intent arguments

* Add intent testcase

* FIx ci issue
2017-08-14 10:17:41 +05:30
Ganesh Nalawade
711a6b2326 Add common aggregate arguments for junos modules (#28124)
If parameter value in aggregate is not set, fetch it's corresponding
value from top level parameters.
2017-08-14 10:17:03 +05:30
Rafał Osiecki
33e56ca496 typo fix (#27212) 2017-08-14 02:15:00 +02:00
Pierre-Louis Bonicoli
e52096e78a copy: grammar fix 2017-08-13 08:22:22 -07:00
Pierre-Louis Bonicoli
ed8279cce0 copy: fix YAML documentation format 2017-08-13 08:22:22 -07:00
Pierre-Louis Bonicoli
1f5c908370 copy: state behavior when dest is a nonexisting path 2017-08-13 08:22:22 -07:00
Pierre-Louis Bonicoli
16f2e47559 copy: use formatting options 2017-08-13 08:22:22 -07:00
Pierre-Louis Bonicoli
28eb9466c7 copy: document behavior related to dest creation 2017-08-13 08:22:22 -07:00
Ganesh Nalawade
21bd7bcbb0 junos_interface intent arguments (#27947)
* junos_interface intent arguments

*  Add check for intent argument in junos_interface
*  Integration test for intent arguments

* Minor type fixes

* Add delay only if config diff is present

* add enabled configuration argument

* net_interface test case changes

* Minor doc change
2017-08-13 13:18:15 +05:30
Marko Stanković
6e7cf7377b xml: Add example with namespaces and clarify note (#28113)
* xml: Add example with namespaces and clarify note

* Correct the line length
2017-08-13 05:04:35 +02:00
Toshio Kuratomi
394e1e350c Expand wildcard imports and add boilerplate
More amazon modules with no open PRs.
2017-08-12 10:57:01 -07:00
Pierre-Louis Bonicoli
4ecf85392e udm_user: fix broken import
Tested with:
from datetime import datetime, timedelta
from dateutil.relativedelta import relativedelta
n = datetime.now()
assert n + timedelta(days=365) == n + relativedelta(years=1)
2017-08-12 10:45:12 -07:00
Pierre-Louis Bonicoli
c52f355bcb serverless: fix broken import 2017-08-12 10:39:10 -07:00
Pierre-Louis Bonicoli
dbc422ea1c Fix 'module' object is not callable 2017-08-12 10:21:14 -07:00
Pierre-Louis Bonicoli
f9404b0d85 Fix exit_json usage: really call client.auth.logout 2017-08-12 10:21:14 -07:00
Pierre-Louis Bonicoli
b556def4d3 Update DOCUMENTATION metadata 2017-08-12 10:21:14 -07:00
Pierre-Louis Bonicoli
ac05645bce Remove commented statements 2017-08-12 10:21:14 -07:00
Pierre-Louis Bonicoli
f761fc1d1f rhn_channel: fix py3 compatibility (use six)
and remove unused import
2017-08-12 10:21:14 -07:00
Pierre-Louis Bonicoli
5f62a973da docker_secret: fix broken import 2017-08-12 10:16:05 -07:00
Pilou
feff6abd72 os_client_config: fix broken import (#26839)
* os_client_config: fix broken import
* remove wildcards and add boilerplate
2017-08-12 10:07:49 -07:00
Nick Ward
f52a022022 Python3 compatability for elb_application_lb and elb_target_group 2017-08-12 09:01:29 -07:00
Toshio Kuratomi
9a7e23569e Fix wildcard imports, remove get_exception, add boilerplate
Amazon modules that don't have open PRs against them
2017-08-12 07:43:46 -07:00
Toshio Kuratomi
7cd81b802d Fix wildcard imports, remove get_exception, add boilerplate
Fixed for monitoring modules
2017-08-12 03:13:53 -07:00
Sloane Hertel
aca1950150 iam certificate facts (duplicate): add iam_cert_facts as alias for iam_server_certificate_facts (#25387)
* add iam_cert_facts as alias for iam_server_certificate_facts
* remove from legacy files
2017-08-12 01:44:39 -07:00
Artem Zinenko
6058cb736d rabbitmq_plugin for Windows (#28017)
* Fixes #28016: rabbitmq_plugin for Windows

* Disable documentation check for rabbitmq_plugin.ps1

* Renamed rabbitmq_plugin -> win_rabbitmq_plugin

* Fixed the documentation after review

* Fixed 'RETURN' section

* Fixed docs for original module

* Added dots to original module docs.
2017-08-12 10:35:16 +02:00
Toshio Kuratomi
ac56a2f138 Remove wildcard imports and get_exception calls
Fixed module_utils
2017-08-12 00:48:53 -07:00
T. Miller
93e1caccb7 ini_file: Match tabs before options (#28102) 2017-08-12 09:17:25 +02:00
Peter Sprygada
5ee7862793 update telnet module (#28100)
* accepts list of prompts to expect
* updates doc strings
2017-08-11 23:50:01 -04:00
Brian Coca
40d29936a4 telnet action plugin (#27983)
* draft telnet action plugin

docs in module

* updated per feedback

* fixed imports

* pep8 fixes

* added meta import even though its useless
2017-08-11 22:46:26 -04:00
Toshio Kuratomi
039383d90f Fix symbolic mode usage in unarchive with zip files
Fixes #21090
2017-08-11 19:01:41 -07:00
Toshio Kuratomi
a3132e5dd6 Optimize template (#28044)
* Optimize template

* In fixing template to handle diff correctly #24477, I introduced more
  round trips to the remote end which slowed things down  The new code now
  uses one fewer round trips than the old code.
* Reimplement a large part of template by calling the copy action plugin
  instead of doing it in template's code.  This reduces the code in
  template and gives us one place to fix bugs and optimize.
* Add a follow parameter to template that mirrors the follow parameters
  for file and copy.
* Fix copy's diff handling (probably broken in my rewrite for in 2.4
  development)
* Adjusted when copy creates tmp dirs to rduce round trips in copy and
  template.

Fixes #27956
2017-08-11 17:50:49 -07:00
Jacob McGill
8b92369678 Update aci_tenant to support check_mode (#28090) 2017-08-11 18:51:49 -04:00
Jacob McGill
c04349088e update aci module util with methods to support check_mode and idempotency (#28089) 2017-08-12 00:27:29 +02:00
Jason Lingohr
3d29f79e74 Documentation fixes. (#28047)
* Documentation fixes.

* Update win_route.py
2017-08-11 23:41:58 +02:00
chriskarel
991918e9d2 Fix idempotency for Unix permissions in zip files. (#24580)
* Fix idempotency for Unix permissions in zip files.

This fix prevents the unarchive module from reporting 'changed' when a zipfile contains items with Unix permissions that differ from the system default.

* Update zip unarchive tests.

Additional tests for the unarchive module with zip files:
- Test file in zip archive with non-default permissions
- Test file added to zip archive with Windows permissions

* Additional fix for mixed win/unix archives.

  Turns out my original fix fails under some mixed archives, as setting the umask to zero can be applied to those files.  This creates a per-file umask variable, so a mix of permission types don't cause problems.

* CI Checks

CI checks for archives with:
* non default Unix permissions
* Windows permissions


* Workaround for BSD differences.

Using Zipinfo due to lack of support in BSD unzip.
Permissions handling is also different in BSD -- always applies UMASK to file permissions.

* Added checks for creating directories and SSH keys for existing users.
2017-08-11 12:36:46 -07:00
Sloane Hertel
3cb1c38ecc [cloud] Allow S3 module to correctly delete objects by groups of <= 1000 (#28068) 2017-08-11 15:30:50 -04:00
Brian Coca
d89dd75769 validate include_role args (#28077)
* validate include_role args

* nicer error msg

* removed unused static

* updated as per feedback

* pepe ATE
2017-08-11 15:21:12 -04:00
Jacob McGill
21dbde0abe fix issue with trailing white space when logging into asa (#28073) 2017-08-11 12:30:57 -04:00
Trishna Guha
aef4e3d8fa fix nxos_snapshot (#27993)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-08-11 12:16:37 -04:00
Peter Sprygada
17a259a163 fixes command to be sent over nxapi for nxos_file_copy (#28029)
fixes #27347
2017-08-11 12:14:52 -04:00
Patrick Ogenstad
089226e372 Fixes for broken asa_config module (#27218)
* Fixes for broken asa_config module

* strip() prompt before checking
2017-08-11 11:42:42 -04:00
Sloane Hertel
40eb349ac6 [cloud] Make ec2_asg more resilient using AWSRetry around boto3 calls (#27598)
* Add AWSRetry to ec2_asg

* Paginate describing ASGs and launch configurations

pass connection to delete_asg

Fix a couple little bugs

* Use boto3's pagination build_full_result()
2017-08-11 11:30:23 -04:00
Thomas Stringer
e4cd899363 Add support for Azure 2.0.0 (#27920)
* Adapt azure_rm_resource_group to azure 2.0.0 + azure Cli support

* Fix exceptions in Azure ARM plugins

* update azure_rm_networkinterface documention to reflect required params

* change state param to not required for docs in azure_rm_subnet

* fix import to reflect azure==2.0.0 changes

* add aliases and fix docs for azure_rm_storageblob

* add resource_group_name alias to azure_rm_storageaccount_facts

* fix import bug due to change in azure==2.0.0

* fix args bug and enum modules issue

* update docs to reflect azure==2.0.0

* pin management clients to a specific api_version

* update docs to reflect the new azure-ansible-base python package

* add fallback for older api resource group listing

* rework azure dependencies installation

* refactor path joining to a cross-plat solution
2017-08-11 08:22:02 -07:00
Michael Price
1b9d9376e2 Refactor E-Series Hosts module to use module_utils (#20893)
Refactor the NetApp E-Series module to utlize the common module_utils
and doc_fragments.
2017-08-11 11:05:52 -04:00
Brandon Schlueter
0e334ca821 Don't compare group_vars paths with bytestrings (#27922)
* Don't compare group_vars paths with bytestrings

* Compare spath with unicode string in VarsModule
2017-08-11 10:21:20 -04:00
Nathaniel Case
0464a21a85 Fix nxos_snmp_contact, others (#28000)
* Fix nxos_snmp_contact

Fixes #27714

* Fix nxos_snmp_community

Fixes #27711

* Fix nxos_install_os

Fixes #27604

* Update nxos_ntp_auth

Fixes #27521

* Fix nxos_igmp_snooping

Fixes #27501
2017-08-11 10:12:43 -04:00
Sloane Hertel
1de91a9aa0 [cloud] Convert s3 module to use boto3 (#21529)
* replace boto with boto3 for the s3 module

make s3 pep8 and remove from legacy files

fix s3 unit tests

* fix indentation

* s3 module - if we can't create an MD5 sum return None and always upload file

* remove Location.DEFAULT which isn't used in boto3 and tidy up the docs

* pep8

* s3: remove default: null, empty aliases, and required: false from documentation

fix incorrectly documented defaults

* Porting s3 to boto3. Simplify some logic and remove unused imports

* Fix s3 module variables

* Fix a typo in s3 module and remove from pep8 legacy files

* s3: add pagination for listing objects.

Fix logic and use head_object instead of get_object for efficiency.

Fix typo in unit test.

* Fix pagination to maintain backwards compatibility.

Fix incorrect conditional.

Remove redundant variable assignment.

Fix s3 list_object pagination to return all pages

* Use the revised List Objects API as recommended.

* Wrap call to paginated_list in a try/except

Also remembered to allow marker/prefix/max_keys to modify what keys are listed

* Simplify argument
2017-08-11 09:34:33 -04:00
Michele Zuccala
7d1308b0d8 [cloud] ovirt: add headers param to auth (#27881)
* Add filter param to ovirt module auth

* Update docs to include new filter param

* Fix broken YAML

* Replace filter param with headers
2017-08-11 09:31:20 -04:00
giovannisciortino
49209bfcc5 blockinfile: add --diff support in check mode (#27997) 2017-08-11 07:58:45 +02:00
Rich Murphey
88ccaf106b use of multiple chocolatey package names (#28046)
* use of multiple chocolatey package names

It might be helpful to users, to clarify whether/when <name:> must specify a single package.

Users who are familiar with chocolatey may be accustomed to installing multiple packages in a single invocation of 'choco install'.

I believe win_chocolatey currently accepts multiple package names when state: is latest or present.
For instance, this appears to work currently:

  - win_chocolatey:
      name: >-
        pscx
        windirstat
      state: latest

However, when state: is absent, uninstall is not performed if multiple package are specified.
The chocolate.log output suggests that chocolatey is treating the multiple packages as an 'exact' name of a single package name:
2017-08-10 19:04:04,087 2424 [DEBUG] - Command line: "C:\ProgramData\chocolatey\choco.exe" list --local-only --exact pscx windirstat
2017-08-10 19:04:04,087 2424 [DEBUG] - Received arguments: list --local-only --exact pscx windirstat

I find the current behavior helpful in terms of accepting multiple package names, even if uninstall must be treated differently.
It might be helpful to show an example of how multiple uninstalls can be handled by looping over them. 

  - win_chocolatey:
      name: "{{ item }}"
      state: absent
    with_items:
      - pscx
      - windirstat

* revise per Jordan Borean. remote colon (:) from text. revise formating.

* Update win_chocolatey.py
2017-08-11 12:36:14 +10:00
Nathan Hyde
241d38077f Use ChocolateyInstall env variable after installation (#27812)
* Use ChocolateyInstall env variable after installation

Fixes #19725 Custom install locations specified by the ChocolateyInstall
env variable in win_chocolatey

After an initial install of chocolatey, use the ChocolateyInstall
environment variable when assigning $script:executable .

* Improve process of locating "choco.exe" post-initial install

Implement feedback for locating choco:

* Check if choco.exe is in PATH, if there use this
* If not in path and ChocolateyInstall var is available, use that
* Otherwise, use the equivalent of Windows Special Folder CommonApplicationData for locating chocolatey.
  (Chocolatey install (v0.10.7) uses CommonApplicationData when ChocolateyInstall is not set.)
2017-08-11 11:28:13 +10:00
Dave
4cec83471c win_get_url.ps1 - enable TLS1.1/TLS1.2 if they're available but disabled (#26833) 2017-08-11 11:00:34 +10:00
Nick Chandler
22533c0932 New module: Add module or managing Windows Active Directory users (windows/win_domain_user) (#24075)
* Initial win_domain_user module support

* Add return information

* Update return values

* Add try/catch for PS module import

* Improve win_domain_user module

* Fix bad merge

* Fix pep8 failure

* Actually fix pep8 failure

* Update win_domain_user.py to meet standards

* Add check_mode support for win_domain_user

* Updated documentation before merge
2017-08-11 10:23:09 +10:00
Peter Sprygada
edc3507c98 restore the ability to issue commands over junos cli (#28025)
* restore the ability to issue commands over junos cli

* add warn message for invalid arguments

* fix issue when checking if provider transport is set
2017-08-10 17:57:32 -04:00
Jordan Borean
5fbbf0e75a win_hotfix: new module to install Windows hotfixes (#27260)
* win_hotfix: new module to install Windows hotfixes

* revert to older module util loader style to satisfy the checks for now

* Changes from PR

* changed the test hotfix so we can run tests in shippable
2017-08-11 07:57:07 +10:00
Jordan Borean
44ed891290 win_mapped_drive: new module (#27020)
* win_mapped_drive: new module

* Rebased from upstream and updated copyright text
2017-08-11 07:54:18 +10:00
Jordan Borean
e46adece48 win_user_right: add module with tests (#26276)
* win_user_right: add module with tests

* fixed up name of module in docs

* forgot the test module

* fixed up whitespace

* changes made to win_user_right based on feedback

* moved away from using secedit to Win32 with P/Invoke

* tidied up copyright for documentation
2017-08-11 07:52:07 +10:00
Ganesh Nalawade
3b0e9ded91 Fix fallback and boolean check in argspec (#27994)
Fixes #27978

*  Add missing assignment for param key in fallback handling
*  Add check for frozenset type
*  Unit testcase
2017-08-10 12:10:18 -07:00
Philip Gough
fee42a01d9 Redhat subscription proxy support (#22544) 2017-08-10 20:26:57 +02:00
David Newswanger
d0485779e8 nxos_smu: fix Structured output unsupported error in nxapi (#27976)
* fixed structured output unsupported error
2017-08-10 14:12:15 -04:00
Ricardo Carrillo Cruz
e8f1c1511c Implement purge on eos_vrf (#28013) 2017-08-10 19:59:32 +02:00
Martin Krizek
1c4e491eac yum: do not hide yum's errors (#27696) 2017-08-10 13:57:08 -04:00
Rémi REY
7974ad34f1 add playbook runtime stat in the logstash callback stats (#25785) 2017-08-10 13:43:21 -04:00
Raphael Nestler
ac0202fba1 win_file: Remove 'Create a file' example (#28009)
Fixes #28005
2017-08-10 13:30:37 -04:00
Peter Sprygada
145895dcf0 updates examples and documentation (#24211)
includes better examples of valid and invalid usage of the lines
argument

fixes #22828
2017-08-10 13:09:53 -04:00
Peter Sprygada
d8b005ec65 updates the prompt regexp for prompt handling in sros (#28015)
* thanks to @jurajama for tracking this down and providing the fix
* fixes #24192
2017-08-10 12:59:49 -04:00
Brian Coca
2015835759 updated author with github id 2017-08-10 11:42:49 -04:00
Dag Wieers
8451d945aa Add new maintainer 2017-08-10 17:11:55 +02:00
Luke Armstrong
fd18ade465 Documentation - modules/files/unarchive (#27998)
Last example is incorrect and will not run without throwing an error.
2017-08-10 10:32:08 -04:00
Juan Manuel Parrilla
2cfb30fc91 Fixes #24414, Added support for a ETCD folders (#24432) 2017-08-10 07:44:05 -06:00
Adrian Likins
220db9cdd2 Better vault pass prompt behav on EOF, more unit tests (#27981) 2017-08-10 09:34:57 -04:00
Adrian Likins
82f550e8cd Add prompt formats for 2.3 compat ask-vault-pass (#27974)
The prompt_formats dict didn't get the 'prompt_ask_vault_pass'
item added for interactive --ask-vault-pass, which
caused "KeyError: u'prompt_ask_vault_pass'"

Fixes #27885
2017-08-10 09:34:16 -04:00
Valentin Krasontovitsch
cfff72e9db Use apt-get as fallback for apt upgrade
In answer to #2540, `aptitude` was introduced as tool of choice for running
upgrades in the apt module and installing new packages that arise as
dependencies during upgrades.

This recently lead to problems, as for example Ubuntu Xenial (16.04) ships
without aptitude (installed).

Studying the man pages of both apt-get and aptitude, it appears that we can
achieve the effects of `aptitude safe-upgrade` using

```
apt-get upgrade --with-new-pkgs --autoremove
```

while `aptitude full-upgrade` seems to be identical to `apt-get dist-upgrade`.

We use `apt-get` as described above as a fall-back in case that `aptitude`
cannot be found, issuing a warning when it does so.

Furthermore it introduces a flag `force_apt_get` which may be used to enforce
usage of apt-get (which does not issue a warning).

The integration tests are updated accordingly.

Cf. also the discussion in #27370.

Fixes #18987
2017-08-10 09:25:56 -04:00
Brian Coca
13d2eb6568 fix incorrect joingin of command for chpasswd
fixes #24638
2017-08-10 09:23:13 -04:00
Peter Sprygada
c4da61239d stops trying to filter out commands from config (#28002)
* stops trying to filter out commands from config

fixes #24874

* fix up pep8 issues and remove offending function
2017-08-10 09:18:44 -04:00
Nathaniel Case
ed8a5af3dc nxos_bgp: Fix idempotence for event-history (#27329)
* Fix idempotence for event-history

* `event-history detail` defaults to `False`, the rest to `size_small`
2017-08-10 08:55:43 -04:00
Lukas Bednar
29891bff19 ovirt_templates: fixed typo in doc (#27883) 2017-08-10 08:32:36 -04:00
Lukas Bednar
a48a7eecc8 ovirt_templates: added option to name imported disk as a template (#27902)
* ovirt_templates: added option to name imported disk as a template

* ovirt_templates: added version_added to new attribute

* ovirt_templates: added alias for image_name and example

* added alias glance_image_disk_name for image_name
* example how to import image from glance as template
* improve description of template_image_disk_name
2017-08-10 08:32:25 -04:00
Abhijeet Kasurde
f7321a87ca Pep8 fixes for rabbitmq modules (#24590)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-10 11:57:11 +02:00
Ricardo Carrillo Cruz
7e2169f6d5 Add aggregate functionality to eos_vrf (#27915)
* Add aggregate functionality to eos_vrf

* Add tests for eos_vrf aggregate option

* Remove test2 and test3 vrfs at the beginning of the eos_vrf tests

* Pull all vrfs

With aggregate, we need to get all VRFs and we then compare with
desired VRFs, instead of assuming it will be just one.
2017-08-10 10:54:13 +02:00
Dag Wieers
eee09565b1 utilities modules: PEP8 compliancy (#27741) 2017-08-10 09:36:28 +01:00
Simon Dodsley
f30589c91d purefa_volume: Fix typo in required_if (#27921) 2017-08-10 09:34:45 +02:00
Marc Sensenich
38d026b1db New Module: Notification module for Office 365 Connector Cards (#27636)
* New Module: Notification module for Office 365 Connector Cards (notification/office_365_connector_card)

* Updates per review

* Added connection check when in check mode
2017-08-10 04:04:49 +02:00
Philippe Dellaert
920cd7bb1c New module: Waiting for VMware tools to become available (#27236)
* Adding VMware tools module
Functionality: Waits for VMware tools to become available (running
state)

* Adding base integration test preparations
Until govcsim supports actual guest tool status, the tests are disabled

* Cleanup and better getvm method

* Updating Changelog

* Adding required metaclass and future import

* Rename to vmware_guest_tools_wait

* Cleanup of documentation

* Fixing review remarks
2017-08-10 03:50:58 +02:00
giovannisciortino
064c3b837f Fixes #27836: get_url check if directory exists (#27852) 2017-08-10 09:57:19 +10:00
Dag Wieers
6bfedc9fe5 Various fixes (#27889)
This PR includes:
- Removal of get_exception (sadly)
- Avoid deprecating 'state' parameter with aci_rest
- Small fix for querying using aci_rest

Signed-off-by: @bcoca
2017-08-10 01:51:13 +02:00
mzizzi
380c43de4e cloudformation_facts: describe all stacks by default
* cloudformation_facts describe all stacks by default

* cloudformation_facts jittered backoff / retries

* cloudformation_facts stack_name use default arg_spec

* cloudformation_facts bugfix broken notification_arns output

* cloudformation_facts add simplified "stack_tags" output

* CloudFormationServiceManager.describe_stacks default args
2017-08-10 09:06:40 +10:00
Zac Medico
501fc7a248 template: fix KeyError: 'undefined variable: 0 (#27972)
* template: fix KeyError: 'undefined variable: 0

For compatibility with the Context.get_all() implementation
in jinja 2.9, make AnsibleJ2Vars implement collections.Mapping.
Also, make AnsibleJ2Template.newcontext() handle dict type
for the 'vars' parameter.

See: d67f0fd4cc
Fixes: https://github.com/ansible/ansible/issues/20494

* add units/template/test_vars

* intg tests for jinja-2.9 issues like 20494

test cases here are based on
https://github.com/ansible/ansible/issues/20494#issue-202108318
2017-08-09 18:50:53 -04:00
James Hogarth
7ec34b4cb2 ISSUE 25470 - update patch from review details 2017-08-09 13:38:16 -07:00
James
fc274bda8a ISSUE 25470 - junit report failure on changes
This commit provides an environment option to change the behaviour so
that it's possible to declare any changes shoudl be considered a junit
failure.

This is useful when carrying out idempotent testing to ensure that
multiple runs are safe and any changes should be considered a test
failure.

In a CI test of an ansible role the practice would be to run the role
once without this to configure the test system, and tehn to run a second
time including this environment vairable so that the CI engine
processing the junit report recognise any changes to be a test fail.
2017-08-09 13:38:16 -07:00
David Moreau-Simard
b35c749268 Add a sensu_client module
This provides a sensu_client module in order to be able to dynamically
configure a Sensu client.

It takes a different approach than the existing Sensu modules such as
sensu_check but is hopefully a much more flexible and simple way of
handling configurations.
2017-08-09 16:36:39 -04:00
David Moreau-Simard
7a56e5d45d Add sensu_handler Ansible module
This provides a sensu_handler module in order to be able to dynamically
configure a Sensu handler.
2017-08-09 16:34:20 -04:00
Kamil Cholewiński
b5414088a3 Add ConfigMap support to kubernetes module (#21014) 2017-08-09 16:03:35 -04:00
Nathaniel Case
a78f3faa6c nxos_bgp_neighbor_af does not want required_together (#26370)
* nxos_bgp_neighbor_af does not want required_together

* fixup tests

* Fix max_prefix_* issues

* Require address-family

* Fix idempotency for next_hop_third_party

* Fix idempotency for allowas_in*

* Fix idempotency for *_in and *_out

* Reorder command generation again

`default` is first, then `max-prefix`, then booleans
2017-08-09 15:54:34 -04:00
Peter Sprygada
4fb114174b fixes Traceback generated by nxos_igmp module (#27869)
* fixes Traceback generated by nxos_igmp module

* update module code to reflect review comments

* doh!...remove q
2017-08-09 15:52:37 -04:00
Colin Nolan
db50650365 Adds support for all Consul 0.8 ACL rule scopes (#25800)
* Added in support for 'agent' and 'node' types.

* Tidies and moves `consul_acl` module closer to PEP8 compliance.

* Switched from using byspoke code to handle py2/3 string issues to using `to_text`.

* Made changes suggested by jrandall in https://github.com/ansible/ansible/pull/23467#pullrequestreview-34021967.

* Refactored consul_acl to support scopes with no pattern (and therefore a different HCL defintion).

* Corrects whitespace in Consul ACL HCL representation.

* Fixes Consul ACL to return the HCL equivalent JSON (according to the Consul docs) for the set ACLs.

* Repositioned import to align with Ansible standard (!= PEP8 standard).

* Adds Python 2.6 compatibility.

* Fixes PEP8 issues.

* Removes consul_acl.py as it now passes PEP8.

* Follows advice in the "Documenting Your Module" guide and moves imports up from the bottom.

* Tidies consul_acl module documentation.

* Updates link to guide about Consul ACLs.

* Removes new line spaces from error message string.

* Provide better error message if user forgets to associate a value to a Consul ACL rule.

* Minor refactoring of Consul ACL module.

* Fixes bug that was breaking idempotence in Consul ACL module.

* Detects redefinition of same rule.

* Adds test to check the Consul ACL module can set rules for all supported scopes.

* Fixes return when updating an ACL.

* Clean up of Consul ACL integration test file.

* Verify correct changes to existing Consul ACL rule.

* Adds tests for idempotence.

* Splits Consul ACL tests into cohesive modules.

* Adds test for deleting Consul ACLs.

* Test that Consul ACL module can set all rule scopes.

* Fixes issues surrounding the creation of ACLs.

Thanks for the comments by manos in https://github.com/ansible/ansible/pull/25800#issuecomment-310137889.

* Stops Consul ACL's name being "forgotten" if ACL updated by token.

* Fixes incorrect assignment when a Consul ACL is deleted.

* Fixes value of `changed` when Consul ACL is removed.

* Fixes tests for Consul ACL.

* Adds interal documentation.

* Refactors to separate update and create (also makes it possible to unit test this module).

* Improves documentation.

* Completes RETURN documentation for Consul ACL module.

* Fixes issue with equality checking for `None` in ACL Consul.

* Fixes Python 2 issue with making a decision based on `str` type.

* Fixes inequality check bug in Python 2.

* Adds tests for setting ACL with token.

* Adds support for creating an ACL with a given token.

* Outputs operation performed on Consul ACL when changed.

* Fixs issue with test for creating a Consul ACL with rules.

* Corrects property used to set ACL token in python-consul library.

* Fixes tear-down issue in test that creates a Consul ACL using a token.
2017-08-09 15:21:12 -04:00
Lucas Melchior
756b510414 fixed formatting for maven_artifact synopsis 2017-08-09 14:43:29 -04:00
Eduardo Suarez-Santana
9339b0f4a7 Fix lookup into search paths when undefined.
A fileglob may issue a warning `Unable to find xxxx in expected paths` when `ansible_search_path` is not defined, because it loops over the characters in the string instead of looping over a list of one element.
2017-08-09 14:07:40 -04:00
QijunPan
9e3ae8a0cb Delete unused module_utils/cloudengine.py (#25054)
* Delete unused cloudengine.py
rename cloudengine to ce.

* remove unused cloudengine.py
2017-08-09 12:32:45 -04:00
Willem van Ketwich
82765637b9 AWS EC2 ASG - Replace ELBs correctly and remove existing ELBs when specified as an empty list (#27830)
* fixes for edge cases - load_balancers has not been specified - don't want to delete existing elbs, wanted elbs aren't a superset of has_elbs (eg. 1 elb existing, adding another), specifying load_balancers: [] to delete existing elbs
2017-08-09 11:56:30 -04:00
saichint
14186af558 Fix for nxos_ospf idempotent issue (#27913) 2017-08-09 11:25:35 -04:00
Andrej Svenke
ef55530d67 ecs_attribute: new module. (#20618)
ecs_attribute: fixed docs.

ecs_attribute: changed state to 'present' by default.

ecs_attribute: pep8 fix.

ecs_attribute: improved attribute iteration.

ecs_attribute: fixed absent EC2_REGION error message.

ecs_attribute: fixed exception handling on invalid attribute (e.g. 2+2).

ecs_attribute: pep8 fix.

ecs_attribute: docs and python3 fixes.

ecs_attribute: fixed class declaration for python 2-3 compatibility.
2017-08-09 11:06:24 -04:00
flowerysong
e2b2ba6bc7 hashi_vault: fix token logic again (#27863)
The token is not mandatory, and there are more ways of setting it than
passing it in as a module arg.
2017-08-09 10:53:30 -04:00
Adrian Likins
767cd82e42 Fix module failure with pacemaker_cluster: state=cleanup (#27846)
* Fix module failure with pacemaker_cluster: state=cleanup

If state=cleanup was used, set_cluster() was being called
with 'cleanup' state which it doesn't handle. Instead
use existing clean_cluster() method.

Fixes #27799

* get and return cluster_state on state=clean as well
2017-08-09 10:43:16 -04:00
Anil Kumar Muraleedharan
52a8ed55ee Update cnos.py to remove unused method checkServerForImage (#27767) 2017-08-09 10:16:13 -04:00
Will Rouesnel
1685338603 get_url: Use atomic_move with get_url rather then shutil.copyfile
This brings get_url inline with the other internal file handling modules,
and allows replacement of in-use files.
2017-08-09 10:09:03 -04:00
Nathaniel Case
01dda25e0f fix nxapi transport in nxos_snmp_location (#27849)
* fix nxapi transport in nxos_snmp_location

* Appease Shippable
2017-08-09 09:44:02 -04:00
Nathaniel Case
c1bf74283e Network load_config: Capture configuration output and display as warnings (#27851)
* Capture configuration output and display as warnings

* Don't break on nxapi

nxapi errors very loudly instead, so no need to muck about with warnings
2017-08-09 09:43:04 -04:00
Dag Wieers
2af759e9f9 vmware_vm_facts: Improve example and docs (#27898)
This fixes ansible/ansible-modules-extras#2475
2017-08-09 09:41:30 -04:00
schunduri
3241b7116e Cisco ACI New Module PR (#26836)
* New ACI Tenant module

*  New module requirements added.

* Placed from __future__ import to be the first line

* Interpreter line added
2017-08-09 07:08:44 -06:00
s-hertel
875c8e4f3e ensure stickiness expiration is an int before comparison 2017-08-08 22:30:50 -07:00
Ganesh Nalawade
1f7e04d958 Fix junos_lldp integration test failure (#27936) 2017-08-09 10:23:41 +05:30
Dag Wieers
6874ba23ff New module: Support manipulating XML files (#25323)
* Import original unmodified upstream version

This is another attempt to get the xml module upstream.
https://github.com/cmprescott/ansible-xml/

This is the original file from upstream,
without commit 1e7a3f6b6e2bc01aa9cebfd80ac5cd4555032774

* Add additional changes required for upstreaming

This PR includes the following changes:

- Clean up of DOCUMENTATION
- Rename "ensure" parameter to "state" parameter (kept alias)
- Added EXAMPLES
- Remove explicit type-case using str() for formatting
- Clean up AnsibleModule parameter handling
- Retained Python 2.4 compatibility
- PEP8 compliancy
- Various fixes as suggested by abadger during first review

This fixes cmprescott/ansible-xml#108

* Added original integration tests

There is some room for improvement wrt. idempotency and check-mode
testing.

* Some tests depend on lxml v3.0alpha1 or higher

We are now expecting lxml v2.3.0 or higher.
We skips tests if lxml is too old.

Plus small fix.

* Relicense to GPLv3+ header

All past contributors have agreed to relicense this module to GPLv2+, and GPLv3 specifically.

See: https://github.com/cmprescott/ansible-xml/issues/113

This fixes cmprescott/ansible-xml#73

* Fix small typo in integration tests

* Python 3 support

This PR also includes:
- Python 3 support
- Documentation fixes
- Check-mode fixes and improvements
- Bugfix in check-mode support
- Always return xmlstring, even if there's no change
- Check for lxml 2.3.0 or newer

* Add return values

* Various fixes after review
2017-08-08 20:21:03 -07:00
CyberArk BizDev
923445a484 CyberArk User Management (#27519)
* Initial submit for CyberArk User management module
2017-08-08 18:34:40 -07:00
Michael Price
760015fc6d Refactor E-Series Volume to use module_utils (#20901)
Refactor the NetApp E-Series module to utlize the common module_utils
and doc_fragments.
2017-08-08 14:51:02 -06:00
Adrian Likins
c38ff3b8f8 pylint fixes for vault related code (#27721)
* rm unneeded parens following assert
* rm unused parse_vaulttext_envelope from yaml.constructor
* No longer need index/enumerate over vault_ids
* rm unnecessary else
* rm unused VaultCli.secrets
* rm unused vault_id arg on VaultAES.decrypt()

pylint: Unused argument 'vault_id'
pylint: Unused parse_vaulttext_envelope imported from ansible.parsing.vault
pylint: Unused variable 'index'
pylint: Unnecessary parens after 'assert' keyword
pylint: Unnecessary "else" after "return" (no-else-return)
pylint: Attribute 'editor' defined outside __init__

* use 'dummy' for unused variables instead of _

Based on pylint unused variable warnings.

Existing code use '_' for this, but that is old
and busted. The hot new thing is 'dummy'. It
is so fetch.

Except for where we get warnings for reusing
the 'dummy' var name inside of a list comprehension.

* Add super().__init__ call to PromptVaultSecret.__init__
pylint: __init__ method from base class 'VaultSecret' is not called (super-init-not-called)

* Make FileVaultSecret.read_file reg method again

The base class read_file() doesnt need self but
the sub classes do.

Rm now unneeded loader arg to read_file()

* Fix err msg string literal that had no effect
pylint: String statement has no effect

The indent on the continuation of the msg_format was wrong
so the second half was dropped.

There was also no need to join() filename (copy/paste from
original with a command list I assume...)

* Use local cipher_name in VaultEditor.edit_file not instance
pylint: Unused variable 'cipher_name'
pylint: Unused variable 'b_ciphertext'

Use the local cipher_name returned from parse_vaulttext_envelope()
instead of the instance self.cipher_name var.

Since there is only one valid cipher_name either way, it was
equilivent, but it will not be with more valid cipher_names

* Rm unused b_salt arg on VaultAES256._encrypt*
pylint: Unused argument 'b_salt'

Previously the methods computed the keys and iv themselves
so needed to be passed in the salt, but now the key/iv
are built before and passed in so b_salt arg is not used
anymore.

* rm redundant import of call from subprocess
pylint: Imports from package subprocess are not grouped

use via subprocess module now instead of direct
import.

* self._bytes is set in super init now, rm dup

* Make FileVaultSecret.read_file() -> _read_file()

_read_file() is details of the implementation of
load(), so now 'private'.
2017-08-08 16:10:03 -04:00
schwatvogel
b8d371ca8b Fixes #23558 rpm key ids (#27847)
* Changed rpm-keyid extraction and verification method
* minor style fixes
* fixed rpm key deletion,added integration test for mono key,fixed wording in integration tests
2017-08-08 11:56:03 -07:00
Ricardo Carrillo Cruz
d1d0cd5406 Add delay and check configuration when interfaces is set on eos_vrf (#27884)
* Add delay and check configuration is right when interfaces is set on eos_vrf

Per the spec we put up for declarative intent modules, we need to check declarative
intent params (in the case of eos_vrf it's 'interfaces') after a delay and non-declarative
params have been set.
If that doesn't meet desired state after delay, we fail the task.

* Check declarative intent param only if config changed

* Fix pep8 issue

* Change default of delay param to 10

* Revert bogus change on eos_vlan
2017-08-08 20:23:45 +02:00
Will Thames
dbf9a65c05 Improve error messages when MySQLdb is not installed (#27871)
The python package is called MySQL-python in pypi, and
reporting this rather than mysqldb makes resolving the
problem far easier.
2017-08-08 12:59:51 -04:00
saichint
babec35faa Fix nxos_vtp_password and nxos_vrf_interface for remove idempotency tests (#27724)
* fixes for 27600 27676

* add sanity tests
2017-08-08 12:40:22 -04:00
Sloane Hertel
bd4f08823d [cloud] Cleanup of elasticache argspec (#27890)
Remove unnecessary specifications from the argument spec and use dict() instead of brackets for module uniformity.
2017-08-08 12:18:02 -04:00
Peter Sprygada
0b67ef4232 fixes #27527 (#27868) 2017-08-08 10:12:02 -06:00
Andreas Olsson
ccc68f7157 Don't do additional path expand in file module
Since the module's path parameter is of the AnsibleModule type path
it's already being expanded. Hence no need to have the
set_fs_attributes_if_different method do its own expand.

This additional expand is an actual problem when the file module runs
recursively, as real existing file names can be mistakenly expanded to
something completely wrong and non-existing.

Fixes #25005
Fixes #25639
2017-08-08 09:05:06 -07:00
Abhijeet Kasurde
47ccb66ae3 Add support to add multiple NICs in vSwitch (#25857)
Add support for adding multiple NICs in VMWare vSwitch.
Also, updated documetation with example.

Fixes: #23522

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-08 11:41:57 -04:00
giovannisciortino
1fb1793c70 helpers.py: Fixes #27334 include empty task file within a 'block' dis… (#27811)
* helpers.py: Fixes #27334 include empty task file within a 'block' disables the complete block

* include module: added warning if file without tasks is included
2017-08-08 09:48:39 -04:00
mzizzi
4648dc9702 [cloud] Add more configurable backoff implementations to CloudRetry/AWSRetry (#27251) 2017-08-08 08:56:46 -04:00
Moritz Grimm
11af034255 moved aws elasticache module to boto3 (#27441)
* moved aws elasticache module to boto3

* fixed error and improved code

* implemented requested changes

* now checking for missing boto3 packages in a better way

* now dynamically setting the default port depending on the engine if it is not set

* moved standard import in front of ansible ones

* now case insensitive in regards to engine name

* removed superfluous spaces

* now checking for None in the correct way

* removed elasticache module from exceptions to pep8 testing

* removed hardcoded default ports and letting aws decide if no port is given
2017-08-08 08:39:09 -04:00
Willem van Ketwich
6d402de25e ec2 launch configuration boto3 upgrade (#26348)
Updates ec2_lc module to use boto3. Adds parameters:

instance_id
placement_tenancy

Also added a second example using instance_id and updated the docs with the new parameters.
2017-08-08 22:11:06 +10:00
Ganesh Nalawade
12e81e68fc remoe duplicate net_lldp_interface (#27880) 2017-08-08 14:50:54 +05:30
Rob Nieuwenhuizen
73e19c2ed1 Add support for pip list format=columns (#21990)
* Use 'pip list --format=freeze' to simplify output code parse
2017-08-07 23:56:04 -07:00
Ganesh Nalawade
49eb81d573 junos_linkagg aggregate and other minor fixes (#27855)
* junos_linkagg aggregate and other minor fixes

* Minor change
2017-08-08 12:13:28 +05:30
Toshio Kuratomi
43f6a97bdc Fix security documentation to note it only works in conjunction with state=latest 2017-08-07 23:11:55 -07:00
Abhijeet Kasurde
d3fe598202 [WIP] Add security option in yum module
Fix adds option to specify security updates in yum module

Fixes #11498

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-07 23:05:00 -07:00
Toshio Kuratomi
0aa7c06395 Remove comments about import order
No longer needed as AnsiballZ fixed this
2017-08-07 19:46:06 -07:00
Toshio Kuratomi
2fc7c14dca Reclisence module_utils/api.py to BSD
Permission from all contributors to the file was granted here:
https://github.com/ansible/ansible/issues/27599

Fixes #27599
2017-08-07 19:46:06 -07:00
Toshio Kuratomi
8894c57753 Fix rabbitmq modules for python3 import
Also get rid of unnecessary capture of exception into a variable for
python-2.4 compat.
2017-08-07 19:42:39 -07:00
rahushen
441376c754 Fix #26024: suppress_fib_pending imdepotence for nxos_bgp (#27862) 2017-08-07 21:08:46 -04:00
Brian Coca
e4a997c97e removed debug print
fixes #27864
2017-08-07 20:44:35 -04:00
Juan Manuel Parrilla
5df4ff8983 Fixes #25057, Added Hiera Lookup (#25060) 2017-08-07 12:59:39 -06:00
Arthur Kepler
d828449611 Corrects default arg format used by datetime filter (#27612)
This ensures the default datetime format matches that of
datetime.datetime. Docs updated to match as well.
2017-08-07 11:33:25 -07:00
Mike Wiebe
65cf31e1ce Fix nxos_interface_ospf idempotence issue (#27783)
* Add tests and fix 27167

* Add modify test
2017-08-07 13:54:31 -04:00
Tyler
2571fc061e Add try/except to catch ipv6 interfaces that didn't appear on 'show interfaces' output (#27246) 2017-08-07 19:04:50 +02:00
Flavio Percoco Premoli
4fad156768 Allow for generating kubernetes YAML files from modules (#27833)
* Return the request dictionary in the results

It's sometimes useful to have access to the request params in a k8s
style. The dictionary returned by the request_params call can be
serialized into YAML to produce a k8s like file.

* Add dry_run option to skip module execution

By having support for dry_run executions, it'll be possible to generate
YAML files from the results dictionary by using the data in the
`requests` key.
2017-08-07 13:04:03 -04:00
Dag Wieers
3a86579b69 vcenter_license: New module to manage vCenter licenses (#25143)
This module supports check-mode and diff output.
It also includes basic integration tests.

This PR fixes #24971
2017-08-07 12:49:29 -04:00
Dag Wieers
71163d4d61 vmware_cluster: PEP8, imports, cosmetics (#25140)
This PR includes:
- Documentation improvements (mostly related to boolean defaults)
- Make PEP8 compliant
- Ensure imports are specific
- Few cosmetic changes (sort lists, casing, punctuation)
2017-08-07 12:44:27 -04:00
Zhangfei Gao
ce4ada93f9 facts: fix arm64 ansible_processor_vcpus = 0
On arm64, /proc/cpuinfo has no 'model name', 'Processor', 'vendor_id', 'cpu', 'Vendor',
as a resul "ansible_processor_count": 0 & "ansible_processor_vcpus": 0
Add checking element "processor" to fix the issue.

$ ansible -i ~/all-in-one  -m setup all | grep proc
	"ansible_processor": [],
	"ansible_processor_cores": 1,
	"ansible_processor_count": 0,
	"ansible_processor_threads_per_core": 1,
	"ansible_processor_vcpus": 0,

$ cat /proc/cpuinfo
processor	: 0
BogoMIPS	: 100.00
Features	: fp asimd evtstrm aes pmull sha1 sha2 crc32
CPU implementer	: 0x41
CPU architecture: 8
CPU variant	: 0x1
CPU part	: 0xd07
CPU revision	: 1

$ ansible --version
ansible 2.3.1.0
config file =
configured module search path = Default w/o overrides
python version = 2.7.9 (default, Aug 13 2016, 16:27:01) [GCC 4.9.2]

With fix, checking processor as well:
$ ansible -i ~/all-in-one  -m setup all | grep proc
	"ansible_processor": [
	"ansible_processor_cores": 1,
	"ansible_processor_count": 16,
	"ansible_processor_threads_per_core": 1,
	"ansible_processor_vcpus": 16,

Signed-off-by: Zhangfei Gao <zhangfei.gao@linaro.org>
2017-08-07 12:39:14 -04:00
Ben Waters
be5e2251a7 Fixes #21536: Allowing the ability to pass aws session paramters to credstash lookup (#23077)
* Allowing the ability to pass aws session paramters to credstash lookup
Fixes #21536
https://github.com/ansible/ansible/issues/21536

* Default environment variable lookup

To get around non lookup of environment variables. First, check for environment variables, then look for parameters

* Following AWS Precedence

http://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html#config-settings-and-precedence
2017-08-07 11:33:59 -04:00
James Mighion
bdccc2df3c Keep the diff even when running in check mode so we can tell if there is a diff or changed is true. (#27713) 2017-08-07 17:30:10 +02:00
Michael Price
8f4b13de73 Refactor E-Series VolumeCopy to use module_utils (#20902)
Refactor the NetApp E-Series module to utlize the common module_utils
and doc_fragments.
2017-08-07 09:18:26 -06:00
Nathaniel Case
b9e80b6117 nxos_vrf_interface cleanup (#27642)
* Update RETURN, results, & execute_show_command
2017-08-07 10:57:45 -04:00
Dag Wieers
ca7ce4459d aci.py: Add use_proxy support (#27735)
This PR includes:
- Support for the use_proxy parameter
- Additional notes related to proxy support and use_proxy parameter
2017-08-07 16:08:20 +02:00
Patrick Marques
f1816bb438 Update module digital_ocean_sshkey (#18930)
* add new module do_sshkeys

* Deprecate digital_ocean_sshkey.py in favor of do_sshkeys

* Should not exit changed if name not set and key exist

* Add ansible metadata

* Return "ansible_facts" instead of "data" key

* Update documentation and remove unused import

* Remove facts module (1 module / PR)

* Fix

* Fix

* fix version_added

* Change old module status to deprecated

* Change old module status to deprecated

* Fix module deprecation

* Add support for new DO_OAUTH_TOKEN env var

* Fix python 2.6 positional index

* Update deprecation info

* Configure timeout and validate_certs for fetch_url

* rename do_sshkeys to digital_ocean_sshkeys

* Module is replaced, not deprecated anymore

* Fix module name

* Add version to new parameters

* Update module from boilerplate
2017-08-07 09:58:47 -04:00
colin-hanson-zocdoc
ac15df8ab9 [cloud] Extend AWSRetry to also retry on Throttling exceptions (#22698)
We use ansible+cloudformation pretty heavily in our CI environments and occasionally bump into throttling issues.  By adding this error code to the retry system we should be able to achieve better stability.
2017-08-07 09:53:20 -04:00
Will Thames
2276c5f206 apt: Update cache if cache_valid_time is set (#27618)
It's not clear from the docs whether you need to set `update_cache`
when using `cache_valid_time`.

Setting `cache_valid_time` should imply `update_cache`. Update docs
to reflect this.
2017-08-07 14:36:51 +02:00
Nicolas Porcel
fa6ce54011 Fix yum with rpm file or url when state=latest (#27775) 2017-08-07 10:48:30 +02:00
Slezhuk Yevgeniy
54035d5c59 Fix documentation issue in jira module (#27820) (#27823)
Fixes #27820
2017-08-07 14:04:35 +05:30
Nicolas Porcel
616d5ddc93 Clean downloaded rpm files after install (#20594) 2017-08-07 09:17:49 +02:00
Markus Krogemann
d2f9160bc1 Fix documentation of name field in return values (#27822) 2017-08-07 16:21:29 +10:00
Jordan Borean
107e177658 win_stat: add explicit error message when file is in use (#27826)
* win_stat: add explicit error message when file is in use

* make the lock last a bit longer
2017-08-07 12:04:42 +10:00
Ricardo Carrillo Cruz
b51a1e9045 Fix junos_netconf idempotency issues (#27804)
* Fix junos_netconf idempotency issues

* Fix pep8 issue

* Fix pep8 issue
2017-08-05 17:07:51 +02:00
René Moser
fdaa803cca cloudstack: cs_vmsnapshot: fix pep8 (#27792) 2017-08-05 10:34:17 +02:00
René Moser
f1ef61da4e cloudstack: cs_domain: tests: add update tests (#27791) 2017-08-05 10:33:01 +02:00
Trishna Guha
edb5760723 nxos_vpc doc update to handle confirmation prompt (#27796)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-08-05 11:05:38 +05:30
Sam Doran
cb7b44f9e4 Remove _diff from play_context default
Follow up from PR #27746
2017-08-04 15:25:40 -04:00
Dag Wieers
25e67d804c iso_extract: Reimplement using 7zip (not requiring root) (#24937)
* Reimplement iso_extract using 7zip (not requiring root)

So one of the drawbacks of the original implementation is that it required root for mounting/unmount the ISO image.
This is now no longer needed as we use 7zip for extracting files from the ISO.

* Fall back to using mount/umount if 7zip not found

As discussed with others.

Also improved integration tests.
2017-08-04 14:38:42 -04:00
James Cammarata
e0b0e61b32 Properly copy the role path when the IncludeRole object is copied
This exposed some additional errors in logic in IncludeFile, which
had to be fixed to deal with the fact that the role path (unlike paths
from includes) are always absolute paths.

Fixes #27345
2017-08-04 14:30:40 -04:00
Jacky Hu
c770d657f3 Enable url lookup without a proxy
By introducing a use_proxy parameter to url lookup, the usage of proxy
is totally controllable.

(cherry picked from commit 11e4e51235)
from #23811
2017-08-04 14:20:43 -04:00
Benjamin
8fc113219c Enhance maven_artifact with a keep_name option (#22339)
It allows retaining the version number in the downloaded artifact's name when the version to be downloaded is dynamically determined ('latest').

So far, the behavior was to overwrite the version string in the artifact name with 'latest' which leaves no trace of what version the downloaded artifact has. E.g., you cannot use this information for further processing like transferring it to an RPM that is built from the artifact.

This fulfills feature request ansible/ansible#22337
2017-08-04 11:30:37 -06:00
Jérôme Guilbot
e29daf34f7 [s3_sync] Add cache_control option (#27388) 2017-08-04 12:35:08 -04:00
David Barroso
0f60041dea Handle better the many ways information can be passed around (#27506)
* Handle better the many ways information can be passed around

* Fixing pep8 complaints

* Removing message
2017-08-04 09:25:11 -07:00
Dag Wieers
a98e3fb81f Add RETURN information, doc improvements and PEP8
This PR includes:
- RETURN information (since the difference between status_code and
  status was confusing)
- Improvements to parameter definition (and docs)
- PEP8 compliancy
2017-08-04 08:21:50 -07:00
10sr
000f8dcc8f Fix bug that diff.always = yes in ansible.cfg won't be respected (#27746) 2017-08-04 10:42:38 -04:00
Keith Hawkridge
f62fa16a89 [cloud] Fix Dead Letter config property name (#27733)
Closes #27688
2017-08-04 10:21:36 -04:00
Pilou
b57af4428d rhn_register: fix broken imports, add unit tests (#26878)
Fix 'module' object is not callable

* rhn_register: fix Python 3 compatibility
* rhn_register: update requirements
* rhn_register: add unit tests
* Add missing method name
* use a dedicated line for XML related requirements
* rhn_register: drop support for Python 2.4
* rhn_register unit tests: fix Python 3 compatibility
* refactor in order to check order of the requests
2017-08-04 10:12:27 -04:00
Dag Wieers
0342760f5b sefcontext: PEP8 compliancy (#27742) 2017-08-04 10:01:17 -04:00
Philippe Dellaert
6d33e59ca1 Fix for subspec options validation issue #27715 (#27728)
* Fix for issue ansible/ansible#27715

* Also fixing mutually exclusive check

* Updating subspec checks
These changes take into account a spec with all features enabled and do
the following tests for subspecs:
1. Test proper specs
2. Test Alias
3. Test missing required param
4. Test mutually exclusive params
5. Test required if params
6. Test required one of params
7. Test required together params
8. Test required if params with a default value
9. Test basis subspec params
10. Test invalid subsec params
2017-08-04 19:10:38 +05:30
Toshio Kuratomi
3f12fccd02 Fix several things causing tracebacks with unicode cwd (#27731)
Fixes #27511
2017-08-04 09:25:08 -04:00
Sloane Hertel
de5f8f1ec4 [cloud] allow module_utils to get creds without boto installed (#27647)
Would try to grab creds from `boto.config` and lead to a NameError in some cases.
2017-08-04 09:02:21 -04:00
René Moser
5700b09610 cloudstack: new module cs_instance_nic_secondaryip, replaces cs_nic (#26491) 2017-08-04 15:01:12 +02:00
Peter Sprygada
7b604368d3 adds new filter plugins for network use cases (#27695)
* adds new filter plugins for network use cases

* adds parse_cli filter
* adds parse_cli_textfsm filter
* adds Template class to network_common
* adds conditional function to network_common

* fix up PEP8 issues
2017-08-04 07:47:12 -04:00
Dag Wieers
a34ef12d73 hpilo modules: PEP8 fixes (#27739) 2017-08-04 11:52:31 +02:00
Ganesh Nalawade
d3e5d30f7c Add aggregate for junos modules and sub spec validation (#27726)
* Add aggregate for junos modules and sub spec validation

*  aggregate support of junos modules
*  aggregate sub spec validation
*  relevant changes to junos integration test
*  junos module boilerplate changes

* Add new boilerplate for junos modules

* Fix CI issues
2017-08-04 14:55:58 +05:30
Dag Wieers
bcb3e33adb command: PEP8 compliancy (#27740) 2017-08-04 08:39:13 +02:00
Dag Wieers
d125520071 imc_rest: Increase default timeout, add elapsed time (#26743)
The IMC interface can be quite slow depending on the XML fragments used.
So we increase the default timeout to 60 seconds, and return the elapsed
time so it is easier to determine what timeout value makes sense from
earlier runs.

We also renamed **imc_xml** to **imc_rest**, now that we still can.
2017-08-04 07:15:27 +01:00
Alex Bush
8e8d4df340 #26903 Invalid JSON-RPC request (#26906) 2017-08-04 01:26:20 -04:00
Dag Wieers
60276b60a2 win_stat: Add stat.isreg support (#27732)
* win_stat: Add stat.isreg support

This PR includes the following changes:
- Adds stat.isreg support (cfr. the stat module)
- Always returns stat.isdir, stat.islnk, stat.isreg, stat.isshared

* Remove the controversial part
2017-08-04 13:55:58 +10:00
Adam Miller
91ea8e5eaf Fixes #23895 firewalld handle port arg whitespace (#27577)
Signed-off-by: Adam Miller <maxamillion@fedoraproject.org>
2017-08-03 14:19:25 -07:00
Will Thames
4e0666fc4a Add oracle-se2 database support (#23482)
Fixes ansible-modules-core#4808
2017-08-03 17:15:18 -04:00
Toshio Kuratomi
fbf6cb8fff Add boilerplate to fetch.py
This completes the modules/files directory so we can now check it for
regressions.
2017-08-03 13:15:12 -07:00
Sloane Hertel
467a1f54a3 s3_bucket: fix python3 sorting incompatibility (#27502)
* s3_bucket: fix policy sorting for python3 so strings are evaluated as less than tuples.

Add tests to ensure this behavior is maintained.

* Fix s3_bucket comparison function to work on both Python 3.5 and 3.6

* s3_bucket: document that cmp_to_key is used for python 2.7.

Add another test for s3_bucket to compare policies of different sizes.

* fix pep8

* Work around code-smell grepping by not using the word 'cmp'.
2017-08-03 15:41:26 -04:00
Pilou
96784160b1 rhn_register: call logout (#27533)
* missing requirement: list sufficient pkgs in error

* rhn_register: call logout when necessary

* rhn_register: remove useless return, small rewrite
2017-08-03 15:05:59 -04:00
Sloane Hertel
dbbad16385 [cloud] New module: Add module for managing AWS Datapipelines (cloud/amazon/data_pipeline) (#22878)
* New module for managing AWS Datapipelines

* Supports create/activate/deactivate and deletion
* Handles idempotent creation by embeding the version in the
uniqueId field
* Waits for requested state to be reached, as Botocore doesn't
have waiters yet for datapipelines

* rename module, fix imports, add tags option, improve exit_json results, fix a couple bugs, add a TODO so I don't forget

fix pep8

allow timeout to be used for pipeline creation

make .format syntax uniform

fix pep8

fix exception handling

allow pipeline to be modified, refactor, add some comments, remove unnecessary imports

pipeline activation may not be in the activated state long

remove datapipeline version option

change a loop to a list comprehension

create idempotence by hashing the options given to the module minus the objects (which can be modified)

small bugfix

* data_pipeline unittests

make unittests pep8

fix bug in unittests

* remove exception handling that serves no purpose

* Fix python3 incompatibilities in datapipeline tests and add placebo fixture maybe_sleep for faster tests

Fix python3 incompatibilities in data_pipeline build_unique_id()

Don't delete a pipeline in diff_pipeline() because it's unexpected

Don't use time.time() because it causes an issue with placebo testing

re-recorded tests

fix pep8 in data_pipeline

Remove disable_rollback from tests

Make sure unique identifier is a string

re-record tests

* improve documentation and add another example

* use a placebo fixture instead of redundant code in tests

fix tests for PLACEBO_RECORD=false

* Fix data_pipeline docs

use isinstance instead of type()

fix documentation

* fix documentation

* Remove use of undefined variable from data_pipeline module and fix license

* fix copyright header
2017-08-03 15:04:10 -04:00
Dmitry Telegin
6841763d70 Support install root in URPMI module. Fixes #23475 2017-08-03 11:35:33 -07:00
Sam Doran
af558698a0 Include aliases in ansible-doc output (#27702)
* Properly include aliases in ansible-doc output

Use correct variable name for storing aliases and only print them out if the list isn't empty.

Fixes #24498

* Only include choices in output if choices exist in the list
2017-08-03 10:38:08 -07:00
Abhijeet Kasurde
97240a9ebc Fix for missing import and boilerplate
Fix adds missing imports and boilerplate for proxysql.
It also remove get_exception calls in-favor of native exception.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-03 09:40:44 -07:00
Chris Chambers
afbad8789f cachamber - Issue #27566 - Correct urlparse import for maven_artifact module 2017-08-03 09:33:55 -07:00
Chad Bean
661d81ef86 Add new API param for new_host_delay (#21262) 2017-08-03 10:31:11 -06:00
Abhijeet Kasurde
bf54a0c3e5 Fix missing import and boilerplate
Added fix for missing imports and boilerplate in files modules,
also, removed get_exception calls to match 2.6> exception handling.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-03 08:39:15 -07:00
Will Thames
11da85f938 timer callback plugin: handle timezone changes better
A playbook that does `timezone name=Australia/Brisbane` on
a host previously in UTC will appear to take 10 hours.

Improve the seconds handling for playbooks that take longer
than one hour.
Improve the hours handling for playbooks that take longer than
one day.

TZ change before:
```
Playbook run took 0 days, 10 hours, 0 minutes, 36055 seconds
```
After:
```
Playbook run took 0 days, 0 hours, 0 minutes, 55 seconds
```

Sleep for 100s more than one hour before:
```
Playbook run took 0 days, 1 hours, 1 minutes, 3641 seconds
```

After:
```
Playbook run took 0 days, 1 hours, 1 minutes, 41 seconds
```
2017-08-03 11:09:27 -04:00
Mark McKinstry
f17cb253a4 pear: add option for path to pear executable (#19200)
* add option for path to pear executable

this is useful if you have multiple versions of PHP installed at once,
using SCL PHP RPMs from Red Hat or some other method

* update version number

* improve wording
2017-08-03 17:08:16 +02:00
Pete Travis
7a35b95609 provide usable examples for sudo validation 2017-08-03 11:04:07 -04:00
Yaacov Zamir
48922660fe New model manageiq manageiq user (#26641)
* ManageIQ: manageiq_user module, module utils and doc_fragment

ManageIQ is an open source management platform for Hybrid IT.

This change is adding:
- manageiq_user module, responsible for user management in ManageIQ
- manageiq utils
- manageiq doc_fragment

* Handle import error

* Use formatting options

* group parameter is required

* changed doesn't need to be an attribute

* resource dictionary should contain values which isn't None

* move from monitoring to remote-management

* Use ManageIQ nameing convention

* Do not set defauts in arguments

* Use idempotent state parameter instead of action

* Check import error in the manageiq util class

* Update the miq documentation

* rename the connection configuration from miq to manageiq_connection

* All messeges start with non cap, fix typos, add examples, rename vars

* more typos fixes

* Make sure we insert only strings to logs by using % formating

* use suboptions keyword for the manageiq connection

* do not log the managiq connection struct (it include sensitive information like username and password)

* add missing from __future__

* ahh, wrong no-log line

* Use sub options
2017-08-03 10:49:47 -04:00
Abhijeet Kasurde
748fa5db35 Add check for requests module
Fix adds check for requests Python module and suggests user to install,
if no requests module installation found.

Fixes: #27643

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-03 07:38:41 -07:00
George Nikolopoulos
31b4ae2e6a New module: manage Citrix Netscaler GSLB site configuration (network/netscaler/netscaler_gslb_site) (#27639)
* Add netscaler_gslb_site

* Lowercase enabled, disabled option values

* Add fixes in netscaler module utils needed for unit test success
2017-08-03 15:26:17 +01:00
George Nikolopoulos
d88c07a037 New module: manage Citrix Netscaler GSLB service configuration (network/netscaler/netscaler_gslb_service)) (#27638)
* Add netscaler_gslb_service

* Lowercase enabled, disabled option values

* Add fixes in netscaler module utils needed for unit test success
2017-08-03 15:26:05 +01:00
George Nikolopoulos
cd865be987 New module: manage Citrix Netscaler SSL certificate keys (network/netscaler/netscaler_ssl_certkey)) (#27641)
* Add netscaler_ssl_certkey

* Fix options

* Lowercase enabled, disabled option values

* Add fixes in netscaler module utils needed for unit test success
2017-08-03 15:24:56 +01:00
Gregory Danenberg
1e42e1e04c [cloud] cloudformation: fix changeset_name bug fix #27487 (#27518)
Closes #27487
2017-08-03 08:40:28 -04:00
George Nikolopoulos
e2f907ae3e Add netscaler_gslb_vserver (#27640) 2017-08-03 12:32:10 +01:00
Christian Pointner
1ce2bf56a2 crypto/openssl_*: Standardize implementaton and add support keyUsage, extenededKeyUsage (#27281)
* openssl_csr: make subjectAltNames a list

* csr module now uses the new standard way to build openssl crypto modules

* add check functions for subject and subjectAltNames

* added support for keyUsage and extendedKeyUsage

* check if CSR signature is correct (aka the privatekey belongs to the CSR)

* fixes for first PR review

* fixes for second PR review

* openssl_csr: there is no need to pass on privatekey as it can be accessed directly

* openssl_csr: documentation fixes
2017-08-03 12:27:17 +01:00
rahushen
e0f482a8c5 Fixes #27340 - make indent consistent for nxos_config (#27652) 2017-08-03 07:09:31 -04:00
Trishna Guha
3da9607203 fix unexpected key argument for eos_config replace (#27683)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-08-03 14:08:23 +05:30
Trishna Guha
91a9564b3b modify indent to avoid re-run of src template fail (#27686)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-08-03 12:58:27 +05:30
Felipe Garcia Bulsoni
b060d0ccba Initial commits for integration of HPE OneView resources with Ansible (#26026)
* Initial commit for integration of HPE OneView resources with Ansible Core. Adding FC Network and FC Network Fact modules and unit tests, and OneView base class for all OV resources.
2017-08-02 19:54:32 -07:00
James Mighion
baaa1ef2ec Sanitizing all responses from aireos. (#27660) 2017-08-02 22:01:38 +01:00
Eduard Iskandarov
a1abe7d941 add kubernetes beta resources to clustering/kubernetes module (#18953) 2017-08-02 16:41:12 -04:00
Adrian Likins
6fbd0a8bb5 Add set_fact_persistent action and module. (#26153)
* Add 'cacheable' param to  set_fact action and module.

Used just like set_fact, except facts set with cacheable: true
will be stored in the fact cache if fact caching is enabled.

set_fact normally only sets facts in the non_persistent_fact_cache, so they
are lost between invocations.

* update set_facts docs

* use 'ansible_facts_cacheable' in module/actions result

* pop fact cacheable related items out of args/results

We dont want to use 'ansible_facts_cacheable' result item
or 'cacheable' arg as actual facts, so pop them out of the
dicts.
2017-08-02 15:57:58 -04:00
jctanner
e1abed28ba Fix version_added from #21822 (#27665) 2017-08-02 15:34:08 -04:00
jctanner
93f98effe9 Update version added from #20777 (#27662) 2017-08-02 15:33:55 -04:00
Chekov2k
a0370b8254 Add pv_options to lvg module so that, for example, metadatasize can b… (#21822)
* Add pv_options to lvg module so that, for example, metadatasize can be specified (e.g. for openstack cinder volumes)

* Fixing version added
2017-08-02 15:08:32 -04:00
mwellmeyer
54a3bcc4ec add iptables tcp-flags option (#20777)
* add iptables tcp-flags option

* fix invalid character in iptables documentation

* fix wrong default value for tcp_flags in the documentation
2017-08-02 14:54:00 -04:00
Sloane Hertel
b0efbc5418 [cloud] ec2_vpc_igw: fix check mode - fixes #27490 (#27637)
Fix check mode for adding/removing tags; boto's DryRun is not equivalent to check mode.

Fixes #27490
2017-08-02 13:47:13 -04:00
Sloane Hertel
c02deef454 [cloud] filter by vpc and subnet if provided before terminating instances (#27394) 2017-08-02 13:43:24 -04:00
piotrkarbowski-ciklum
a260d99f74 ec2_ami_copy.py: Fix WaiterError handling. (#27416)
* ec2_ami_copy.py: Fix WaiterError handling.

Change suggested by Adam Johnson at https://github.com/ansible/ansible/issues/26971

* ec2_ami_copy.py: WaiterError: fail_json: add exception parameter.

* ec2_ami_copy.py: import traceback
2017-08-02 13:05:08 -04:00
Toshio Kuratomi
e992e4f436 Add missing copyright header in modules cleaned up yesterday 2017-08-02 09:53:28 -07:00
Abhijeet Kasurde
5e2184c683 Fixing broken imports and get_exception for ipa
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-02 09:53:02 -07:00
Brandon Davidson
3d20a2ea82 Fix typo in cloud/amazon/ec2_vpc_nacl_facts (#27534) 2017-08-02 12:26:28 -04:00
Abhijeet Kasurde
be58fa979d Fix broken import in cloudformation
* Fix imports
* Add new GPLv3 Licence

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-02 09:05:25 -07:00
Nathaniel Case
123b5e222f nxos_bgp_neighbor fixes (#27348)
* Fix `timers` idempotency

* `shutdown` is not documented as having a `default` option

* dynamic_capability is the inverse of BOOL_PARAMS
2017-08-02 11:07:46 -04:00
Adrian Likins
27a015f0ad add a 'min' type for gather_subset to collect nothing (#27085)
previously gather_subset=['!all'] would still gather the
min set of facts, and there was no way to collect no facts.

The 'min' specifier in gather_subset is equilivent to
exclude the minimal_gather_subset facts as well.

   gather_subset=['!all', '!min'] will collect no facts

This also lets explicitly added gather_subsets override excludes.

   gather_subset=['pkg_mgr', '!all', '!min'] will collect only the pkg_mgr
fact.
2017-08-02 11:04:01 -04:00
DavidVentura
c85b36d220 Fix Proxmox module crashing if the hostname doesn't exist and there's no vmid (#21305)
* fail the execution instead of panicking when the hostname is not found and the vmid was not provided

* return an empty vmid list if the hostname doesn't exist
2017-08-02 15:42:05 +01:00
mharista
c85f363aaa Add module cv_server_provision for integration with Arista CloudVision Portal. (#25450)
* Add module cv_server_provision for integration with Arista CloudVision Portal.

* Doc update.

* Remove shebang from test file. Update short description with company and product name.

* Update exception syntax to Python3 style.

* Remove blank line between imports.

* Remove newlines from RETURN documentation.

* Add cvprac to unittest requirements.

* Update unittest format. Add a few additional tests.

* Mock exceptions from cvprac so the library is not needed for unittests.

* Mock cvprac imports.

* Update unit tests to support python 3.5.

* Mock full cvprac library for unittests.

* Update Jinja2 import to pass updated CI checks.

* Update cvprac imports format for new CI tests.

* Add __metaclass__ and __future__.
2017-08-02 15:24:52 +01:00
Simon Dodsley
7fbd924cbb Add Pure Storage Host Group module (#26355) 2017-08-02 15:22:05 +01:00
Simon Dodsley
b3865b173d Add Pure Storage Protection Groups module (#26356)
Update documentation to be correct
Change type to bool
2017-08-02 15:20:58 +01:00
jctanner
baf1ed9100 [WIP] Create preserved_copy function in basic.py to perserve file ownership. (#27344)
Create preserved_copy function in basic.py to perserve file ownership.

* Add a test for template preserved backup
* Use a script to get the random names
* bytes to strings
* Remove dump of hostvars
* Stop being fancy and create a testuser instead
* Fix pep8
* set file attributes
* Pass the correct data to set_attributes_if_different
* Use -j instead -b and pass the attributes as a string instead of a list
* remove debugging message
* Use shell to softly set the attr

Fixes #24408
2017-08-02 10:04:09 -04:00
Abhijeet Kasurde
b266204afa Fix JSON parsing for Python3
Fix corrects the parsing of JSON output in Python 3
environment by using to_text API.

Fixes: #26489

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-08-02 06:47:44 -07:00
Nathaniel Case
b93878b685 Minor cleanup to nxos_vrrp (#27593)
* Safe changes

* Fold `[0]` into `execute_show_command()`

We only ever execute one command, so only return the one response

* Streamline `results`
2017-08-02 08:46:44 -04:00
Abhijit Menon-Sen
20b0716948 Allow variables to be passed in to template lookup plugin (#18662)
This allows a single template to be evaluated with different values in
the same task. For example, with a template like 'x:{{a}}', one could do
something like this:

    - foo:
        a: "{{ lookup('template', 'x.j2', template_vars=dict(a=foo[item])) }}"
        b: "{{ lookup('template', 'x.j2', template_vars=dict(a=bar[item])) }}"
      with_items:
        - x
        - y

…and "a" and "b" would expand to different strings based on what we
passed in to the template lookup.
2017-08-02 09:29:27 +05:30
Andrew Saraceni
435a562630 Rename win_group_member module to win_group_membership (#27614)
* rename win_group_member to win_group_membership

* adding details to BOTMETA.yml
2017-08-02 12:06:39 +10:00
Jordan Bach
24e393aef1 allow use of jinja2 variables for ec2_group from_port/to_port params (#27145) 2017-08-02 10:26:38 +10:00
Adrian Likins
2b0a7338d4 Handle win style CRLF newlines in vault text (#27590)
When parsing a vaulttext blob, use .splitlines()
instead of split(b'\n') to handle \n newlines and
windows style \r\n (CRLF) new lines.

The vaulttext enevelope at this point is just the header line
and a hexlify()'ed blob, so CRLF is a valid newline here.

Fixes #22914
2017-08-01 18:53:22 -04:00
Toshio Kuratomi
7d2597a68d change the gpl header to single line version and order of imports 2017-08-01 15:41:07 -07:00
Toshio Kuratomi
15902f2496 Fix for ansiballz filenames conflicting with python stdlib modules
The AnsiBallZ wrapper is transferred to the remote machine with
a filename similar to the Ansible-module it runs.  For modules like copy
and tempfile, this can end up conflicting with stdlib modules on the
remote machine depending on how python is setup there.  We have a little
bit of code in the wrapper to deal with this by removing the path that
the ansible module resides in from sys.path.

On MacOSX, that code was having a problem.  The path the module ends up
in included a symlinked directory so we were looking for a path in
sys.path but we had to look for the unsymlinked path instead.

Fix that by using os.path.realpath() instead of os.path.abspath()
2017-08-01 15:20:35 -07:00
Adrian Likins
75a8be9a5d Add back support for vault_password_file config var (#27597)
Got removed in arg parsing updates. Now added back in
setup_vault_secrets().

The default value for DEFAULT_VAULT_PASSWORD_FILE was also
set to '~' for some reason, change to to no default.

Add integration tests.
2017-08-01 18:07:33 -04:00
Matt Davis
f19ed387a7 fix non-pipelined output parsing in winrm.py (#27606)
* ensures stdout/stderr are converted to text type in py3 to avoid json serialization failures
2017-08-01 14:59:52 -07:00
Robin Roth
b134352d8c WIP: Replace boilerplate (#27554)
* Replace boilerplate

* Enable test on packaging/os
2017-08-01 14:37:37 -07:00
CyberArk BizDev
6aa851c6bc CyberArk InitialSupport (#21764)
* Added cyberarkpassword lookup plugin

Added cyberarkpassword lookup plugin: It allows to retrieve credentials
(password, sshkey) from CyberArk Digital Vault

* Added Modules: cyberark_authentication & cyberark_user

Added Modules:
- cyberark_authentication: Logon/Logoff to CyberArk Vault
- cyberark_user: user management

These 2 modules use CyberArk Privileged Account Security Web Services
SDK

* Update cyberark_authentication.py

* Update cyberark_user.py

* Removed ternary conditional to comply with 2.4

* Replaced usage of iteritems() for items() to comply with python3

* PEP8 Updates

* Fixed Doc Issues

* Doc Fixes

* More Doc Fixes

* Removing cyberark_user module, and cyberark lookup plugin

for initial approval of PR, and continue with 2 different PRs after PR
#21764 is approved.

* PEP8 Fixes

* Moved cyberark modules to identity category

From IRC #ansible-devel recommendation (@bcoca) I moved cyberark to
identity category so the authorized maintainers can provide feedback
and move it forward.

* Updates based on community_review by bjolivot

- Updated description lines to have full stops in the documentation
section.
- changed file to use delimiter-separated words instead of camel case
- Updated AnsibleModule module_spec parameters to use
mutually_exclusive, required_if and required_together parameters to
avoid manual validation of the parameters.
- Added comments for more readability.
- Removed “required”: false as they are implicit.
- Enhanced check_mode handling.

* PEP8 Updates

* Updates based on IRC Feedback June 6

* Fixed description for token item

* Fixed Documentation RETURN string

* Fixed PEP8 W291 trailing whitespace

* Changes based on feedback from community review

* Added import to_text from ansible.module_utils._text

* Updates based on recommendation from community

* Changed Exception for Error in friendly messages in try/except blocks

* Updates based on community review (bcoca & dagwieers)

* Fixed httplib for python3 (http.client)
2017-08-01 14:20:27 -07:00
Ganesh Nalawade
6a0d9d1498 Fix junos_logging integration test failure (#27605) 2017-08-02 02:12:09 +05:30
Adrian Likins
9f57920eab Fix --ask-vault-pass prompt to match old when poss (#27602)
If we don't use more than one vault-id, and we use
--ask-vault-pass, instead of using the new vault prompt
format ('Vault password (my_vault_id): ') we use the old
one ('Vault password: ').

This avoids confusing Tower when it needs to detect an
interactive vault password prompt.

This also potentially could allow vault password prompts
to be customized per vault_id.
2017-08-01 16:39:54 -04:00
saichint
37392318a6 fix nxos_vlan and nxos_switchport issues (#27505) 2017-08-01 16:27:12 -04:00
Adrian Likins
a52a4332fd Fix aruba_config flake8 failures (#27603)
* Fix aruba_config flake8 failures

* fix intefaces_file build/flake8 fail
2017-08-01 15:48:48 -04:00
Sloane Hertel
d8eccdda3a [cloud] make ec2 paging() more functional and add paging to ec2_lc_facts (#27355) 2017-08-01 15:06:46 -04:00
Sloane Hertel
ad2c1e1838 [cloud] ec2_customer_gateway: add routing option to allow bgp_asn to be optional (#27276)
fixes #27157

 add routing option to allow bgp_asn to be optional
2017-08-01 14:54:34 -04:00
Nathaniel Case
ec8cbbf926 Fix aruba boilerplate 2017-08-01 14:32:25 -04:00
Sloane Hertel
61ebb89fe3 improve cloudformation failures (#27427) 2017-08-01 12:23:32 -06:00
jhawkesworth
a43af128cf Add mac address to windows facts (#25803) 2017-08-01 11:13:19 -07:00
Roman Belyakovsky
42039cd436 New module: manage debian network interfaces file /etc/network/interfaces (system/interfaces_file) (#25295)
* Added new module interfaces_file

* interfaces_file: added unit tests

* interfaces_file: added golden files for unit tests

* interfaces_file: moved to system modules

* interfaces_file: fixed code formatting and convention issues
2017-08-01 12:11:43 -06:00
Brandon Davidson
4ec8744b8b Ignore main route table association when determining which associations to remove. (#23781)
They can't be removed anyway, and will just throw an error if you try to disassociate them.
2017-08-01 12:10:16 -06:00
Jens Carl
cc72dead45 New module: Add module to collect facts for Amazon Redshift Cluster (cloud/amazon/redshift_facts) (#22615)
* New module redshift_facts

Gather facts about aws Redshift cluster(s).

* Fix she-bang, PEP8 violations, and ansible metadata.

* Bump version_added to "2.4"

* Fix some typos and add supporting check mode

* Fix type of RETURN fields

Fix type of RETURN fields number_of_nodes and
automated_snapshot_retention_period from integer to int.

* Add traceback information to fail_json()
2017-08-01 12:09:55 -06:00
Nathaniel Case
c017d0c7c0 Fix fortios & netscaler boilerplate
Sorry
2017-08-01 14:02:10 -04:00
Trishna Guha
407dc2dc68 fix nxos_vrf removal failure (#27547)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-08-01 11:51:25 -06:00
Gaurav Rastogi
23ec711494 Added flags for Federated objects used in GLSB (#27531) 2017-08-01 11:51:01 -06:00
Ganesh Nalawade
c4e06a1735 ios implementation for net_interface (#27459)
* ios implementation for net_interface

*  ios_interface implementation
*  ios_interface integration test

* net_interface integration test for ios and other refactor

* Update boilerplate and minor refactor
2017-08-01 11:50:08 -06:00
Ganesh Nalawade
70ce394840 Persistent connection timer changes (#27272)
*  Add command_timeout timer that defines the amount
   of time to wait for a command or RPC call before
   timing out.
*  Remove connect_retries and connect_interval configuration
   varaible and replace it with connect_retry_timeout to control
   the timeout value of connection to local scoket.
*  Make required changes to netowrk action plugins and relevant
   network files in module_utils.
*  Required documentation changes.
2017-08-01 11:45:45 -06:00
James Mighion
4dd8f281d6 Adding aruba_config module (#27130)
* Adding aruba_config module.

* Fixing documentation.

* Forgot action plugin.
2017-08-01 11:44:26 -06:00
George Nikolopoulos
f204e7cb33 New module: manage Citrix Netscaler content switching virtual server configuration (network/netscaler/netscaler_cs_vserver) (#26245)
* Add netscaler_cs_vserver

* Correct version_added
2017-08-01 18:43:59 +01:00
QijunPan
402ac47549 Contributing lib/ansible/modules/network/cloudengine/ce_bfd_session.py module to manage HUAWEI data center CloudEngine (#26069)
* add bfd session module

* update return doc
2017-08-01 11:40:15 -06:00
George Nikolopoulos
36537186e3 New module: manage Citrix Netscaler content switching policy configuration (network/netscaler/netscaler_cs_policy) (#26189)
* Add netscaler_cs_policy

* Correct version_added
2017-08-01 18:35:29 +01:00
Ken Celenza
7a51c5f4df make panos security rule more idempotent (#26573) 2017-08-01 11:35:18 -06:00
benthomasson
fb1583b2c2 Add last line of LLDP data (#26451) 2017-08-01 11:34:42 -06:00
George Nikolopoulos
e329c9da8c New module: manage Citrix Netscaler servicegroup configuration (network/netscaler/netscaler_servicegroup)) (#26183)
* Add netscaler_servicegroup

* Correct version_added
2017-08-01 18:34:28 +01:00
George Nikolopoulos
7df14bd2b0 New module: manage Citrix Netscaler load balancer virtual servers configuration (network/netscaler/netscaler_lb_vserver) (#26144)
* Add netscaler_lb_vserver

* Correct version_added
2017-08-01 18:33:35 +01:00
John R Barker
727a7e8a1c Correct version added 2017-08-01 18:32:02 +01:00
George Nikolopoulos
ac0c5dec2f Add netscaler_lb_monitor (#26143) 2017-08-01 11:30:47 -06:00
QijunPan
17e64f876d add bfd view module (#26070) 2017-08-01 11:28:51 -06:00
QijunPan
5b2373df16 add bfd global module (#26068) 2017-08-01 11:28:19 -06:00
Dennis Israelsson
d7202e6155 Add fabricpath support for nxos_vlan (#26013)
* Add files via upload

Fix for issue #25720

* nxos_vlan fabricpath (#25720)

Fix for issue #25720

* Add files via upload

* Add files via upload

* Delete nxos_vlan.py

* Add files via upload

* Add files via upload
2017-08-01 11:27:47 -06:00
Ganesh Nalawade
448c461940 Convert port value to integer (#25939)
Fixes #25175

convert port value to integer explicitly
2017-08-01 11:27:04 -06:00
techhelper1
a25c6b9478 ios_facts: Fixed Retrieving All IPv4 Addresses on L3 Interfaces (#25462)
* Fixed Retrieving All IPv4 Addresses on L3 Interfaces

The ios_facts module retrieving the interface subnet, would only get the primary IPv4 address on the interface and would not capture all the secondary IPs (ones that I would be set by "ip address x.x.x.x x.x.x.x secondary").

This was tested and confirmed to work on a Cisco 6500 with IOS 15.1(2)SY6.

* Fixed whitespace and if statement issues for sanity.

* Fixed spacing because sanity.
2017-08-01 11:24:02 -06:00
ikelos
03d3c6135d Convert the src entry to a templated entry. (#24026) 2017-08-01 11:19:08 -06:00
jpvrenen
b13d547621 Added result responses (#23336)
Return value 'responses' is now created in result, so it can actually be
called/used.
2017-08-01 11:18:34 -06:00
numone213
25b3f194f8 Contributing lib/ansible/modules/network/cloudengine/ce_vrrp.py module to manage HUAWEI data center CloudEngine (#22344)
* add ce vrrp

add ce vrrp

* metadata_version

* fix CI issue
2017-08-01 11:17:44 -06:00
Benjamin Jolivot
753b26ccf9 Manage Fortios/Fortigate Address (#21542)
* New module fortios_address

* Add module_utils required_if + fix Doc

* Merge spec & required_if from module_utils

* Fix pep8

* Py2.5 compat , cosmetic changes

* Fix param timeout

* Fortios_address module + integration tests

* add netaddr library in requirements for integration tests

* Pep8 problems

* ANSIBLE_METADATA.version -> ANSIBLE_METADATA.metadata_version
2017-08-01 11:17:12 -06:00
Adrian Likins
17ab546c48 Add 2.0-2.3 facts api compat (ansible_facts(), get_all_facts()) (#27294)
* Add 2.0-2.3 facts api compat (ansible_facts(), get_all_facts())

These are intended to provide compatibilty for modules that
use 'ansible.module_utils.facts.ansible_facts' and
'ansible.module_utils.facts.get_all_facts' from 2.0-2.3 facts
API.

Fixes #25686

Some related changes/fixes needed to provide the compat api:

* rm ansible.constants import from module_utils.facts.compat

Just use a hard coded default for gather_subset/gather_timeout
instead of trying to load it from non existent config if the
module params dont include it.

* include 'external' collectors in compat ansible_facts()

* Add facter/ohai back to the valid collector classes

facter/ohai had  gotten removed from the default_collectors
class used as the default list for all_collector_classes by
setup.py and compat.py

That made gather_subset['facter'] fail.
2017-08-01 12:51:33 -04:00
Chris Houseknecht
3db768f393 Removes container-enabled warning (#27578) 2017-08-01 12:51:03 -04:00
Gaurav Rastogi
dc5b826af8 New Module: Manage Avi Networks ServerAutoscale Policy (#27544) 2017-08-01 17:50:37 +01:00
Gaurav Rastogi
d3ed3dd7c3 New Module: Manage Avi Networks HardwareSecurityModuleGroup (HSM) (network/avi/avi_hardwaresecuritymodulegroup) (#27541) 2017-08-01 17:48:33 +01:00
Gaurav Rastogi
6f12abe517 New Module: Manage Avi Networks PoolGroupDeploymentPolicy (nettwork/avi/avi_hardwaresecuritymodulegroup) (#27542) 2017-08-01 17:48:16 +01:00
Gaurav Rastogi
d78d3931a1 New Module: Manage Avi Networks Traffic Clone profile (network/avi/avi_trafficcloneprofile) (#27543) 2017-08-01 17:42:16 +01:00
Gaurav Rastogi
5fe82c6b4a New Module: Manage Avi snmptrapprofile (network/avi/avi_snmptrapprofile) (#27583) 2017-08-01 17:41:51 +01:00
Gaurav Rastogi
eae1e9a351 New Module: Manage Avi Networks Scheduler (network/avi/avi_scheduler) (#27582) 2017-08-01 17:41:38 +01:00
Gaurav Rastogi
4d1bd424f4 New Module: Manage Avi Networks Backupconfiguration (network/avi/avi_backupconfiguration) (#27580) 2017-08-01 17:41:25 +01:00
Gaurav Rastogi
833d3dd5f9 New Module: Manage Avi Networks Webook (network/avi/avi_webhook) (#27579) 2017-08-01 17:41:10 +01:00
Gaurav Rastogi
279c50e43f New Module: Manage Avi Networks PriorityLabels (network/avi/avi_prioritylabels) (#27576) 2017-08-01 17:40:54 +01:00
Ganesh Nalawade
97a34cf008 Add options sub spec validation (#27119)
* Add aggregate parameter validation

aggregate parameter validation will support checking each individual dict
to resolve conditions for aliases, no_log, mutually_exclusive,
required, type check, values, required_together, required_one_of
and required_if conditions in argspec. It will also set default values.

eg:
tasks:
  - name: Configure interface attribute with aggregate
    net_interface:
      aggregate:
        - {name: ge-0/0/1, description: test-interface-1, duplex: full, state: present}
        - {name: ge-0/0/2, description: test-interface-2, active: False}
    register: response
    purge: Yes

Usage:
```
from ansible.module_utils.network_common import AggregateCollection

transform = AggregateCollection(module)
param = transform(module.params.get('aggregate'))
```

Aggregate allows supports for `purge` parameter, it will instruct the module
to remove resources from remote device that hasn’t been explicitly
defined in aggregate. This is not supported by with_* iterators

Also, it improves performace as compared to with_* iterator for network device
that has seperate candidate and running datastore.
For with_* iteration the sequence of operartion is
load-config-1 (candidate db) -> commit (running db) -> load_config-2
(candidate db) -> commit (running db) ...

With aggregate the sequence of operation is
load-config-1 (candidate db) -> load-config-2 (candidate db) -> commit
(running db)

As commit is executed only once per task for aggregate it has
huge perfomance benefit for large configurations.

* Fix CI issues

* Fix review comments

*  Add support for options validation for aliases, no_log,
   mutually_exclusive, required, type check, value check,
   required_together, required_one_of and required_if
   conditions in sub-argspec.
*  Add unit test for options in argspec.
*  Reverted aggregate implementaion.

* Minor change

* Add multi-level argspec support

*  Multi-level argspec support with module's top most
   conditionals options.

* Fix unit test failure

* Add parent context in errors for sub options

* Resolve merge conflict

* Fix CI issue
2017-08-01 09:32:18 -07:00
Will Thames
5f73bdc3bf [cloud] Improve Camel to Snake conversion in EC2 module_utils (#25015)
* Make camel_to_snake work on capitalized plurals

`TargetGroupARNs` should become `target_group_arns`, not
`target_group_ar_ns`

Promote `camel_to_snake` to top layer function but prefix
it with an underscore.

Add tests for improved `_camel_to_snake` function.

Reduce use of `re.compile` as it makes no sense when the
compilation result is not reused.

* Remove unused LooseVersion check

* Fix PLURALs case for camel_to_snake

Also renamed EXPECTED_CAMELIZATION to EXPECTED_SNAKIFICATION
2017-08-01 11:09:22 -04:00
Ganesh Nalawade
60676add33 iosxr implemetation for net_interface (#27513)
* iosxr implemetation for net_interface

*  iosxr_interface implementation

* Add integration test

*  iosxr_interface integration test
*  net_interface intergration test for iosxr

* update boilerplate
2017-08-01 20:19:54 +05:30
ossark
3290c2fc3c Added priority attribute for pool members (bigip_pool_member module) (#23128)
* Added priority attribute for pool members (bigip_pool_member module)

* Line break missing

* Change from 'priority' to 'priority_group'

* Update bigip_pool_member.py

* Update bigip_pool_member.py
2017-08-01 15:15:54 +01:00
Ganesh Nalawade
bb998a3cd2 Add fix to read correct socket path recieved from ansible-connection (#27560)
Currently socket path is send from `ansible-connection` (running as background
process) over stdout. This can conflict with debug logs that are also send on
stdout resulting in incorrect socket path received by the main process.

To avoid this add a socket path delimiter string which is recevied by
main process and socket path is retrieved based on delimiter string.

This implementation will change in future when ansible-connection
framework is made more robust.
2017-08-01 19:32:25 +05:30
hyperized
00ef894f6c Add module to list S3 buckets (#27322)
* Add module to list S3 buckets

* Move check for boto3 before boto3 is attempted to be used
2017-08-01 09:25:54 -04:00
Nikita Chernyi
889495bf7f skippy callback plugin: hides banner for skipped tasks (#18621)
* Modified skippy callback plugin

* Added original skippy.py, moved plugin to full_skip.py

* Full skip: fixed code style
2017-08-01 08:19:51 -04:00
Jiangge Zhang
891a8ad2fe Proposed new notification module: BearyChat (#21947)
* Add new notification module: BearyChat integration

BearyChat (https://bearychat.com) is a Slack alternative service.

* Remove implicit args and change position of module.fail

* Update the metadata of bearychat module
2017-08-01 12:47:47 +01:00
Will Thames
f972994662 [cloud] fix VPC behavior for ec2_group module, improve integration tests (#27038)
* Add tests for group in a VPC

* Improve ec2_group output and documentation

Update ec2_group to provide full security group information
Add RETURN documentation to match

* Fix ec2_group creation within a VPC

Ensure VPC ID gets passed when creating security group

* Add test for auto creating SG

* Fix ec2_group auto group creation

* Add backoff to describe_security_groups

Getting LimitExceeded from describe_security_groups is definitely
possible (source: me) so add backoff to increase likelihood of
success.

To ensure that all `describe_security_group` calls are backed off,
remove implicit ones that use `ec2.SecurityGroup`. From there,
the decision to remove the `ec2` boto3 resource and rely on the client
alone makes good sense.

* Tidy up auto created security group

Add resource_prefix to auto created security group and delete
it in the `always` section.
Use YAML argument form for all module parameters
2017-08-01 06:53:43 -04:00
Jordan Borean
7a7a0cae94 win_service: added support for paused services (#27216)
* win_service: added support for paused services

* change pausable service for local computers

* more fixes for older hosts

* sigh

* skip pause tests for Server 2008 as it relies on the service
2017-08-01 18:48:14 +10:00
Pilou
49b8bd0358 Fix broken import in utilities.helper._accelerate (#27088)
* Fix py3 compatibility using six.moves.socketserver

* Remove useless call to str
2017-07-31 22:05:46 -07:00
Jordan Borean
1517db06c5 fix to alllow the winrm plugin to send input with Python 3 (#27474) 2017-07-31 18:35:05 -07:00
Chris Houseknecht
e2651d4bac Give precedence to user supplied --roles-path option (#27524) 2017-07-31 18:46:49 -04:00
Ozi Boms
16d23e96c5 Add reference to VNET resource group (#26052)
* Add reference to VNET resource group

When creating a new virtual machine, added new parameter to allow creation of VM in a resource group using virtual network from another resource group

* Fixed white space errors

Was getting compialtion errors with code and just went around and cleaned up extra white spaces and such.

* Re-fixed more white space issues

* Fixed Version Number for new parameter

* specified exceptions

Use clouderror instead of exceptions for finidng virtual network

* Simplified code lines

created a local variable to either use the VNET resource group or the VM resource group and then used whichever was available as a parameter

* fixed syntax issue with newline

...hopefully

* removed superfluous default/required from docs

* fix vm_size default
2017-07-31 15:29:51 -07:00
Ganesh Nalawade
7cf4416c9c Fix junos_netconf integration test failure (#27528) 2017-08-01 02:25:52 +05:30
Toshio Kuratomi
0b9a78f0b3 Remove wildcard, add boilerplate and get rid of get_exception
* smaller collections of database modules
* Some of the smaller collections of network modules
2017-07-31 13:51:38 -07:00
Ryan Sabatini
f65f3570a8 Add Ability to Exlude Paths from Archive
Archive.py allows you to pass a glob path of files to archive.
This allows end users to glob a dir, and exlude a list of dirs
from the archive which are not necessary.
2017-07-31 11:46:16 -07:00
Andrew Saraceni
7b3d893f2d New Module: Manage Windows local group membership (win_group_member) (#26307)
* initial commit for win_group_member module

* fix variable name change for split_adspath

* correct ordering of examples/return data to match documentation verbiage

* change tests setup/teardown to use new group rather than an inbult group
2017-07-31 11:10:57 -07:00
Matt Davis
91f4c37ed7 rename legacy PS module_utils to remove PowerShell prefix (#27495) 2017-07-31 10:06:12 -07:00
Brian Coca
b79744f282 make random_choice more error resilient (#27380)
* make random_choise more error resilient

fixes #27373

* missing imports

* PEEP 16
2017-07-31 11:44:53 -04:00
Gaurav Rastogi
e575ff8d8d New Module: Manage Avi Networks Microservicegroup (network/avi/avi_microservicegroup) (#26209) 2017-07-31 15:29:09 +01:00
Gaurav Rastogi
69c4f90f7d New Module: Manage Avi Networks VRF Context Objects (networks/avi/avi_backup) (#26204) 2017-07-31 15:23:28 +01:00
Gaurav Rastogi
202cbd3421 New Module: Manage Avi Networks Serviceengine (network/avi/avi_serviceengine) (#26210) 2017-07-31 15:22:16 +01:00
Gaurav Rastogi
51ff3dba68 New Module: Manage Avi Networks IPAM DNS provider profiles (network/avi/avi_ipamdnsproviderprofile) (#26207) 2017-07-31 15:21:06 +01:00
Gaurav Rastogi
1e6fd571e1 New Module: Manage Avi Networks Cluster objects (networks/avi/avi_cluster) (#26205) 2017-07-31 15:14:28 +01:00
Gaurav Rastogi
0424919fe6 New Module: Manage Avi Networks AlertSyslogConfig (network/avi/avi_alertsyslogconfig) (#26215) 2017-07-31 15:12:53 +01:00
Gaurav Rastogi
1da76772f8 New Module: Manage Avi Networks AlertScriptConfig (network/avi/avi_alertscriptconfig) (#26214)
* New Module: Manage Avi Networks AlertScriptConfig (network/avi/avi_alertscriptconfig)

* updated example to not include python import as it fails sanity test
2017-07-31 15:12:15 +01:00
Gaurav Rastogi
d2ec5462bc New Module: Manage Avi Networks AlertEmailConfig (network/avi/avi_alertemailconfig) (#26213) 2017-07-31 15:11:24 +01:00
Gaurav Rastogi
2589d640dd New Module: Manage Avi Networks AlertConfig (network/avi/avi_alertconfig) (#26212) 2017-07-31 15:08:05 +01:00
Gaurav Rastogi
a8caff169e New Module: Manage Avi Networks ActionGroupConfig (network/avi/avi_actiongroupconfig) (#26211) 2017-07-31 15:07:42 +01:00
John R Barker
66adb3d993 Correctly reference variables (#27486) 2017-07-31 14:26:15 +01:00
Martin Krizek
19d119f43c Pass server_hostname from task to subscription-manager (#27420) 2017-07-31 09:15:15 -04:00
saichint
350018de73 nxos_vxlan_vtep fixes and integration tests (#27405)
* fix issue 27404

* conflict resolve
2017-07-31 08:37:31 -04:00
Dag Wieers
97aaf103e8 ACI module_utils library for ACI modules (#27070)
* ACI module_utils library for ACI modules

This PR includes:
- the ACI argument_spec
- an aci_login function
- an experimental aci_request function
- an aci_response function
- included the ACI team

* New prototype using ACIModule

This PR includes:
- A new ACIModule object with various useful methods
2017-07-31 12:44:27 +01:00
Abhijeet Kasurde
e419a55c71 Add correct URL for docker guide (#27465)
Fixes : #27463

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-30 10:08:43 +01:00
Toshio Kuratomi
4109a82d0a remove wildcards and add boilerplate
* cloud/centurylink
* source_control
* cloud/google
* notification
* cloud/rackspace
* cloud/vmware
2017-07-29 14:13:30 -07:00
Toshio Kuratomi
9a55487dff Remove get_exception usage from amazon modules 2017-07-29 07:02:12 -07:00
Toshio Kuratomi
8de6cff2b1 more wildcards 2017-07-29 07:02:12 -07:00
Toshio Kuratomi
1ee08c0f06 Get rid of more wildcard imports and add boilerplate to more modules
This commit cleans up the following module categories:
* messaging
* inventory
* crypto
* commands
* clustering
* cloud/webfaction
* cloud/docker
* cloud/digital_ocean
2017-07-29 07:02:12 -07:00
Toshio Kuratomi
4e6cce354e Remove wildcard imports
Made the following changes:

* Removed wildcard imports
* Replaced long form of GPL header with short form
* Removed get_exception usage
* Added from __future__ boilerplate
  * Adjust division operator to // where necessary

For the following files:

* web_infrastructure modules
* system modules
* linode, lxc, lxd, atomic, cloudscale, dimensiondata, ovh, packet,
  profitbricks, pubnub, smartos, softlayer, univention modules
* compat dirs (disabled as its used intentionally)
2017-07-28 22:10:17 -07:00
Toshio Kuratomi
0a2cdb2585 New tests for copy recursive with absolute paths
Absolute path trailing slash handling in absolute directories

find_needle() isn't passing a trailing slash through verbatim.  Since
copy uses that to determine if it should copy a directory or just the
files inside of it, we have to detect that and restore it after calling
find_needle()

Fixes #27439
2017-07-28 21:00:51 -07:00
giovannisciortino
7cfd02097c add_hosts.py: Fix add_host does not recognise 'host' alias (#27418)
* add_hosts.py: Fix add_host does not recognise 'host' alias

* add_hosts.py: add note in documentation that 'hosts' alias of name parameter is only available on >=2.4
2017-07-28 17:35:20 -04:00
Adrian Likins
934b645191 Support multiple vault passwords (#22756)
Fixes #13243

** Add --vault-id to name/identify multiple vault passwords

Use --vault-id to indicate id and path/type

 --vault-id=prompt  # prompt for default vault id password
 --vault-id=myorg@prompt  # prompt for a vault_id named 'myorg'
 --vault-id=a_password_file  # load ./a_password_file for default id
 --vault-id=myorg@a_password_file # load file for 'myorg' vault id

vault_id's are created implicitly for existing --vault-password-file
and --ask-vault-pass options.

Vault ids are just for UX purposes and bookkeeping. Only the vault
payload and the password bytestring is needed to decrypt a
vault blob.

Replace passing password around everywhere with
a VaultSecrets object.

If we specify a vault_id, mention that in password prompts

Specifying multiple -vault-password-files will
now try each until one works

** Rev vault format in a backwards compatible way

The 1.2 vault format adds the vault_id to the header line
of the vault text. This is backwards compatible with older
versions of ansible. Old versions will just ignore it and
treat it as the default (and only) vault id.

Note: only 2.4+ supports multiple vault passwords, so while
earlier ansible versions can read the vault-1.2 format, it
does not make them magically support multiple vault passwords.

use 1.1 format for 'default' vault_id

Vaulted items that need to include a vault_id will be
written in 1.2 format.

If we set a new DEFAULT_VAULT_IDENTITY, then the default will
use version 1.2

vault will only use a vault_id if one is specified. So if none
is specified and C.DEFAULT_VAULT_IDENTITY is 'default'
we use the old format.

** Changes/refactors needed to implement multiple vault passwords

raise exceptions on decrypt fail, check vault id early

split out parsing the vault plaintext envelope (with the
sha/original plaintext) to _split_plaintext_envelope()

some cli fixups for specifying multiple paths in
the unfrack_paths optparse callback

fix py3 dict.keys() 'dict_keys object is not indexable' error

pluralize cli.options.vault_password_file -> vault_password_files
pluralize cli.options.new_vault_password_file -> new_vault_password_files
pluralize cli.options.vault_id -> cli.options.vault_ids

** Add a config option (vault_id_match) to force vault id matching.

With 'vault_id_match=True' and an ansible
vault that provides a vault_id, then decryption will require
that a matching vault_id is required. (via
--vault-id=my_vault_id@password_file, for ex).

In other words, if the config option is true, then only
the vault secrets with matching vault ids are candidates for
decrypting a vault. If option is false (the default), then
all of the provided vault secrets will be selected.

If a user doesn't want all vault secrets to be tried to
decrypt any vault content, they can enable this option.

Note: The vault id used for the match is not encrypted or
cryptographically signed. It is just a label/id/nickname used
for referencing a specific vault secret.
2017-07-28 15:20:58 -04:00
James Mighion
a328e96455 Adding aireos_config module (#27408)
* Adding aireos_config module.

* Fixing pep8 W291.
2017-07-29 00:36:04 +05:30
Toshio Kuratomi
cce06c5a3b Fix _get_file_contents to return bytes and checking that a different file exists than it opens 2017-07-28 11:07:43 -07:00
fredericve
095560771c Fixes #17958: use stderr instead of the default stdout for fatal errors (#17962)
* add a callback plugin that sends failures to stderr

* fix warnings
2017-07-28 10:50:15 -07:00
Ganesh Nalawade
43bd993fac Fix fetch configuration in junos_command (#26392)
* Fix fetch configuration in junos_command

Fixes #26358 Add support to fetch configuration
from device in `xml`, `text`, `json`, `set` display
format.

* Add error message if set display is not supported

* Throw error in case of warning for show commands
2017-07-28 23:06:21 +05:30
Mike Wiebe
07b097af7c Fix nxos portchannel force option (#27190)
* Add integration tests

* Fix force option

* Enable nxos_portchannel test

* Satisfy ansibot demands
2017-07-28 13:06:41 -04:00
Nathaniel Case
fb2b3de5e4 Fix nxos_vtep_vni typo 2017-07-28 13:04:08 -04:00
Marko Stanković
0ebc80cbd6 Fix a typo in win_iis_webapplication.ps1 (#27417)
introduced with https://github.com/ansible/ansible/pull/26082/files#diff-bd862e2bbcb44c9c332df7b6cacf6adaR74
2017-07-28 17:24:08 +01:00
David Newswanger
c594f1e1c9 fixed nontype error (#27428) 2017-07-28 21:50:09 +05:30
David Newswanger
3b1f2aeb16 Iosxr attribute error #27122 (#27425)
* WIP fixing iosxr_logging idempotency

* remove debug stuff from module, add teardown section to start of test
2017-07-28 20:07:34 +05:30
Martin Krizek
36c6d0f748 fetch: fail if flat=yes and dest=existing-dir w/o trailing slash 2017-07-28 09:53:50 -04:00
Trishna Guha
6d1bd33aa5 fix iosxr_banner (#27378)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-07-28 17:09:04 +05:30
Simon Dodsley
26c9007c2d Add Pure Storage Volume module (#26357)
Update documentation to fix typos and define the extend feature
Force size to be a required variable on create as requested.
Change type to bool
2017-07-28 11:24:31 +01:00
Sloane Hertel
91781487ab aws_kms: don't append to unicode - fixes #25786 (#27352)
* AWS key management service fix; statement may not have a principal, and if there is only one AWS principal it will not be a list as expected. Fixes 25786.

* remove len(), only catch exception in function for json.dumps() failure

* use a defined variable and make formatting python 2.6 compatible
2017-07-28 19:36:37 +10:00
Yanis Guenane
9e41fd399b Removing openssl_publickey from pep8 legacy files (#27414) 2017-07-28 11:10:02 +02:00
Trishna Guha
a49c419651 fix nxos_vrf_af nxapi & cli (#27307)
* fix nxapi failure #27142

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* fix nxos_vrf_af nxapi and cli

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-07-28 09:02:02 +05:30
Matt Clay
51bd07204b Revert "Revert "Allow ini plugin to load file using other encoding than utf8." (#27407)"
This reverts commit 520696fb39.
2017-07-27 18:15:56 -07:00
Toshio Kuratomi
520696fb39 Revert "Allow ini plugin to load file using other encoding than utf8." (#27407)
* Revert "Update conventions in azure modules"

This reverts commit 30a688d8d3.

* Revert "Allow specific __future__ imports in modules"

This reverts commit 3a2670e0fd.

* Revert "Fix wildcard import in galaxy/token.py"

This reverts commit 6456891053.

* Revert "Fix one name in module error due to rewritten VariableManager"

This reverts commit 87a192fe66.

* Revert "Disable pylint check for names existing in modules for test data"

This reverts commit 6ac683ca19.

* Revert "Allow ini plugin to load file using other encoding than utf8."

This reverts commit 6a57ad34c0.
2017-07-27 17:08:31 -07:00
Toshio Kuratomi
30a688d8d3 Update conventions in azure modules
* Remove wildcard imports
* Update GPL header to the one-line form
* Add from __future__ imports
2017-07-27 15:37:26 -07:00
Toshio Kuratomi
6456891053 Fix wildcard import in galaxy/token.py 2017-07-27 15:37:26 -07:00
Yannig Perré
6a57ad34c0 Allow ini plugin to load file using other encoding than utf8.
- New option for ini plugins: encoding
  - Add a new option encoding to _get_file_contents
  - Use replace option in test/runner/lib/util.py when calling decode on stdout/err
    output when diff have non-utf8 sequences
2017-07-27 14:20:18 -07:00
Josh Bradley
31b27819e1 adding lookup plugin for chef_databags (#18403)
* adding lookup plugin for chef_databags

* add missing classes for code-smell
2017-07-27 16:42:32 -04:00
mzizzi
9817ec84a0 [cloud] cast tag values to strings in ansible_dict_to_boto3_tag_list utility (#27396)
* ansible_dict_to_boto3_tag_list cast tag values to string

* ansible_dict_to_boto3_tag_list cast with to_native
2017-07-27 16:15:05 -04:00
David Newswanger
81151ef02c Remove Deprecated Template network modules (#27076)
* removed deprecated networking template modules

* update changelog

* update changelog
2017-07-27 19:40:11 +01:00
mesk41in
0fb64214a4 add support of nested groups in group_by 2017-07-27 11:37:34 -04:00
Trishna Guha
7351ee9a76 fix nxos_interface multiple issues (#27106)
* fix execute_show_command

* fix pep8 issues

* fix AttributeError #26562

* legacy-file remove

* modify execute_show_command output

* fix admin_state up doc

* fix admin_state for all interfaces doc

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-07-27 19:23:35 +05:30
saichint
9b9a8749da Add integration tests and fix nxos providers (#26913)
* fix issues with python3.x

* Add integration testa and fix for nxos_evpn_vni

* add nxos_evpn_vni to nxos.yaml

* fix get_vtp_config()

* add new integration tests

* fix rollback

* add integration test files
2017-07-27 09:32:35 -04:00
Nathaniel McAuliffe
c94c2831da extracting list from CustomerGateways to match create (#24897)
* Limiting CustomerGateway to dictionary within list of CustomerGateways

* Copying CustomerGateways[0] to CustomerGateway only if it exsits
2017-07-27 09:12:20 -04:00
Trishna Guha
2eaf3571f3 fix state absent nxos_hsrp (#27366)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-07-27 14:28:46 +05:30
Anil Kumar Muraleedharan
81a9dada1c Added no shutdown command to list (#27360) 2017-07-27 09:53:46 +01:00
Evan Kaufman
589e8fd6bc Added warning for cron jobs containing line breaks (#19184)
Fixes ansible/ansible-modules-core#4312, moved from ansible/ansible-modules-core#4488
2017-07-27 02:19:36 -04:00
Dan O'Brien
d2f34754b2 fixing defaults (#23874)
* fixing defaults

* setting default to null

* setting default values back to null, remove backupsenabled(never used)

* fixing code smell

* whitespace, remove required statement

* doc changes
2017-07-26 21:12:15 -07:00
acrewdson
0f2b3d55b4 'Response' makes more sense here than 'request' 2017-07-26 16:35:49 -07:00
Matt Davis
3f1ec6b862 add custom module type validation (#27183)
* Module argument_spec now accepts a callable for the type argument, which is passed through and called with the value when appropriate. On validation/conversion failure, the name of the callable (or its type as a fallback) is used in the error message.
* adds basic smoke tests for custom callable validator functionality
2017-07-26 16:12:50 -07:00
Matt Davis
53ebe8d441 coerce azure securitygroup priority to int (#27354)
* fixes #22686
* would be better served in the future by using subspec, but it's in too much flux right now
2017-07-26 16:09:31 -07:00
mdawid92
bfdf85e002 [cloud] IAM module returns created keys (#21237)
* return new key, porting https://github.com/ansible/ansible-modules-core/pull/3385/ by defionscode

* fix python3 compatibility

* fixed indentation

* added user_meta field
2017-07-26 16:24:29 -04:00
Brian Coca
b93b9e68d7 ensure prefix in plugin loading to avoid conflicts
when using 'all' to load all plugins were ending in main namespace
creating conflicts with each other and random modulesr
 i.e. when trying to access json callback we were getting json 'parsing' lib
2017-07-26 11:54:13 -04:00
Trishna Guha
498bf4b5be change collection to aggregate (#27325)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-07-26 20:36:56 +05:30
Martin Krizek
119c9e5d6e Fix using DNF group upgrade/remove api 2017-07-26 07:39:26 -07:00
David Newswanger
8643e9cb34 changed collection arg to argregate on 2.4 network modules (#26649)
* changed collection arg to argregate on 2.4 network modules

* replace users with aggregate in eos_user, junos_user, nxos_user

* added version_added to places where we replaced users with aggregate in the docs

* fix ios_static_route test

* update tests to reference aggregate instead of collection/users
2017-07-26 10:09:17 -04:00
Pilou
9d771f6eea filesystem: workaround bug in xfs_info, use xfs_growfs instead (#25703)
xfs_info is a bash script located in /usr/sbin/ (/sbin is a symlink to
/usr/sbin/) which calls xfs_growfs command. When neither /sbin nor
/usr/sbin are in the PATH environment variable, filesystem module is able to
call xfs_info because /sbin path is hardcoded in get_bin_path method, then
xfs_growfs isn't found because neither /sbin nor /usr/sbin are in the
PATH environment variable.

"xfs_growfs -n" could be used directly instead of xfs_info, the man page
states that: "xfs_info is equivalent to invoking xfs_growfs with the -n
option".

Fixes #24823.
2017-07-26 08:47:12 -04:00
René Moser
bb5b1680f8 composer: docs: fix conflicting statement about defaults (#27313) 2017-07-26 12:43:13 +02:00
Abhijeet Kasurde
b2d609b6f1 Add testcase for ipify_facts (#26421)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-26 12:16:10 +02:00
Rene Moser
e2914a45e1 cloudstack: make facts run in check mode 2017-07-26 11:55:53 +02:00
René Moser
c16b1844a9 cloudstack: cs_facts: add option for custom meta data host (#27290) 2017-07-26 11:49:15 +02:00
Arthur Burkart
90a42d1e53 Updates docs to match module behavior (#26658)
* Updates docs to match module behavior

* Updates docs to match module behavior

Updated using advice from jimi-c

* Removes snippet about git module before v1.8.3

At suggestion of robinro
2017-07-25 23:21:23 -07:00
Trishna Guha
41ce724801 fix nxos_hsrp (#27306)
* fix nxos_hsrp

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* modify nxos_hsrp test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
2017-07-26 11:38:55 +05:30
Samuel Boucher
5fbd42eca5 Update svc.py
Killed is a valid state
2017-07-25 22:07:51 -04:00
Toshio Kuratomi
225fa5d092 Fix undefined variables, basestring usage, and some associated python3 issues 2017-07-25 15:58:23 -07:00
Toshio Kuratomi
9f7b0dfc30 Remove automatic use of system six
* Enable the pylint no-name-in-module check.  Checks that identifiers in
  imports actually exist.  When we do this, we also have to ignore
  _MovedItems used in our bundled six.  This means pylint won't check
  for bad imports below ansible.module_utils.six.moves but that's
  something that pylint punts on with a system copy of six so this is
  still an improvement.
* Remove automatic use of system six.  The exec in the six code which
  tried to use a system library if available destroyed pylint's ability
  to check for imports of identifiers which did not exist (the
  no-name-in-module check).  That test is important enough that we
  should sacrifice the bundling detection in favour of the test.
  Distributions that want to unbundle six can replace the bundled six in
  ansible/module_utils/six/__init__.py to unbundle.  however, be aware
  that six is tricky to unbundle.  They may want to base their efforts
  off the code we were using:

  2fff690caa/lib/ansible/module_utils/six/__init__.py

* Update tests for new location of bundled six Several code-smell tests
  whitelist the bundled six library.  Update the path to the library so
  that they work.

* Also check for basestring in modules as the enabled pylint tests will
  also point out basestring usage for us.
2017-07-25 15:58:23 -07:00
Jason Tibbitts
ccce74cf7b Avoid using deprecated group_install API
DNF's base.group_install() function accepts a string as its first
argument.  Prior to DNF-2, compatibility code existed which allowed this
function to accept a base.comps.Group object instead.  That is no longer
possible.

Pass "group.id" to base.group_install() instead of "group" to work
around this.
2017-07-25 15:34:22 -07:00
Abhijeet Kasurde
1c87721a86 Add missing import for basic_auth_argument_spec (#27207)
Fix adds a missing import for basic_auth_argument_spec in
netapp module_utils.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-26 07:05:13 +10:00
Brian Coca
4fba9bf23b revert action loader changes to doc, due to error
restoring behaviour in which a missing module is a warning that shows paths searched,
patch incorrectly bypassed detection and ended up in an exception: global name 'module' is not defined
2017-07-25 16:33:30 -04:00
Michael Scherer
4811c7f117 Permit to have a action plugin without a empty module file
Currently, someone writing a action plugin will also need
to have a empty file in the module path to avoid triggering
the error "no action detected in task.".
2017-07-25 15:11:56 -05:00
Toshio Kuratomi
0d290bddda Port cs_facts to the ansible 2.4 facts API (#27257)
* Port cs_facts to the ansible 2.4 facts API

Fixes #27256
References #27254
2017-07-25 12:08:54 -07:00
Toshio Kuratomi
197a360977 Fix undefined vars on python3 and a whole bunch of other cleanup. (#27202)
* Fix undefined vars on python3 and a whole bunch of other cleanup.

References #27193

* No need to catch exception and reraise.  This just obfuscates the traceback
* Build up a list and then join at the end instead of building up a string. list.append() is faster than string concatenation
* No need to extract k, v pairs from one dict to make a second dict and then extract k, v pairs from the second dict.  Iterate over the k, v pairs extracted from the first dict directly instead of building the second dict.
* No need to check if the dict is empty before iterating on it.  Iterating on an empty dict will automatically go to the end of the loop
* Use isinstance instead of type(obj) is class, handles inheritance and is better style
* use to_native instead of v.encode().  We can use the surrogate_or_strict error handler to deal with more potential tracebacks.  Does the right conversion on both Py2 and Py3.
* Convert bool to string before combining it with the string we're building.
* Don't reference unicode directly as unicode does not exist in Python3
* The string resulting from this function will not have a trailing comma
* Simplify the conversion to string int and bool values are now used in string formatting which will use str to transform them without an explicit invocation.
2017-07-25 10:51:53 -07:00
René Moser
a566a7ea2e cloud: cs_user: add feature keys handling (#27285) 2017-07-25 18:07:58 +02:00
Ricardo Carrillo Cruz
3a3bdde869 Fix multiple code and test issues on iosxr (#27267)
* Fix multiple code and test issues on iosxr

It passes the integration tests now.
Fixes #27123

* Fix pep8 issue

* Fix unit tests
2017-07-25 17:21:53 +02:00
TSDominguez
b9a2dc979f Add dist-upgrade and extra_args to zypper module (#21313)
* Implement state='dist-upgrade'

Implements `zypper dist-upgrade` for the zypper module. This follows
how `zypper upgrade` is invoked, except `state='dist-upgrade'`.

Setting name to anything other than '*' would cause the module to error
out. `dist-upgrade` affects all packages and would not make sense to
apply to a specific package.

* Implement option extra_args

Add option to append additional arguments to zypper command. This
should be able to accommodate other options that are not (yet) covered
by zypper module.

Arguments are given as if written in the command line, complete with
dashes.
2017-07-25 11:12:29 -04:00
Abhijeet Kasurde
dfb97b2728 Remove excessive imports from cloudformation_facts (#27209)
Fix removes excessive imports from cloudformation_facts module.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-25 10:53:17 -04:00
James Cammarata
df8fde4d78 Add cookie parsing to fetch_url/open_url
This patch adds cookie parsing to the fetch_url/open_url module_utils
method. The overall result will still contain the key `set_cookie`, however
an additional key (`cookies`) will also be present. This new field is a
dictionary of values. Overall, this should make looking for individual
cookies in the response much easier, as currently the `set_cookie` field
is an amalgamation of the returned set-cookie headers and can be somewhat
difficult to parse.
2017-07-25 10:16:34 -04:00
Eric Johnson
09e9203844 [google] adding a GCE labels module 2017-07-25 09:36:33 -04:00
Yanis Guenane
35ba6d469e openssl_publickey: Standardize implementaton of the module
The OpenSSLObject class has been merged[1]. This commit makes the
openssl_publickey rely on this class and standardize the way openssl
module should be written.

[1] #26945
2017-07-25 15:31:11 +02:00
Yanis Guenane
d72ac0b391 openssl_privatekey: Standardize implementaton of the module
The OpenSSLObject class has been merged[1]. This commit makes the
openssl_privatekey rely on this class and standardize the way openssl
module should be written.

Co-Authored-By: Christian Pointner <cpointner@mgit.at>

[1] https://github.com/ansible/ansible/pull/26945
2017-07-25 15:31:11 +02:00
Toshio Kuratomi
8b34e31e05 Remove the error checking from apply_patch()
The error checking would itself cause a traceback.  The load_config()
function that we'd need to check for errors from only returns None so
there's no way to check for errors via the return value.  In the future
someone could rewrite the load_config function to return useful
information and restore the error checking but for now this is better as
it won't traceback on success and it will let us turn on static analysis
of undefined variables

Fixes #27255
References #27254
2017-07-25 06:12:44 -07:00
Trishna Guha
703eea3da2 eos_logging implementation module (#27093)
* eos_logging implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* eos_logging integration test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* modify aggregate args logic

* changed collection to aggregate

* add blankline

* handle size value outside method
2017-07-25 18:16:04 +05:30
Philippe Dellaert
c00554735f New module: management of the Nuage Networks VSP SDN solution (network/nuage/nuage_vspk) (#24895)
* Nuage module and unit tests with requested changes

* Cleanup of imports

* Adding check on python version

* Adding import try and catch wrappers

* Cleanup of requirements and adding integration tests

* Using pypi package for simulator

* Cleanup of requirements and adding integration tests

* Adding aliases for integration tests

* Adding module to import sanity test skip list

* Revert "Adding module to import sanity test skip list"

This reverts commit eab23af8c5.

* Adding check for importlib and cleanup of requirements
2017-07-25 12:35:03 +01:00
Trishna Guha
e37e736ddb nxos_logging implementation module (#26949)
* nxos_logging implementation module

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* pep8 fixes

* nxos_logging integration test

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* test typo fix

Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>

* idempotent fix

* rename feature to facility

* make dest_group global var

* remove str from arg_spec
2017-07-25 17:03:54 +05:30
Yanis Guenane
8b22c45a45 Enable integration tests for the crypto/ namespace (#26684)
Crypto namespace contains the openssl modules. It has no integration
testing as of now.

This commits aims to add integration tests for the crypto namespace.
This will make it easier to spot breaking changes in the future.

This tests currently apply to:

  * openssl_privatekey
  * openssl_publickey
  * openssl_csr
2017-07-25 12:18:18 +01:00
René Moser
b3e8fa72ce cloudstack: cs_cluster: remove duplicate code error handling (#27261) 2017-07-25 11:33:58 +02:00
Sloane Hertel
495f91158c fix RETURN docs 2017-07-25 05:21:58 -04:00
Constantin Bugneac
aa341edf4c rds.py - added more attributes to the returned output 2017-07-25 05:21:58 -04:00
Toshio Kuratomi
b26ee657b5 Fix for nonutf8 filenames causing crashes when setting permissions
Fixes #23861
2017-07-25 00:16:30 -07:00
Toshio Kuratomi
035be94271 Fix cloudformation module for import of non-module_utils file 2017-07-24 18:19:32 -07:00
Toshio Kuratomi
59fa35446b Fix undefined vars in cnos module_utils
Fixing undefined vars across the codebase so that we can have pylint
catch them on every commit.

Some of the changes to this module_utils file are Python3 related => The
identifiers exist on python2 but not on Python3.  The changes should be
portable to both py2 (2.6+) and py3.

References #27193
2017-07-24 15:00:49 -07:00
Toshio Kuratomi
84285a741c Various fixes to ec2_vpc_dhcp_options module
* Stringify exception with a nicer error and include traceback
* Give a nice message if boto is not installed
* Fix undefined vars.  Cleaning up all undefined variables so that we
  can run static analysis on new commits.

  References #27193
2017-07-24 14:59:19 -07:00
bfloyd89
1f637f06a5 Make lambda_event.py python 2.6 compatible (#27241)
"Changed in version 2.7: The positional argument specifiers can be omitted, so '{} {}' is equivalent to '{0} {1}'."
2017-07-24 17:01:19 -04:00
Brian Coca
96d577c4c9 endswith supports tuples, nicer 2017-07-24 16:49:01 -04:00
Brian Coca
c7e841e0e4 better reading of 'facts' 2017-07-24 16:35:24 -04:00
Rob
3401a4b330 Rename classic elb modules to match new names applied to application LB modules (#25745) 2017-07-24 16:28:02 -04:00
Toshio Kuratomi
f22c04fa1e leftover from porting become to v2 that's unused
The set_become_default() function is not needed.  All this time, if it
was called it would try to set a value on a passed by value variable
(meaning that it had no effect after returning to the caller).  Since
become has been working in v2, this code is not needed.  Removing.
2017-07-24 10:12:17 -07:00
Toshio Kuratomi
6220c4aea1 Some enhancements to the symbolic_modes change
* Mark _symbolic_mode_to_octal and helper functions as classmethod and staticmethod
  These helpers should be made toplevel functions in their own module.
  For now, make them staticmethod/classmethod so that they can be used
  (and tested) without instantiating an AnsibleModule.
* Move regex compilation out of loops
* Get rid of python-2.4 compat
2017-07-24 10:08:51 -07:00
Dag Wieers
a5eea9042e vmware_host: Small fixes and docs updates (#25144)
* vmware_host: Small fixes and docs updates

This PR includes:
- A fix to no longer require a datacenter folder for adding a host
- Documentation improvements
- Ensure imports are specific

* Update vmware_host

Fix adds following:
* Update logic in vmware_host
* Update example documentation
* Added test case for vmware_host

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-24 13:02:58 -04:00
Abhijeet Kasurde
9649195c26 Refactor getvm method (#27188)
Fix refactors getvm method and modules which are using it.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-07-24 12:51:26 -04:00
Toshio Kuratomi
fc5d71de0d Fix for to_text and to_bytes error handlers
* surrogate_then_strict doesn't exist.  Switch to surrogate_or_strict
  instead.
* Found some bugs in the _text.py implementation
  * The composed error handlers (error handlers which are made up of two
    or more python encoding error handlers) had a wrong string in it,
    'surrogate_or_escape' doesn't exist.  Replaced that with
    'surrogate_or_replace' which is the correct handler name.
  * Left comment about the implicit conditions that are part of the
    surrogate_then_replace code path

Fixes #23865
Fixes #23861
2017-07-24 09:19:04 -07:00
Toshio Kuratomi
aa9941aaf7 Fix legacy su handling (bad conditional would not fire at the right time) 2017-07-24 10:49:41 -04:00
Toshio Kuratomi
06617548ed Fix undefined vars in network module_utils
References #27193
2017-07-24 07:49:26 -07:00
Ton Kersten
134852e686 #14634: symbolic permissions error (#14994)
This fixes the symbolic notation of the chmod modes, as stated in the man page of chmod (in Linux). This also takes into account that chmod a+x is different from chmod +x. As the second one should take the current umask into account.

Fixes #14634
2017-07-24 06:33:56 -07:00