Commit Graph

17283 Commits (6d402de25e32373298cd021007ec676eb77b51f5)

Author SHA1 Message Date
kwerey 668092e95a [cloud] Add support for AWS China to elasticache_subnet_group role (#24286) 9 years ago
kwerey 6f66e88bd8 [cloud] Use boto connect_to_region so Elasticache works in AWS China (#24250) 9 years ago
Will Thames 6e13e3918f [cloud] Update VPC configuration for existing lambda (#24368)
If a lambda exists but does not have a VPC configuration,
add the VPC configuration when it's present in the ansible
parameters.

Prior to this change, setting VPC configuration on a lambda
that did not have any VPC configuration would ignore that config.
9 years ago
Ondra Machacek 4d890c1e9f cloud: ovirt change URL in documentation (#24438) 9 years ago
Ganesh Nalawade f5d865a208 Fixes #24251 save config only if it is changed (#24345)
* Fixes #24251 save config only if it is changed

Save to startup configuration only when it is different
from running configuration.

* Fix unit test issue
9 years ago
Dag Wieers c6533d4da9 utils/unicode: PEP8 compliancy (#24668)
- Make PEP8 compliant
9 years ago
Nathaniel Case f240ba6b60 nxos_bgp_neighbor cleanup (#24446) 9 years ago
Nathaniel Case ea2569db92 Workaround for unicast RPF check (#24519) 9 years ago
Dag Wieers d07f18fbb9 module_utils/rax: Small parameter cleanup (#24664)
Nothing really fancy.

- Removing boolean choices
- Use path-type for credentials
9 years ago
Lujeni a3a0742ce5 Add new aws module - iam_cert_facts (#24451) 9 years ago
Jimmy Conner 2380e50408 vmware_guest: Add support for Linked Clones (#23284)
* vmware_guest: Add support for Linked Clones

* Resolve PEP8 Issues

* Change snapshot_name to snapshot_src

* Add additional option 'snapshot_linked' to specify whether to use a linked clone or not

* Changed snapshot_linked parameter to "linked_clone"

* Remove unnecessary conditional
9 years ago
Dag Wieers 61d68275e8 module_utils/asa: PEP8 compliancy (#24655)
- Make PEP8 compliant
9 years ago
Justin Menga 8dae2ea869 Cast CloudFormation parameter values to string - fixes #23593 (#24182) 9 years ago
Abhijeet Kasurde e9672748cc Add archive option in git plugin (#23332)
* Add archive option in git plugin

This fix will add archive option in git plugin

Fixes https://github.com/ansible/ansible/issues/22943

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

* Update code as per code review comments

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Monty Taylor 91969b8c67 Actually protect against use_default_subnetpool
We have a protection against a user setting use_default_subnetpool in
their playbook - but then we sure do pass the kwarg anyway. Maybe let's
not do that.
9 years ago
Abhijeet Kasurde 764b4b20ec Fix UnboundLocalError in basic.py
* Fix for UnboundLocalError while accessing deprecations
  in result
* Add Unit test

Fixes #24592

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Ryan S. Brown 6141818110 [cloud] Document stage option on `serverless` module 9 years ago
René Moser 3ca3163af1 cloudstack: add new module cs_network_acl (#24609) 9 years ago
Jonathan Davila 6410e13903 Fix bug in iam_role (#22618) 9 years ago
Mohammed Naser f9b4499082 Set facts type to dict
With newer versions of ansible, module arguments are assumed to
be strings unless otherwise specified.  Our 'facts' argument is
expected to be a dictionary, so tell ansible that.

Without this, the argument will arrive as a string and be written
to the facter file inside string quotes.  Facter will produce the
following error:

  undefined method `each' for #<String:0x000000016ee640>

This was originally fixed and found in the Ansible Puppet role which
is maintained by the OpenStack infrastructure team.

8d0f0bfd0a
9 years ago
René Moser 19e7abb971 cloudstack: return known used resources in fail_json (#24575) 9 years ago
Toshio Kuratomi 84a59e472b Be explicit about pickle protocol and encoding (#24454)
On Python3 and Python2 use pickle slightly differently so we need to be
explicit about some things.

If pickles could be shared between python2 and python3, as in
ansible-connection and the pickle cache, we need to specify the protocol
to use when dumping and the encoding to use for byte strings when
loading.

The dumping protocol needs to be no higher than 2 as python-2 only
supports up to protocol 2.  The encoding should usually be 'bytes' so
that python2 str type becomes python3 bytes type.  However, doing this
means that we must make sure that the objects being serialized properly
make their strings into text strings except when they're supposed to be
bytes.  If strings are improperly byte strings, they may cause
tracebacks on the receiving end
9 years ago
Sloane Hertel 822fcc566e [cloud] Stop ec2_group module from authorizing duplicate rules (#24528) 9 years ago
Kevin Howell 65f0668475 Add pool_ids option to redhat_subscription (#23266) 9 years ago
Chris Alfonso 8c0faa2ebf Revert "[WIP]Fortios address group" (#24549)
* Revert "Add check for processor_core value"

This reverts commit 8ad182059d.

* Revert "Fix for persistent connection plugin on Python3 (#24431)"

This reverts commit d834412ead.

* Revert "removing folded style formatting for synopsis (#22746)"

This reverts commit e539726543.

* Revert "[WIP]Fortios address group (#21831)"

This reverts commit f2dbf512cb.
9 years ago
Abhijeet Kasurde 8ad182059d Add check for processor_core value
Fixes #21893

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Toshio Kuratomi d834412ead Fix for persistent connection plugin on Python3 (#24431)
Fix for persistent connection plugin on Python3.  Note that fixes are also needed to each terminal plugin.  This PR only fixes the ios terminal (as proof that this approach is workable.)  Future PRs can address the other terminal types.

* On Python3, pickle needs to work with byte strings, not text strings.
* Set the pickle protocol version to 0 because we're using a pty to feed data to the connection plugin.  A pty can't have control characters.  So we have to send ascii only.  That means
only using protocol=0 for pickling the data.
* ansible-connection isn't being used with py3 in the bug but it needs
several changes to work with python3.
* In python3, closing the pty too early causes no data to be sent.  So
leave stdin open until after we finish with the ansible-connection
process.
* Fix typo using traceback.format_exc()
* Cleanup unnecessary StringIO, BytesIO, and to_bytes calls
* Modify the network_cli and terminal plugins for py3 compat.  Lots of mixing of text and byte strings that needs to be straightened out to be compatible with python3
* Documentation for the bytes<=>text strategy for terminal plugins
* Update unittests for more bytes-oriented internals

Fixes #24355
9 years ago
Eric Beahan e539726543 removing folded style formatting for synopsis (#22746) 9 years ago
Benjamin Jolivot f2dbf512cb [WIP]Fortios address group (#21831)
* New module fortios_address_group

* Fix issue when fortigate don't contain any address group

* Add alias & change member from str to list type

* Fix pep8

* Fix aliases format in doc

* Fix pep8

* Remove duplicate arg spec with module_utils/fortios.py

* Change string format for better compat + better exception catching + cosmetic changes

* Use set, specify exception, RE pattern one time...

* fix pep8
9 years ago
Ilya Drey 62b8813873 Improving nxos_ip_interface module (#21353)
* Improving of nxos_ip_interface module

Added features:

  * Route tags for an IP address at interface level with 'tag' option
  * Support of IPv4 secondary addresses if option 'allow_secondary' is
true (false by default). If option 'allow_secondary' is true primary
IPv4 address will be replaced

All features support NXAPI and CLI transport, but only with text/raw
output. Currently not possible to get route tags for secondary IPv4/IPv6
addresses from JSON output.

Other changes:
  * Module return state 'changed' only when configuration commands were
executed
  * Module result includes multiple prefixes if IPv4 addresses were
found

* Fix PEP8 issues

* Addition fix of PEP8 issues

* Remove unused variable from main()

* Fix "proposed" sample in RETURN variable

* Fix "existing" sample in RETURN variable

* Update RETURN variable

Add 'secondary' for every element of 'addresses' list.

* Restore old version number

* Added exception when ipaddress module is imported

* DOCUMENTATION string was updated

  * Added 'version_added' for new features
  * Added 'requirements' for module

* Added compatibility with latest commit in devel branch

* DOCUMENTATION was fixed
* Improve changes of route tag for existing ip addresses
* Added compatibility with core code

* Fixed mistypes in the DOCUMENTATION variable

* argument_spec fixed

allow_secondary argument type was changed according to allowed choices.
9 years ago
Gabriele 78ed0cadea Fixing nxos_ntp (#20651)
* Fixing nxos_ntp

* Fixing style issues
9 years ago
Jan-Piet Mens 0e0e5097a9 Optionally return raw data from URL lookup using split_lines=False 9 years ago
Sloane Hertel 91b87d4cbb dict.values() was a list python2 but in python3 it's a view (#24504) 9 years ago
Kai Xia(夏恺) 97b0448f0b fix typo. (#24531)
Signed-off-by: Kai Xia(夏恺) <xiaket@gmail.com>
9 years ago
Toshio Kuratomi 548cacdf6a Fix template not showing a diff with a directory
Template can take a directory as the destination.  When that's the case,
we need to diff between the source and the file inside of the directory.
That happened when the directory was specified with a trailing slash but
not when it was specified on its own.  This change fixes that.

Fixes #24413
9 years ago
Toshio Kuratomi 16325f6f15 Fix pam_limits writing text to a file opened in binary mode
Fixes #24392
9 years ago
rodolfojcj a47fbba8ae Little documentation fix (#24522)
Added the 'reset_connection' option to the available choices
9 years ago
James Cammarata 78478e80ea Avoid default serialization of classes in dump_attrs
For playbook base objects, when dumping attributes via dump_attrs() an
attribute like loop_control is a class. Using the default serialization
for these is slow and consumes a lot of memory. Since LoopControl is also
based on the Base class, we can use serialize() instead and save a lot of
resources.

This also adds a from_attrs() complimentary method to nicely turn the
dumped attrs back into proper field attributes.

Fixes #23579
9 years ago
taksekine b04df23da2 fix #24429 (#24491) 9 years ago
Brian Coca c50cf22d52 deal with null/none connections
fixes #23621
pushed 'connection resolution' to play_context
override fieldattribute getter
9 years ago
Tom Melendez 4a5cf0b5c1 [GCE] [GCP] UrlMap module (#24422)
* [GCP] UrlMap module

This module provides support for UrlMaps on Google Cloud Platform.  UrlMaps allow users to segment requests by hostname and path and direct those requests to Backend Services.

UrlMaps are a powerful and necessary part of HTTP(S) Global Load Balancing on Google Cloud Platform.

UrlMap takes advantage of the python-api so the appropriate infrastructure has been added to module_utils.

More about UrlMaps can be found at:
https://cloud.google.com/compute/docs/load-balancing/http/url-map

UrlMap API:
https://cloud.google.com/compute/docs/reference/latest/

Google Cloud Platform HTTP(S) Cross-Region Load Balancer:
https://cloud.google.com/compute/docs/load-balancing/http/

* updated documentation, remmoved parens

* fixed tabs
9 years ago
Abhijeet Kasurde 728d3e6c84 Pep8 fixes for web_infra/ansible_tower (#24479)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Dylan Silva fc3cc73b73 Downgrading module from core to community (#24463) 9 years ago
wiso bb90f5d220 netconf_config: support new src attribute (new Action Plugin) (#24337)
* Create netconf_config.py

To support new attribute 'src' for the netconf_config module.
Cross-check with #24323

* Update netconf_config.py

* Update netconf_config.py
9 years ago
Jon Hadfield eb4cc31ae5 [cloud] migrate ec2_asg to boto3 and support application ELB target groups. (#19667)
* switch to boto3 and add support for application ELBs with target groups.

* use py23 compatible dict iterator.

* removing commented out fail_json calls

utilize sets to simplify logic

remove setting a redundant variable

add bounds checking in two places

add AWSRetry decorator - do we want this for other functions too?

change xrange to range so python3 doesn't fail

remove sorting lists of dicts; in python2 this returns None, in python3 this fails

* remove error variable from traceback.format_exc

* Remove boto2-style calls brought in by rebase

Old boto-style calls to `as_group` attributes break in boto3

Also remove module from legacy-PEP8 list

* Add  parameter to target_group_arn option

* Fix HAS_BOTO3 check

* use tags.items() instead of iteritems

* import botocore

* Fixed bugs in deleting autoscaling groups

* make changes in deleting autoscaling groups pep8

* more pep8

* fix version

* fix bugs so local integration tests run

* fix launch config check

* reflect changed status for ASG updates

* Fix existing exception handling and use traceback.

Fix imports

* line length

* Fix notification setup

* Fix mutually exclusive arguments
Only one of the AvailabilityZones and VPCZoneIdentifier arguments should be provided to the CreateAutoScalingGroup call.

* Allow desired_capacity, min_size, max_size, launch_config_name to be derived from the existing ASG if not specified

Remove code updating dict after ASG already uses it
9 years ago
Abhijeet Kasurde 3d51081a59 Refactor nxos_reboot module (#24484)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Rob fd1debb869 Feature/aws helper function for tags (#23387)
* Add new helper function for comparing AWS tag key pair dicts. Also modify boto3_tag_list_to_ansible_dict function to be more generic when looking for key names because AWS sometimes uses 'Key', sometimes 'TagKey' and who knows what the future holds! Fixed modules to work with changes.

* Review changes

* Add some more doc to GUIDELINES for tags and fix var name for snaked values in ec2_group_facts
9 years ago
Trishna Guha b2a2f69a6e nxos_vrf_af fix and unit test (#24399)
* nxos_vrf_af fix and unit test

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

* ansibot told me to do this

* use sorted() as the test list elements differ in order for python2.x and 3.x
9 years ago
Trishna Guha 62eafa8837 fixes nxos_evpn_vni and unittest (#24372)
* fixes nxos_evpn_vni

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

* fixes pep8 issue and syntax error

* ansibot tole me to do this

* Unit test
9 years ago
Dag Wieers 748f27e597 expect: Add a pointer to the shell/script modules
This PR also includes:
- DOCUMENTATION and EXAMPLES cleanup

This fixes #21335
9 years ago
Dag Wieers e855274dc8 win_psexec: Enable -nobanner option by default (#23422)
* win_psexec: Enable -nobanner option by default

PR also includes:
- Option `nobanner:` to remove this flag
- Improvements to Examples
- Improvement to Return Value
- Add types to all parameters now
- Add (limited) integration tests

* Move sysinternals into C:\Windows\Temp
9 years ago
Nathaniel Case 09b2964dee nxos_bgp_af updates (#24171)
* update docs
* clean up nxos-bgp_af
* Remove useless params from bgp_af
* Add bgp_af tests
9 years ago
Abhijeet Kasurde 2f26c5285a Refactor nxos_file_copy module (#24314)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Ondra Machacek a5020a40e5 Minor fixes for oVirt modules (#23452)
* cloud: ovirt: only image disk can be sparsified

* cloud: ovirt: add post-copy scheduling policy
9 years ago
René Moser 2ef6713abb cloudstack: new module cs_vpn_gateway (#23954)
* cloudstack: new module cs_vpn_gateway
* add integration tests for cs_vpn_gateway
9 years ago
Matt Martz 3324d0a4b0 Support auto_remove in docker_container (#22929)
* Support auto_remove in docker_container

* Fail if not docker>=2 and auto_remove=True, don't set auto_remove in host_config if not docker>=2

* Make quoting more readable in ansible errors
9 years ago
wiso 0a22dbd9d8 Update netconf_config.py (#24323)
* Update netconf_config.py

Implementation proposal for feature request #24220

* Update netconf_config.py

fixed pep8
added code proposal for #24221

* Update netconf_config.py

correct more pep8 related things
add some cosmetic changes
9 years ago
Sloane Hertel 2618e6d516 ec2_elb_lb: allow elb scheme to be updated by restarting the resource - fixes #19116 (#22916)
* allow elb scheme to be updated by restarting the resource

use ensure_gone and require wait option

* fix pep8

* fix yaml

* requested changes

* fix fail_json
9 years ago
Dag Wieers bc806ff479 Windows: Small fix to Add-Warning and Add-DeprecationWarning (#23520)
Simplified the logic, and fix the issue of having a nested list as
entry.

Also indicate that we deliberately want to retain $null values
(and i.e. do not want them to be turned into a boolean).
9 years ago
Ganesh Nalawade 5b3ea6562b Add junos integration test (#24404) 9 years ago
Feike Steenbergen c5adf08c40 Reference correct variable and key for role expiry (#23397)
Previously, this module could throw the following error message:
    NameError: global name 'current_roles_attrs' is not defined

The referencing key should also match the name of the column, which is
rolvaliduntil, not rol_valid_until
9 years ago
Abhijeet Kasurde a255cfd22a Check login_token for user before any operations (#23600)
Fix adds extra check if user is authorized or not while
using login_token.

Fixes https://github.com/ansible/ansible/issues/23033

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Benjamin Jolivot e99815e9f5 Fortios file only mode + integration tests (#23275)
* WIP file_mode

* WIP

* Add file_mode + integration tests

* fix pep8

* Update doc fragments
Create mutualy_exclusive param
Fix yamllint problem in tests

* Add aliases file + main playbook for fortios

* Install pyfg before running tests

* Install pyfg before running tests in role

* Remove pre_task as it's done in roles

* Force pyFG minimal version for python3

* role_path not role_dir :(

* Change requirements

* Specify Error type when error on import

* Bug in pygf library with python 2.5 (PR is waiting https://github.com/spotify/pyfg/pull/19)

* Bad requirement format

* still bad format -_-'

* remove test/integration/fortios.py (auto generated by tests)
missing new lines at end of file

* pyFG is now fixed in 0.50
9 years ago
Abhijeet Kasurde e342b281d8 Check if api_key and app_key before proceeding (#24336)
Fix adds check if app_key and api_key provided by
user is correct or not. If this combination is wrong
then fail with appropriate error message given by
Datadog server

Fixes https://github.com/ansible/ansible/issues/24325

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Matt Clay d999d613cb Python 3 fixes for CloudStack modules and tests. (#24400) 9 years ago
Gaurav Rastogi 6aa32d3e9d Added no_log flag for all the sensitive fields. (#24386) 9 years ago
Dag Wieers b58cf0d23a windows: Various small documentation fixes (#23138) 9 years ago
Dag Wieers 5ab97b30cd powershell: Add support for list parameters (#23131)
This is a first implementation of list parameters.

It will convert a single string, or comma-separated value into an Array.
9 years ago
Matt Davis 98ff93b2db fix spurious warnings with ansible_winrm_kinit_X args (#24380)
* added to pywinrm arg whitelist
* clarified error text on kinit_mode error
* fixes #23822
9 years ago
James Cammarata ed56f51f18 Fixing security issue with lookup returns not tainting the jinja2 environment
CVE-2017-7481

Lookup returns wrap the result in unsafe, however when used through the
standard templar engine, this does not result in the jinja2 environment being
marked as unsafe as a whole. This means the lookup result looses the unsafe
protection and may become simple unicode strings, which can result in bad
things being re-templated.

This also adds a global lookup param and cfg options for lookups to allow
unsafe returns, so users can force the previous (insecure) behavior.
9 years ago
Nathaniel Case 830f19d444 nxos_bgp updates (#24270)
* Remove invoke from nxos_bgp
* Try to simplify get_existing
* Streamline state_present
* More testing, squash & compact get_value & get_custom_value
* Streamline main
* nxapi has problems reading CustomNetworkConfig directly
9 years ago
Ganesh Nalawade 4186b07d21 Fixes #24375 Add check to identify if diff is empty (#24377)
* Fix #24375 Add check to identify if diff is empty
9 years ago
Abhijeet Kasurde d072d91aed Use wait_timeout as integer in redshift module (#24279)
Fix stricts datatype of wait_timeout to int as module
is using it as integer.

Fixes https://github.com/ansible/ansible/issues/24267

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Gaurav Rastogi b1efad52a4 New module to setup cloud connector properties (#22225)
* New module to set up cloud connector properties

* Updated descriptions for Avi 17.1.1 release and Fixed metadata
9 years ago
Gaurav Rastogi 1978795089 New module to setup string group. (#22223)
* New module to setup string group.

* Updated descriptions for Avi 17.1.1 release and Fixed metadata
9 years ago
Abhijeet Kasurde 2425143cf2 Pep8 fixes for digital_ocean_*
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde 9c5b55232c Pep8 fixes for Windows module (#24349)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Martin Kopta c4ad0f86c7 fixed yum.parse_check_update regex (#24331)
Output of `yum check-update` can contain lines with long package names and long
repository label names, which will be broken into multiple lines, which need to
be sanitized. The solution to this has been fixed and refactored in 2.3 in form
of parse_check_update(), but it still contains subtle bug, which makes such
multi-lines invisible to later logic (such packages aren't included in
parse_check_update()) output. The problem is caused by using '\1' in re.sub(),
instead of proper r'\1', which literally puts unicode symbol \1 into resulting
output.
9 years ago
Sloane Hertel 0438236263 [cloud] Add version_added to route53 option 'state' - fixes #24306 (#24335)
* fix route53 documentation

* improve state option description and remove version_added
9 years ago
Toshio Kuratomi 4bf8071889 Give user whatever information we have from ssh-keyscan
ssh-keyscan isn't very verbose about errors.  Give the user whatever
information we have available even if it isn't much.  At least they will
know how we were running ssh-keyscan and why there's an error now.

Fixes #19440
9 years ago
Adrian Likins 3840119bc7 Fix vaulted vars templating (#24312)
Use the default repr of AnsibleVaultEncryptedUnicode.data instead
of a custom one, since jinja templating ends up using the repr()
results.

Fixes #23846, #24175
9 years ago
Trishna Guha ad0a01ffb5 nxos_vrf refactor (#24280)
* nxos_vrf refactor

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

* Unit test for nxos_vrf
Remove unnecessary keys() method
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Dag Wieers 58c1a9dd94 vmware_guest: Don't force onto specific host (#22777)
Unless we provided a specific esxi_hostname, don't force new VMs onto the first host in the cluster.
9 years ago
Trishna Guha 986765312f Fixes #23948 body not defined nxos_hsrp (#24093) 9 years ago
Trishna Guha 67bd8f9204 fixes nxos_interface (#24199)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Alberto Murillo Silva d31a09ceb7 Fix os_quota to not break when volumev2 service is not available.
os_quota checks the current quotas for compute, network and volume
services and fails when no volume service is found in the catalog.

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

Fixes #23085

Signed-off-by: Alberto Murillo Silva <alberto.murillo.silva@intel.com>
9 years ago
Alberto Murillo Silva 136a6eec9e dnf: Add autoremove option
This allow users to write better playbooks by replacing

- shell: dnf autoremove -y
with
- dnf: autoremove=yes

Fixes #18815

Signed-off-by: Alberto Murillo Silva <alberto.murillo.silva@intel.com>
9 years ago
Abhijeet Kasurde d8a9b9f347 Fix win_user warning message (#24263)
Fix adds correct warning after deleting Windows User.
Also, adds modular function to get group

Fixes https://github.com/ansible/ansible/issues/24190

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Matt Martz 63f8e6b68a Fix version_added for new option in template introduced in #21846 (#24307) 9 years ago
Dane Summers 4bd04c299b Fixes #23285 (#24291)
Makes subversion module --check fail when modified files are in
repository.
9 years ago
Toshio Kuratomi e36d2f0bd0 ansible-doc snippet format changes
* ansible-doc -s is supposed to output a sample snippet of how you could
  add the module into a playbook.  These changes update the style:
  * Use yaml mappings instead of key=value
  * Use the module name directly instead of action: modulename
* Fixes a bug when displaying option descritpions which are yaml strings
  instead of lists.

This fixes in code the bad formatting reported in #24201
9 years ago
Joris (J.J.M.) Weijters 2a7ce1059d adjusted descriptions in DOCUMENTATION, and fixed type in RETURN 9 years ago
Gaurav Rastogi 4f7d342c0e New module to setup Cloud properties (#22226)
* New module to set up Cloud properties

* Updated descriptions for Avi 17.1.1 release and Fixed metadata
9 years ago
Gaurav Rastogi ffeb105423 New module to setup serviceengine group. (#22227)
* New module to setup serviceengine group.

* Updated descriptions for Avi 17.1.1 release and Fixed metadata
9 years ago
Gaurav Rastogi 5ccba73c55 New module to setup network object. (#22228)
* New module to setup network object.

* Updated descriptions for Avi 17.1.1 release and Fixed metadata
9 years ago
Gaurav Rastogi 099a1c5aef New module to set up GLSB object (#22229)
* New module to set up GLSB object

* Updated descriptions for Avi 17.1.1 release and Fixed metadata
9 years ago
Gaurav Rastogi 368ccf1ac7 New module to setup GSLB service (#22230)
* New module to setup GSLB service

* Updated descriptions for Avi 17.1.1 release and Fixed metadata
9 years ago
Gaurav Rastogi 243eacb650 New module to set up gslb health monitors (#22231)
* New module to set up gslb health monitors

* Updated descriptions for Avi 17.1.1 release and Fixed metadata
9 years ago
Gaurav Rastogi 91f255a07b New module to setup IP address group. (#22224)
* New module to setup IP address group.

* Updated descriptions for Avi 17.1.1 release and Fixed metadata
9 years ago
Gaurav Rastogi b0465a2fbd New module to set up cloud object (#22198)
* New module to set up cloud object

* Fixed documentation error

* Updated descriptions for Avi 17.1.1 release and Fixed metadata
9 years ago
Abhijeet Kasurde 86966c75fa New module : github_issue (#23654)
Using github_issue module, user can retrive status of issue
listed on Github repository and depending upon status takes
various actions e.g., workarounds and downloading patches.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
jctanner 08a3ea2221 sysctl: switch basestring to string_types (#24277) 9 years ago
Matt Davis 2052ed48d5 Deprecated restart option in win_feature, added return docs 9 years ago
Matt Davis db91dd8685 fixed issue with multiple calls to Add-DeprecationWarning 9 years ago
Matt Martz 7dbec976af Switch last remaining decode to to_text (#24269) 9 years ago
Brian Coca b731c2d809 include_vars to delegated only if delegate_facts (#24259)
* include_vars to delegated only if delegate_facts

fixes #24172

* since code is now same, simplified
9 years ago
Toshio Kuratomi a0dfa8616a Make fetch default to fail on errors
Fixes #23501
9 years ago
Toshio Kuratomi 90a229c793 Fix error in unittesting
When unittesting, the framework creates a pipes module that is picked up
by the basic module_utils test.  Switch to using shlex_quote as that is
the right thing to use for portability anyway.
9 years ago
Toshio Kuratomi 36d7c0c403 Fix places where path needs to be bytes on python3
These were discovered on python3 with fetch code that fails on errors.  Probably could be
provoked with particular sets of arguments to stat as well.
9 years ago
Sloane Hertel ad8cb903f4 rds: do not update multi-az unless specified - fixes #23385 (#23498)
* allow multi_az to be unmodified if not explicitly specified

* fix pep8 and remove from legacy files
9 years ago
Ritesh Khadgaray fb6e9e8fbe rhn+register: do not pass username/passwd for registration if none is specified. (#24244) 9 years ago
Sloane Hertel 4278618746 verify arns differently than function names (#23966) 9 years ago
Gaurav Rastogi e8a0215cd3 Avi 17 1 (#24047)
* Added new common argument api_version for all Avi modules

* Updated dependency for the new modules to use avi sdk 17.1 and above

* Updated Avi 17.1.1 modules with descriptions and moddule dependencies

* Updated version_added for new options
9 years ago
mattwwarren 45ac28ba04 remove self from function outside of class (#24017)
* remove self from function outside of class

* fix indentation
9 years ago
Abhijeet Kasurde a3053d8c2c Add validate_certs option to ldap_attr, ldap_entry (#24060)
This fix adds a module option `validate_certs' to check
self-signed certificate of LDAP server.

Fixes https://github.com/ansible/ansible/issues/24009

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Kevin Howell a93aa6dc04 Fix typo in rhsm.configure (system -> server) (#24179)
This fix makes it so that the module works as expected when
`server_hostname` is provided. It was being silently ignored
previously. I suppose this may also fix similar behavior with
`server_insecure`, but I did not check that explicitly.
9 years ago
Ganesh Nalawade a42b892f70 Fix junos_rpc and junos_user broken issues (#24238)
* Fix junos_rpc and junos_user broken issues

Add persistent connection related changes.

* Fix CI issues
9 years ago
Benny Zlotnik 80f0157f3c cloud: ovirt: Remove extra "the" from descriptions (#24242) 9 years ago
Abhijeet Kasurde 465c12ccdb Pep8 fixes for deploy_helper (#24237)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Ganesh Nalawade 73c24001d9 Fix netconf port validation and minor doc change (#24210)
* Fix netconf port validation and minor doc change

Add check to confirm if `validate_*` funcion is
callable.

Add `config_format` in `junos_facts` documentation

* Fix review comments
9 years ago
Ricardo Carrillo Cruz 7195c31753 Refactor openvswitch_port module (#24205)
Use current patterns from other network modules for better
maintainability.
9 years ago
Abhijeet Kasurde 53f0cd197e Pep8 fixes for jira (#24229)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde b6b3f84990 Pep8 fixes for htpasswd (#24230)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Matt Clay 785bc93ff7 Allow empty string for EC2 session token from env. 9 years ago
Matt Clay 425d35ef0f Fix ec2_elb_lb error handling. (#24183)
- Use `fail_json` for `get_all_load_balancers` unhandled exception.
- Do not mask error message on failure of `enable_zones`.
- Do not mask error message on failure of `disable_zones`.

Also added/removed blank lines to improve PEP 8 compliance.
9 years ago
Abhijeet Kasurde fbb924ff24 Pep8 fixes for letsencrypt module (#24144)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde df5be2b8ea Pep8 fixes for django_manage (#24198)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Robin Roth 0cf00db750 Make git module pep8 compliant (#24196) 9 years ago
higginsd 8408c6b454 fixed missing "import traceback" (#23427) 9 years ago
Ricardo Carrillo Cruz 9e246a857c Sanitize the output from ovs get-fail-mode (#24208)
If a bridge does not have a fail mode set, it returns nothing, i.e.
empty string.
This causes a failure when doing the want vs have compare in plays
where the fail-mode is missing, as we compare "" vs None respectively.
9 years ago
Ricardo Carrillo Cruz e67eba877e Sanitize ovs br-get-external-id output on openvswitch_bridge (#24209)
If a bridge does not have external_ids, ovs-vsctl returns '{}'.
This causes issues on the current want vs have comparison in cases
where the play does not define external_ids, as the comparison
is None vs '{}'.
9 years ago
Sloane Hertel e13fc5d6bd elasticache_parameter_group: fix documentation and exception handling - fixes #23709 (#23718)
* fix documentation and correct exception handling

* follow AWS exception guidelines

* fix parameter_group_family req; only needed when creating cache parameter group

make pep8 and remove from legacy files
9 years ago
Sloane Hertel fcaa49b536 sns: move from notification directory to cloud/amazon directory - fixes #11874 (#23805)
* move sns to cloud directory

* make sns pep8 and remove from legacy files
9 years ago
Abhijeet Kasurde 9d9e9a79e2 Pep8 fixes for apache2 module (#24185)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
John R Barker 93de128844 Return type is dict, not dictionary (#24191) 9 years ago
Thomas Bilk ن 77e550192c Added Composer Command global (#24158)
* Added Composer Command global

Added a parameter to run composer commands globally. The `working_dir`
parameter is only required if `global_command` is `False`.

Fixes #24052

* Added Composer Command global

Added a parameter to run composer commands globally. The `working_dir`
parameter is only required if `global_command` is `False`.

Fixes #24052
9 years ago
Toshio Kuratomi 3428f42120 Add integration test that modules are loaded from the expected locations (#24170)
* Add integration test that modules are loaded from the expected locations
* Fix ping module to pass PEP8
9 years ago
Abhijeet Kasurde 8ba069315e Pylint fixes for packaging (#23553)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Matt Martz 040fb4435a Fix password prompt matching (#24081)
* Fix password prompt matching

* Add some tests for check_password_prompt

* Prevent pep8 line ends with a space error
9 years ago
Abhijeet Kasurde d8f76bed97 Misc fixes and Pep8 fixes for proxmox_* modules (#24162)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde cdca648f15 Pep8 fixes for jenkins_* module (#24154)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Toshio Kuratomi d088030fa6 Facts Timeout was not settable via ansible.cfg
The timeout for gathering facts needs to be settable from three places
(highest precedence to lowest):

* programmatically
* ansible.cfg (equivalent to the user specifying it explicitly when
  calling setup)
* from the default value

The code was changed in b4bd6c80de to
allow programmatically and the default value to work correctly but
setting via ansible.cfg/parameter was broken.

This change should fix setting via ansible.cfg and adds unittests for
all three cases

Fixes #23753
9 years ago
Abhijeet Kasurde 806506c032 Pep8 fixes for taiga_issue module (#24143)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde bb8666471d Update documentation of fetch_url in urls.py (#23892)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Nathaniel Case dce2d5eea9 Remove `provider` requirement from nxos_vrf (#24118)
Fixes #23920
9 years ago
Rene Moser e9dfbdf7a2 rundeck_project: set ansible_metadata status to preview 9 years ago
Alberto Murillo Silva bb234b9206 Fix ClearLinux pretty name
ClearLinux has changed its pretty name in os-release file
from: 'Clear Linux Software for Intel Architecture'
to: 'Clear Linux OS for Intel Architecture'

This patch makes the SEARCH_STRING 'Clear Linux' rather than
the full name to make it compatible with the old and new name.

Signed-off-by: Alberto Murillo Silva <alberto.murillo.silva@intel.com>
9 years ago
Nick Piper 403c142750 Minor typo correction varibles -> variables
No impact as variable wasn't used.
9 years ago
René Moser 594d7d5d9d cloudstack: cs_region: fix pep8 (#24134) 9 years ago
Toshio Kuratomi 1c05ed7951 Fix circular import with unsafe_proxy, template, and vars
template/__init__.py imported unsafe_proxy from vars which caused
vars/__init__.py to load.  vars/__init__.py needed template/__init__.py
which caused issues.  Loading unsafe_proxy from another location fixes
that.
9 years ago
Toshio Kuratomi 500de1f557 Remove hack for backwards compatible v2_playbook_on_start callback
Just after release of 2.0.0 (in 2.0.0.1) we had a change to the API of
callbacks without bumping the API version.  We added the playbook to the
arguments passed to the callbacks.

This wasn't in the Tower callback at the time.  In order to prevent
breaking that callback we added a temporary hack to inspect the
callback's API to decide if we needed to call it with arguments or not.

We scheduled the hack for removal in January 2017.  Since that's now
past, removing the hack.

Change signed off by matburt on the Tower side.
9 years ago
Patrick Chauncey 0d5fe8fd94 Add 'uuid' to the attributes returned from the vmware_vm_facts module. (#23773) 9 years ago
David Moreau Simard b95fefd8f5 Add support for specifying the modulepath for the Puppet module (#24122)
Puppet modules are not always installed in the default location
(i.e, /etc/puppet/modules) so it is useful to be able to specify
an alternate location.
9 years ago
Cody Boggs 1c11a35f70 Fix orphan resource pool crash (Issue #24078) (#24079)
Fixes issue [#24078](https://github.com/ansible/ansible/issues/24078)

Resource pools are retrieved from VSphere regardless of the state of the `resource_pool` parameter. During this process, each retrieved Resource Pool is checked for the `parent` attribute, and if it exists, the currently-scoped parent object is compared against the Resource Pool's parent object. The method doing the check, however, `assert`s that the parent object is not `None`. In some cases, a Resource Pool will have the `parent` attr, but that `parent` object will be `None`, causing the `assert` to fail.

This should avoid that. :-)
9 years ago
Nathaniel Case f9ec06d1dc Print specific error for BadHostKeyException (#24120) 9 years ago
nerzhul e09cd58a17 New module: rundeck_project
This module permits to manage rundeck project creation or removal through rundeck API
9 years ago
John R Barker 1d12f13612 dict, not dictionary (#24123) 9 years ago
nerzhul 96d2dbb11e Add rundeck_acl_policy module 9 years ago
Ricardo Carrillo Cruz 467a9bdd4e Refactor openvswitch_bridge (#24014)
Use common patterns from other network modules for better
maintainability.
9 years ago
Ganesh Nalawade 06732acd4c Fix exception in junos_package (#24107) 9 years ago
Alex Willmer 1ac17213ea Rename fact returned by docker_network to avoid restricted prefix (#23919)
This fixes #23918
9 years ago
SesquipedalianDefenestrator 3f321e7591 Add check_mode to get_url (#20532)
* Add check_mode to get_url that does a HEAD request to make sure the URL exists, but doesn't write the real file

* Add info about new --check behavior to docs.  Add tests for the new behavior.  Populate res_args with the info the tests are looking for.

* Add trailing comma

* Change nonexistent test URL to http://{{httpbin_host}/DOESNOTEXIST.  Fix spacing while I'm at it

* Further spacing cleanup

* State that this functionality is in Ansible 2.4+
9 years ago
Abhijeet Kasurde ca7616b4a1 Pep8 fixes for ha_proxy module (#24090)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
John R Barker 3d4523f231 Correct RETURN data types for Network modules (#24104)
`path` isn't a datatype
9 years ago
Trishna Guha bc22223d63 Fixes #23890 Remove idle ShellError exception and get_exception() method from nxos modules (#23947)
Remove idle ShellError exception and get_exception() method from nxos modules
9 years ago
Brian Coca 31045d58c6 added versions to dep notices (#24019)
* added versions to dep notices

* pep7

* string
9 years ago
John R Barker 6845234d72 nmcli: fix docs for add necessary package (#24071)
Originally report in https://github.com/ansible/ansible/pull/23817
9 years ago
Erwin Lang b729b35e32 synchronize: Fix (delegated) local rsync
Makes delegated local rsync work even if ansible_host or ansible_ssh_host is set.
Makes local rsync work when no ssh is installed.
9 years ago
John R Barker fcb52ce808 Added note on netcat dependency (#24070)
Originally https://github.com/ansible/ansible/pull/23911/files
9 years ago
Trishna Guha 2741907cba Refactor nxos_interface and add unit test (#24008)
* [WIP] Refactor nxos_interface

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

* Modification in refactor
Unittest for nxos_interface
9 years ago
Nathaniel Case 689b93bf14 Junos_config unicode (#23369)
* Try to handle unicode output more sensibly

* Appears I'm getting latin1 instead

Ugh.
9 years ago
John R Barker 1c61b9bae7 Split modules/network into two parts (#24024)
* Split modules/network into two parts

Given the dedicated team we we have working on Ansible Networking a
clearer split is needed between Networking modules and "things that
happen to use the network"

* nmcli to net_tools

* nmcli moved
9 years ago
Colin Chan 2d9d1762ba Improve parsing of 'systemctl show' output 9 years ago
Nathaniel Case fc0bf87c20 Run `save` inside config mode. (#23977)
* Run `save` before exiting config mode.

* Fix unit tests for `save`

* Allow `save` to be on its own again and introspect success

* Introspecting `compare running` makes this a lot harder.

Move `save` tests to integration tests
9 years ago
Ganesh Nalawade 1f7c2c63c2 Fix python version check issue (#24063)
Fix python version check issue
9 years ago
Ricardo Carrillo Cruz 2716fad38f Return commands instead of command (#24061)
Ok, so for openvswitch_db in particular we just return one command
but in the sake of consistency and code re-use, let's return a list
of "commands", even if it's just one.
9 years ago
Abhijeet Kasurde 9456f93ea8 Pep8 fixes for known_hosts.py (#24029)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Andrea Tartaglia 1d0a629dcc Fixed docs for cloud modules (#23745)
* Fixed docs for cloud modules

* removed blank line in ec2_snapshot_facts
9 years ago
Senthil Kumar Ganesan ce99ffe205 Fixed PEP8 issues (#24030) 9 years ago
Ganesh Nalawade 7d710882a8 Fix exception issue in junos_config (#24049)
ParseError execption is added to ElementTree
in py2.7. Prior to py2.7 need catch ExpatError
execption
9 years ago
Andrej Svenke 3185ec94c5 ecs_service: add tasks placement constraints and strategy. (#20503)
ecs_service: documentation fix.

ecs_service: updated version_added.

ecs_service: pep8 fixes.
9 years ago
Toshio Kuratomi 51e3390333 Document deprecation of fetch module validate_md5 and update --tags merging deprecation (#24022)
* Document deprecation of fetch module validate_md5 and update --tags merging deprecation

Update the default of --tags merging config option to merge by default

* Update CHANGELOG.md

Minor edit
9 years ago
jctanner a5d6d3b9af Remove unused+circular import in listify.py (#24038) 9 years ago
Nathaniel Case 0d67a49d5a nxos_bgp fixes (#23927)
* Pre-emptively fix sanity/pep8

* fix for commands

* Quick unit test
9 years ago
Nathaniel Case c0ebdf144d nxos_acl_interface fixes (#23917)
* Update nxos_acl_interface

* Add basic unit tests to nxos_acl_interface
9 years ago
Nathaniel Case f0914ee3c2 nxos_acl fixes (#23915)
* Update nxos_acl

* unit tests for nxos_acl

* Remove nxos_acl from pep8-legacy
9 years ago
Toshio Kuratomi bffccb5396 fetch idempotence test and deprecate validate_md5
Added an integration test for fetch module idempotence.  (Testing
that validate_checksum is doing what it's supposed to is harder as we'd
have to create a race condition with the downloaded data to trigger it.
Probably need to make that a unittest eventually).

Also give a deprecation message to the validate_md5 parameter so that we
can eventually get rid of it.
9 years ago
KeepZero 98e7d4b49d Set validate_checksum default yes of fetch to match the doc 9 years ago
Abhijeet Kasurde 86a63cfcd7 Handle fetch_url error gracefully (#23821)
Fix adds http response code check for fetch_url.
Also, method in fetch_url call.

Fixes https://github.com/ansible/ansible/issues/23800

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Giuseppe Scrivano d02a9016a2 Atomic containers (#21366)
* atomic_image: add support for pull --storage=

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>

* atomic_container: new module

Manage atomic containers

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
9 years ago
Andrea Tartaglia d1517f997a fixed RETURN docs for modules (#24011)
* fixed RETURN docs for remaining modules

* updated proxymysql_mysql_users 'sample' to yaml dict

* fixed whitespace errors
9 years ago
Patrick Ogenstad 9a0a7f78d7 asa_command: set default_output to text (#23979) 9 years ago
ka7 b11219440b spelling fixes (non-trivial, might catch a bug) (#23646) 9 years ago
Abhijeet Kasurde d16fe5bef3 Minor typo and PEP8 fixes for dnf module (#23845)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde 9fbbb5e10f Pep8 fixes for mysql module (#23923)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
cptchips dde383aea2 [Doc] win_package - product_id is a mandatory parameter (#24007)
product_id is a mandatory parameter for windows/win_package module.
9 years ago
Sumedh Sidhaye be6ca006a2 Corrected -su cmdline option to --su to be consistent with the man page entry (#23899)
Signed-off-by: Sumedh Sidhaye <ssidhaye@redhat.com>
9 years ago
Brian-Williams 8466c808d9 Change wait_for time to utc (#23987) 9 years ago
Brian Coca e29dc49a49 moved to exceptions for basic skip/fails
better handling of checkmode and async
fix test to follow new flow control
9 years ago
Ricardo Carrillo Cruz a3a970180a Unit tests for openvswitch_db module (#23974) 9 years ago
Ganesh Nalawade 09b8badc5e Minor junos_config module changes (#23972)
* Minor junos_config module changes

* Add note for json config support
* Add example for lines argument
* Fix future warning for ElementTree

* Remove unwanted space
9 years ago
Ganesh Nalawade 15c19367d6 Fixes #23960 junos_config fail with config in xml (#23962)
If config is in xml format append it to <configuration>
tag as a instance of Element class.
9 years ago
Chris Madden 8e7c546ef9 Fix name description from lun to volume (#23964)
Help text stated to manage lun name but this module is for managing volumes.  Updated accordingly.
9 years ago
Brian Coca 1a0b94fa17 schedule sudo/su removal 9 years ago
René Moser 3959597f7d exoscale: fix TXT type records handling (#23956) 9 years ago
Trishna Guha f354bd1eab Set terminal width for network *_command modules to avoid paging (#23728)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Trishna Guha 47edac6ebd Remove repetition of code nxos (#23908)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Indrajit Raychaudhuri 45252b79be pacman: Fail fast when 'rc != 0'
We fail-fast and display 'stderr' in case 'pacman' returns with 'rc != 0'.
There is no point computing 'module._diff' in such case anyway.

Fixes #23910

(cherry picked from commit 8c6a2a848c)
9 years ago
Brian Coca 72a4e1cf0d fixed code to actually check the parameter not key
also made rest conditional on unit being provided, previouslly it changed from being always required

fixes #23810 alternate to #23907
9 years ago
Kai cb13aea88b Fix systemd in chroot (#23904)
* Fix systemd in chroot

The 'request ignored' message is in stderr, not stdout.

* Check both stdout and stderr for systemd message

Some versions of systemd report to stderr, others to stdout. Also check
whether output could be a valid normal response to avoid false positives.
9 years ago
Sloane Hertel d021d8f16b efs: include name in results (#23931) 9 years ago
Sloane Hertel 380ac577c6 [cloud] ec2_facts: make ec2_facts python3 compatible - fixes #23595 (#23872)
* make ec2_facts python3 compatible

* remove parentheses and use pop() instead of del
9 years ago
Brian Coca a108f0fcd3 avoid hosts 'pre templated warnings' (#23878)
* avoid hosts 'pre templated warnings'

fixed is_template failing on undefined
fixes #23057

* py3 compat
9 years ago
Adrian Likins e0a7105c2d Use sys.stdout.buffer to write vault bytes to stdout on py3 (#23760)
* Use sys.stdout.buffer to write vault bytes to stdout on py3

We need sys.stdout.buffer on py3 so we can write bytes to it since the plaintext
of the vaulted object could be anything/binary/etc

Before, attempting to write bytes to stdout on py3 would cause:

  TypeError: write() argument must be str, not bytes
9 years ago
Ondra Machacek 80327d9d47 cloud: ovirt: import VM from external source (#22450) 9 years ago
Sloane Hertel 00ebd0c89d make lineinfile docs clearer and make module pep8 (#23857) 9 years ago
Brian Coca 35e03cb140 p8p 9 years ago
Brian Coca 27185f44b0 fix environment populated detection
fixes #23764
9 years ago
Ondra Machacek 13c2c292f2 cloud: ovirt: add note that modules works with RHV as well (#23808) 9 years ago
Brian Coca 4594bee65a keep unsafe .. unsafe (#23742)
* keep unsafe .. unsafe

fixes #23734, which was broken in previous fix that allowed non string types to be templated
use new 'is_template' function vs bastardizing others
refactored clean_data to allow for arbitrary data structures to clean
fixed/removed some tests

* deal with complex data for is_template

* typos
9 years ago
Brian Coca 3358abcf49 Add a new filter: strftime. Use the well known function to format a date output. (#23832)
(cherry picked from commit 3f5b304fc2)
rebased for @yannig
9 years ago
Ricardo Carrillo Cruz 8517fbf936 Remove catch-all regex on IOS terminal plugin (#23858)
We have a list of specific messages that we scree-scrape and flag
them as legit errors.
However, we also have a catch-all regex that matches everything
starting with %.
That can cause issues on commands that return lines with that
character, like for example the 'crypto key generate'.

Fixes #23770
9 years ago
Ganesh Nalawade 04ae977f39 Fix display argument defualt value (#23859) 9 years ago
Michael Scherer 78836ec0b9 Fix --force for unversionned requirements (#23391)
In current stable (2.2), ansible galaxy install --force do erase
a role, even if the version is not set. This commit should restore
that specific behavior, in accordance to people reports:
  https://github.com/ansible/ansible/issues/11266#issuecomment-273801480

It was also the behavior planned in the initial discussion:
"if you're not fixing versions in your roles file, then it's fine
to expect that the role will be reinstalled each time you run
ansible-galaxy install.", cf https://github.com/ansible/ansible/pull/12904
9 years ago
Ricardo Carrillo Cruz d0fd8cefaa Fix the iosxr_facts mem gathering (#23850)
We were not calling match.group, plus we were lacking a ':' from
the expected output of 'show memory summary'.

Fixes #23737
9 years ago
Trishna Guha 8ec4882ba0 Add eos_user module to users parameter (#23847)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Ganesh Nalawade 01afe12cba Add doc for display argument of junos_command (#23804) 9 years ago
Matt Davis 02ed223d49 template hostvars for set_host_overrides (#23839)
* fixes #23586
* temporary solution until connection-specific vars are handled by play_context
9 years ago
Brian Coca 79b9c585ea less code
(cherry picked from commit 20d9f79a5250e764ffeddb046aeb82b7824ed952)
9 years ago
Brian Coca eb887b8062 Revert "fixes play context connection user (#21776)" (#23830)
* Revert "fixes play context connection user (#21776)"

This reverts commit 58ee661437.
fixes #23530

* preserve original in copy

updated comment to clarify wtf is going on here
9 years ago
Abhijeet Kasurde 527a7762e1 Use regex variable in eos_user.py (#23797)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Sloane Hertel 91644167c9 improve exception handling (#23722)
make pep8
9 years ago
Sloane Hertel 11c292bac2 route53_facts: add example for how to use next_marker option - fixes #23625 (#23802)
* Add example for using route53 next_marker option

* make route53_facts pep8 and remove from legacy files
9 years ago
Nathaniel Case 0c2a0c7bce Eos port default values (#23829)
* Hook port back up for eos cli transport

* The default values have moved

* Why not have conditional defaults?
9 years ago
Brian Coca b4b96143fe also skip polling when async failed 9 years ago
Nathaniel Case 9bcc3f298f EOS default transport (#23824)
* Give a default to eos transport
9 years ago
Matt Babineau 4914164717 Typo (#23778)
Missed that D...
9 years ago
Brian Coca fe9af903f3 script fails on async 9 years ago
Brian Coca 602a2bca1b fix vars file selection
fixes #17382
alternate to #22979

deal with cases in which group/host have . in name
updated as per feedbck
only be strict about extension when doing dirs
also avoid ~ endings
9 years ago
Brian Coca 3965689328 finer grained failed/skipped on async for actions
fixes #23729
9 years ago
Logan Attwood 5bbf0d9cb6 Use isfile check on package manager paths 9 years ago
Brian Coca 631a10745d fix hashing when path is symlink 9 years ago
Trishna Guha b2129a7d3a Add eos_banner as module to banner param (#23789)
Signed-off-by: Trishna Guha <trishnaguha17@gmail.com>
9 years ago
Loïc Blot 504a768636 Show UUID instead of name when using UUID to select snapshot (#23787) 9 years ago
Abhijeet cc745b0224 Minor typo in vmware_guest_facts (#23791)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Timo Benk 79943b86a1 fix ansible galaxy file mangling (#23703)
without this patch, ansible-galaxy will mangle files containing
the archive parent directory name, eg 'owncloud/files/owncloud.cron'
will become 'owncloud/files/.cron'.

The previous code could affect the entire path and even filenames.
If a file path has the top level dir name as a substring, galaxy
replaces it with ''. In one example, the archive top level dir
is 'go', so 'files/go-bin.sh' becomes 'files/-bin.sh'.

Fixes #22572, #23694, #23623
9 years ago
Toshio Kuratomi a31e9bd9ea Really minor optimization and style change for d0e3d75381
* Use a generator expression instead of a list comprehension
* Use copy() to create a new set instead of the constructor.
9 years ago
Bart van Bragt d0e3d75381 Remove whitespace from unix group names 9 years ago
Abhijeet 27f776f97d Fix for setting values using gconftool-2 (#23713)
Miscallenous fixes added to make gconftool-2 work.

Fixes https://github.com/ansible/ansible/issues/23670

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Sloane Hertel d63af51f90 s3_sync: removing irrelevant s3.list_buckets() call - fixes #23409 (#23492)
* Removing irrelevant s3 call

Fix exception handling

Make s3_sync pep8 and remove from legacy file
9 years ago
Brian Coca 3f62dfda92 nicer docs 9 years ago
Adrian Likins ae3d7fb29e Fix vault reading from stdin (avoid realpath() on non-links) (#23583)
* Fix vault reading from stdin (avoid realpath() on non-links)

os.path.realpath() is used to find the target of file paths that
are symlinks so vault operations happen directly on the target.

However, in addition to resolving symlinks, realpath() also returns
a full path. when reading from stdin, vault cli uses '-' as a special
file path so VaultEditor() will replace with stdin.
realpath() was expanding '-' with the CWD to something like
'/home/user/playbooks/-' causing errors like:

        ERROR! [Errno 2] No such file or directory: u'/home/user/ansible/-'

Fix is to specialcase '-' to not use realpath()

Fixes #23567

* to_text decrypt output when writing to stdout
9 years ago
Matt Martz f82d95ae28 When become_method is su, self._play_context.prompt is a function. Fixes #23689 9 years ago
Ganesh Nalawade bf1a543f06 Make warning logs consistent (#23666)
* Make warning logs consistent

Arguments outside provider with default
value should not log as warning in case
it is not mentioned in play.

* Make nxos timeout default consistent and add comments

* Make comments more verbose
9 years ago
Daniel Shepherd 698fa37a44 [cloud] Fix #23152 in route53 module and pep8 cleanup (#23156)
update module to support more standard state=present/absent syntax

update module to use required_if, required_together, mutually_exclusive functions where possible

per ryansb review: make documentation section more clear, fix some extra quotes, remove FIXME comment

pre willthames review: force private_zone to True if vpc_id is set and fix word wrap
9 years ago
Brian Coca 586fcae398 tolerate 'batch' systems that mess with stdin (#23596)
* tolerate 'batch' systems taht mess with stdin

fixes #23541

* have pause on windows tolerate devnull

* tuplie
9 years ago
Brian Coca 1ef2b6b302 added mongodb lookup docs 9 years ago
Nathaniel Case 0b4cebfb8b nxos_vlan tweaks (#23194)
* Remove commented code

Remove a lot of unnecessary output

* Tests

* Sort vlan ids _after_ running set operations, so order is not lost
9 years ago
Yanis Guenane fdce6484ec crypto/openssl_csr: Specify proper Ansible version
The commit was started before 2.3 was branched, but was only merged once
2.3 was actually branched. This leads to documentation stating this
module is new in 2.3 when it will be actually new in 2.4
9 years ago
Kevin Brebanov 5775bb2a4e apk: Fix regex search patterns
Regex patterns were not being escaped properly so package names
containing characters that could be interpreted as regex symbols
were causing failures.

Fixes: #19714
9 years ago
adejoux 9f62ef7c0a Added AIX LV module (#20574)
* Added AIX LVM module

* implemented requested changes

* fixed Terabytes size calculation

* implemented recommendations from tmshn

* moved up lv display command definition

* added type to copies parameter

* applied recommendations

* missed chlv command

* fixed build error

* fixed typo in email address

* applied new pep reco

* fix bug
9 years ago
Will Thames 9229d53143 [cloud] Add ec2_vpc_dhcp_options_facts check mode (#23106)
* Support check mode in ec2_vpc_dhcp_options_facts

As a facts module, ec2_vpc_dhcp_options_facts supports check mode
by default

* ec2_vpc_dhcp_options_facts tidy up

Use named method imports, move imports to top of code
Use shared code to handle filters and tags
Use snake case for parameter names while retaining backward compatibility
9 years ago
Dag Wieers 071903b868 vmware_guest_snapshots: Add delegate_to directive to examples (#22933)
Without it it is not doing what most people would expect.
9 years ago
Toshio Kuratomi a06014663c display path to module_utils files in verbosity vvv. 9 years ago
Andrew Gaffney ce43e80d11 Allow specifying timeout on a per-host basis 9 years ago
Antoine Cotten 7c308b3f8c Fix nonexistent module_name in callbacks (#23587) 9 years ago
Ken Celenza b8507b676b Remove Warning for provider (#23652) 9 years ago
Nathaniel Case e1dcc01d3a pep8 fix for Shippable 9 years ago
Daniel bbb9f3164c Nxos vxlan vtep vni netcfg fix (#23620)
* Code cleanup
Removed 'add' method from CustomNetworkConfig.  It is identical
to the one inherited from NetworkConfig

* Removed unused CustomNetworkConfig import

* Replaced
```
def get_existing(module, args):
    existing = {}
    netcfg = get_config(module)
    config = netcfg.get_section(parents)
```
with
```
netcfg = CustomNetworkConfig(indent=2, contents=get_config(module))
```
get_config returns a string, not an object in 2.3.

* Removed non-functioning get_object method in CustomNetworkConfig in favor of the
inherited method.

Added child_objs property so that expand_selection would work.  The original
verion never worked correctly as it compared NetworkConfig obj's and str's.

* Removed ShellError method in favor or new load_config method.

* Removed ShellError method in favor or new load_config method.
fixes #20260

* nxos requires a "no" statement to change mcase group.  Corrected.
Corrected changed logic.

* Corrected deleted CustomNetworkConfig import
9 years ago
Nathaniel Case e518b6f5b4 Clean up import statements for nxos_rollback (#23540)
* Clean up import statements for nxos_rollback

* Don't try to deal with pre-2.3 logic
9 years ago
Ganesh Nalawade 89752cc34f Make logging consistent for network platforms (#23605) 9 years ago
Abhijeet 89fc098488 Update package installation warning (#23641)
Github_release requires github3.py==1.0.0a4, update warning
for the same.

Fixes https://github.com/ansible/ansible/issues/23626

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Andreas Olsson 40f9f98f7c Fix documented defaults in the nsupdate module (#23532)
Let the documentation reflect what the module actually implements.
9 years ago
Manuel Sousa 8b4f5ba064 Fix #23338 - rabbitmq_queue message ttl can't be 0 (#23448) 9 years ago
Peter Sprygada c2370f14dd fixes issue where network modules would ignore provider host value (#23589)
This addresses a problem where the action plugin would ignore the
remote_addr value for the host.  In this case, only the inventory values
for the hostname would be considered and populate the remote host
remote_addr value for the connection plugin.
9 years ago
Brian Coca 313591f8b8 removed debug print 9 years ago
Bradley Phipps abf5d6e682 eu-west-1a is an availability zone, not a region. (#23557) 9 years ago
Dag Wieers 246c84b92a Windows: Get rid of Set-Attr in remaining modules (#23525)
Only a few more modules were using Set-Attr on the $result object rather
than using a normal hashtable. This PR changes the PSObject to a
hashtable and gets rid of Set-Attr.
9 years ago
Łukasz Kostka 94bd647bc0 Fix alarm action comparison (#23523)
This fixes issue when list from module contains more than one element.
Ansible and/or boto may put same elements in list in different order,
thus resulting task as changed.

Fixes #3310
9 years ago
claer 811eb66703 Improve Fortios IPv4 policy with logging capabilities and use the backup_filename param (#23544)
* Improve Fortios IPv4 policy with logging capabilities. While there, fix typos in examples. forti_config: use the backup_filename param and dont enforce the the filename value.

* forti-typos

* Add version_added for new options in the documentation
9 years ago
John R Barker 92a425a532 Make it easier to find network modules (#23576)
* Make it easier to find network modules

Feedback has been it's difficult (via Google or directly) to find
modules as some people search for the company name vs product name,
therefore specify both.

* "IOS XR" (not "IOS-XR")
9 years ago
John R Barker 2bb25d031b network_cli modules don't always return stdout or stdout_lines (#23573)
It's possible that if the module has a low-level failure, such as
"unable to open shell", or something else in the action plugin that
stdout and stdout_lines will not be returned.

Update the documentation to clarify this point.
9 years ago
Brian Coca 952e842720 less code 9 years ago
Matt Parkes f0f20d8a1c ini_file 'create' parameter default value should be True
Updated create default value to True to match documentation (and common sense).
9 years ago
Brian Coca 5b7e8a7bd6 centralize ansible_managed and other template vars
now template lookup supports these again.
9 years ago
Brian Coca f7566ef1f1 removed extra 'changed' from debug output 9 years ago
Senthil Kumar Ganesan c86feeaed9 Error string:Regular expression updates (#23426) 9 years ago
Brian Coca df5895e585 fix environment validation, make setup exception
removed bare vars
now environment inheritance correclty prepends
this allows more local to override more general

fixes #23180
9 years ago
Patrick Marques 731fc288fa fixes #4441 passing subnet_name parameter (#18920) 9 years ago
John R Barker 902bc58509 [WIP] Network return docs (#23441)
Network return docs
9 years ago
Jamie Lennox 92dc61e869 Allow modifying security groups in os_server (#23207)
When the security groups specified to the os_server module change they
should be updated on the server. This will require shade 1.19 where the
server security group commands were added.

Fixes: #23206
9 years ago
Colin Nolan 57c67f0c08 Add checks to confirm that the output from `xfs_info` has the expected format. 9 years ago
Abhijeet Kasurde ba3295dd3f Pylint fixes for yum module
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Abhijeet Kasurde db6d818865 Fix atomic pylint issues
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
9 years ago
Sloane Hertel 2f64e2c7fb [cloud] ec2_asg: check autoscaling group for tags before trying to use them - partially fixes #23234 (#23259)
* check autoscaling group for tags before trying to use them

* Add warning

fix comparison
9 years ago
Sloane Hertel 5f517fdfa9 [cloud] route53_zone: allow split horizon for route53_zone and refactor - fixes #22939 (#23190)
* allow split horizon for route53_zone and refactor

* fix documentation

remove comment

fix version_added

* Remove unused imports

* Only include zone as matching if it has the same privacy setting

* Use `.endswith` instead of indexing into a string

* Update public zone behavior to only create new if there is no matching public zone

* Remove from legacy PEP8 files
9 years ago
Ritesh Khadgaray 40d888922b stat: better documentation
- md5 fails if the file is not a regular file ( symlink, dir,..)
9 years ago
Albert Casademont 54316f7da0 Fix Postgres user module always reporting changes (#23488) 9 years ago
Hao Wang 3b5dd4e0a0 file module doesn't create hard link to given target directory 9 years ago
Toshio Kuratomi b4f976e9b9 When apt errors, include it's exit code
We invoke /usr/bin/apt inside of the ansible module.  When that command
exits, it doesn't always include a helpful error message.  Include the
exit code so that user's have all the information we can gice them as to
why apt failed.

Addresses #19128
9 years ago
Luis Rueda 753d30b64d Rebase using latest devel branch in order to fix conflicts (#23199) 9 years ago
Ken Celenza 83a6d90899 Update Banner Doc (#23412)
I think most people's banner will come from an external file. Show an example, and clarify there is no extra lines allowed.
9 years ago
Khachatur Nazaretyan e8f1747a88 Adds attached volumes to instance facts (#23132)
* Adds attached volumes to instance facts

* Fixed identation and modified coding style

* includes revisions after maintainers review

* Coding style modified

* simplifies getting items from dict
9 years ago
Indrajit Raychaudhuri 971187e54c pacman: Fix package matching pattern in upgraded package list (#23433)
(cherry picked from commit 9a850db605)
9 years ago
Dmitry Sobolev 1cf607d8a8 Telegram notification module updated (#22858)
* msg_format parameter added
error message received from telegram API is added to fail json
compatibility with python3 added
* pep8 formatted
* version_added property added for msg_format
* bot token must be set without 'bot' prefix in module parameters
* formatting options described in documentation
* six module for compatibility used
telegram.py removed from legacy-files.txt
9 years ago
Dag Wieers a075c56dbf vmware_guest_facts: Add delegate_to directive to example (#22931)
Without it, this is not going to do what most people expect.

This fixes #22840
9 years ago
Lucas Alvares Gomes cee8cc2a52 rpm_key: Decode bytes to string to work with Python 3 (Fixes #20326) (#20385)
* rpm_key: Decode bytes to string to work with Python 3 (#20326)

The read() method will return bytes we need to then decode() those bytes
to a string before trying to match() it using the re module.

* Make the rpm_key pgp regex more robust on both py2 and py3
9 years ago
Nathaniel Case 86c714548f Redo #23418 (#23425)
* Check for provider values inside check_args of respective network code

* Partial revert of b9ee5aa

The no_log change is okay, but take out the action result munging
9 years ago
Karl Bergström c7860d4d4b Open unarchive file in binary mode
Recent Python3 versions require open() to specify binary mode if the data is anything other than text.

Python3: Use int() instead of long() in unarchive

Changes long() to int() for CRC values in the unarchive module. Affects unarchiving of zip files. Since CRC values in zipfile are 32 bits the behaviour should be unchanged even in Python 2.
9 years ago
Paul Montero 1963e506ec Open file in binary mode for python3 9 years ago
Toshio Kuratomi 2fdb8e7f90 Fix a traceback with python3 and diff output
When retrieving file contents for diffing we need to get the contents as
binary.  Otherwise python3 will try to convert the file to text and fail
with non-decodable contents.

Fixes #23171
9 years ago
Chris Alfonso d4bd54d3b8 Fixes #23388 Network provider masks too much (#23418)
* Fixes #23388 Network provider masks too much

* Fix trailing whitespace
9 years ago
Dag Wieers 3648e6fd2b vmware_guest: Add delegate_to directive to examples (#22932)
Without this it is likely not going to do what people expect.
9 years ago
Brian Coca 0d5d5f2bf6 correctly get all hosts in 'all' 9 years ago
Pierre-Alexandre 283a88444f BUGFIX : using yaml hosts inventory, hosts in groups weren't added to the group 'all' 9 years ago
Matt Martz 621e27b5dd Urls client cert auth (#18141)
* Build HTTPSClientAuthHandler more similarly to how HTTPSHandler works

* Add docs for new client cert authentication

* Support older versions of python

* Simplify logic

* Initial support for client certs in urls.py

* Add an extra test

* Add a get_url test for client cert auth

* Add additional test for client cert auth, with validation and ssl mismatch

* Skip assert when http tester not available

* Update version_added for new options
9 years ago
Ganesh Nalawade 3934513121 Fix a10 pylint issues (#23410)
* Fix a10 pylint issues
* Moving imports to standard location
9 years ago
Toshio Kuratomi 78ced5318f Fix for recursive copy slowness
Copy module was walking over files in subdirectories repeatedly (a
directory tree a few levels deep could bring the time spent into the
tens of minutes)

This was traced to the fix for this bug report: https://github.com/ansible/ansible/issues/13013

Fixed #13013 a different way and added an integration test to check for
regressions of #13013 as we optimize this code.

Fixes #21513
9 years ago
Matt Martz 13ac993d25 Fallback to old ssl_wrap_socket 9 years ago
Matt Martz 33f7a27cba Use PyOpenSSLContext instead of deprecated wrap_ssl_context from urllib3.contrib.pyopenssl. Fixes #18528 9 years ago
Strahinja Kustudić 9f0be5a556 Ignores ControlPersist broken pipe errors. Fixes #16731
Ansible will now automatically retry a connection if SSH returns an error:

mux_client_hello_exchange: write packet: Broken pipe

This is probably a bug in SSH, but because it's safe to retry this
connection there is no need for Ansible to fail because of it.
9 years ago
Ricardo Carrillo Cruz ba7ba7adc3 Check for proper response key on eos_banner map_config_to_obj (#23399)
If we run the task with 'login' banner, the 'show banner' command
will return a dict containing key 'loginBanner'.
However for motd, it will just return 'motd'.
Yay naming consistency!
9 years ago
Matt Clay 48eeab8a53 Fix errors reported by pylint. (#23282)
* Fix pylint misplaced-bare-raise errors.
* Fix pylint return-in-init error.
* Fix pylint bad-format-character error.
* Fix pylint too-many-format-args errors.
* Fix pylint too-few-format-args errors.
* Fix pylint truncated-format-string error.
9 years ago
John R Barker 6633ae1afa look_for_keys & allow_agent actually added in 2.4
https://github.com/ansible/ansible/pull/22429 was merged, though not cherry picked into stable-2.3, so update docs
9 years ago
Guillaume Coré 3c75808c5c fix incorrect parsing of xfs_info
when device name ends with 'data' line matches in :
-                if 'data ' in line:

closes #23352
9 years ago
Toshio Kuratomi dcc63c8f93 Fix imports and pep8 problems so CI can pass again. 9 years ago
Ricardo Carrillo Cruz 3537b24742 Unhardcode the port and protocol on eos EAPI (#23350)
We were hard-coding the protocol, port and validate_certs on
eos EAPI via the action plugin.
Put defaults on the eos_argument_spec and pull those values from it.
9 years ago
Toshio Kuratomi 5f4673b5ae Update metadata for openssl_csr 9 years ago
Ganesh Nalawade 0cd50f0706 Fix #22880 junos_config update issue (#23333)
For update parameter add 'override' as acceptable value.
'override' name is in sync with junos naming convention.
9 years ago
Chris Alfonso 394cb3477b Fixes loginBanner plucking over eapi transport when loginBanner isn't set. (#23363) 9 years ago
Ganesh Nalawade 990ba90380 Fix #23360 junos_config set format issue (#23365) 9 years ago
Nathaniel Case 98c23a3342 Attempt to clear up nxos_mtu tests and documentation (#23361)
nxos_system wasn't added until 2.3, so nxos_mtu should have been deprecated
then.
9 years ago
nerzhul 637e9942ff Nsupdate idempotency fix 9 years ago
Yanis Guenane 2705e7a8aa crypto: Add new module openssl_csr (#21004)
This new module allows one to automate the generation of OpenSSL
Certificate Signing Request. It supports SAN extension.
9 years ago
Peter Sprygada f0008248d4 fix iosxr commands to encode json (#23346)
the command dict in the iosxr module_utils wasn't encoding the request
to json.  this patch will fix that problem
9 years ago
John R Barker 13dc02d49d More network_debug_troubleshooting.html (#23335)
More "unable to open shell" -> network_debug_troubleshooting.html
9 years ago
Takuya Sato dff35bc205 ecs_taskdefinition module : Convert environment variables to string (#23297)
Before modification, it fails unless it is a string type
9 years ago
John R Barker 529df8640b 'unable to open shell' -> direct to web help (#23267)
* 'unable to open shell' -> direct to web help

The "unable to open shell" error is returned for a number of different,
direct people to online docs (we we can update out of band of releases)
to guide them though the various solutions.

* fix pep8 errors
9 years ago
Varadharajan 4540853a50 Pass CSRF token along with Jenkins POST requests (#23250) 9 years ago
Matt Davis b71b157fb3 Cleanse CLIXML from win_shell stderr (#23329)
prunes all but Error stream values
9 years ago
Matt Davis 8d291f91ee improve become_method: runas error handling (#23328)
Prescriptive errors for username/password issues and NTLM/Kerb auth failures, cleans up exception noise.
9 years ago
Dag Wieers e66c98281e Small consistency fixes (#23294) 9 years ago
Ricardo Carrillo Cruz b9b4e68206 Check text key exists on eos_banner absent case (#23319)
This can fail if we don't check the key exists.
9 years ago
Chris Alfonso 3a78861cb5 Fixes #23308 ios_banner: KeyError: 'text' on state: absen (#23313) 9 years ago
Nathaniel Case d890167575 Fix nxos_facts for nxapi transport (#23302)
* Partial revert of 2e476e64cd

This broke handling of nxos_facts over nxapi

* Fix nxos_facts tests not run in isolation
9 years ago
John R Barker 485affeb12 eapi & nxapi: Document validate_certs (#23305)
* Document validate_certs for eapu & nxapi

* formatting
9 years ago
Tim Rupp 780b2f2c84 Fixes pylint errors (#23279)
Reported by gundalow, this fixes pylint errors in F5 modules
9 years ago
Will Thames b3a15e9ac3 [cloud] New AWS ec2_vpc_endpoint module for creating/deleting VPC endpoints (#20212)
* New AWS VPC Endpoint module for creating and deleting VPC endpoints

* Fix for python3, update version_added, fix flake8 issues

Change exception syntax for python 3
Update version_added to 2.3
Fix some minor flake8 issues

* ec2_vpc_endpoint: improve standards compliance

* Better documentation
* Return results in camel case format
* Improved exception handling
* Added `policy_file` argument
* Add ANSIBLE_METADATA

* Fix version_added

* Update ansible metadata to have metadata_version field
9 years ago
Benjamin Jolivot f74a9abbda fortios_ipv4_policy.py state=absent Fix 23239 (#23242)
* Resolve #23239:
  - path is missing when state=absent
  - update doc for unclear policy ID
  - required params based on state

* Fix pep8 + doc

* Fix doc

* Another doc problem...

* doc

* Update doc fot policy ID

* Fix doc string

* fix required in doc

* fix required in doc Required when I(state=present).
9 years ago
Ricardo Carrillo Cruz 2571d2f64b Refactor openvswitch_db module (#23288)
The openvswitch_db module uses the ovs-vsctl binary to
address changes.
On other network modules we follow the pattern of returning 'commands'
as part of the result, containing the commands run on the target device.
Follow that for code consistency and maintenance.
Also, adding state param, which allows to add/remove keys on columns.
9 years ago
Nathaniel Case e8538213fa Fix various junos errors (#23278) 9 years ago
Ganesh Nalawade 0b8ca98c48 Fix junos rollback id validate issue (#23283) 9 years ago
Toshio Kuratomi 572e9a8959 Update the metadata of the proxysql modules to 1.0 final format 9 years ago
James Cammarata a567c5de65 Only insert notified host if it's not already notified for certain cases
Fixes #18178
9 years ago
bmildren 21ab4343e3 Adding support for ProxySQL (#19872)
* Adding support for ProxySQL
9 years ago
Brian Coca 00231c29ba Revert "keep ansible_local as top level var, always present"
This reverts commit 97cb2016d8.

It was causing issues downstream as facts seem to be merged back for
subsequent tasks. Will restore if I ever figure out how to avoid that.
9 years ago
Matt Clay a6ca849643 Fix PEP 8 issues. 9 years ago
JP Mens 5a0b2fe3be dig lookup-plugin: add support for specifying rdclass (#10493)
* add support for specifying rdclass

* fix exception
9 years ago
Nathaniel Case 597bca3129 junos_config: Remove reliance on ability to output configuration in `set` format (#23225)
* Remove reliance on ability to output configuration in `set` format
* Support multiple warnings per rpc-reply
9 years ago
Robin Roth 6f40cb9647 Add workaround for evasive in apache2_module (#22649)
* Add workaround for evasive in apache2_module

* Fixes #22635
* Clean up workarounds for php/shib
* Add test for evasive workaround
* Remove use of re module, since all searches work with native python

* Add unit tests to apache2_module name replacements

Go back to using re package where needed

* Rename replace_name to create_apache_identifier
9 years ago
Rob 7e3af115ce Add ability to use either sec group name or sec group id or combinati… (#21049)
* Add ability to use either sec group name or sec group id or combination to ec2_lc. Also fix header size in AWS Guidelines

* Fix ec2 import to only import neccessary packages. Remove pep8 double line
9 years ago
Brian Coca 2f3ca66fbf fixed version 9 years ago
anryko bd05c653fd ec2_group: add ports and multiple source lists (#19888). 9 years ago
Brian Coca 7d64ac95df doc notes 9 years ago
Mark Chappell c5edaf5e68 ec2_lc.py: Also pass 'encrypted' when adding a volume
This only allows for using the default KMS keys, but enables encryption
at rest without needing to migrate the module to boto3
9 years ago
rmcintosh 312494d452 Add support for custom kernelid specification in Linode module 9 years ago
Chulki Lee 99ef1f3a9f git: git reset with branch
`git reset <ref>` can be ambiguous and fail to switch to the correct branch.
To avoid it, specify branch as well.
9 years ago
Dag Wieers 0715430829 win_chocolatey: Perform exact presence check (#23098)
The current implementation matches libreoffice-oldstable when testing for libreoffice.
So uninstalling libreoffice fails when libreoffice-oldstable is installed.

```
PS C:\WINDOWS\system32> choco list --local-only libreoffice
Chocolatey v0.10.3
libreoffice-oldstable 5.2.6
1 packages installed.
PS C:\WINDOWS\system32> choco list --local-only --exact libreoffice
Chocolatey v0.10.3
0 packages installed.
```

The solution is easy, just add `--exact`.
9 years ago
Toshio Kuratomi 6bad4e57bd Migrate most uses of if type() to if isinstance()
Also convert those checks to use abcs instead of dict and list.

Make a sentinel class for strategies to report when they've reache the end
9 years ago
Ricardo Carrillo Cruz 64fe7402ff Pull filesystems from dict in case is not string on eos_facts (#23254)
Apparently in some devices the filesystems gathering command can return
a dict containing a 'messages' key with the filesystems, instead of a
plain string.

Fixes #23217
9 years ago
bentaylornz 95c1b07bdb [cloud] re-raise boto ClientError if throttling timeout is reached in efs.py (#23109)
* re-raise exception as expected

The current ThrottlingException handling code hides other actual exceptions from the user, and basically goes infinite loop instead. eg when the api caller doesn't have permission (example below) to use the api, ansible effectively hangs. adding the re-raise stops execution and shows the error to the command line as expected

can test by removing permission to the efs api, and calling the efs: module

The error was: botocore.exceptions.ClientError: An error occurred (AccessDeniedException) when calling the DescribeFileSystems operation: User: <x> is not authorized to perform: elasticfilesystem:DescribeFileSystems on the specified resource

* PEP8 fix
9 years ago
Will Thames bded5ac987 [cloud] Support check_mode for ec2_vpc_subnet_facts (#23111)
* Support check_mode for ec2_vpc_subnet_facts

facts modules support check mode by default

* ec2_vpc_subnet_facts pep8 tidy up
9 years ago
Will Thames 2be64b8c3a [cloud] Support check_mode for ec2_vpc_route_table_facts (#23116)
As a facts module, just needs supports_check_mode to be
set in the argument_spec
9 years ago
Will Thames ec01aac983 [cloud] Support check_mode for ec2_vpc_nat_gateway_facts (#23114)
As a facts module, just needs supports_check_mode switched on
9 years ago
Will Thames e61be9ea78 [cloud] Remove DryRun parameter in ec2_vpc_igw_facts check_mode (#23113)
* Remove DryRun parameter in ec2_vpc_igw_facts check_mode

Using DryRun in check mode causes errors, and is not required
(as nothing changes when calling describe_internet_gateways)

Prevents the following error:
```
{"changed": false,
 "failed": true,
  "msg": "An error occurred (DryRunOperation) when calling
          the DescribeInternetGateways operation: Request
          would have succeeded, but DryRun flag is set."}
```

* ec2_vpc_igw_facts pep8 tidy up
9 years ago
Matt Clay 64458bc9a1 Fix deploy_helper join exception on no release. 9 years ago
Ricardo Carrillo Cruz 2e89126af7 Remove dupe supports_session method from eos module_utils (#23240)
Fixes #23237
9 years ago
Matt Davis d85f4a443f mark runas become method experimental (#23235)
Due to the number of "real world" caveats in the current runas become method, it was agreed that we'd warn that it's experimental on use. A potential future version based on LogonUser/CreateProcessAsUser will have very different requirements and limitations.
9 years ago
Brian Coca eb78da68dd allow plugins to override fragments 9 years ago
Jordan Borean 3e1a16c574 win_find fix up age parameter (#23195) 9 years ago
Jordan Borean 4d1b97d1ae win_stat change return islink to islnk to match stat (#23196) 9 years ago
Jacob McGill 5918bebd6e Update fortios_config.py (#23230) 9 years ago
Sergey 9a43603761 [cloud] Added account selection to PubNub BLOCKS (#23160)
* . switched from 'user.id' to 'account.id' in REST API calls.
+ added ability to select desired account (by name or identifier) from list of accounts to which authorized user have access.

* + added account option addition version.

* Remove pubnub_blocks from PEP8-legacy list
9 years ago
Adrian Likins 15bd7e48da Add ansible executable path (argv[0]) to --version (#22262)
For example:

    ansible 2.3.0 (argv0_in_version f53921093f) last updated 2017/03/03 13:33:31 (GMT -400)
      config file = /home/adrian/.ansible.cfg
      configured module search path = Default w/o overrides
      executable location = /home/adrian/src/ansible/bin/ansible

This should help troubleshooting install issues.
9 years ago
Will Thames cd19964bca [cloud] Support check_mode for ec2_group_facts (#23164)
Update imports to use named imports
9 years ago
Prasad Katti 2b18c0ed07 [cloud][docs] Must use the count_tag option with exact_count (#23167)
Fixed an example in ec2 module. The example does not work without
count_tag option.
9 years ago
Adrian Likins dbc0c01c86 Show 'ansible' python module paths in --version (#22264)
* Show 'ansible' python module paths in --version
9 years ago
Strahinja Kustudić 7358bf88e2 Fixes ignoreerrors not working with sysctl_set 9 years ago
Sloane Hertel 224b5d5283 remove vpc requirement for default outbound traffic (#22743) 9 years ago
Ryan Brown 2196fa0e95 [cloud][tests] fixtures for placebo to test AWS modules using boto3 (#21253)
* [cloud][tests] Create fixtures for using placebo to test boto3-using modules

* Use pytest's importorskip instead of manually skipping on missing deps

* Fix imports in cloudformation module

* Delete unused code

* Add maybe_sleep fixtures to speed up recorded test runs

* Build basic placebo-CFN tests

* Commit placebo recordings of basic stack operations

* Add placebo to test-requires

* Allow unit tests to run regardless of environment by setting a default region

* Use explicit relative import for Python 3 compat

* Use __name__ attribute that works on Python 2 and 3
9 years ago
Senthil Kumar Ganesan 632270b913 Updated the Regex for promt matching (#23186) 9 years ago
AlexanderStock e4206d8ef5 Added Tag functionality to Volume,Template,FWRule,PF Rule,ISO,Snapshot (#23141)
* Added Tag functionality to Volume,Template,FWRule,PF Rule,ISO,Snapshot

* Update cs_firewall.py

Fixed whitespace

* Added doc for Cloudstack Tags in Volume,Template,FWRule,PF Rule,ISO,Snapshot
9 years ago
smaftoul 9812d211e7 typo: psuedo -> pseudo (#23177) 9 years ago
Will Thames 9a3a0d731f Fix typo in AWS guidelines doc (#23168)
Change `format_ex` to `format_exc`
9 years ago
Monty Taylor 443102c9f0 Remove old deprecated OpenStack modules (#23002)
These were deprecated back in the 1.x timeframe, so have been deprecated
for the 2 cycles required. They also do things wrong and should be
avoided anyway. Go ahead and remove them.
9 years ago
Will Thames ef0bc0aa52 Support check_mode for add_host
`add_host` doesn't really actually change anything - there's no
reason why it shouldn't work in `check_mode`.
9 years ago
Tim Rupp e27b4c2ae4 Removes expanduser in favor of type path
Removes the usage of expanduser in favor of the type 'path' for
module options. Related to #12263
9 years ago
Erwin Lang 3efb11e225 synchronize: Exclude ssh_args from quoting
Makes it possible again to pass more than one argument via ssh_args to the synchronize module.
9 years ago
Tom Melendez 8b677e25c4 [cloud][GCP]: New module gcp_backend_service for load balancer backends (#22857)
* GCP: backend service module

* GCP: rework param-checking code. Fixed a couple of bugs and changed to ValueError instead of custom tuple.

* GCP: fixed commit, spelled out Google Cloud for clarity in module description.
9 years ago
Tim Rupp 2bf7297bf3 Removes expanduser in favor of type path (#21369)
Removes the usage of expanduser in favor of the type 'path' for
module options. Related to #12263
9 years ago
Tim Rupp 2a576a1999 Fixes generators and other misc fixes (#22887)
fixed itertools.imap busting several things that used to be lists,
profiles not being set correctly, upon create, when it was a separate
method, allowed port having the wrong lowest port (zero is allowed),
empty port value should just be interpreted as None.
9 years ago
Alex Willmer f5aa9df1fd Include '/' & '.' when password_hash generates a new salt
The password_hash filter will generate a salt value if none is supplied.
The character set used by Ansible

(upper & lowercase letters, digits)

did not match that used by libc crypt

(upper & lowercase letters, digits, full stop, forward slash).

This resulted in a slightly smaller key space, and hence hashes would be
slightly easier to attack (e.g. by dictionary, brute force).
9 years ago
Sloane Hertel f5f7a8c681 [cloud] only create new eni if none of the filters lead to one match (#22919) 9 years ago
Sloane Hertel dab0e75ce0 [cloud] update the local variable route_table with the latest tag changes (#23136) 9 years ago
Jason DeTiberus 3642de9ecc k8s/openshift module_utils split (#23115) 9 years ago
Peter Sprygada 2e476e64cd fixes error parsing lldp neighbors when running nxos_facts (#23134) 9 years ago
Senthil Kumar Ganesan a0344acd78 Ansible 2.3 feature support for dellos6. (#23084)
* Ansible 2.3 feature support for dellos6.

- With the new Ansible 2.3 infra changes, the dellos modules doesn't work
  (the new infra changes are not backward compatible), so added the below
  changes support it.
- Added the new terminal plugin for DellOS6
- Added the new action plugin for DellOS6
- Modified the modules to work with the new infra.
- with that it adds support for DellOS6 Persistent Connection support.

* Remove pep8 confirming files from dellos6.py and dellos6_config legacy-files
9 years ago
Sloane Hertel 44b2859338 ec2: fix instids and res_list being referenced before assigned - fixes #22692 (#23053)
* add else statement to ensure instids is set

set res_list to None to avoid UnboundLocalError and fix iteration over a nonetype by adding an empty tuple

* make res_list empty tuple by default and check for instids before setting tags (fails otherwise)
9 years ago
Konstantin Suvorov c1b3d6a51f Fix 'sequence' lookup shortcut syntax and documentation (#22989)
* fix 'sequence' lookup shortcut syntax and documentation

* Update playbooks_loops.rst

Minor edits for grammar and clarity.

* Update playbooks_loops.rst

Another tweak for clarity.
9 years ago
Ricardo Carrillo Cruz 1abc73da68 Fix ios_config return on python 2.4 (#23094) 9 years ago
Chris Houseknecht 4099eb41b9 Treats both [] and {} as equal to None (#23088) 9 years ago
Ricardo Carrillo Cruz 66e29f0a7c Do not re.search show configuration stdout if empty (#23087)
If the banner is not set, the stdout of 'show configuration | begin banner <banner>'
returns empty string thus the re.search raises an exception.

Fixes #22216
9 years ago
Peter Sprygada 88ce6fd273 restores pre 2.3 behavior with respects to keys (#23083)
This removes the requirement to configure look_for_keys=False and
restores the behavior to disable key lookup if no key was provided.
9 years ago
Toshio Kuratomi 6f77498700 Split on newlines when searching for become prompt
The fix for leading junk in sudo output: fee6e29 causes problems with
ssh + sudo.  On the initial connection using ControlPersist, the output
that we scan for the prompt contains both the command we're sending to
configure the prompt and the prompt itself.  The code in fee6e29 ends up
sending the password when it sees the line configuring the prompt which
is too early.

Switch to a version that splits on lines and then checks whether the
first or last line starts with the prompt to decide if it's time to send
the password.

Fixes #23054
References #20858
9 years ago
jhawkesworth 4eba248a8e changed parameter name from forest_root_dns_domain to dns_domain_name (to match documentation and other win_domain* modules) and fix example which has win_domain_controller instead of win_domain for module name. (#23081) 9 years ago
jhawkesworth a3e2280e62 correct examples to match correct _password module parameter names (#23067) 9 years ago
Artem Zinenko a5da638d34 Fix #22126 (#22128) 9 years ago
Pavel Glushchak 097173c6f5 Added Virtuozzo distribution support
Virtuozzo Linux is based on CentOS sources. Thus OS family
should be recognized as 'RedHat'.

Signed-off-by: Pavel Glushchak <pglushchak@virtuozzo.com>
9 years ago
Fabrizio Colonna 3765dc37ca Fixed issue #22996 and issue #22955.
(cherry picked from commit 4465171e89)
9 years ago
Victor Perron bc44175d8d paramiko_ssh: fix crash upon pass prompt in py3
The pass prompt expects an answer and compares a `str` to a binary buffer, thus crashing.

It's an obvious fix to help transitioning towards Python3 and hopes it does not need a specific test.
9 years ago
Jeremy L. Gaddis b52dbddc17 Update requirements for seboolean module (fixes #23028) 9 years ago
Ricardo Carrillo Cruz cc7e09451a Fall-back to show configuration on old IOSXR devices (#22900)
In old IOSXR versions, 'show commit changes diff' does not work.
Fall-back to 'show configuration' if that command fails so execution
can move forward.

Fixes #22235
9 years ago
Dag Wieers 521fa9b458 win_chocolatey: Fix state=latest when absent (#23041)
When using state=latest with the package not being installled, Ansible complains that the package is not installed and fails the task.
Whereas the expected behaviour is to install the package when it is missing.

This PR fixes this behaviour.
9 years ago
Matt Clay 0ed86775f0 Fix PEP 8 issues. 9 years ago
Dr Josef Karthauser 0752906ae5 Add --jail support to pkgng. (#22958)
* Add --jail support to pkgng.

* Bump the version number for the --jail argument.
9 years ago
Brian Coca 37cef2a9eb standarized role/plugin paths 9 years ago
Sloane Hertel 7720ef8ec1 [cloud][python3] bytes fix to make ec2_key work on python 3 (#23051) 9 years ago
Brian Coca ea7bff4a3f changed spec to options as per irc meeting 9 years ago
Toshio Kuratomi d3a1aea7c5 Fix a couple issues in synchronize with docker (#23047)
* Fix a couple issues in synchronize with docker

* Make the rsync_opts parse as a list using the same criteria as
  module_utils argumentspec parsing
* Do not quote arguments in the action plugin.  The module will quote as
  it knows whether it will invoke rsync with a shell or via exec.

Fixes #23046
9 years ago
Peter Sprygada 768cb437ab minor updates to network connection plugins (#23043)
* removes unused log() function in network_cli
* adds method comments to terminal plugin base
9 years ago
Brian Coca c0db6d79f6 minor correction to module path option docs 9 years ago
Brian Coca 99e298a2a6 removed bad ignore as host can override connection
also breaks testing network modules
9 years ago
Evgeni Golov 61579aebb2 cron: don't force changed=True when old crontab was empty
The cron module forces changed=True when there was no real change,
but the original crontab did not contain a final newline, which is
mandatory.

When the user has no crontab or the user does not exist at all,
crontab -l exits with 1 and the cron module correctly interprets
this as "no crontab" and stores the old crontab as "".

However this triggers changed=True, even if we're not going to
change anything, e.g. when removing a crontab entry from a user
who has no crontabs at all.

Let's special-case the fact that the old crontab is empty and not
force changed=True in that case.
9 years ago
Ricardo Carrillo Cruz 6fa3cb55e1 Fix dynamodb pep8 issues (#23032) 9 years ago
Miyurz 1ea1becf23 Fixes bug https://github.com/ansible/ansible/issues/22455 - Git reset… (#22502)
* Fixes bug https://github.com/ansible/ansible/issues/22455 - Git reset fails when file with the name 'origin' is present in the repository

* #22455 Integration test for git module to test if it clones a repository with a file named origin

* Fixed yaml errors for test/integration/roles/test_git_clone/tasks/main.yml

* Removed the newly added target git and moved the code to test/integration/targets/git

* Reorganised code structure as per comments

* Fixed playbook name

* Added code that didn't make it to the playbook before.

* No longer need git.yml

* Remove non tasks specific code from tasks file and use existing variables

* Removed msg var from the vars.yml
9 years ago
nevotheless ab8578d343 Update netapp_e_amg_sync.py (#22693) 9 years ago
Corey Christous 34a3ab94d8 add tagging to dynamodb_table.py (#20946)
* add tagging to dynamodb_table.py

* fix doc syntax

* address PR comments

* add boto3 has tagging check
9 years ago
Ricardo Carrillo Cruz a5b12ff269 Introspect flag to use on 'show run' when using defaults in ios_config (#22903)
When the ios_config module has 'defaults' param it runs in the device the command
'show running-config all' but 'all' may not be available in older devices.
This change makes introspection by using the help command and run 'full' in case
'all' is not available.

Fixes #22747
9 years ago
Chris Houseknecht d2ea851d09 Adds k8s_common.py (#22899) 9 years ago
Mike Hume a4ae329465 Update __init__.py
Just guessin, but is this how it is supposed to read?
9 years ago
Hugo Chargois 1bc5527c69 Vault: Remove tmp decrypted file when experiencing error while writing (#14835)
* Vault edit: Erase tmp file if error while writing to it

* Close the FDs returned by mkstemp()
9 years ago
Jon "The Nice Guy" Spriggs 8e0c11ebc4 Add examples in os_server module showing userdata (#22997)
* Add examples in os_server module showing userdata

Added an example using Bash and also using Cloud-init. Also, showing using {% raw %} and {% endraw %} to provide a pointer to those hitting similar issues to the ones I had.

* Removed erronious whitespace
9 years ago
Nick Ball c8364d64d6 [cloud] New module: AWS lightsail (#19846)
* Add AWS lightsail module

* lightsail: fix doc error + badly formatted yaml

* lightsail: code style cleanup

* make requested lightsail changes

* fix imports and pep8

* fix metadata and version

fix yaml

fix RETURN section
9 years ago
Senthil Kumar Ganesan dd63dfcf1e Ansible 2.3 feature support for dellos9 and dellos10 (#22856)
* Ansible 2.3 feature support for dellos9 and dellos10
* Use Persistent Connection Manager

* Fix CI issue, revert the doc and metadata changes

* Reverted the meta_info (supported_by) to community from core

* Fixed the CI issues, use module_utisl.six and updated legacy-files
9 years ago
John R Barker f9b75d44e8 pep8 fixes (#23005) 9 years ago
John R Barker 58441869bd metadata_version, not version 9 years ago
Will Thames 7142e28423 [cloud] Default `encrypted` parameter on ec2_ami_copy to False (#22634)
Set encrypted to default False, rather than None

Otherwise you get:

```
Invalid type for parameter Encrypted, value: None, type: <type 'NoneType'>, valid types: <type 'bool'>)
```
9 years ago
Davis Phillips 36e24c53c6 Vmware resource pool first add (#21116)
* Adding first checkin of resource_pool module
* fixing length issues and indentation multipliers
* mend
* mend
* mend
* remove * import from modules
* Add space on variable assignments
* changing line 321 to less characters
* fixing pep8 issues
* mend
* cleaning up example section
* Add RETURN section
* adding spacing to list
* all spacing consistent now
* move imports as per CI
9 years ago
Peter Sprygada ab4b8cb104 removes unused code in eos action plugin (#22986) 9 years ago
Alex Lo ac74520b6f ec2_group: description property is immutable (#19790)
* update integration tests for updated boto exception message

* integration tests fail on both "test credential" test cases

exception bubbles out of module.  instead catch and wrap

* ec2_group does not support updating a security group's description

AWS security group descriptions are immutable.
if ec2_group finds a group that matches by name, but the descriptions do not match, the module does not support this case
previously it would check if the group was used, but would not do anything if it was

old behavior was erroneous because it could make a user expect that the description change of a group was fine when in fact it did not occur
also, it made an expensive check against all ec2 instances for no good reason

* comments not doc strings

* else must have pass w/o doc-string statement

* Catch specific BotoServerException, give context around error when fetching SGs

* python3 compatible exception blocks

* add traceback to fail_json

* two blank lines before first function
9 years ago
Peter Sprygada 3169cbd493 roll up of fixes for sros modules (#22972)
* fixes action handlers for sros
* fixes sros_config module execution to use AnsibleModule
* fixes sros_command module to use socket connection
* adds sros to constants
9 years ago
Peter Sprygada 33624fe96f fixes junos_package module to use junos_pyez (#22973)
This allows junos_package to use junos_pyez directly instead of the
persistent connection.  This is a workaround fix for 2.3
9 years ago
Gabriele 9b2bdf2df6 Fixing module behavior when route_target_both is used (#20076) 9 years ago
Peter Sprygada 6a414371a1 fixes issue where nxos module will fail due to KeyError (#22966)
Updates nxos action handler to handle deleting provider key if exists or
silently continuing if a  KeyError is raised.
9 years ago
Peter Sprygada e93cdecef1 fixes log message in junos action handler (#22965) 9 years ago
Toshio Kuratomi 9c9ef0d6ab Fix a few problems with the metadata extraction for docs (#22963)
* key is ANSIBLE_METADATA, not METADATA
* Need to check that the node is an ast.Dict, not a real dict.
* Need to convert the ast.Dict into a real dict via literal_eval.
9 years ago
ukaj db328a0f83 [cloud] Add support for running s3 module in check mode (#22188) 9 years ago
Brian Coca 9a05113daf pass params to validate against 9 years ago
Brian Coca 25de905c6e subspec protptype 9 years ago
scottb ed413f2b28 Update vault.py
Edit for conciseness and clarity.
9 years ago
Brian Coca 2a2e02aea4 .--. . .--. ---.. / .. ... / .- -. -. --- -.-- .. -. --. 9 years ago
Brian Coca 18a7a1ec31 added docs to CLI docstringsadded
removed 'now intermediate build files' from repo
adjusted gitignore
9 years ago
Brian Coca b4c47ebf68 draft to generate man pages 9 years ago
Brian Coca 7b197d823e let user control "auto-de-vault" (#22739)
* added option to toggle off autodevaulting

* fixes per feedbazck
9 years ago
Toshio Kuratomi 29f623571e Handle the case where HTTPError.info() returns an object that aren't (#22894)
dict-like enough (can't be used with **).

This should give a better error message for #22872
9 years ago
Erwin Lang f7c9f44aab synchronize: Convert cmd to list and fix handling of the copy_links argument (#22573)
* synchronize: Convert cmd to list and fix handling of the copy_links argument

Converting cmd from str to list stops the pain of argument quoting/escaping.

* synchronize: Update imports according to #pullrequestreview-28758614
9 years ago
Toshio Kuratomi 65d9feea4f Revert "Quote ssh_args"
This reverts commit a9c3a452f0.
9 years ago
Toshio Kuratomi a9c3a452f0 Quote ssh_args
Fixes #22111
9 years ago
Alexander Gordeev 4b9b0a25c3 Add pvs info to linux hardware 'ansible_lvm' facts (#16773)
This change adds the information about physical volume to hardware
facts.
9 years ago
Miroslav Lichvar c1a766df98 Add PHC and timestamping info to network interface facts on Linux (#21767) 9 years ago
Adrian Likins 25be6aebc3 Add HDD serial numbers. (rebase/fixes of #9454) (#22852)
Add HDD serial numbers to linux hardware facts via 'sg_inq' tool
9 years ago
Matt Davis e084e8809e force Windows to always use preamble-free UTF8 input encoding (#22934)
* fixes #15770
* When running under the UTF-8 codepage, Powershell subprocesses will fail (eg, Start-Job, others) if the input encoding is using the default BOM preamble. This fix forces it to use no preamble in leaf_exec and win_shell, and includes tests to verify that Start-Job works.
9 years ago
Dhivyap cd662efd2b Fixes#21557-Handled dellos9_facts crash with IPV6 configs (#21652) 9 years ago
Dag Wieers 1cfaa5caab win_command/win_shell: Clean up and make coherent (#21371)
* win_command/win_shell: Clean up and make coherent

Changes include:
- Make win_command and win_shell more coherent
- Make condensed one-line more readable

* Revert to original formatting
9 years ago
Artem Zinenko f4b34a4c3b win_firewall_rule doesn't fail when profile is "any" or remoteip is IPv4 and the task runs more than once. (#22555)
* Fixed #22554

* Wrote tests for win_firewall_rule module

* Fixed #22786

* Fixed review comments

* Fixed #22799

* Added test when RemoteIP containt a netmask

* Revert comment
9 years ago
Gabriele d7d76f3aaf Fixing nxos_vrf_interface when interface name is not full (#22769) 9 years ago
Luis Rueda 0fe29f8eb1 Update netconf_config.py (#22429)
Fixes issue https://github.com/ansible/ansible/issues/22410
Fix trailing whitespace at the end of line 66
Fix version_added: "2.3" for allow_agent and look_for_keys
9 years ago
Dag Wieers ac43a1bbbc Windows: Use the correct newline sequence for the platform (#21846)
This change to the template action plugin make template use the
platform's native newline_sequence for Jinja.

We also added the option `newline_sequence` to change the newline
sequence using by Jinja if you need to use another newline sequence than
the platform default.

This was previously discussed in
https://github.com/ansible/ansible/issues/16255#issuecomment-278289414

And also relates to issue #21128
9 years ago
Peter Sprygada 866f67e213 fixes a number of issues with nxos_facts (#22923)
* updates command runs to return warning if command fails
* fixes variable issues from recent refactoring
* removes provider from return of module
9 years ago
Matt Davis 73f50b4f9f fix Windows env handling (#22927)
* fixes #22441
* fixes #22655
* moves all env handling into the exec wrapper; this should work for everything but raw, which is consistent with non-Windows.
9 years ago
Jordan Borean f1ab879bb6 win_reg_stat change the module parameters for standardisation (#22732) 9 years ago
Jordan Borean 89b78cb5e8 win_share: tweaks after the caching mode changes (#22763)
* win_share: tweaks after the caching mode changes

* Re-added the Unknown option back in
9 years ago
Toshio Kuratomi 2fff690caa Update module_utils.six to latest (#22855)
* Update module_utils.six to latest

We've been held back on the version of six we could use on the module
side to 1.4.x because of python-2.4 compatibility.  Now that our minimum
is Python-2.6, we can update to the latest version of six in
module_utils and get rid of the second copy in lib/ansible/compat.
9 years ago
Toshio Kuratomi c7c8481181 No need to specialcase comment characters
If the # is inside of quotes, it's a string.  If it's outside of quotes
then an exception will be raised which we'll catch and then send to the
to_text() call at the end of the function anyhow.

Fixes #22868
9 years ago
Toshio Kuratomi 589e217278 base64 functions must be given byte strings
The base64 stdlib functions require byte strings.  So we have to
transform the strings into bytes before handing to the stdlib and then
transform them back into text before handing back to ansible.

Fixes #22873
9 years ago
Toshio Kuratomi d0712b1ec7 Make yum's state=list obey disablerepo and enablerepo
Fixes #22876
9 years ago
Peter Sprygada cda3e001c6 fixes issue when host is defined in provider for junos (#22918)
The junos action handler was not honoring the host value in the provider
argument.  This patch will now use the provider host entry if it exists
and falls back to the inventory hostname
9 years ago
Matt Martz 0ced29c51b Don't skip action/__init__.py (#22911) 9 years ago
Matt Martz ed52d91249 Swap pep8 current to legacy (#22891) 9 years ago
Sloane Hertel 1ca4a42c0e include traceback in exception handling (#22807) 9 years ago
Adrian Likins 0bb3545333 Remove ununsed Connection.log method (#22837)
method referenced 'logger' which no longer exists.
9 years ago
Adrian Likins dfec69b9a1 Fix bad ref to AnsibleConnectionError -> AnsibleConnectionFailure (#22838) 9 years ago
Dustin Spicuzza 78de05e58d win_iis_webapppool: Use Get-AnsibleParam to retrieve parameter
- Fixes #22805
9 years ago
Adrian Likins ee478c4885 make netconf.py stylish (#22839)
(flake8 stuff)

netconf.py:22:1: F401 're' imported but unused
netconf.py:23:1: F401 'socket' imported but unused
netconf.py:24:1: F401 'json' imported but unused
netconf.py:25:1: F401 'signal' imported but unused
netconf.py:31:1: F401 'ansible.module_utils.six.moves.StringIO' imported but unused
9 years ago
Brian Coca 91a385b87d etcd doc tests 9 years ago
Brian Coca d14634ca21 uncommit the crime of extra spaces in docstring 9 years ago
Brian Coca 7839f70e36 Enable documentation in plugins
Made ansible-doc more plugin agnostic
We can have docs in lookup, callback, connectionm strategy, etc
Use first docstring and make pepizis happy
generalized module_docs to plugin_docs
documented cartesian, ssh, default, jsonfile, etc as examples
changed lack of docs to warning when listing
made smarter about bad docstrings
better blacklisting
added handling of options/config/envs/etc
move blacklist to find_plugins, only need once
9 years ago
Brian Coca d3115ae8f3 put cache base classes in __init__ (#22809)
* put cache base classes in __init__

* added placeholder
9 years ago
Brian Coca 97cb2016d8 keep ansible_local as top level var, always present 9 years ago
Evgeni Golov 7a00f28804 synchronize: explicitly set the executable for localhost
Otherwise the executable for the destination is also used on the local
machine and this might not exist.

Fixes: #22867
9 years ago
Matt Martz 3164e8b561 E501 fixes (#22879) 9 years ago
Glen Maetzig ac992eff1c Import camel_dict_to_snake_dict method to fix error when executing get_nat_gateways() method
(cherry picked from commit 223fc34ab9)
9 years ago
Shaun Brady cd24bbbc9c Missing purge_subnets parameter on function call
purge_subnets|routes were introduced recently.
ensure_subnet_associations now takes purge_subnets as a parameter.  A
call to this function was missed when introducing this feature.  With
out, results in a "got 5 expected 6" error.
9 years ago
mjfroehlich cc50b803df [cloud][route53_health_check] Consider port in identity test (#22762)
Allows to health-check two services on one host. Before, asking for 2 health checks being present for `http://myhost:8888` and `http://myhost:9999`  resulted in just a single health check, as this module considered the two specs as equal.

Bonus: route53_health_check now passes style guidelines
9 years ago
Brian Coca 052be86605 fix for loosing ungrouped hosts in ini
fixes #22861
9 years ago
Brian Coca 5e98be2e62 better handling of parsed
updated tests to match new result output
9 years ago
Brian Coca 9ad62a48ab prevent failure for meta: reset_connection
now plugins that don't explicitly support it give a warning.
9 years ago
Robin Schneider bbc6af6749 Fix use of unauthenticated connection examples in git module docs
Ref: https://git-scm.com/book/ch4-1.html#The-Git-Protocol
9 years ago
Ricardo Carrillo Cruz 98c98125f0 Fallback to show-run on ios_banner for devices where show banner does not work (#22793)
On switches 'show banner' command doesn't work, fallback to show run|begin banner
and extract the banner text in case that fails.
9 years ago
Matt Martz 02f66b9369 E1 legacy pep8 fixes (#21933)
* E1 pep8 fixes

* e111 fix for rds.py
9 years ago
Ted Timmons 887456ab8e Fix stderr false return value (#22845)
* ensure exit_json does not fail from stderr=False

- do a little bit of safety-checking in exit_json to not try to .splitlines() on a boolean
- remove the stderr=boolean from uri.py, this is the only spot that uses it (at least so obviously)
- add unit tests that call exit_json. These are useless because the stderr parsing is in _execute_module and is difficult to mock; deleting these tests after the commit.

* remove added unit tests per prev commit

exit_json doesn't do the param parsing, that is buried deep inside _execute_module.
9 years ago
Brian Coca 5beb27ef5e use namespaced facts 9 years ago
yuriy-z 40a1f20bea Add storage device WWN to facts for Linux (#16640)
World Wide Name (WWN) is unique identifier of device.
This patch adds this identifier to facts for Linux.
9 years ago
Johan Guldmyr 897201c4be add infiniband network type (#18833) 9 years ago
Christian Albrecht 66818050b0 Add perm_hwaddr on Linux bonding slave nics (#19071)
This patch will additionally report the `perm_hwaddr`
fact of a Linux bonding slave network interface.

Related to issue #19067
9 years ago
Brian Coca 455aff8436 ported fix from ansible-core #5639
From 3d09c94faeaa52075055f23744d8b52581c59bb2 Mon Sep 17 00:00:00 2001
Evan Kaufman <evan@digitalflophouse.com>
9 years ago
Brian Coca 2022fc162a fixed name to unit 9 years ago
Brian Coca b82aa41e31 removed deprecated config/env vars 9 years ago
Brian Coca 3f4b87f0c0 allow systemd to 'just' reload 9 years ago
Peter Sprygada d6787632c9 fixes return data structure (#22830)
The return was being re-written instead of updated so warnings were
lost.  This patch now updates the result instead of replacing it.
9 years ago
Joshua C. Randall e7fd38af78 Fix get_s3_connection (fixes #22317) (#22318)
* Fix get_s3_connection (fixes #22317)

Override aws_connect_kwargs rather than prepending to them. Should fix an issue in which `calling_format` is set twice in the kwargs passed to `boto.connect_s3` or `S3Connection` if a bucket name contains a `.`

* Revert "Fix get_s3_connection (fixes #22317)"

This reverts commit 7f61b8bebd.

* implements alternative way of fixing issue with aws_connect_kwargs for rgw and fakes3 (fixes 22317)

* add comment to explain why the keys are being removed from aws_connect_kwargs

* remove trailing whitespace on comment line
9 years ago
René Moser e3525d8df9 cloudstack: fix pep8 for loadbalancer modules (#22822) 9 years ago
Peter Sprygada e20ed8bc0c replaces logging with display for network connection plugins (#22819)
* updates network_cli and netconf connection plugins
* updates ansible-connection
9 years ago
Peter Sprygada ed7cace425 implements python logging for network connection plugin (#22817)
* enables logging for network_cli and paramiko
* enables logging for ansible-connection
* enabled logging for netconf connection
9 years ago
Joseph Price ed15ba1b3c CLI: unfrack --private-key path
Relative paths can break the synchronize plugin when the playbook
is not in the current working directory.

Fixes: ansible/ansible#22695
9 years ago
Brian Coca 07d9366ed8 added 'existing' back
fixes #22785
9 years ago
Tom Melendez 1c38cba7ca [GCE] Invalid zone reported through fail_json
* added new helper function for zones and regions.
* modified GCE module to use it

Fixes: ansible/ansible#20616
9 years ago
Peter Sprygada cdb4d350b4 removes unneeded exception 9 years ago
Ondra Machacek a46c55b2dd cloud: ovirt: Add sparsify option to ovirt_disks (#22560)
This patch fixes: https://github.com/ansible/ansible/issues/22348
9 years ago
René Moser 24c617766c cloudstack: fix load balancer idempotency if no zone given (#22768)
get_zone() is special, as it always returns a zone (default zone) even
if no zone param is given. This makes sense for many use cases.
9 years ago
David Baumann 634d6894e3 Add Missing default param for caching_mode (#22753)
Add Missing default param for caching_mode and Usage of new Ansible-Param Commant with default Value
9 years ago
Sloane Hertel 4749b75090 [cloud] ec2_eni: don't modify a network interface without eni_id - fixes #22401 (#22689)
* don't modify an eni without eni_id

fix pep8

remove ec2_eni from pep8 legacy files

remove a couple unused variables in main()

fix the documentation

* fix yaml
9 years ago
Sloane Hertel 8ccde6fbb0 [cloud] make docs for ec2_group rules more clear (#22701)
make ec2_group pep8

removed ec2_group from pep8 legacy files
9 years ago
Sloane Hertel a4552c11b3 allow groups parameter to be noticed as an empty list (#22707)
make iam.py pep8

remove iam.py from pep8 legacy files
9 years ago
Andrea Scarpino c80d696cec win_file: fix error when creating an existing dir (#19070)
If something else created the dir New-Item will throw an exception and
the task will fail. Check the existing file and as long as it's a dir,
we don't need to error out.
9 years ago
René Moser b90517caf9 cloudstack: implement config overloading and ENV vars for API auth (#22724)
* cloudstack: fix connection by ENV vars and configs overloading

* cloudstack: pep8 cloudstack module_utils

* cloudstack: allow api_url to be set in ini config

* docsite: explain ENV vars support as written in python-cs for ansible
9 years ago
Tom Melendez f5f6cf467e [GCE] Support default credentials (#22723)
Add support for default credentials. Practically, this means that a playbook creator would not have to specify the service_account_email or credentials_file Ansible parameters.

Default Credentials only work when running on Google Cloud Platform. The 'project_id' is still required.

A test has been added to trigger this condition.
9 years ago
Matt Davis ffa4f0c427 Suppress Windows Add-Type debug noise (#22722) 9 years ago
Andreas Mosti 1fa7a3db27 Added example of removing the standard website and port 80 binding (#22457) 9 years ago
Brian Coca c6dedea1a6 corrected docs 9 years ago
Jens Carl cd39ff9996 Add parameters to limit replace to certain section of the file
Add parameters 'after' and 'before' to limit the replacement/remove of
lines to a certain section of the file.
9 years ago
Brian Coca 4319ddd5de allow users to control group var merge order (#22580)
* allow users to control group var merge order

With ansible_group_priority var at each group will determine merge order with siblings,
falling back to sorted names when priority is equal as it did before.

Parent/children relationships still work as they did and have higher precedence than priority

* move priority setting to groups, sourc indep

* now both inventory and play group follow priority

* removed double exception handling
9 years ago
jralbert 5334814396 Cast syslogport value from getenv as int (#22664)
SysLogHandler requires an int for port, but getenv produces a string.
Cast return from getenv as int to overcome this mismatch.
9 years ago
Ilya Simonenko dba8edf735 cloud: docker: Fixes #22638 load image to memory when archive_path provided (#22642) 9 years ago
Brian Coca 4fb8b03f05 added docstring to get_hosts_left 9 years ago
Brian Coca 6a4039e169 readded !vault-encrypted for backwards compat
even though this was never documented someone might be using it
9 years ago
Brian Coca 6b46cc5c73 added new 'order' directive to sort hosts in play
fixes #10964
9 years ago
Ricardo Carrillo Cruz 6e56a61535 Add ios_banner module (#22687)
With unit and integration tests.
9 years ago
Dag Wieers 895664f539 vmware_guest: Fix "KeyError: 'changed'" (#22564)
Due to how the result-dictionary is being used, in some codepaths it would have an empty dictionary.
This then is problematic if the code expects the 'changed' key later on.

I also improved the docs a bit, by clearly marking the parameter names and URL in the documentation.
9 years ago
Ondra Machacek 7a3b6ca37c cloud: ovirt: fix ovirt_nics profile search (#22684) 9 years ago
Brian Coca dd8d699981 namespace facts (#18445)
* namespace facts

always namespace facts, make the polluting of 'main' conditional on config

* updated to 2.4

* Update intro_configuration.rst
9 years ago
Brian Coca 0c44959800 added new tests any and all (#22665)
* added new tests any and all

* updated code names
9 years ago
Brian Coca eb0b1e149d warn when failed to match host pattern
fixes #11934
9 years ago
Dylan Silva 9ffad27319 Changed supported_by from curated to community (#22654) 9 years ago
Dylan Silva 4c8da5ad49 changed supported_by from curated to community (#22656) 9 years ago
Dylan Silva 049946b26f Dropped openwrt module from curated to community (#22657) 9 years ago
Brian Coca 517cdbe22a better 'role detection' for dwim (#22513)
* better 'role detection' for dwim

possible fix for #21735

* fixed unmatched paren

* pep does not like the denting
9 years ago
Brian Coca 39ba55e5ac corrected host group ancestor management 9 years ago
Brian Coca 7b0f765a57 made error slightly more neutral in case of 'local' 9 years ago
Brian Coca 273786d0bd simplified pattern matching, fixed ungrouped (#22523)
* simplified pattern matching, fixed ungrouped

ungrouped was ignored for patterns, now it is usable again

* even simpler
9 years ago
John R Barker 08d9a5932f metadata_version 9 years ago
Sloane Hertel 5e67f86586 [cloud] fix ec2_vpc_route_table module documentation - Fixes #19344 (#22367)
* improve ec2_vpc_route_table documentation

* make pep8
9 years ago
Sloane Hertel 3aef028d42 [cloud] make ec2 module pep8 (#22421)
* making ec2 pep8

* remove ec2 from pep8 legacy files

* missed a couple

* fix imports and remove iteritems

* making group_id and group_name mutually exclusive and fixing whitespace
9 years ago
John R Barker 9857ce8ddb Fix render issue (#22650) 9 years ago
John R Barker f82239e1f7 [WIP] Network module docs 2.3 (#22454)
* Tidy up docs for network 2.3 modules

* Use suboptions

* Correct indentation

* more tidyup

* bulk updates

* more tidyup

* Bulk changes

* nxos_mtu is dead

* revert

* NXOS_mtu is dead, also better layout

* rebase

* rebase
9 years ago
James Cammarata 76f28fd2fc Bumping devel version to 2.4.0 9 years ago
Dag Wieers 72e7927dd5 win_scheduled_task: Added frequency: once and check_mode support (#22611)
* win_scheduled_task: Added frequency: once and check_mode support

This patch includes:
- Renamed `execute:` parameter to `executable:`
- Renamed `argument:` parameter to `arguments:`
- Implemented `frequency: once` support
- Implemented check_mode support
- Fix idempotency issue related to empty description
- Added integration tests

* Improve the integration test structure

I think this is a great way to test normal mode and check-mode from the same playbook.

* Small fixes after review
9 years ago
Ondra Machacek 699df5824d cloud: ovirt: fix update_params for ovirt module_utils (#22637) 9 years ago
Ondra Machacek bb7e7be71f cloud: ovirt: Fix disk image upload (#22557) 9 years ago
Dag Wieers 9755d2dbbc win_feature: Clean up and check-mode support (#21351)
* Clean up parameter handling and added check-mode support

Changes include:
- Remove trailing semi-colons
- Replaced PSObjects into normal hashes
- Make use of Get-AnsibleParam and types
- Added check-mode support

* Implemented -WhatIf:$check_mode support

* powershell.ps1: Ensure Fail-Json() works with Hashtables

Without this change a dictionary $result object would be emptied if it
is anything but a PSCustomObject. Now we also support Hashtables.

* Revert to original formatting
9 years ago
Dag Wieers 589c483cfc win_chocolatey: Add check-mode support (#22501)
This patch implements:
- check-mode support
- add state "reinstalled"
- cleanup of timeout parameter
9 years ago
Jordan Borean 6ce338d29c win_service Added -Force option and minor cleanup (#22598)
* win_service Added -Force option and minor cleanup

* Changed parameter and fixed typos
9 years ago
René Moser 0ee108bda0 cloudstack: cs_instance: revert VPC support (#22629)
Partly reverts 5374c7cd09
9 years ago
René Moser a2b6844858 cloudstack: cs_network: fix VPC support (#22627)
* cloudstack: cs_network: fix vpc support

* cloudstack: cs_network: fix pep8
9 years ago
René Moser 38b9f055d7 cloudstack: cs_staticnat: fix VPC support (#22626)
- Fix the VPC support by adding network to create and update methods
- Fix pep8
9 years ago
René Moser a227a4ebb4 cloudstack: cs_ip_address: fix vpc support (#22625)
* cloudstack: cs_ip_address: fix vpc support

* cloudstack: cs_ip_address: fix pep8
9 years ago
Matt Davis ce56da69b2 make windows async ... async (#22624)
Fixes #22575 - issue under new exec wrapper where unconstrained handle inheritance (for stdin) caused WinRM to block on breakaway processes. Uses explicit handle inheritance to ensure that only stdin read handle gets inherited. Adds test to ensure that async is actually async.
9 years ago
Sumit Kumar 994840447f Fix root volume security style options 9 years ago
Ricardo Carrillo Cruz 604a38cac1 Implement eos_banner for EAPI (#22609)
On EAPI, the multi-line commands are expected to be a dict,
with key/value pairs 'cmd'/'input' .
This change implements that behaviour and fixes the idempotency
on EAPI as well.

Fixes #22494
9 years ago
Ondra Machacek 38eb388154 ovirt: cloud: make the datacenter input compatible (#22483)
This patch makes sure that all inputs of datacenter are compatible. So
it's 'data_center' everywhere.
9 years ago
Toshio Kuratomi eb1214baad New metadata 1.0 (#22587)
Changes to the metadata format were approved here:
https://github.com/ansible/proposals/issues/54
* Update documentation to the new metadata format
* Changes to metadata-tool to account for new metadata
  * Add GPL license header
  * Add upgrade subcommand to upgrade metadata version
  * Change default metadata to the new format
  * Fix exclusion of non-modules from the metadata report
* Fix ansible-doc for new module metadata
* Exclude metadata version from ansible-doc output
* Fix website docs generation for the new metadata
* Update metadata schema in valiate-modules test
* Update the metadata in all modules to the new version
9 years ago
René Moser 2be3418a81 cloudstack: fix wrong vpc found by name (#22603)
Fail fast if more than one VPC found with given identifier.
9 years ago
Marc Mercer c5c0d9086e [cloud][docs] update ec2_tag documentation example (#22586)
Currently the documentation utilizes with_subelements, but it does not parse the results correctly.  By changing to with_items: and specifying the proper list, we are able to tag the instances as expected.
9 years ago
Peter Sprygada eed240797a adds connection established message to ansible-connection (#22492)
This will now print a log message that displays how long the ssh
connection took to establish to the remote device.  If the connection
established time is exceed it will also print a message to the log file
that the connection attempts have exceed.

Updates default connection retries to 30

fixes #22319
9 years ago
Matt Davis 07674a8446 prevent winrm Add-Type debug noise from polluting stderr (#22583) 9 years ago
Brian Coca 0897ec9938 warn when name is overloaded as both host and group
added small optimization to base group comparisson
fixes #6545
9 years ago
Ryan Brown 19511971ee Format ELBInfo call (#22383)
Move declaration of AWSRetry of get_all_load_balancers so it isn't redeclared for every page of data.
9 years ago
Robin Miller 6d8edfc35f Handle throttling and move BotoServerError handling to main. (#22383)
Unclear how useful it is to still be catching BotoServerError exceptions
generally, especially when we are now hopefully handling most instances
of throttling, but kept it as it was already in the code. Moved to main
as catching BotoServerErrors inside individual functions will bypass any
AWSRetry.backoff decorator.

Move additional imports to top.

Use python2.6 formatting

A bit of cleanup on imports

Make one more string interpolation Python 2.6 compatible.
9 years ago
Ricardo Carrillo Cruz 2553a37da5 Add no_log to all network module_utils provider argument (#22566)
The provider argument on the network modules argspec can contain
credentials.
Make sure we don't log it.

Fixes #21892
9 years ago
Chris Houseknecht b15ceee6bd Changes command and entrypoint to type list 9 years ago
Will Thames 4cc872669c [cloud] fix connection_draining idempotency in ec2_elb_lb (#21323)
* Fix connection_draining idempotency in ec2_elb_lb

Ensure connection_draining types are equivalent when comparing
whether or not connection_draining is being changed.

This means that running `ec2_elb_lb` with connection_draining
set a second time will now report `changed=False`

* ec2_elb_lb: fixed latest Ansible standards compliance

Update to current pep8 standards, fix module imports
and remove module from exclusion file
9 years ago
夏恺(Kai Xia) 5e40af0732 [cloud] change returned type of tag in ec2_snapshot_facts, fix #22431. (#22432)
Signed-off-by: Xia Kai(夏恺) <xiaket@gmail.com>
9 years ago
Ondra Machacek f5abcd9264 cloud: ovirt: Fix ovirt_tags documentation (#22569) 9 years ago
Will Thames 459724da6b [cloud] Convert nat gateway facts to ansible format (#20962)
Use camel_dict_to_snake_dict
9 years ago
Adrian Likins 3af6ad1687 Fix iptables TypeError if state/match/ctstate missing
Completely untested...

Fixes #22465
9 years ago
Alexander Gubin 06bcff8d92 Mark keystore_pass as 'no_log', to avoid leaking it 9 years ago
Joshua C. Randall 444b67ca0c s3_bucket: fixes #22464 without fully implementing support for ceph bucket update (#22538) 9 years ago
Ganesh Nalawade 8b6d786cff Fix junos prompt issue (#22536)
Need to handle junos shell prompt
that end's with '%'
9 years ago
Peter Sprygada 39c38bf30d fixes candidate var type in junos shared lib (#22551)
* candidate var can now be string, list or element
* fixes minor bug in junos_template for backup argument
* disabled invalid integration test for junos_template
9 years ago
Peter Sprygada b3004e19a5 Junos facts (#22550)
* Update metadata & docs

* basic facts add

* Start building facts

* Retrofit more junos_facts

* Reimplement facts again

* Hardware

* Hook up config

* Hook up interfaces

* updates junos_facts to use netconf

* updates default facts
* adds config facts
* updates hardware facts
* updates interface facts
9 years ago
Johannes Kohnen cc2eecc247 Enable path expansion in GCE modules
This is basically a replay of #16064 from `gce.py` to other pertinent
`gce_*.py` files. It enables expansions of paths in `gce.ini` like
`~/.project.json`
9 years ago
John R Barker 0d0c38400f eos_template is deprecated (#22549) 9 years ago
John R Barker d21c16d455 Remove invalid `type:` (#22548) 9 years ago
Peter Sprygada 2b2072a8c9 roll up of fixes and updates for junos modules (#22543)
* removes cli functions
* adds comment and confirm to arguments
* implements zeroize argument
* fixes get_diff function in junos shared lib to return diff
* lots of minor bug fixes in junos_config
* minor syntax fixes in junos_netconf
* updates netconf integration tests
9 years ago
Peter Sprygada 09c08e1939 minor clean up of junos_command (#22545)
* removes unneeded check_transport function
* removes unneeded global vars
* verifies all integration tests are passing
9 years ago
Peter Sprygada 995497129e updates junos_command to send commands over netconf (#22540)
* junos_command should send all cli commands over netconf
* task based credentials are now optional
* commands and rpcs are not mutually exclusive anymore
9 years ago
Peter Sprygada 3f0f7c4f4e updates junos shared lib and action handler (#22541)
* removes cli functions from shared lib
* adds cli functions to junos_netconf module
* statically pins junos_netconf to cli transport
* all other modules use netconf transport
* adds command rpc function to junos shared
9 years ago
Peter Sprygada 1825406e1e Junos fixes (#22423)
* Fixes for junos_config errors

* Check transport settings for core Junos

* Don't pop from the same list you iterate over

* use of persistent connections are now explicitly enabled in junos

* modules must now explicitly enable persistent connections
* adds rpc support to junos_command

fixes #22166
9 years ago
Peter Sprygada 17fc6832ca fixes mapping nxapi arguments for nxos action plugin (#22491)
The nxos action plugin does not properly map task arguments when using
provider.  This patch will fix the problem and properly map the
arguments
9 years ago
Peter Sprygada 027f5955cc correctly maps task arguments for eapi transport (#22490)
The provider arguments where not correctly being mapped in the action
plugin for eapi transport.  This will now correctly map existing
arguments as well as set the correct defaults for values.

fixes #22442
9 years ago
Pierre Templier ea0bae6bca Typo + rephrase (#22526) 9 years ago
THEBAULT Julien 374d491ba5 Check if file is not a directory with get_bin_path function (#13985) 9 years ago
Ricardo Carrillo Cruz 9173a7727c Fix issue on nxos modules when transport is passed via provider (#22488)
The nxos modules read the task level transport variable, thus if
the user pass it via provider the all fail with an UnboundLocalError.

Fixes #22355
9 years ago
Brian Coca 7ad6ce7ea1 moved network module magic from hardcoded to conf 9 years ago
Brian Coca 2d9bf88897 deal with other 'ungrouped' corner cases 9 years ago
Adrian Likins ae31634c23 Make vault encrypt/create/etc confirm pass again.
Make the 'write' modes of vault confirm a new password
before using, again.

This was unintentionally disabled in
309f54b709 previously.

Fixes #22438
9 years ago
Adam Hamsik 6cf8318468 Add simple module to import/delete ssl certificate from/to java keystore (#20274)
* Add simple module to import/delete ssl certificate from/to java keystore.

* add diff/check mode support, fix reported issues and simplify decision logic

* Fix build by adding new line at the end of file.

* Some updates to module requested PR review

* Add simple executable parameter

* Fix build error
9 years ago
John R Barker e5b990a55a Fix invalid fields in module DOCUMENATION (#22297)
* fix module doc fields

* More module docs corrections

* More module docs corrections

* More module docs corrections

* More module docs corrections

* correct aliases

* Review comments

* Must quote ':'

* More authors

* Use suboptions:

* restore type: bool

* type should be in the same place

* More tidyups

* authors

* Use suboptions

* revert

* remove duplicate author

* More issues post rebase
9 years ago
Dag Wieers 654e95ea49 wait_for_connection: Update the docs to implementation (#22400)
* Update the docs to conform to implementation

Somehow the docs were still mentioning a default timeout of 300 seconds.
Whereas the implementation defaults to 600 seconds.

* Improve examples even more
9 years ago
Ricardo Carrillo Cruz c57729944b Fix the eos_banner idempotency (#22413)
The map_config_to_obj calls the run_commands  helper function,
which returns a list of results.
However, the map_params_to_obj return a single string.
Therefore, the comparison between the two datasets could never be equal,
breaking idempotency.
Also, the 'no banner' command should be run on absent only if there's a banner
text set.

Fixes #22194
9 years ago
Tim Rupp 32146acf4e Actual attributes were being created and messing with the modules (#22424) 9 years ago
Brian Coca 78e116077a readd all.add_host as for loop uses diff data 9 years ago
Nicolas Braud-Santoni f689cca0b8 vault: Uniformize construction of cipher objects 9 years ago
Nicolas Braud-Santoni 680d61c609 vault: call is_encrypted directly in is_encrypted_file
Doing the conversion and checking for exceptions there is pointless
since is_encrypted already does it.
9 years ago
Brian Coca 385f1d82dc ensure all hosts in all
fixes #20252
9 years ago
Matt Clay 0b250016b0 Fix PEP 8 issue. 9 years ago
René Moser 6f426b9d06 cloudstack: cs_vpc: fix vpc in projects not found (#22416) 9 years ago
Dave Kasberg 8102e66425 Fixes for idempotent issue in cnos_vlan module and fixes for vlag/portchannel tests. (#22385)
* misc fixes for idempotent issue in cnos_vlan

* Fix up hyperlinks in module documentation

* spell correction
9 years ago
Hao 96a19a4521 iptables module: match=conntrack with ctstate not working (#21976) 9 years ago
Brian Coca 406505bfe5 fixes cache file modules with bad path permissions
now module will fail to load and report an error (turned into warning as this should not be fatal)
fixes #13093
9 years ago
Dag Wieers 770ab76ed0 win_region: Small changes to Add-AnsibleParam and docs (#22310) 9 years ago
Alex Chvatal f1d8d7ba13 include upgraded packages in pacman upgrade action (#20713)
* include upgraded packages in pacman upgrade action

* display upgraded packages as diff output for pacman upgrade

* document the packages return key

* add --diff support for installing, removing and checking packages

* include package versions in pacman diff output
9 years ago
René Moser 7f35220744 cloudstack: cs_firewall: fix pep8 and typo s/endpoint/endport/ (#22406) 9 years ago
Drew Russell 94f9bb962f Add a new module for Cisco Spark notifications (#19348)
* Add a new module for Cisco Spark notifications

* Added authentication validation to check mode

* Re-added description and removed Pylint references

* Moved the authentication test to the spark_message function

* removed duplicate fetch_url statements

* documentation formatting updates and if __name__ update

* recipient typo fix and added correct Formatting options to documentation options

* updated version added to 2.3
9 years ago
Dag Wieers c45f6905fc wakeonlan: Bugfix and small improvements (#22389)
- Close the socket after use
- Use proper parameter types
- Remove redundant parameter options
- Clean up docs
- Move module from network/ to remote_management/
- Add check-mode support
9 years ago
Tim Rupp a8910e78ca Using the wrong variable (#22386) 9 years ago
Tim Rupp 3c69cf6d7d Moved exception handler in a little bit (#22376)
It wasn't being caught in the previous indentation
9 years ago
Adrian Likins edcbef27ec Retain vault password as bytes in 2.2 (#22378)
* Retain vault password as bytes in 2.2

Prior to 2.2.1, the vault password was read in as byes and then remained
bytes all the way through the code.  A bug existed where bytes and text
were mixed, leading to a traceback with non-ascii passwords.  In devel,
this was fixed by changing the read in password to text type to match
with our overall strategy of converting at the borders.  This was
backported to stable-2.2 for the 2.2.1 release.

On reflection, this should not have been backported as it causes
passwords which were originally non-utf-8 to become utf-8.  People will
then have their working 2.2.x vault files become in-accessible.

this commit pipes bytes all the way through the system for vault
password.  That way if a password is read in as a non-utf-8 character
sequence, it will continue to work in 2.2.2+.  This change is only for
the 2.2 branch, not for 2.3 and beyond.

Why not everywhere?  The reason is that non-utf-8 passwords will cause
problems when vault files are shared between systems or users.  If the
password is read from the prompt and one user/machine has a latin1
encoded locale while a second one has utf-8, the non-ascii password
typed in won't match between machines.  Deal with this by making sure
that when we encrypt the data, we always use valid utf-8.

Fixes #20398

(cherry picked from commit 5dcce0666a)
9 years ago
Alex Lo 8e910cce8a ec2_group: description is only required when group state is present (#19791)
* description is only required when group state is present

also note that AWS requires a non-empty description when creating a security group

* clarify description requirement
9 years ago
René Moser e0d38fb137 composer: fix escape working_dir (#22363)
* composer: fix escaping of path working_dir

* composer: fix pep8
9 years ago
Brian Coca c71b15a696 Bad extra early (#22322)
* catch bad extra vars data earlier

* incoporated @alkins feedback
9 years ago
Toshio Kuratomi 1ea3313c90 Document synchronize limitations around become and connections (#22373)
* Document synchronize limitations around become and connections
9 years ago
Brian Coca c4cff44e77 fix 'ungrouped' issue with some inventory formats 9 years ago
Brian Coca 20bf02f6b9 rename return var to avoid conflicts
fixes #22323
9 years ago
Ricardo Carrillo Cruz fd6429fbd1 Idempotency fix for iosxr_config (#22365)
Multiple fixes to address idempotency issues, along with refactor of
module_utils iosxr to look like ios, for code consistency.

Fixes #22315
9 years ago
Kamil Cholewiński ec9582fd83 Fix invocations of module.fail_json with no msg=
Bonus: add missing % in cs_nic.py
9 years ago
Michael Scherer 91860b2423 Verify that the role specification is using a comma before warning
One way to trigger this is having this snippet in meta/main.yml:

dependencies:
  - role: foo
    when: "use_foo == True"

It shouldn't show a warning but since we assume that 'foo' is the old
style format, it always show one. So we should verify the
style before calling role_spec_parse.
9 years ago
Chris Alfonso 25827c85d2 Fixing issue #22193 - authorize argument is not deprecated for 2.3 for ios and eos (#22326) 9 years ago
Loïc Blot 792efbe3b6 virt.py: autostart VM attribute (#22208)
* virt.py: autostart VM attribute
autostart is now an idempotent VM attribute instead of a non idempotent forced autostart attribute set to True

* Make shippable happy

* Missing version added

* Fix some points

* Autostart default is now None

* Ident fix
9 years ago
Andrea Giardini 863c1ff38b Ec2_tag support for check mode (#21779) 9 years ago
John R Barker 8531547ec2 Correct `module:`, it should match filename (#22296)
* Validate module: matches filename

* remove testcase

* Revert module validation, move to different PR
9 years ago
Tim Rupp c2180888f7 I think for now I'll just not use dunder setter (#22336) 9 years ago
Ricardo Carrillo Cruz 5357a67607 Remove 'update' param from documentation examples (#22350)
The 'update' param is no longer supported, thus removing from docs.
9 years ago
Ryan Brown f0491b4261 [cloud] Fix ZeroDivisionError in ec2_elb_facts module (#22332) 9 years ago
Tim Rupp 6ff9bd0a33 Fixes baseclass for new f5 modules (#22333) 9 years ago
Lujeni d942196666 Use a dedicated directory for the mongodb modules (#22187)
* Use a dedicated directory for the mongodb modules
* Missing the RETURN documentation in mongodb_user
9 years ago
JimFicarra 2206b5e900 Fix Issue #20553 #15737 - merge with reg functionality #19443 (#20555) 9 years ago
Robin Miller 9c20182bdf [cloud] Avoid failures in RDS modyue due to throttling while waiting (#22271)
1. Check less aggressively for resources that take a long time to return
(some resources can take an hour or more).
2. Handle throttling when checking for resources, and back off quickly
when it occurs.
9 years ago
Ricardo Carrillo Cruz 43aef4e868 Do not pass filters to os_group get_group call (#22321)
As default is set to None, the get_group call doesn't find groups
on domain 'None'.
Only pass filters in case we pass domain_id value.
9 years ago
Dan Vaida 433829769e [cloud] Fix data types in ec2_elb_lb causing resource to be spuriously updated (#21906)
fixes broken idempotence caused by the idle_timeout and cross_az_load_balancing params. (#21906)
9 years ago
Brian Coca 516d61f1ae simplified if 9 years ago
Marius Gedminas 15c7288ab9 Show diff when file: state=link changes the symlink target (#22243)
* Show diff when file: state=link changes the symlink target

* Integration test for symlink target change

* Also check soft link idempotency
9 years ago
Michał Masłowski 228131d1cd lambda: Fix adding environment variables to functions previously not having any (#22313) 9 years ago
Valentyn Boginskey 2d10ad4a3e [cloud] allow ec2_lc to take user data from binary files w/ user_data_path (#20138)
* Add user_data_path parameter to ec2_lc module

* Improve user_data_path parameter documentation

- Specify mutual exclusivity
- Specify `version_added`
- Change module parameter type to `path`

* Use correct comparison for user_data result

* Include traceback on error and use with block

* Only hide user data if provided in file
9 years ago
John R Barker aa3fbb0d54 Restore extends_documentation_fragment: nxos (#22312)
* Restore extends_documentation_fragment: nxos

* Restore extends_documentation_fragment: nxos
9 years ago
Angus Williams 9be30f2eca Fixes idempotency issue when upgrading chocolatey packages (#21476) 9 years ago
Dhivyap 89cf8d83e4 dellos* modules- Documentation Update (#22306) 9 years ago
gaudenz 2772f9d9b0 cloudscale: Document SSH host key retrieval (#22299)
Document how the cloudscale_server module can be used to retrieve the
SSH host keys of the server.
9 years ago
René Moser c1730c21ce cloudstack: cs_sshkeypair: fix fingerprint not used as identifier (#22276)
* cloudstack: cs_sshkeypair: fix fingerprint not used as identifier

* remove from legacy

* fix for 2 keys, one with name and one with fingerprint
9 years ago
John R Barker 3afb67e9b2 Fix Docs build issues (#22295)
* restore network docs fragments

* Fix RST errors

* code-block formatting
9 years ago
John R Barker 0775d39a87 Add extends_documentation_fragment back (#22293) 9 years ago
John R Barker 284b3e42d1 timezone: Inline emphasis start-string without end-string (#22292)
Fixes
`docs/docsite/rst/timezone_module.rst:20: WARNING: Inline emphasis start-string without end-string.`
9 years ago
tchernomax f65661ab66 documentation: add important information about attributes parameter (#18732)
If the attributes aren't set in the right order the module always detect
an attributes change.
9 years ago
Adrian Likins 694c57de2e add python version info to --version (#22089)
* add python info to ansible --version
* Add unit tests for cli.CLI.version
9 years ago
Matt Davis d12c93ef2b fix azure_rm version checks (#22270)
* Use packaging.version.Version instead of LooseVersion for better support of prerelease tags (eg, 0.30.0 > 0.30.0rc6)
* Add explicit check/error for msrestazure package
9 years ago
Clemens Weiß 7018aa3316 Update expired keys (#21539)
If a key has expired it will not be added by this module, so check for "expired" in the list of keys.
Example output with expired key:

pub   1024D/5072E1F5 2003-02-03 [expired: 2017-02-16]
uid                  MySQL Release Engineering <mysql-build@oss.oracle.com>
9 years ago
Will Thames 274016101f ec2_vpc_subnet: cope with empty tags (#21813)
ensure_tags fails if `tags` is None rather than an empty
dict. Ensure that not passing `tags` parameter is equivalent
to passing an empty dict.

Fixes #21778
9 years ago
Will Thames 699f0e861c [cloud] Add supports_check_mode to ec2_ami_find (#22180)
ec2_ami_find is a facts module, and makes no
changes, so trivially supports check mode
9 years ago
Jean-Philippe Evrard 19b49a9224 [cloud][lxc] Prevent hostname to be set (#22246)
If the host .bashrc holds a var named HOSTNAME, the container
where the lxc_container module will attach to will inherit from
this var, potentially breaking some applications (like rabbitmqctl)
due to an incorrect $HOSTNAME reported in the container.
9 years ago
Brian Coca f53921093f respond with correct vaulting suggestion
fixes #22247
9 years ago
Viktor Fogelberg b9ed3454e4 Change comment to reflect the actual code 9 years ago
Andrea Giardini 04e990281e Add flag to Docker pull_image to know when the image is already latest (#21508)
* Add flag to Docker pull_image to know when the image is already latest

Whenever the flag pull is set to 'yes' the resource is always defined
as 'changed'. That is not true in case the image is already at the
latest version.

Related to ansible/ansible#19549

* Docker pull_image does not change status if the image is latest
9 years ago
Artem Zinenko 7decd10c76 Fixes #22136 (#22137) 9 years ago
Peter Sprygada 6c8025ce5c adds eos_system integration tests (#22214)
* adds integration test cases
* updates eos_system with minor bug fixes
9 years ago
James Cammarata a2599cab79 Fix variable precedence of INI/script vars to be in-line with docs.
This commit also adds a new test script (ansible-var-precedence-check.py in code-smell/)
to provide us with another line of defense against precedence bugs going forward.

The precedence docs state that the INI vars have a lower precedence than group/host
vars files for inventory and playbooks, however that has not been the case since 2.0
was released. This change fixes that in one way, though not exactly as the docs say.
The rules are:

1) INI/script < inventory dir < playbook dir
2) "all" group vars < other group_vars < host_vars

So the new order will be (from the test script mentioned above):

8. pb_host_vars_file - var in playbook/host_vars/host
9. ini_host_vars_file - var in inventory/host_vars/host
10. ini_host - host var inside the ini
11. pb_group_vars_file_child - var in playbook/group_vars/child
12. ini_group_vars_file_child - var in inventory/group_vars/child
13. pb_group_vars_file_parent - var in playbook/group_vars/parent
14. ini_group_vars_file_parent - var in inventory/group_vars/parent
15. pb_group_vars_file_all - var in playbook/group_vars/all
16. ini_group_vars_file_all - var in inventory/group_vars/all
17. ini_child - child group var inside the ini
18. ini_parent - parent group var inside the ini
19. ini_all - all group var inside the ini

Fixes #21845
9 years ago
Matt Martz ff20ab7d44 Warn when jinja2 delimiters are found in a when statement (#20312)
* Warn when jinja2 delimiters are found in a when statement

* Use templar._clean_data to look for templating
9 years ago
Matt Martz 1fe67f9f43 Extend SSH Retry to put_file and fetch_file (#20187)
* Move retry logic into _ssh_retry decorator, and apply to exec_command, put_file and fetch_file

* Update tests to reflect change

* Move _ssh_retry to _run, and update tests to reflect

* piped should use exec_command instead of removed _exec_command

* Rework tests to support selectors instead of select.select
9 years ago
Peter Sprygada 911600acf9 update junos_command integration tests (#22213)
fixes integration test to check for full rpc-reply string when
converted from xml.  This is a change from 2.2 as the rpc-reply tag
is no longer stripped off
9 years ago
Robin Roth 3afc993f3a Fix git clone tag with depth=1
* Fixes #21316, add testcase based on this
* Add option `--branch NAME` to git clone command in case of branch or
tag in combination with depth=1
  * This option should work back to at least git 1.8 and thus on all
  supported distributions
* Provide better warning if depth is dropped
9 years ago
Peter Sprygada 7b2c013e5a returns xml as a display option to junos_command (#21833)
The display option xml as accidentially removed from the display
argument.  This patch adds xml back as an option.

fixes #21823
9 years ago
Peter Sprygada 8d76703a9d fix for handling commands that return no data or error (#22086)
This patch addresses a problem in nxos_facts where certain commands are
not supported or return no data, the module would raise an exception.
With this patch, the nxos_facts module will now print a warning for any
commands that return no data and not populate the facts.

fixes #22001
9 years ago
Dag Wieers 237411613d Ensure that filenames from archives are not expanded
This fixes #21795
9 years ago
Brian Coca 7966beb6c9 minor fixes to apt
fixes #22124
9 years ago
John R Barker 456b4ace7b Move cnos_backup. to correct dir (#22207) 9 years ago
Ivan Bojer 8b2ca79507 panos new module used for security policy creation (#20778)
* - new module used for security policy creation

* - added support for API key authentication
- added support for Panorama

* documentation changes

* documentation update

* minor doc changes based on review comments

* move ANSIBLE_METADATA

* changes to docs per reviewer comments
9 years ago
Ivan Bojer 563a0aea83 new module that allows for address service object creation (#20660)
* new module that allows for address service object creation

* added missing check for external library

* doc changes per review

* fixed choices string

* doc changes based on reviewer comments

* - changes per reviewer comments
9 years ago
Dave Kasberg 3c44644c08 New module: cnos_vlag (#21535)
* VLAG module and tests

* Correct the link in the description of the module

* Move roles to integration/roles directory and remove aliases file.

* update module short description

* Change module directory name to Lenovo

* change import cnos statement
9 years ago
Dave Kasberg 9258b62707 New module: cnos_conditional_template (#21794)
* Initial commit of cnos_conditional_template

* fix compile error in module, change module short description, move roles to integration/roles

* fix line length

* Change module directory name to Lenovo

* change import cnos statement
9 years ago
Dave Kasberg 059a0d07a4 New module: cnos_condition_command (#21793)
* Initial commit of cnos_condition_command

* fix pep8 error of line too long

* fix pep8 tab/space issue

* Move roles to integration/roles directory and remove aliases file.

* Update module short description

* Change module directory name to Lenovo

* change import cnos statement
9 years ago
Dave Kasberg 2f126829bf Initial cnos_image commit (#21789)
* Initial cnos_image commit

* corrected required/default values in documentaiton

* fixed choices for imgtype

* removed a colon

* Move roles to integration/roles directory and remove aliases file.

* update module short description

* Change module directory name to Lenovo

* change import cnos statement
9 years ago
Dave Kasberg 70af90436a New module: cnos_rollback (#21788)
* Initial commit for cnos_rollback

* Move roles to integration/roles directory and remove aliases file.

* update module short description

* Change module directory name to Lenovo

* change import cnos statement
9 years ago
Dave Kasberg 267cc0edfc New module: cnos_backup (#21787)
* Initial commit of cnos_backup

* Move roles to integration/roles directory and remove aliases file.

* update module short description

* change import cnos statement
9 years ago
Dave Kasberg 6549c70091 New module: cnos_template (#21786)
* Initial cnos_template commit

* fix compile errs, update short description, move roles to integration/roles

* now commit the module

* Change module directory name to Lenovo

* change import cnos statement
9 years ago
Dave Kasberg c112539538 New module: cnos_command (#21785)
* Initial commit for cnos_command

* Move roles to integration/roles directory and remove aliases file.

* update module short description

* Change module directory name to Lenovo

* change import cnos statement
9 years ago
Dave Kasberg d96aa55d4c New module: cnos_save (#21754)
* initial comment of cnos_save

* Move roles to integration/roles directory and remove aliases file.

* update the module short description

* Change module directory name to Lenovo

* change import cnos statement
9 years ago
Dave Kasberg 1b3e3407d8 New module: cnos_reload (#21753)
* initial commit of cnos_reload

* add parens to options

* update module short description

* Change module directory name to Lenovo

* change import cnos statement
9 years ago
Dave Kasberg 2e6df415b6 New module: cnos_showrun (#21752)
* initial commit of cnos_showrun

* Move roles to integration/roles directory and remove aliases file.

* update module short description

* Change module directory name to Lenovo

* change import cnos statement
9 years ago
Dave Kasberg e5ceb3a99c Fix for cnos.py utility file for Python3.5 (#21750)
* fix in cnos.py utility file

* fix compile errors in cnos.py, update module short description in cnos_vlan.py, move vlan roles under integration/roles

* corrections in readme

* Change module directory name to Lenovo

* change import cnos statement
9 years ago
Dave Kasberg 709b03d1c8 New module: cnos_facts (#21743)
* cnos_facts module commit

* fix options string

* Move roles to integration/roles directory and remove aliases file.

* update module short description

* Change module directory name to Lenovo

* change import cnos statement
9 years ago
Dave Kasberg c4d73b6765 New module: cnos_factory (#21740)
* Commit cnos_factory

* fix options {} issue

* update the module short description

* Change module directory name to Lenovo

* change import cnos statement
9 years ago
Dave Kasberg 4bf20fb174 New module: cnos_interface (#21613)
* initial commit

* fix tab/space issue

* fix space issue in vars/main.yml

* Move roles to integration/roles directory and remove aliases file.

* update module short description

* change module directory name to Lenovo and change import cnos statement
9 years ago
Dave Kasberg 14c2c787cb New module: cnos_portchannel (#21589)
* cnos_portchannel initial commit

* Fix line length issue in module

* fix whitespace on line 90

* correct yamllint space issue

* Move roles to integration/roles directory and remove aliases file.

* update module short description

* Change module directory name to Lenovo

* change import cnos statement
9 years ago
Dave Kasberg 3ed34032cd New module: cnos_bgp (#21587)
* cnos_bgp module

* Move roles to integration/roles directory and remove aliases file.

* update module short description

* Change module directory name to Lenovo

* change import cnos statement
9 years ago
Brian Coca 30c6a77045 moved any_errors_fatal to base (#21585) 9 years ago
Pierre-Louis Bonicoli fb8aa5637a systemd: return an error when systemctl command isn't available 9 years ago
Wayne Witzel III 703d6cb02f Ansible Tower job_wait module (#22160)
* Ansible Tower job_wait module

* clean up documentation and update code comment
9 years ago
Wayne Witzel III 7a5173486d Ansible Tower job cancel module (#22161)
* Ansible Tower job cancel module

* fix interpreter line
9 years ago
Wayne Witzel III 7d584f3090 Ansible Tower job list module (#22164) 9 years ago
mikedlr 710b6c7209 [cloud] bugfix for `lambda` module with empty environment (#22196)
* lambda module - failing test case: shows lambda create mishandles empty environment

* lambda module - fix lambda create with empty environment

* lambda module - fix lambda create with empty environment - style fixes
9 years ago
Ondra Machacek 7d397e7d3e cloud: ovirt: Add download image support to disks module (#22101)
This PR fixes: https://github.com/ansible/ansible/issues/22088
9 years ago
molekuul ef79932d16 added new RETURN block (#22183) 9 years ago
Matt Davis a60d358e56 Revert "win_service_stat: Added module" (#22184) 9 years ago
Matt Davis 4901763d72 fix conflicts in win_chocolatey execution_timeout (#22182) 9 years ago
Branden Pleines 299e964dbf Adding registry functionality to win_acl module (#19443)
* Updated win_acl.ps1 module with registry functionality

* adding registry functionality to the most recent win_acl module in ansible/ansible

* updated in sync with win_regedit.ps1
9 years ago
David Baumann 7d44b2987e Add Support for CachingMode Setting (#21103)
Add Support for CachingMode Setting
9 years ago
Jordan Borean 778dc9ad38 win_copy: added remote and content options (#21546)
* win_copy: added remote and content options

* readded comment about original_basename accidentally removed
9 years ago
Dag Wieers 17a39e88a5 win_chocolatey: Add example to upgrade all installed software (#22167)
Add a missing example on how to upgrade all installed software using win_chocolatey.

This fixes #21559
9 years ago
Dag Wieers 868d19b509 Typo in Add-DeprecationWarning call (#22168)
Unfortunately the script does not stop/fail because of such errors.
9 years ago
Jordan Borean f4f09c9dbf Rewrote win_service with more options/check_mode (#19143) 9 years ago
Jordan Borean 3da806f32a win_service_stat: Added module (#21944) 9 years ago
Matt Davis c98647ccf8 initial commit of win_domain module (#22179) 9 years ago
azenk bdf0ab451e Add role skeleton support (#17079)
* Add role skeleton support

The default role skeleton used by ansible-galaxy is good, but it doesn't
allow organizations to customize it to suit their needs.  This patch
addresses that by adding the option to point ansible-galaxy at a
role skeleton directory.  The contents of this directory are then
copied (or rendered) into the output role directory.  Appropriate
command line options and configuration entries are added to allow for
further customization from the role skeleton.

* Remove dependency on platforms list from test

Platforms are no longer provided to the template by galaxy init.
Removing the code in our test meta/main.yml template that relied on it.

* Fix whitespace issue
9 years ago
Matt Davis a5edd6e635 initial commit of win_disk_image (#22175) 9 years ago
Matt Davis 42ccf9ca98 tweak transport_tests to avoid logic duplication (#22158) 9 years ago
Benjamin Jolivot 2ee3a5aa07 Fortios ipv4 policy (#21849)
* New module fortios_address_group

* New module fortios_ipv4_policy

* New module fortios_ipv4_policy

* Fix pep8

* Fix alias doc problem

* Fix string format for 2.5 compat + close cnx

* Forgoten if string != ""

* Fix doc, change action to policy_action & add action as alias

* fix doc + bug in timeout + duplicate code for config compare

* Create class AnsibleFortios in module_utils/forios.py + use in ipv4_policy module

* remove json import

* python3 error handling compatibility
bad examples for srcadd or dstaddr s/any/all/
remove pyFG dependency in module (moved to module_utils)
id type is int but casted as string
call fortiosansible object sooner
typo in doc
9 years ago
GwenaelPellenArkeup 17a4a655a3 [cloud] New module: gce_template (#20918)
* add gce_template.py

gce template manage GCE Instance Templates in Google Cloud Plateform.

* change gce_template on style/formating

Apply change on style/formating from reviewer request.

* change gce_template on style/formating again.

* Rename gce_template.py to gce_instance_template.py

* update gce_instance_template.py to pass CI

Oops :)
ERROR: Import found before documentation variables. 
All imports must appear below DOCUMENTATION/EXAMPLES/RETURN/ANSIBLE_METADATA.

* Update gce_instance_template.py

change documentation replace gce_template by gce_instance_template

* Update gce_instance_template.py

Sorry for the typography fault. The day begins badly.

* Update gce_instance_template.py

apply text change
  s/Compte/Compute/
  s/Plateform/Platform/
  s/forword/forward/
change documentation for subnetwork, subnetwork is name.
add mutually_exclusive in AnsibleModule arguments.
change disk_type as an option type.

* Update gce_instance_template.py

change the documentation.

* Update gce_instance_template.py

RETURN is required for all new modules. Is empty because no new return variable returned.

* Update gce_instance_template.py

Ansible will verify that only present/absent are passed as the state. This else is not needed.
9 years ago
Fabrizio Colonna f0de1e6c85 Added parted module (#20399)
* Added parted module

* Amended documentation

* Improved documentation

* Managed the case of parted not returning device information.

* Fixed Shippable test not passing

* Fixed compatibility with Python 2.4

* Cleanup of the state option, improved flags management, documentation refinements.

* Compacted format function, code style cleanups, amended comments.

* Fixed bug related to parted data parsing.

* Support for check-mode, amended size data type.

* Fixed Shippable test not passing.

* Added full suport for CHS and CYL units, applied suggested changes.
9 years ago
Ondra Machacek 9fe0ae082a cloud: ovirt: logout if token is not used (#21517) 9 years ago
Wayne Witzel III b2d4eeb293 Ansible Tower job_launch module (#22148)
* Ansible Tower job_launch module

* Added RETURN documentation and fixed import locations

* remove superfluos required attributes, make tags a list, and fix some typos

* only join tags if they are actually a list

* use isinstance instead of type, cleanup imports
9 years ago
Ondra Machacek ab16e4b40e cloud: ovirt: add note about ENGINE_API_FILTER_BY_DEFAULT (#22155) 9 years ago
Tom Melendez 0c14548e5f [GCE] New module: Google Cloud Spanner (#21731)
* [GCE] Google Cloud Spanner module

Supports the creation/updating/deletion of Spanner instances and create/drop databases.

* [GCE] On update, node count will not be reset to one if not specified.

* [GCE] fixed some imports.

* [GCE] rename display_name to instance_display_name

* [GCE] Recreate instance in order to have desired values at create time.

* Fix linter error on imports

* [GCE] Added force_instance_delete option to ensure an instance is not removed by mistake.

* [GCE] Google Cloud Spanner module

Supports the creation/updating/deletion of Spanner instances and create/drop databases.

* [GCE] On update, node count will not be reset to one if not specified.

* [GCE] rename display_name to instance_display_name

* Fix linter error on imports

* fixed doc bug

* Remove imports mistakenly brought in during merge
9 years ago
Dag Wieers 52959ebdc1 wait_for_connection: Wait for system to become reachable (#20011)
* WIP: wait_for_connection: Wait for system to be reachable

This action plugin allows to check when a system is back online and
usable by Ansible.

As an example, when doing a SysPrep and running Enable-WinRM.ps1, it
takes between 10 to 20 seconds between the WinRM TCP port to open, and
it actually being able to server Ansible requests. This time is variable
and depends on the boot process.

Current implementation is specific for Windows (WinRM) only, this will
be fixed shortly.

This fixes #19998

* Support other transport types

* Various improvements

- Fix reported typo
- Add transport_test support in accelerate plugin
- Ensure port is an integer

* Improve examples

* Small fixes

- Use correct ConfigureRemotingForAnsible.ps1 script name
- Only use win_ping when remote shell is known to be Powershell
- Add integration tests to CI framework
9 years ago
Brian Coca 7b9f16becb minor display changes in metadata 9 years ago
Brian Coca b2f7e583d3 moved metadata to bottom 9 years ago
Peter Sprygada c26cac2a53 catches exception in nxos_command and returns failed message (#22151)
Catches exception in Conditional check and returns appropriated failed
message
9 years ago
Nathaniel Case d9d2e6deb6 Junos provider readd (#21869)
* Restore `provider` to junos_*

Fixes #21824
Fixes #21824
Fixes #21827

* Fix `confirm_timeout` related errors
* Fix glaring issues with _junos_template
9 years ago
Ondra Machacek 85fc930066 cloud: ovirt/rhev add note old modules were replaced (#22118) 9 years ago
Nathaniel Case b8f4b1f951 Provide message instead of backtrace on bad operator (#21851)
Fixes #21847
9 years ago
Toshio Kuratomi 49194a66c8 Fix log_invocation function to pass unittests on python3
Normalize this function to use native strings.  Native strings won't
display an extra "u" or "b" character to denote py2 unicode or py3 bytes
types.
9 years ago
Matt Martz 6e8e90ceb4 Warn when using the deprecated HEADER_ arguments (#20236)
* Make sure the uri module warns about using the deprecated HEADER_ arguments, so that we can actually deprecate in a future version

* Use module.deprecate

* No need to de-dupe ourselves, looks like it is done somewhere I didn't initially see
9 years ago
Benjamin Jolivot 22d657d3c7 Fix #22130 (ini_file crash when destination file don't exists or is e… (#22132)
* Fix #22130 (ini_file crash when destination file don't exists or is empty)
9 years ago
Gaurav Rastogi 61288b14fd Renamed the avi_ansible_utils to avi. Fixed the import error and clea… (#22112)
* Renamed the avi_ansible_utils to avi. Fixed the import error and cleaned up code.

* Refactored all new modules to use the new module_utils.avi

* Added module_utils.avi to python 2.4 skip list
9 years ago
Dag Wieers 95096164dd hpilo_facts: Get facts from HP iLO mgmt board (#21673)
This is the original `hpilo_facts` module that was once accepted in
Ansible but had been removed subsequently because it could not be tested
by the Ansible project.

Since then it was moved to the ansible-provisioning project and
maintained by HP engineers going forward.

Now we are trying to get it upstreamed again.
9 years ago
jhawkesworth 1c2e8fde29 Add win_msg module (#22008)
* new implementation of win_msg.  TODO tests

* added check_mode.  Get-AnsibleParam for parameters.  Default msg is now 'Hello world!'. Use hash for $results.
Re-ordered some parameters alphabetically.
Documentation now in raw strings.  Removed spurious required: false.  Added metadata.

* Keep pep8 checks happy

* Really keep pep8 checks happy this time

* update Changelog.md

* make bracket style internally consistent

* added units to display_seconds description
9 years ago
Dag Wieers 65ee3a6f19 iso_extract: new module to extract files from ISO images (#21957)
This is the original iso_extract module from the ansible-provisioning project.
We are upstreaming all our modules, and this PR is part of that process.
9 years ago
Gaurav Rastogi 02af4fb868 Added new Avi module to setup Tenant configuration. (#21943) 9 years ago
Gaurav Rastogi f2ca16b6ee Added new Avi module to setup System configuration. (#21942) 9 years ago
Gaurav Rastogi 9edc378333 Added new Avi module to setup Analytics Profile (#21941)
* Added new Avi module to setup Analytics Profile

* Fixed typos in documentation
9 years ago
Gaurav Rastogi 4b9bb88f63 Added new Avi module to setup Application Persistence profile. (#21940) 9 years ago
Gaurav Rastogi e03b9c8c37 Added new Avi module to setup Application profile. (#21939) 9 years ago
Gaurav Rastogi 6c93fb2448 Added new Avi module to setup Certificate Management Profile. (#21938)
* Added new Avi module to setup Certificate Management Profile.

* Fixed documentation based on review.
9 years ago
Gaurav Rastogi b53b336029 Added new Avi module to setup Network Profile. (#21937) 9 years ago
Gaurav Rastogi fe8027afb0 Added new Avi module to setup PKI profile. (#21936)
* Added new Avi module to setup PKI profile.

* Fixed documentation based on review.
9 years ago
Gaurav Rastogi 76c55c87d3 Added new Avi module to setup User Roles. (#21935)
* Added new Avi module to setup User Roles.

* Fixed documentation based on review.
9 years ago
Gaurav Rastogi 969a0c75e6 Added new Avi module to setup SSL profile. (#21934)
* Added new Avi module to setup SSL profile.

* Fixed URL in the documentation.
9 years ago
Dag Wieers c9c8be6459 hpilo_boot: Boot/power via HP iLO mgmt board (#21674)
This is the original `hpilo_boot` module that was once accepted in
Ansible but had been removed subsequently because it could not be tested
by the Ansible project.

Since then it was moved to the ansible-provisioning project and
maintained by HP engineers going forward.

Now we are trying to get it upstreamed again.
9 years ago
Nihlaeth 43b8debf9b fix unquoted dict key (#22105) 9 years ago
René Moser 60aa3db1ad Fix/cs resoucelimit pep8 (#22102)
* cloudstack: cs_resourcelimit: fix type for limit

* cloudstack: cs_resourcelimit: fix pep8
9 years ago
Ricardo Carrillo Cruz 029ccf9aa0 Check right CLI context is set on iosxr action plugin (#22108)
Fixes #21994
9 years ago
Helge Sychla f09df1820b Change `OS` to `VyOS` in vyos_facts module's short description. (#22120)
modified:   lib/ansible/modules/network/vyos/vyos_facts.py
9 years ago
Matt Davis 76c46e9039 initial commit of win_domain_controller (#22115) 9 years ago
amblina c6849a3464 S3 object parameter and bucket deletion exclusive (#21830)
Fixes ansible#21796 Prevent users from deleting buckets rather than objects by making object parameter and mode=delobj mutually exclusive in task.
https://github.com/ansible/ansible/issues/21796
9 years ago
Chris Houseknecht 2c0ad28056 Remove `platform` var from container_enabled meta (#22096) 9 years ago
Gaurav Rastogi 6df5f89763 Added check for avi SDK version as suggested in review. (#21927)
* Added check for avi SDK version as suggested in review.

* Fixed documentation based on review.

* Renamed module_utils.avi to module_utils.avi_ansible_utils
as import of avi.sdk would fail due to name collisions.

Moved the code to check for AVI version into the ansible modules.

* Updated the module with note about reason for name change.
9 years ago
Sorin Sbarnea 2f2e792cae Added support for ANSIBLE_VERBOSITY environment variable
Fixes 22087

Signed-off-by: Sorin Sbarnea <ssbarnea@redhat.com>
9 years ago
Brian Coca e0975602d1 dont merge extra vars data if none
fixes #21889
9 years ago
Brian Coca bfb3467d52 more set/list stuff 9 years ago
Chenjun Shen 4ba131d442 Add quota for the number of floating IP's to allow in Network. (#21471)
* Add quota for the number of floating IP's to allow in Network.

* Add nova_floating_ips and neutron_floating_ips aliases to avoid confusion.

* rename aliases to compute_floating_ips and network_floating_ips.
9 years ago
kulawczukmarcin 30bee433c3 Extend os image container and disk formats (#21275)
* Support docker as an os_image container format

As says openstack documentation
http://docs.openstack.org/developer/glance/formats.html
docker can be a container format for glance image.

* Support vhdx and ploop as an os_image container formats

As stands in  openstack documentation
http://docs.openstack.org/developer/glance/formats.html
those are supported disk formats for glance image.
9 years ago
jhawkesworth 99c594e573 win_iis_webapppool module, fixes and improvement (#20680)
* fixes and improvments for win_iis_webapppool module

* fixes following review feedback on win_iis_webapppool

* Fixed a too-long line in win_iis_webapppool documentation.

* Fixed trailing whitespace for pep8 compliance in documentation win_iis_webapppool.py

* fixed bracket bug

* module parameter attributes now populated.  Switched to hashtable for result object.  Removed remaining ; statement terminators.

* Remove example that was causing CI check failure
9 years ago
Matt Davis a404745a31 initial commit of win_domain_membership module (#22027) 9 years ago
Peter Sprygada 3c401f9ba2 add common arguments to eos_banner (#22024)
fixes #22015
9 years ago
Brian Coca d0e1a1c6c3 more compact metadata 9 years ago
Matt Davis ae87bb632b initial commit of win_dns_client module (#22016) 9 years ago
Brian Coca e3107cdeb6 removed unused imports and var 9 years ago
Matt Davis 8265860f07 suppress PS "unapproved verb" warning (#22018) 9 years ago
Benjamin Jolivot a290f85eba Fix doc s/Slack/Mattermost/ (#22017) 9 years ago
Ryan Brown 1699c9ea48 [cloud] ec2_elb_facts fails on accounts with to many ELBs (#21602)
The list_elbs call to boto doesn't use any pagination, so any time there
are more ELBs than the API page size, this module will fail. This change
uses the `next_token` attribute of `ResultSet` to check if there are
still more ELBs to return.

Fixes #21361
9 years ago
Brian Coca b3abab1bd5 Fact proccessing fixes (#22003)
* clarify facts assignment for several corner cases

run_once/delegate_facts:
 now delegate_facts > run_once, previously run_once always published facts to all hosts in play

include_vars/delegate_to:
  now include_vars allows to delegate to a specific host

also fix task_vars exception in delegate_facts/loop as var was removed

fixes #15365

* removed unused loop_var
9 years ago
Wittmer, Christian 52fbfa00f9 fix for #21729, use VERSION_ID instead of PRETTY_NAME to get release (#21730)
* fix for #21729, use VERSION_ID instead of PRETTY_NAME to get release
9 years ago
Will Thames 19d390135e Improve galaxy handling of tgz roles
Gerrithub presents tgz downloads that do not have a containing
directory. This causes a stack trace.

As all roles must contain a meta/main.yml, change ansible-galaxy
to use that to determine the enclosing directory (in the case
of multiple meta/main.yml files, use the one with the shortest parent)

Fixes #15413
9 years ago
Brian Coca b3251c9585 Exceptit (#21864)
* more centralized exception handling

* only remove when verboxse
9 years ago
Toshio Kuratomi 89bf14e467 Change warning message as advised by bcoca 9 years ago
Nathaniel Case 6d9fb4d012 Network action plugin misusing display.debug (#21995)
* The correct answer was in fact display.vvvv
9 years ago
Brian Coca 6cb9f2bf65 corrected some errors/typos and missing import 9 years ago
cptchips e16b907114 Update win_robocopy example (#21992)
"flags" is set, thus "recurse" and "purge" will be ignored.
9 years ago
Slezhuk Evgeniy e12daee5eb jira: comply with current pep8 rule set 9 years ago
Will Thames ebfc7bac94 cloudfront_facts module improvements
* Make more use of AWS Exception information
* Use pythonic dict assignments
* Improve documentation formatting to make option names clearer
  in descriptions
* Meet ansible line length requirements
* Tidy up flake8 messages
9 years ago
Will Thames bd4003e3f2 Add tags to cloudfront distribution facts
Tags are available from cloudfront API, so make use of them
9 years ago
William L. Thomson Jr b7229b0467 Adds latest to portage module (#21918) 9 years ago
Adrian Likins ae1a610482 Rhsm pool not name 3898 (#21911)
* Subscibe to pools matched by id before name matches.

If the pools regex matches any pool ids, then subscribe only to those pools.
If there are no pool id matches, then attempt to match the regexp and pool names.
If there are pool name matches, subscribe to those pools.

Fixes #19466, https://github.com/ansible/ansible-modules-core/issues/3898 (partially)

* Add pool id/name matches to 'to keep' list

use subscribe() to use the pools-first logic on update
9 years ago
Paul Arthur 9c72d478ec hashi_vault: fix token logic
The token should not be set and checked twice, especially when the
second time overrides a previously set token.
9 years ago
Peter Sprygada c1c54f1bf4 roll up of eos fixes (#21987)
* fixes to_command function in eos to not iterate over commands twice
* fixes lots of minor issues with _eos_template
9 years ago
Tim Rupp 888c8614fb Removes expanduser calls
The usage of type='path' includes the expanduser call itself. This
patch removes its duplicate usage. Related to #12263
9 years ago
Peter Sprygada f95a11a9db fixes eos_eapi to error on wrong transport (#21993) 9 years ago
rollerwhrtn e8ef826976 Changed datacenter Required to False since default is set. Fixes 'required and default are mutually exclusive for datacenter' error. Fixes 21076 (#21492) 9 years ago
Anhad Jai Singh 13dd4b108c Add 9p to list of special filesystems for selinux
When trying to copy files onto a Virtio-9p filesystem[1][2] int the host
using something like the template module, ansible throws an error that
says something like:

    invalid selinux context: [Errno 95] Operation not supported

Adding 9p to the list of exceptional filesystems forces ansible to not
try to set an SELinux context on copied files.

[1] such as one mounted in a qemu VM, using:

    # http://www.linux-kvm.org/page/9p_virtio
    qemu-kvm [...] -virtfs local,id=apps_dev,path=/host/dir,security_model=passthrough,mount_tag=host_dir

[2] https://www.kernel.org/doc/Documentation/filesystems/9p.txt

Change-Id: Ia868dadce1ffd2b5bebf5ee1804501676e9d7e5f
9 years ago
John R Barker 05d719a9f1 Empty init file (#21991) 9 years ago
John R Barker 7891859051 Create __init__.py 9 years ago
Slezhuk Yevgeniy ea2b27f931 jira: (#21701)
- Add timeout param.
 - Some improvement on params description.
9 years ago
Dag Wieers 2cd6e56dc2 hponcfg: Configure HP iLO mgmt board (in-band) (#21677)
This is the original `hponcfg` module that was once accepted in
Ansible but had been removed subsequently because it could not be tested
by the Ansible project.

Since then it was moved to the ansible-provisioning project and
maintained by HP engineers going forward.

Now we are trying to get it upstreamed again.
9 years ago
Dag Wieers a66d5dcc43 win_chocolatey: Add integration tests (#21930)
And also fix a known issue.
9 years ago
Peter Sprygada ebc2716be7 removes old module.connected property from result (#21977) 9 years ago
Peter Sprygada 216877c6ca adds system_mtu argument to nxos_system (#21970)
* updates argument_spec
* adds unit test case
9 years ago
Peter Sprygada 4c354c9c70 adds integration tests cases for nxos_feature (#21966) 9 years ago
Peter Sprygada 10b23f3a00 adds unit test cases for nxos_command (#21959) 9 years ago
Peter Sprygada 0cb2019293 roll up of bug fixs for nxos_evpn_global (#21961)
* updates nxos_evpn_global module
* adds integration test cases
* adds unit test cases
9 years ago
René Moser 06acf8ac2e nginx_status_facts: fix pep8 (#21963)
* nginx_status_facts: fix pep8

* remove from legacy files
9 years ago
René Moser cecf22039d cs_vpc: fix pep8 (#21964) 9 years ago
Nathaniel Case 9b9ed59d98 Vyos config fixes (#21862)
* Fix vyos signatures to match new versions

* Fix test cases referring to 'updates' instead of 'commands'

* I think this is an artifact of `connection: network_cli`?
9 years ago
Nathaniel Case ca21d09483 Fix a few errors (#21854) 9 years ago
Peter Sprygada a284c3f7ea roll up of fixes for nxos_facts (#21954)
* fixes commands to work with nxapi
* updates test case timeouts
9 years ago
Peter Sprygada 16a39639f5 fixes minor bugs in eos_eapi module (#21925)
* module will now check protocol running state before return
* warns on config argument no longer being needed
* lots of integration test cases updated
* updates unit and integration test cases for state check

fixes #21908
9 years ago
Peter Sprygada 1f9b503e89 fixes issue with config parents on eos modules (#21923)
eos_config module wasn't respecting config block path (parents).  This
patch fixes that problem.  Also fixes a number of integration tests
cases

fixes #21903
9 years ago
Peter Sprygada 14c05d9e2b roll up of fixes for nxos_config (#21949)
* fixes provider to not log entries
* fixes nxapi send_request with config statements
* fixes nxapi get_config()
* updates nxos_config integration tests
9 years ago
Peter Sprygada f9b108e319 fixes issue that caused eapi transport setting to get lost (#21919)
The eos action didn't properly set provider transport argument for the
module.  This patch fixes that problem
9 years ago
Peter Sprygada 01ac1bc6e5 roll up of fixes from nxos integration tests (#21948)
* now fails nxos_nxapi if the transport=nxapi
* fixes typos in nxos_nxapi integration tests cases
9 years ago
René Moser d26c57f938 exoscale: pep8 and python3 fixes (#21821)
* exoscale: pep8 fixes

* exo_dns_record: remove from pep8 test legacy

* exoscale: fix python3 support
9 years ago
Barry Peddycord III 2ca5719168 Deprecating old cumulus modules (#21726)
* deprecating old nclu modules

* adding deprecated cl_ moduels to changelog

* renaming deprecated modules
9 years ago
Dag Wieers 98934939af win_copy: Add force parameter and check-mode support (#20405)
* win_copy: Add force parameter and check-mode support

The rationale behind this is that if you're working with +3GB files,
creating the checksum takes a lot of time, which we can avoid by simply
testing if the file exists.

I also took the liberty to put the various parameters together. It
probably takes a (neglible) performance hit but makes the code a bit
easier to inspect/work with, as its closer to all other windows modules.

On a normal run, the action plugin does a local checksum of the source
and a remote checksum of the destination. And afterwards, the module
will do another remote checksum of the copied source, a remote checksum
of the original destination, and another remote checksum of the copied
destination.

On a very huge file (think 4GB) that means 5x reading the complete file
(if you have a large cache you may get away with it, otherwise you're
doomed !).

This patch will ensure with `force: no` that not checksums are being
performed.

* Moving presence check before remote checksum

* Adapted to wishes

* Even more performance improvements
9 years ago
Brian Coca ce08b4165d ansible-doc more flexible to metadata changes 9 years ago
Matt Martz 305c88700d PEP8 E712 fixes (#21916) 9 years ago
Matt Clay 4e0f82e0e9 Fix PEP 8 issue. 9 years ago
John R Barker 1d2349872a RETURN block is broken, so delete it 9 years ago
Toshio Kuratomi 49db03c384 Fix for traceback when we encounter non-utf8 characters in diff
We can diff non-utf8 files (as part of copy, for instance) but when we
try to turn the bytes into text for display, the characters cause
a traceback.  Since diff output is only informational, we can replace
those problematic bytes with replacement characters.  We do not want to
do this to other fields because those fields may be used inside of the
playbook (for templating another variable or matching in a conditional).

Fixes #21803
Fixes #21804
9 years ago
Brian Coca 9ac697a155 simplified persistent connection quandry 9 years ago
Brian Coca 2a6145ca1c prep for role passthrough instead of detection
(cherry picked from commit 2125a23f2ab0903065a13f9ee68ae43ed348d6fb)
9 years ago
Peter Sprygada c85d794d83 fix argument name in nxos shared lib (#21912)
fixes #21895
9 years ago
Adrian Likins 6c6b647182 Fix 'ansible-vault edit /some/symlink' (#20417)
Since vault edit attempts to unlink
edited files before creating a new file
with the same name and writing to it, if
the file was a symlink, the symlink would
be replaced with a regular file.

VaultEditor file ops now check if files
it is changing are symlinks and instead
works directly on the target, so that
os.rename() and shutils do the right thing.

Add unit tests cases for this case and
assorted VaultEditor test cases.

Fixes #20264
9 years ago
Adrian Likins 8830cde28d Fix 'task name is not templated in retry callback' (add task_name property to TaskResult) (#21214)
Fix 'task name is not templated in retry callback'

Add a task_name property to TaskResult that knows to
check in TaskResult._task_fields.

Add integration test for v2_retry_runner callback

Fixes #18236
9 years ago
Adrian Likins 78c4f03e50 Fix firewalld get_masquerade_enabled_permanent error (#21693)
get_masquerade_* functions only take one arg. The action_handler
wrapper function expected a tuple, but was being passed (zone)
instead of (zone,) making for an ambiquous tuple. The
(zone) arg was being treated as a tuple/list of six chars
(the zone name) instead of a tuple of one string.

This would cause errors like:

        get_masquerade_enabled_permanent() takes exactly 1 argument (6 given)

Fixes #21632
9 years ago
Ricardo Carrillo Cruz e6a78b38d3 Remove check_args import (#21905)
It is defined in the file, thus no point in importing it.
9 years ago
Gaurav Rastogi 436095f576 New module for setting up Avi Pool (#21241)
* New module for setting up Avi Pool

* Fixed inconsistency between argspec and documentation regarding defaults and required attributes

* Added support for module_check
9 years ago
Gaurav Rastogi 055f2c29a5 New module to setup Avi VirtualService (#21170)
* Added new module to setup Avi VirtualService

* Fixed the documentation error where [] brackets where used making it incompatible with yaml

* Fixed inconsistency between argspec and documentation regarding defaults and required attributes

* Added support for check mode
9 years ago
Gaurav Rastogi de841a6429 New module for setting up Avi SSL Key and Certificates for Virtual Se… (#21242)
* New module for setting up Avi SSL Key and Certificates for Virtual Services

* Fixed inconsistency between argspec and documentation regarding defaults and required attributes

* Added support for module_check
9 years ago
Gaurav Rastogi 39a93eb357 New module for setting up Avi Pool Group settings. (#21243)
* New module for setting up Avi Pool Group settings.

* Fixed inconsistency between argspec and documentation regarding defaults and required attributes

* Added support for module_check
9 years ago
Gaurav Rastogi 51718fd32b New module for setting up Avi Pool Health Monitors (#21240)
* New module for setting up Avi Pool Health Monitors

* Fixed inconsistency between argspec and documentation regarding defaults and required attributes

* Added support for module_check
9 years ago
Pavel Malyshev 7063db64c2 redhat_subcription module accepts id in the pool argument [#3898] 9 years ago
Dhivyap e3dc202a3c Fixes #18663 Bad Handling of existing config in OS6 module (#21661)
Fix bad handling of existing config in OS6 module

Fixes #18663
9 years ago
Simon Li ef7dd0cb2c Set os_server metadata on existing instances (#19318)
* Update metadata on existing openstack instances

This adds or updates existing keys, but doesn't remove them
Fixes #5500

* Set meta to {} if None

* Move common metadata parsing into a method
9 years ago
Dag Wieers 581bf7bb97 win_environment: Clean up, check-mode and diff support (#21356)
* win_environment: Clean up, check-mode and diff support

Changes include:

- Remove trailing semi-colons
- Replaced PSObjects into normal hashes
- Make use of Get-AnsibleParam and types
- Added check-mode support
- Added diff support

* Improve diff-support by using standard naming

I started to use the variable $diff_support for the boolean that takes
care of diff output support.
9 years ago
Dag Wieers b1f6344ecb win_chocolatey: Clean up parameter handling (#21533)
Changes include:

- Use Get-AnsibleParam with -type/-validateset
- Replace $result PSObject with normal hash
- Deprecate 'upgrade' parameter by using state=latest
9 years ago
Dag Wieers 78c300412d win_user: Clean up parameter handling and $result hash (#21375)
* win_user: Clean up parameter handling and $result hash

Changes include:
- Use of Get-AnsibleParam and parameter types/validateset
- Removed parameter validation
- Replace $result PSObject with normal hash

* Revert to original formatting

* Parameter "groups" is a list
9 years ago
Matt Martz 36e6c7973d pep8 fixes for module_docs_fragments (#21876) 9 years ago
Dag Wieers cfb1f72d1c Improve winrm import error message (#20267)
The requests python module is needed, however it is not a dependency of
the python-winrm package. The python-winrm package does require
python-requests_ntlm, which does not seem to pull python-requests.

So for the time being (until Red Hat fixes their package) give a more
informative error message.
9 years ago
Dag Wieers 70336c63c9 win_uri: Replace -type "string" with -type "str" (#21373)
Type "string" does not exist.
9 years ago
Dag Wieers 582557bc09 win_file_version: Clean up and check-mode support (#21379)
* win_file_version: Clean up parameter handling and $result hash

Changes include:
- Replacing $result PSObject with hash
- Use Gt-AnsibleParam using -type

* Revert to original formatting
9 years ago
Dag Wieers 69ac88176d win_group: Clean up and check-mode support (#21384)
* win_group: Clean up and check-mode support

Changes include:
- Use Get-AnsibleParam with -type/-validateset support
- Replace $result PSObject with normal hash
- Add check-mode support

* Revert to original formatting
9 years ago
Dag Wieers 928880c639 win_owner: Clean up and check-mode support (#21385)
* win_owner: Clean up and check-mode support

Changes include:
- Use Get-AnsibleParam with -type/-validateset
- Replace $result PSObject with normal hash
- Add check-mode support

* Implemented -WhatIf:$check_mode support

* Revert to original formatting
9 years ago
Dag Wieers 313a9d3845 win_share: Clean up parameter handling (#21386)
* win_share: Clean up parameter handling

Changes include:
- Use Get-AnsibleParam with -type/-validateset
- Replace $result PSObject with normal hash

* Revert to original formatting
9 years ago
Dag Wieers cb78262c18 win_lineinfile: Clean up and check-mode support (#21503)
* win_lineinfile: Clean up and check-mode and diff support

Changes include:
- Use Get-AnsibleParam with -type support
- Replace $result PSObject with normal hash
- Remove trailing semi-colons
- Fix indentation (majority is tabs, few lines using spaces)
- Add check-mode support
- Support `r and `n for CR and LF
- Add diff support

* Implement -WhatIf:$check_mode support

* Keep original formatting as requested
9 years ago
Dag Wieers d239adb5e5 Improve diff-support and use Add-Warning() (#21519)
I started to use the variable $diff_support for the boolean that takes
care of diff output support.
9 years ago
Dag Wieers ff1efb2c1c win_nssm: Clean up parameter handling + docs (#21625) 9 years ago
Dag Wieers 58cbf1bfe0 Implemented -WhatIf:$check_mode support (#21628) 9 years ago
Dag Wieers aebf6c8c92 powershell.ps1: Ensure Fail-Json() works with Hashtables (#21697)
Without this change a dictionary $result object would be emptied if it
is anything but a PSCustomObject. Now we also support Hashtables.
9 years ago
Dag Wieers 01afed4dc5 win_stat: Module cleanup (#20672)
* win_stat: Clean up and bugfixes

- Fix an issue where LastWriteTime was actually LastAccessTime
- Return lnk_source = $null for a broken link
- Remove a useless -Replace '\\','\\'
- Make use of new parameter options (-type and -aliases)

* Deprecate get_md5 with checksum_algorithm: md5

As suggested in comments we deprecate get_md5 and internally
replace it with `get_checksum` and `checksum_algorithm: md5`.

We show a warning to the user about this change.

Also remove empty warnings output. This simplifies modules code
(e.g. standard empty list is provided and snippets can add items).

* Adapted to use the new Add-DeprecationWarning() mechanism

* Revert to original formatting
9 years ago
Dag Wieers f47901c3ad powershell.ps1: Add str, int, float types and ignore $null values (#21377)
* powershell.ps1: Add str type and ignore $null values

Changes include:
- New "str" type support using -type "str"
- Ensure that $null values are retained (for bool and str types)
  (Note: $null means unspecified value for parameters)
- Some minor cosmetic changes

* Also add -type "int" and -type "float"

No modules require this at the moment though.
9 years ago
Dag Wieers 371f9fa90d win_slurp: Small cleanup (#21363)
* win_slurp: Small cleanup

Included changes:
- Rewriting the parameter handling (aliases and type)
- Modified the $result hash for both Exit-Json and Fail-Json
- Changed the Test-Path statement

* Revert to original formatting
9 years ago
Dag Wieers a64fb3eebf win_get_url: Clean up and check-mode support (#21381)
* win_get_url: Clean up and check-mode support

Changes include:
- Clean up parameter handling
- Replace $result PSObject with hash

* Revert to original formatting
9 years ago
Tim Rupp b07aa990c9 Adding fixups based on abadger's comments
Using ABCs, and reducing code
9 years ago
Peter Sprygada c3150fbfa9 fixes _nxos_template to use persistent connection (#21841)
The module needed full update to use the persistent connection
introduced in Ans2.3.

fixes #21835
9 years ago
Peter Sprygada 381f7209f8 fixes issue in nxos_config when retrieving current config (#21843)
When parsing the configuration, the wrong indent level was set so the
configurations could not be properly compared.  Also noted that
defaults: yes needed to be added to the integration tests to make the
test cases valid, which is also included in this patch

fixes #21828
9 years ago
Peter Sprygada 06d0278290 fix bug that would cause stack trace in nxos_nxapi (#21861)
The parse_sandbox function will generate a stack trace if the command
is not supported.  This patch will resolve that issue.
9 years ago
Sloane Hertel 942ed42eb0 [cloud] Support deadletter queue configuration in `lambda` module (#21720)
* Add dead_letter_arn option for Lambda.py

* fix logic so DeadLetterConfig can be deleted
9 years ago
Dave Buckley 776116e809 allow server facts to be retrieved by nova UUID (#20924)
* allow server facts to be retrieved by nova UUID

* update docs to state that a nova UUID can be passed to 'server'
9 years ago
philsch a3099b2294 Document returned values of module pause
Adds missing documentation of the return values of
`pause`. Important to know how to retrieve user input.
9 years ago
Kenny Gillen 21e29080ba Fixed typo s/simple fail/simply fail (#21853) 9 years ago
molekuul 7734dd5890 Add the aix_inittab module to be able to modify the inittab at AIX systems (#21511)
* Added the aix_inittab module to be able to modify the inittab at AIX systems.

* fixed identation errors

* fixed identations and trailing whitespace
changed if conditions

* repaired tab-identation

* adjusted to long line and identation

* Adjusted the yaml in the example documentation

* Adjusted the documentation yaml

* Repaired return yaml

* repaired typo

* Removed unnecessary parameters from comment
changed action to state, and changed the way to call this module
changed proccessaction to action

* adjusted result['warnings'] to module.warn()

* adjusted the documentation

* changed warning to failed
ran module against autopep8

* added check_mode

* fixed typo

* changed description and short description, to be able to push again after a failure at shippable
9 years ago
Kevin Kirsche 466131198b Remove explicit port from pushover module (#19078)
Fixes #18868
9 years ago
Philipp Schmiedel 88f67747cc [cloud] Add `force` flag to ec2_key module (#21685)
Set the `force` flag to false to:
  - protect existing Keys from being overwritten
  - check if a Key was already existing by evaluating
    the returned `changed` status
9 years ago
Peter Sprygada b25c51f99a cast http_port, https_port to int from config (#21840)
When retrieving the http_port, https_port values from the configuration
of the device, the values need to cast to int in order to correctly
compare against the argspec values.  This patch fixes that problem.

fixes #21832
9 years ago
Peter Sprygada ab0f992b3a fixes import statement in nxos_facts module (#21834)
trying to import from the wrong shared lib, this patch changes
network_common to connection.  Also fixes a bug found in the nxos
action plugin to detect transport

fixes #21829
9 years ago
kuboj 551a765ea5 added ability to modify nova flavor metadata in os_nova_flavor module (#20091)
* added ability to modify nova flavor metadata

* documentation for os_nova_flavor module fixed
9 years ago
camradal f7e426e636 os_auth: display proper error message for exceptions (#20891) 9 years ago
Colleen Murphy 352815ecbb Add domain_id parameter to openstack os_group (#20609)
Previously, the os_group module did not have any way to specify under
which domain a group should be created. This meant that a group could
only be created for the default domain. The keystone API supports the
domain_id parameter for group creation[1] as does the shade library[2]
so this patch adds the support in the ansible module.

[1] http://developer.openstack.org/api-ref/identity/v3/index.html?expanded=create-group-detail#create-group
[2] http://docs.openstack.org/infra/shade/usage.html#shade.OperatorCloud.create_group
9 years ago
Helge Sychla b8d308d919 Revert syntax change of set_fact example for strings and booleans. (#21819)
The reverted change (Examples syntax batch7 (#5624), 99de7f0) makes the
example not match its description.

	modified:   lib/ansible/modules/utilities/logic/set_fact.py
9 years ago
Benjamin Jolivot 1e84c401f1 Fortios_config PR (#21409)
* Remove state & change backup strategy & fix doc fragment

* Missing __init__.py

* Move backup to module_utils + add backup_path & backup_filename params

* Fix pep8

* Change backup_path type from str to path

* Change license from gpl to bsd

* Fix doc and backup param leftover

* Fix Doc
9 years ago
Peter Sprygada 730bd682c6 sends save command in text mode otherwise it fails (#21812)
Sending the save command over nxapi requires text mode otherwise nxapi
will reject the command.  This commit ensures that the command is always
sent in text mode

fixes #18971
9 years ago
Peter Sprygada 0e7ebf6391 fixes issue with setting transport to nxapi (#21811)
The nxos action handler did not map the nxapi value to the provider
argument properly.  There as an additional fix in the nxos shared lib
to properly detect nxapi being set
9 years ago
Matt Clay 4554e8d769 Remove unnecessary shebangs and execute bits. 9 years ago
tomkitchen 9d2d364a38 #21440. Module Win_Regedit, pipe all calls to New-ItemProperty and Get-ItemProperty (when not stored as variable) to Out-Null (#21771) 9 years ago
Peter Sprygada 7b30203016 cleans up nxos_vlan output (#21807)
Only returns debug return keys when the debug flag is set
9 years ago
Peter Sprygada 0a62d7c1f4 adds missing argspec to eos_user module (#21806)
Updates the eos_user module with the common eos arg spec
9 years ago
Peter Sprygada 1ef0287854 casts the bridge id to a str prior to building command (#21805)
This will prevent exception from being raise when calling _vsctl and
extending the cmd with the bridge information
9 years ago
Damien 9634f1e9c9 Fix variable name to return to match latest pyez pos version (#21717) 9 years ago
Troy Ready 3f391f5a23 update ec2_ami_find to allow product-code filter (#18896)
CentOS's cloud image wiki page (wiki.centos.org/Cloud/AWS) gives an
example of using their product code to search for AMIs. This commit
adds an optional parameter to ec2_ami_find to allow this filtering.
9 years ago
jctanner 8c521655e1 Fix traceback on indexing empty list (#21784)
* Fix traceback on indexing empty list
* Make it more 'idiomatic'
* Forgot the index
9 years ago
Peter Sprygada f8157d579a fixes error where a transport is not set for nxos (#21790)
Will now make sure transport is set to `cli`
9 years ago
Yuri Khan a4ae0c85f1 Support 256-color terminals (#17750) 9 years ago
Peter Sprygada 8824387cf8 fixes ios_command to_command method (#21792)
Changes key from response to answer to match expected payload

fixes #21791
9 years ago
Peter Sprygada 58ee661437 fixes play context connection user (#21776)
Does't map remote_user back into vars if connection is local to preserve
the user variable.  This is done to be able to set connection_user
prop in play_context for the network_cli plugin connection
9 years ago
Brian Coca 93ac278f4c added 'extensions' options to include_vars
This allows users to override default 'extensions read' when using the dir option
9 years ago
Toshio Kuratomi 45251f910c Make BaseFileCache into an abstractbaseclass so it's a proper interface
Push the opening and closing of files into the _load and _dump methods
so that we don't invoke the slow codec machinery without reason.
9 years ago
Toshio Kuratomi c033e5111f Graceful error message for abstract base classes in PluginLoader 9 years ago
Brian Coca 374af06cbf added pickle and yaml cache plugins
added new base class for file based cache plugins as 99% of code was common
now also catches unexpected decoding exceptions
allows per module file modes and encoding
moved jsonfile code to base
9 years ago
scottb 3812c76168 Update GUIDELINES.md
Edited for grammar and clarity.
9 years ago
Brian Coca 96d952a998 fix typo 9 years ago
Brian Coca 4bdaf6a4f0 updated guidelines to reflect boto3 preference 9 years ago
Dhivyap 75d7c70e70 Fixes#5534-Handled Command Prompt in exec mode (#21651)
* Fixes#5534-Handled Command Prompt in exec mode

* Pep8 Cleanup
9 years ago
Ricardo Carrillo Cruz ab4e83f288 Remove superfluous include on iosxr filesystems fact gathering (#21775)
The regex will catch only lines that start with 'Directory of' regardless.
Also, fixing unit tests while at it.
9 years ago
Peter Sprygada 9e6980a039 fixs command dict to be sent to connection socket (#21713)
There as an invalid key in the command dict that would cause failure
using prompts.  This changes the key from response to answer which is
what is expected by network_cli
9 years ago
Adrian Likins 6e7b89764e Fix snmp_facts error on decode_hex() (#21694)
* Fix snmp_facts error on decode_hex()

Remove use of some_string.decode('hex') that fails on py3, and
replace with to_binascii.unhexlify()

Fixes #21668
9 years ago
Matt Martz b143fdea54 DOC options must be a dict when used with extends_documentation_fragment (#21745)
* Fix string formatting
* Provide better tracebacks
* When options is None and extends_documentation_fragment is in use, add an error that options must be a dict
* If options was specified and not a dict, then error
9 years ago
James Cammarata 404b2864ef Additional lock down of conditionals 9 years ago
Brian Coca 5258e6d52a use safe load instead
fixes #21724
9 years ago
James Cooke 8ec28a2ba4 Download remote apt deb file in bytes mode in Python 2 and 3
Fixes #19710
9 years ago
James Cammarata 9f0b354023 Use proper YAML constructor class for safe loading 9 years ago
Toshio Kuratomi 2dde7f7768 Fix a case where we mixed text and bytes in the local connection plugin
Fixes #20710
9 years ago
Tim Rupp 6a4324ee99 [network] fix imported name in F5 module_utils (#21733)
Whoops. not called that.
9 years ago
Ryan Brown c136ff58c0 [cloud][docs] Fix misleading Route53 `value` example (#21689)
The `route53` module uses a comma-separated string for records
containing more than one value. Fixes #21134
9 years ago
James Cammarata 3d65482927 Stash post-validated fields of the task in the TaskResult
This allows us to have a snapshot of the fields, which we can restore
on the pre-fork side so as to avoid having to re-template fields.
9 years ago
jctanner 40235d7b99 Skip fact gathering if the entire play was included via conditional and False (#21734)
Addresses #21528
9 years ago
Pierrick Caillon a1b3664ec4 Fix: mysql_user - permission string with column privileges
MySQL returns privileges on columns as "PRIVILEGES (column)".
For permissions to be correctly matched, it must be specified exactly the
same in the module argument. A resulting string is like
"dbname.dbtable:PRIVILEGES (column)". Thus, the space before the opening
parenthesis must also be removed when creating the set of privileges for
validation.
9 years ago
Matt Clay 879feff6b7 Fix PEP 8 issue. 9 years ago
Veaceslav Mindru cdcdc1d81b #19587 add yum skip-broken (#21475)
* #19587: refactor to PEP8

* Issue: #19587: add skip_broken option to yum module
PNTSYSOPS-1901 - internal reference

Signed-off-by: Veaceslav Mindru <vmindru@redhat.com> <mindruv@gmail.com>

* Issue: #19587: fix line break, attempt to make readble

        things at line 646 look ugly ..
        trying to make them look a bit more human readble
        though the entire approach should be rewriten

PNTSYSOPS-1901 - internal reference

Signed-off-by: Veaceslav Mindru <vmindru@redhat.com> <mindruv@gmail.com>

* #19587: fixing typo, skip-broken has to be passed as list

* PR: #21475: peer review changes
            relates to: revert comment deletion https://github.com/ansible/ansible/pull/21475#discussion_r101574146
            relates to: remove irelevant var https://github.com/ansible/ansible/pull/21475#discussion_r101573388
            relates to: reformat https://github.com/ansible/ansible/pull/21475#discussion_r101572840

Signed-off-by: Veaceslav Mindru <vmindru@redhat.com> <mindruv@gmail.com>

* PR: #21475: peer review changes
            relates to: https://github.com/ansible/ansible/pull/21475#discussion_r101573736

Signed-off-by: Veaceslav Mindru <vmindru@redhat.com> <mindruv@gmail.com>

* Issue: #21475: fixing typo in the Man section

Signed-off-by: Veaceslav Mindru <vmindru@redhat.com> <mindruv@gmail.com>

* PR: #21475 - Peer review: revert variable a
        Relates to: https://github.com/ansible/ansible/pull/21475#pullrequestreview-22404868

Signed-off-by: Veaceslav Mindru <vmindru@redhat.com> <mindruv@gmail.com>

* Issue: 19587 - small correction

Signed-off-by: Veaceslav Mindru <vmindru@redhat.com> <mindruv@gmail.com>
9 years ago
Adrian Likins 297566f2fd Wrap vault encrypt_strings zip() result in list for py3 (#21695)
py3 zip() results are not lists, so list'ify the result
for py2/py3 compat.
9 years ago
Damien 6fadddeaba network/aos - Fix doc for session information (#21718)
* Fix EXAMPLES to make session variable homogeneous across all modules

* Fix parameter name in EXAMPLE, template not design_template
9 years ago
Peter Sprygada 6e9244a9e1 adds more logging output to network_cli and ansible-connection (#21716) 9 years ago
Sebastien Lacoste-Seris 77596951b8 Update vca_vapp.py (#19562)
Check result of vApp creation and return module failure if creation task not present
9 years ago
Ricardo Carrillo Cruz 6622b05326 Fix memory ios facts (#21696)
In order to populate the total and free mem of an IOS device, we run
the 'show memory statistics' command.
The output shows something similar to:

                Head    Total(b)     Used(b)     Free(b)   Lowest(b)  Largest(b)
Processor    BEAE880   335215488    64044364   271171124   268918092   268463852
      I/O    8DAE880    51380224    41880736     9499488     9461552     9352252

We need to just parse the line containing 'Processor' and get the first and third
number for total and free mem, instaed for first and second as the code wrongly
does.
9 years ago
Paulo Matias 46fee994d1 os_subnet: add support for using the default subnetpool (#20191)
Allows to pass use_default_subnetpool instead of a cidr. This is
required when adding an IPv6 subnet if BGP or prefix delegation is
enabled.
9 years ago
Peter Sprygada 2567e8157f fixes bug where handle_prompts failed if list of prompts provided (#21711)
This will now automatically convert the prompts to a list and iterate
over the regexp looking for a prompt match before supplying the answer.
9 years ago
Tim Rupp 96bdb01888 Adds the txcontent manager import for bigip (#21700)
as it is used by some modules and it should be part
of the regular imports
9 years ago
Dag Wieers b0c6ebf3fc win_shortcut: Clean up parameter handling (#21378)
* win_shortcut: Clean up parameter handling

Minor changes.

* Implemented -WhatIf:$check_mode support
9 years ago
Dag Wieers b0fdb6ac10 win_timezone: Clean up and check-mode support (#21387)
Changes include:
- Use Get-AnsibleParam with -type support
- Replace $result PSObject with normal hash
- Add check-mode support
9 years ago
Ivan Bojer 21ed43e38a panos module to activate FW licenisng using authentication code (#20154) 9 years ago
Ivan Bojer dafeb42c2d Panos interface (#20659)
* new module to manage DP interfaces

* - copyright change for the new module

* doc changes as requested
9 years ago
Barry Peddycord III d1efc8e19e New Networking Module: NCLU (#21101)
* Adding Cumulus NCLU module

* Delete incorrect testing folder

* wrong import location for nclu test

* another wrong import location for nclu test

* unittest library doesn't support 'skip', removing 'real' nclu tests

* Don't need stringio since I'm not doing real tests

* got rid of unnecessary shebang in test_nclu

* version set to 1.0

* Documentation fixes
9 years ago
Peter Sprygada e4a2c804be partial revert of changes introduced in d5f7a0181b (#21688) 9 years ago
Wayne Witzel III 4632b65086 add Ansible Tower role module (#21592)
* add Ansible Tower role module

* remove owner as choice from role paramenter
9 years ago
Wayne Witzel III 96772719ba add Tower JobTemplate module (#21681)
* add Tower JobTemplate module

* add host_config_key and remove defaults from required parameters
9 years ago
Wayne Witzel III a59c4d558d add Ansible Tower team module (#21593) 9 years ago
Sloane Hertel 26b10eb160 [modules] Fix bad usages of `traceback.format_exc()`; doesn't take an error parameter (#21678) 9 years ago
Damien d9e4248c35 Add doc link to aos_login module (#21684) 9 years ago
Dag Wieers 00668b1544 win_webpicmd: Clean up parameter handling (#21376)
Changes include:
- Use of Get-AnsibleParam and parameter types
- Replace $result PSObject with normal hash
9 years ago
Adrian Likins d44c80280e Fix vault cli errors on 'encrypt_string_read_stdin' (#21675)
'encrypt_string' only options were being referenced when using
other vault subcommands. That code is moved inside a check
for 'encrypt_string' action now.
9 years ago
Tim Rupp f37bc92924 Adds required_one_of to f5 utils class (#21650) 9 years ago
Marc Abramowitz e2e4a69425 hashi_vault: Get token from env var or file
This allows getting the Vault token from the `VAULT_TOKEN` env var or
from the file `$HOME/.vault-token`, as both of these are understood by
the Vault CLI and are a common place to put Vault tokens. This allows
avoiding hard-coding a Vault token into playbooks or having to include
lookups.

`HOME/.vault-token` is nice because a user can authenticate with the CLI
using `vault auth` and then the token will be stored in
`$HOME/.vault-token`. If we read this file, then we allow someone to do
`vault auth` "out of band" to set up Vault access.
9 years ago
Dag Wieers aae1a00d7e win_say: Clean up and check-mode support
Changes include:
- Clean up parameter handling
- Replace $result PSObject with a hash
- Added check-mode support
9 years ago
René Moser 576ff0728d service: deprecate state=running (#21499)
* service: deprecate state=running

* deprecated with version 2.7
9 years ago
Jordan Borean a80251ff02 Added win_region module (#19147) 9 years ago
Dag Wieers 1cc9e9f2a1 Clean up windows setup module (#21343)
The following items were implemented:
- Replace PSObject with normal hash
- Replace Set-Attr function with normal hash assignment
- Re-indent code (make sure everything uses 4 spaces)
- Remove trailing semi-colons
9 years ago
Dag Wieers 3c45c93d10 win_reg_stat: Clean up parameter handling (#21380) 9 years ago
Dag Wieers 958cbae7ba win_tempfile: New module implementing tempfile on Windows (#21623)
This module implements the **tempfile** module for Windows.
9 years ago
Aliaksandr Kharkevich 7bc7f13856 Add validate_certs options to gitlab_user and gitlab_group modules (#21415) 9 years ago
Peter Sprygada bd036c15e0 minor fixes to junos action (#21643)
* adds instrumentation messages
* checks cli context is not in config mode
9 years ago
Peter Sprygada ce9180b3a1 roll up of vyos action fixes (#21642)
* check cli context is not in config mode
* add display messages for more details
9 years ago
Peter Sprygada 8472ed640b fixes minor bugs in nxos action (#21641)
* checks cli context is correct
* adds display messages
9 years ago
Peter Sprygada c06b10eedd fix play_context connection_user attribute (#21640)
The connection user needs to be set from the original play_context and
not the copy.  This fixes that problem
9 years ago
David Norman 9b166f6f29 Grammar and spelling on win_iis_webapplication. (#21618) 9 years ago
Peter Sprygada d5f7a0181b roll up of eos fixes (#21629)
* fixes error where eos would close the cli shell
* fixes network_cli connection plugin to check before calling open_shell()
* fixes json commands being sent over eapi
9 years ago
Peter Sprygada 76c9ad9dfc new module nxos_system (#21627)
* provides declarative config support for nxos system attributes
* adds unit test cases for new module
9 years ago
Peter Sprygada 2f10bdf0c7 roll up of fixes in junos action plugin (#21624)
* calls open_shell() or open_session() depending on connection type
* closes shell after module completion
* adds open_session() to netconf
9 years ago
Brian Coca c68d81fe4f added check_ps common function 9 years ago
Peter Sprygada 920f9f4815 fixes nxos nxapi implementation (#21615)
* correctly maps play_context to nxapi values
* fixes bug in nxos_nxapi module detecting nxapi feature
* updates nxos shared lib provider values
* fixes missing ssh_keyfile in nxos shared lib
9 years ago
Trond Hindenes eb6956e1dd win_nssm improvements (#21290)
* win_nssm improvements

* updated version_added
9 years ago
Peter Sprygada 912877c3dd adds no_log to provider arg in iosxr shared lib (#21617) 9 years ago
Peter Sprygada c875393916 roll up of fixes for vyos base (#21616)
* adds ssh_keyfile to vyos
* fixes play_context mapping to provider
* adds missing network_os to play_context
* executes close_shell() after module completes
9 years ago
Peter Sprygada e6dfbf63f6 fixes eos action mapping of play_context values (#21614)
* adds mapping for ssh_keyfile
* adds correct mappings for eapi
* fixes missing no_log value for provider arg
9 years ago
Tim Rupp ff2affd11a Fixes name (#21610)
The named implied the reverse of how I was actually creating the
dictionary, so correct that.
9 years ago
Damien b607a7b78a New Module : aos_logical_device_map as part of network/aos (#21277)
* Initial version of aos_logical_device_map

* Update doc and fix typo
9 years ago
Damien 615df814f1 New Module : aos_logical_device as part of network/aos (#21226)
* Add new module aos_logical_device

* Add hard stop to documentation

* Removed required false from documentation

* Add comment  before sleep

* Replace IP Pool by Logical Device in the doc
9 years ago
Damien 32e6341f4e New Module : aos_template as part of network/aos (clean) (#21222)
* Add module aos_template

* Add full stop to documentation

* Removed required: false in documentation

* Add comment for sleep
9 years ago
Damien f9fcffb134 New Module : aos_external_router as part of network/aos (clean) (#21221)
* Add module aos_external_router

* Add hard stop to documentation

* Removed required false from doc

* Add documentation for ASN and loopback
9 years ago
Damien d930f5f7b1 New Module : aos_login as part of network/aos (clean) (#21220)
* Add module aos_login

* Cleanup documentation and add hard stop

* Add default value in doc for port and remove required: false

* Fix typo in doc for check mode
9 years ago
Damien c23d699c49 New Module : aos_asn_pool as part of network/aos (clean) (#21224)
* Add module aos_asn_pool

* Add hard stop to documentation

* Remove required: false from doc

* Add pool name in error message when in_use
Change Asn for ASN

* Change the documentation for content
9 years ago
Damien 5084bf474b New Module : aos_blueprint as part of network/aos (#21278)
* Initial release of aos_blueprint

* Cleanup documentation based on review comments

* Change if else to be python 2.4 compatible
9 years ago
Damien d0e907e661 New Module : aos_device as part of network/aos (#21276)
* Initial version of aos_device

* Clean up documentation

* Move try/except closer to device.approve

* Remove non valid characters

* Change option approve to type bool and fix some typo
9 years ago
Damien aff83940e2 New Module : aos_blueprint_param as part of network/aos (#21352)
* Add initial version of aos_blueprint_param

* Add a missing hard stop in doc

* Remove type: bool from description
9 years ago
Damien ebd9eca9e1 Initial version of Rack Type (#21372) 9 years ago
Damien 0200e4fcb9 New Module : aos_blueprint_virtnet as part of network/aos (#21432)
* Initial version of aos_blueprint_virtnet

* Fix indentation in EXAMPLES
9 years ago
Brian Coca b3b76826e5 Revert "allow device to be list for multidev fs" 9 years ago
Brian Coca ee17b91455 Revert "add systemd-nspawn connection driver"
This reverts commit 3597ca082b.
9 years ago
Brian Coca e84713c76c Revert "Remove the --nspawn-extra-args cli option"
This reverts commit b8125ac1a6.
9 years ago
Brian Coca 2d2874fb3c Revert "Add safety checks to nspawn connection plugin"
This reverts commit 60bb677154.

this connection cannot work as is, systemd-nspawn creates instance on each command
9 years ago
Toshio Kuratomi 275be702a8 Switch from using inspect to globals() 9 years ago
Monty Taylor 9bf33e56dd Move availability_zone docs to each OpenStack module (#21540)
* Move availability_zone docs to each OpenStack module

This argument is in the central list for hysterical raisins (mostly me
being a doofus) but is used in almost none of them. Document it
explicitly in each module to stop the confusion.

* Fix two docs formatting bugs
9 years ago
Peter Sprygada 8716a5bc67 maps ios provider ssh_keyfile to play_context (#21597)
This allows the key file to be specified in the playbook for the ios
module provider argument
9 years ago
Thomas Szymanski 60bb677154 Add safety checks to nspawn connection plugin
This patch adds some checks on the path that is accessed as a container,
making sure it looks like one. It implements the connection method and
add adaptations to the modern way of writing connections for Ansible.
It also rewords docs and vars to use the nspawn terminology instead of
chroot.
9 years ago
Thomas Szymanski b8125ac1a6 Remove the --nspawn-extra-args cli option
Providing extra arguments to pass to systemd-nspawn is still possible
through the `nspawn_connection` of the `ansible.cfg` file.
9 years ago
Lars Kellogg-Stedman 3597ca082b add systemd-nspawn connection driver
This commit adds a connection driver built on top of systemd-nspawn.
This is similar to the existing `chroot` driver, except that nspawn
offers a variety of additional services. For example, it takes care of
automatically mounting `/proc` and `/sys` inside the chroot environment,
which will make a variety of tools work correctly that would otherwise
fail.

You can take advantage of other system-nspawn features to perform more
complicated tasks.  For example, on my x86_64 system I have a Raspberry
Pi disk image mounted on `/rpi`.  I can't use `chroot` with this because
the binaries contained in the image are for the wrong architecture.
However, I can use the systemd-nspawn `--bind` option to automatically
insert the appropriate qemu-arm binary into the container using an
inventory file like this:

    pi ansible_host=/rpi ansible_nspawn_extra_args='--bind /usr/bin/qemu-arm --bind /lib64'

See http://www.freedesktop.org/software/systemd/man/systemd-nspawn.html
for more information about systemd-nspawn itself.
9 years ago
John R Barker 482f882798 Correct example 9 years ago
Toshio Kuratomi 3feb3d6c16 Restore validate_certs being a bool type 9 years ago
Brian Coca 0ddcde2fb2 updated docs to match 9 years ago
Monty Taylor 5d21256d9f Default verify to None for OpenStack modules
This will require a new release of os-client-config.
9 years ago
James Cammarata 1bf8c99974 Update any_errors_fatal field attributes in block/task to match play 9 years ago
Wayne Witzel III 743d48af5c Add Tower Project module (#21479) 9 years ago
Wayne Witzel III 17f0dc3f4d Add Tower Group module (#21480) 9 years ago
Wayne Witzel III 17a2e5ead2 Add Tower Host module (#21482) 9 years ago
Wayne Witzel III ff3023e82b Add Tower Inventory module (#21483) 9 years ago
Wayne Witzel III 2b6c13f883 Add Tower Label module (#21485) 9 years ago
Ryan Brown d64d38a1f4 [cloud][docker] Insensitive search for docker port publishing (#21579) 9 years ago
Adrian Likins 7b6c992c46 Vault encrypt string cli (#21024)
* Add a vault 'encrypt_string' command.

The command will encrypt the string on the command
line and print out the yaml block that can be included
in a playbook.

To be prompted for a string to encrypt:
   
   ansible-vault encrypt_string --prompt

To specify a string on the command line:

   ansible-vault encrypt_string "some string to encrypt"

To read a string from stdin to encrypt:

   echo  "the plaintext to encrypt" | ansible-vault encrypt_string

If a --name or --stdin-name is provided, the output will include that name in yaml key value format: 

   $ ansible-vault encrypt_string "42" --name "the_answer"
    the_answer: !vault-encrypted |
          $ANSIBLE_VAULT;1.1;AES256
          <vault cipher text here>

plaintext provided via prompt, cli, and/or stdin can be mixed:

      $ ansible-vault encrypt_string "42" --name "the_answer" --prompt
      Vault password: 
      Variable name (enter for no name): some_variable
      String to encrypt: microfiber
      # The encrypted version of variable ("some_variable", the string #1 from the interactive prompt).
     some_variable: !vault-encrypted |
              $ANSIBLE_VAULT;1.1;AES256
              < vault cipher text here>
      # The encrypted version of variable ("the_answer", the string #2 from the command line args).
      the_answer: !vault-encrypted |
             $ANSIBLE_VAULT;1.1;AES256
             < vault cipher text here>

Encryption successful
* add stdin and prompting to vault 'encrypt_string'
* add a --name to encrypt_string to optional specify a var name
* prompt for a var name to use with --prompt
* add a --stdin-name for the var name for value read from stdin
9 years ago
Zhuo Peng fe02dbecc0 [cloud] Fix a minor doc error in docker_container module (#21033) 9 years ago
Peter Sprygada a6cecef6bc clean up of terminal plugins (#21549)
* removes unneeded supports_multiplexing var
* refactors terminal_prompts_re to terminal_stdout_re
* refactors terminal_errors_re to terminal_stderr_re
* updates network_cli unit test cases
9 years ago
Ricardo Carrillo Cruz c5452eef6f Removes default kwarg in iosxr_argument_spec for timeout (#21569) 9 years ago
Peter Sprygada 4cbbed0b37 fixes issue with prompt detection in network_cli (#21574)
The network_cli plugin would return immediately if an error was
detected.  This patch will force the connection plugin to still try to
detect the current prompt even if an error is found.
9 years ago
Evgeni Golov d3d1aa2dca synchronize: quote private_key (#21570)
otherwise rsync will fail when trying to access a key with spaces:

fatal: [default]: FAILED! => {"changed": false, "cmd": "/usr/bin/rsync --delay-updates -F --compress --archive --rsh 'ssh -i /home/user/Some Folder/.vagrant/machines/default/libvirt/private_key -S none -o StrictHostKeyChecking=no -o Port=22' --out-format='<<CHANGED>>%i %n%L' \"/etc/issue\" \"vagrant@192.168.121.10:/tmp/issue2\"", "failed": true, "msg": "Warning: Identity file /home/user/Some not accessible: No such file or directory.\nssh: Could not resolve hostname folder/.vagrant/machines/default/libvirt/private_key: No address associated with hostname\r\nrsync: connection unexpectedly closed (0 bytes received so far) [sender]\nrsync error: unexplained error (code 255) at io.c(226) [sender=3.1.2]\n", "rc": 255}
9 years ago
Peter Sprygada b0abbb5f8b removes the default kwarg in ios_argument_spec for timeout (#21552)
Uses the configured timeout setting instead of the arg_spec

fixes #21520
9 years ago
Ondra Machacek a5d34f2ac2 cloud: ovirt: add override_iptables to examples (#21474) 9 years ago
Matt Davis 8527013fbe Complete rewrite of Windows exec wrapper (#21510)
* supports pipelining for faster execution
* supports become (runas), creates interactive subsession under WinRM batch logon
* supports usage of arbitrary module_utils files
* modular exec wrapper payload supports easier extension
* integrates async wrapper behavior for pipelined/become'd async
* module_utils are loaded as true Powershell modules, no more runtime modifications to module code
9 years ago
James Cammarata 7bf56ceee3 Relocate creation of Templar in process_pending_results
Moving it to after the blocks where per-item results are calculated,
as it's not used there and causes quite a performance hit being there.

Fixes #21340
9 years ago
Peter Sprygada c9f6a2b740 fixes issue with cli shell left open (#21548)
The nxos action plugin will now close the shell connection once the
module has completely run
9 years ago
Peter Sprygada 20c5a1adc1 verifies cli context for iosxr (#21550)
Checks cli context and exits config mode if needed
9 years ago
Peter Sprygada 9d4a3599b8 bug fixes and updates for eos connections (#21534)
* refactors supports_sessions to a property
* exposes supports_sessions as a toplevel function
* adds open_shell() to network_cli
* implements open_shell() in eos action plugin
9 years ago
Peter Sprygada a01288859d check ios cli context and exits config mode if there (#21544) 9 years ago
Toshio Kuratomi eeaec56ed5 Use isinstance instead of type() comparisons. isinstance is more robust 9 years ago
Tom Melendez 0d3d8cbcd9 [GCE] Doc fixes for gce_net (#21524)
* Updated examples and added return block.

Doc fix only.  No logic or executable code modified in this commit.
9 years ago
Sumit Kumar 1ba47cdf2e Add NetApp SolidFire volume module (#20732)
* Add NetApp SolidFire volume module

* Make requested changes

* Make requested changes

* Set supports_check_mode to True

* Make requested changes

* Change new_account_id to account_id, 512emulation

* Make requested changes

* Add alias for enable512e

* Move byte_map to utils and add exit message

* Update description for ‘attributes’
9 years ago
Ted Timmons 5d9df86b42 Postgres ssl mode prefer (#21498)
* refactor postgres,
* adds a basic unit test module
* first step towards a common utils module
* set postgresql_db doc argument defaults to what the code actually uses

* unit tests that actually test a missing/found psycopg2, no dependency needed

* add doc fragments, use common args, ansible2ify the imports

* update dict

* add AnsibleModule import

* mv AnsibleModule import to correct file

* restore some database utils we need

* rm some more duplicated pg doc fragments

* change ssl_mode from disable to prefer, add update docs

* use LibraryError pattern for import verification

per comments on #21435. basically LibraryError and touching up its usage in pg_db and the tests.
9 years ago
Ted Timmons a000594436 fix failing fail_json call in postgresql_schema (#21495)
fix failing fail_json call in postgresql_schema

- Bugfix Pull Request

modules/database/postgresql/postgresql_schema

```
2.3.0
```

Here's an example of the error that was coming out. Massaged some linebreaks and backslashes to make it more readable:

    "module_stderr": "Traceback (most recent call last):
      File "/tmp/ansible_3X05GE/ansible_module_postgresql_schema.py", line 274, in <module>
        main()
      File "/tmp/ansible_3X05GE/ansible_module_postgresql_schema.py", line 265, in main
        module.fail_json(msg="Database query failed: %s" %(text, str(e)))
      NameError: global name 'text' is not defined
    ",

Now it triggers with the correct exception and shows the traceback. This duplication of str(e) and traceback seems to be the best design pattern.

Sample of the new output:

    An exception occurred during task execution. The full traceback is:
    Traceback (most recent call last):
      File "/tmp/ansible_gp4v1Q/ansible_module_postgresql_schema.py", line 254, in main
        changed = schema_create(cursor, schema, owner)
    ...
        return super(DictCursor, self).execute(query, vars)
    ProgrammingError: permission denied for database schemadb

    fatal: [localhost]: FAILED! => {
        "changed": false,
        "failed": true,
    ...
        },
        "msg": "Database query failed: permission denied for database schemadb\n"
9 years ago
Peter Sprygada 02d2b753db refactors junos modules to support persistent socket connections (#21365)
* updates junos_netconf module
* updates junos_command module
* updates junos_config module
* updates _junos_template module
* adds junos_rpc module
* adds junos_user module
9 years ago
Brian Coca 47870c3385 refine password field filtering (#21230)
* refine password field filtering

* dont skip

* removed bad leftover vestige of previous condition
9 years ago
Brian Coca cc0bb54d2c the return of reset_connection
allows user to force persistent connection to close, needed for when
you want to benefit from changes applied to the current play but persistent connections
prevent them from being realized.
9 years ago
Tomas Tomecek 30026cfb84 [cloud] module docker_image: print output on failure (#20757)
Fixes https://github.com/ansible/ansible-modules-core/issues/5161

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>
9 years ago
Will Thames f42ffe6de3 [cloud] Ensure that s3_bucket module always enables/disables versioning if it is specified (#21320)
If versioning is not enabled, then `get_bucket_versioning`
can return an empty dict.

If that happens, the code to enable versioning should still
run!

The logic for suspending versioning was also incorrect, so
have updated that too.

Fixes #20491
9 years ago
Sloane Hertel a077aeb693 [cloud][aws] Refactor s3 module, and add 'ignore_nonexistent_bucket' option (#20501)
Introduces `ignore_nonexistent_bucket` option that does not require ListBuckets permission, so less permissioned IAM roles can still be used with this module. 

Fixes #20501
9 years ago
Peter Sprygada 34e6cc788f check cli context to be sure out of config mode in ios (#21493)
This change will now check the cli context after a module runs and if
the cli is still in config mode it will exit config mode.  Also fixes a
minor issue with converting list of commands to a dict

fixes #21481
9 years ago
Dag Wieers edf2b00614 win_regmerge: Clean up parameter handling (#21388)
Changes include:
- Use Get-AnsibleParam with -type support
- Replace $result PSObject with normal hash
9 years ago
Dave Kasberg dbb452100a New module: cnos_vlan and various utility files (#21107)
* First set of CNOS network modules

Two modules: cnos_vlan and cnos_command.  First 2 of 17 CNOS modules

* Revert "First set of CNOS network modules"

This reverts commit 63da68b2a857e622b449f514050eed25fbcf0a35.

* cnos_vlan module

First of 17 CNOS modules

* Modify playbook for cnos_vlan module testing

* fix issue found by shippable in cnos.py

* cnos_backup module

* Fix Python3.5 compilation error

* remove cnos_backup module from this PR

* add aliases file so that testing of the cnos_vlan module will be skipped.

* Use empty aliases file

* utility scripts under module_utils changed to BSD license.

* clean up PEP8 issues, add cnos_vlan tests

* remove blank lines from yml files

* remove more blank lines

* remove even more blank lines

* Revert "remove even more blank lines"

This reverts commit bb3998661ce387260340bca39d5f146f5ec54f44.

* re-submit last commit

* fix blank lines in this file under parsing

* fix yamllint errors in doc section of cnos_vlan

* Fix errors reported by Sanity check using validate-modules

* change test playbook to include tasks for all modules

* fix additional pep8 errors

* more fixes, plus fix for python3

* fix for empty options section, removed unnecessary documentation

* fix up documentation section

* Correct options capitalization

* fix example section, add options

* Fix example section of the documentation
9 years ago
Peter Sprygada d77a6bda97 remove unneeded module eapi 9 years ago
Peter Sprygada d3b57a2f9c more cleanup from net_command module that is abandoned for 2.3 (#21497) 9 years ago
James 87646595e3 Remove the end of the task_data.path which causes #21461 9 years ago
johnnysheppard-isode 54de41309f win_lineinfile backrefs bug fix and updated examples. (#20926)
* Bug Fix for win_lineinfile and updated examples.

- changed $backrefs to a bool so it works with true/false/yes/no. This also fixes idempotency.
- Updated Docs with an example of using backrefs.

* Made suggested updates and converted two more parameters to "bool"

* Updated the Exception message

- Now contains the Windows Exception message as well as a custom message to help point in the right direction of a failed write.

* Updated Exception Handling

- Added Exception checks for Creating and removing the temporary files.
- Changed the ErrorAction on the copy tmpfile and remove tmp file to "Stop" to
  cause the exception handler to catch all errors so we can fail gracefully
  every time.
9 years ago
Jasper Lievisse Adriaanse 52960ff7d0 Fix service_mgr fact for Solaris; svcs is used to list services.
Instead use 'smf' to reflect the name of framework, as is done elsewhere
(e.g. 'systemd' instead of 'systemctl').
9 years ago
Sloane Hertel f775996209 add 'version_added' field for environment_variables option in lambda.py (#21500)
* Add 'version_added' field for environment_variables option (version_added: "2.3")
9 years ago
Abdoul Bah c22fbdc831 resolve #21056 - Add support for full cloning a Qemu VM. Fix some issues. Update doc (#21225)
* resolve #21056 - Add support for full cloning. Fix some issues. Update doc

* Fix condition and update doc. Fixes #28585

* Using built-in helper for argspec, revert ansible metadata, add more control and remove type in documentation

* PEP8 style compliance
9 years ago
Tim Rupp 7869b543fa Changes attribute to be public (#21490)
eom
9 years ago
Benjamin JOLIVOT 9baf95bcc4 Add status_code & failed:false when status==200 (#21457)
* Add status_code & failed:false when status==200

* remove failed=false, it's broking tests
9 years ago
James Cammarata eec88b63c2 Fix bug introduced in 0df3767 regarding undefined entries in HostVars
Fixes #21084
9 years ago
Matt Martz 78a000502e YAML fixes for examples in additional modules 9 years ago
Matt Martz 7c00346714 Validate EXAMPLES as YAML 9 years ago
Michael Scherer 6fae1d2bbf Make password lookup treat /dev/null as a special case
I have from time to time a need of random password without
wanting to write them down (one example is mailman list creation,
that requires a password to be given to be sent to the list owner).

But using /dev/null do not return null, but the empty string, which
doesn't generate a password at all and so do not achieve my use case.
9 years ago
Will Thames 103ede26df Ensure ssh hostkey checks respect server port (#20840)
* Add tests for `get_fqdn_and_port` method.

Currently tests verify original behavior - returning default `ssh-keyscan` port
Add test around `add_host_key` to verify underlying command arguments
Add some new expectations for `get_fqdn_and_port`
Test that non-standard port is passed to `ssh-keyscan` command

* Ensure ssh hostkey checks respect server port

ssh-keyscan will default to getting the host key for port 22.
If the ssh service is running on a different port, ssh-keyscan
will need to know this.

Tidy up minor flake8 issues

* Update known_hosts tests for port being None

Ensure that git urls don't try and set port when a path
is specified

Update known_hosts tests to meet flake8

* Fix stdin swap context for test_known_hosts

Move test_known_hosts from under basic, as it is its own library.
Remove module_utils.known_hosts from pep8 legacy files list
9 years ago
Matt Clay 09f4242ce4 Fix junit callback handling of surrogate escapes. 9 years ago
Toshio Kuratomi 99fd2328af Fix hash filter for non-ascii strings and Python3
hashlib hashes operate on byte strings.  When given a text string on
Python3, hashlib backtraces.  When given a text string on Python2,
hashlib will backtrace if the string contains non-ascii characters.
Encode the text string to utf-8 prior to hashing to avoid this problem.

Fixes #21452
9 years ago
Wilfrido Vidana e89259dbd0 Fixes #19835: enable role attribute change when not changing password (#19834)
Fixes #19835
9 years ago
Adrian Likins 106439e470 Handle sysctl.conf files that use ';' for comments (#20576)
'#' and ';' are both valid comment chars for sysctl.conf files
according to the 'man sysctl.conf':

  "Lines which begin with a # or ; are considered comments and ignored."

Fixes #20569
9 years ago
Daniel O'Brien 320c791cfb Adding more functionality for Linode cloud module 9 years ago
Peter Sprygada 48b02336ab code clean of old code from network modules updates (#21469)
* removes unused code
* removes module_utils/local.py
* removes plugins/action/network.py
* removes action_handler from connection plugins
* removes code to use action_handler in task_executor
* updates action plugins to subclass from normal
9 years ago
Peter Sprygada 2d14cdc5ac fixes broken run_commands() method (#21478) 9 years ago
Wayne Witzel III f98d41c121 Ansible Tower user and credential module (#21020)
* rename tower config module parameters to avoid conflicts

* add Ansible Tower user module

* add Ansible Tower credential module

* remove errant hash from interpreter line

* friendlier error messages

* Update tower_verify_ssl defaults and module examples

* Update tower_verify_ssl default documentation

* Tower expects satellite6 not foreman
9 years ago
Tim Rupp 2a9778e320 Change the f5 modules to use f5_utils file (#21466)
The f5 module utils were using a file name that appeared to
conflict with the f5 python SDK's namespace. This patch just changes
the name of the included class to be f5_utils to avoid the issue
of namespace collisions
9 years ago
Peter Sprygada 21d993a4b8 refactors nxos module to use persistent connections (#21470)
This completes the refactor of the nxos modules to use the persistent
connection.  It also updates all of the nxos modules to use the
new connection module and preserves use of nxapi as well.
9 years ago
Peter Sprygada eb1453a366 updates iosxr modules to support socket (#21231)
* updates all iosxr modules to support persistent socket
* adds iosxr action plugin to connect to device
* adds exec_command() to iosxr shared module
* fixes iosxr_config and iosxr_template local action
* update all unit test cases
* adds base test module for iosxr module testing
9 years ago
Will Thames 635e3fe9ee [cloud] ec2_vpc_peer should remove peering connections (#20113)
Don't try to create tags on a vpc that you've just removed.

Avoids

```
 "msg": "An error occurred (InvalidParameterValue) when calling the CreateTags operation: You must specify one or more tags to create"
```

Although not quite sure why the `create_tags` was being called
as `module.params.get('tags')` *should* have returned `None`.
9 years ago
Dag Wieers 39a8638ec0 Advanced example using shell with other executable (#21462)
The shell module is quite versatile in its use.
9 years ago
Ondra Machacek 34da024e06 cloud: ovirt: add requirments to ovirt_auth module (#21460) 9 years ago
Peter Sprygada 381a045089 updates network local actions to check for connection=local (#21437)
* updates vyos local action
* updates ios local action
9 years ago
John R Barker 86e2feffc1 archive docs formatting (#21454) 9 years ago
Alexander Turner dc5d92eac2 Added Ordnance Module (#21447)
* Added Ordnance network module.

* Tidied up code base as per PR20436

* Whitespace blocking PEP8 test

* Removed acciental addition to VERSION

* Removed acciental addition to VERSION

* Documentation YAML issues

* removed force arg (depreciated)

* rectified broken import

* Ordnance module init

* added ordnance helper
9 years ago
Peter Sprygada 47141b8426 fixes minor issue with strict diff of network config (#21436)
strips leading and trailing spaces for line comparision to prevent
fails positiives
9 years ago
Peter Sprygada 8e4f0ec162 checks connection type is local and fails if not in eos (#21429) 9 years ago
Tim Rupp 6fc989a902 Adds a factory function for getting REST api tools (#21423)
I plan on converting most all f5 modules to use the rest api, so
this is part of that conversion. it adds a factory method to get
the various rest management root apis provided in the f5 sdk
9 years ago
Gabriele db786fc211 Fixing nxos_portchannel bug caused by wrong regex (#20850) 9 years ago
Sumit Kumar f3fe1eef03 Add NetApp ONTAP aggregate module (#20712)
* Add NetApp ONTAP Aggregate module

* Update fail_json message

* Make changes to adhere to community guidelines
9 years ago
Sumit Kumar 2c81e05baa Add NetApp ONTAP user module (#20723)
* Add NetApp ONTAP user module

* Make changes to adhere to community guidelines

* Fix PEP8 issue
9 years ago
Sumit Kumar 97b238b6c6 Add NetApp ONTAP license module (#20715)
* Add NetApp ONTAP license module

* Make changes to adhere to community guidelines
9 years ago
Sumit Kumar 774277ceb7 Add NetApp ONTAP SVM module (#20670)
* Add NetApp ONTAP SVM module

* Update fail_json message

* Make changes to adhere to community guidelines
9 years ago
Sumit Kumar 236db1cf66 Add NetApp ONTAP LUN module (#20716)
* Add NetApp ONTAP LUN module

* Make changes to adhere to community guidelines
9 years ago
Sumit Kumar 3de8419261 Add NetApp ONTAP qtree module (#20719)
* Add NetApp ONTAP tree module

* Make changes to adhere to community guidelines
9 years ago
Sumit Kumar c50e286ab8 Add NetApp ONTAP user-role module (#20722)
* Add NetApp ONTAP user-role module

* Make changes to adhere to community guidelines
9 years ago
Michael Price 56dd5a702d Refactor E-Series AMG module to use module_utils (#20871)
* Refactor E-Series AMG module to use module_utils

Refactor the NetApp E-Series module to utlize the common module_utils
and doc_fragments.

* Resolve a PEP8 issue with a missing newline

* Resolve compatibility issue with json import
9 years ago
Dylan Silva 53c73ae836 Modified openswitch module metadata from core to community (#21355) 9 years ago
Sumit Kumar 026e2f3d50 Add NetApp ONTAP volume module (#20668)
* Add NetApp ONTAP volume module
* Update fail_json message
* Make changes to adhere to community guidelines.
* Make requested changes
9 years ago
Tim Rupp 22926088a0 Removes expanduser in favor of type 'path'
Removes the usage of expanduser because it is automatically handed
by specifying a type of 'path'. Related to #12263
9 years ago
s-hertel c5446d95cc [cloud] New module: AWS elasticache_parameter_group for modifying Elasticache cluster settings (#21023)
Added a new module for ElastiCache. Allows users to create/modify/delete/reset cache parameter groups.
9 years ago
Brian Coca 258316ca72 user older functions as getres* are >=2.7 9 years ago
Peter Sprygada b0c01bbb82 updates network_common lib (#21306)
* removes connection functions refactored into connection
* updates ComplexDict and ComplexList objects to use with AnsibleModule
* updates modules to add new argument to ComplexList & ComplexDict
9 years ago
Brian Coca 009ac075b7 expanded user facts to effective/real/saved 9 years ago
caio2k 2505d56401 removed deprecated HEADER_* from examples (#21395)
Even though the documentation says that HEADER_* parameter is deprecated, the examples still show its usage.
9 years ago
Tim Rupp 5f01cd4402 [cloud][serverless] Removes manual expanduser call in favor of type `path` (#21418)
Removes the usage of expanduser because it is handled automatically
by type 'path'. Related to #12263
9 years ago
Peter Sprygada e1a2c6e1d3 roll up of fixes for eos modules (#21406)
* fixes issue with load_provider() not checking for an existing key
* adds updates to eos_config results key
* lots of minor syntax fixes in eos shared module
* adds eos_argument_spec to eos_eapi

fixes #21402
9 years ago
Adrián López e1761d7724 yum: improve disk usage when update_cache used (#21098)
* Marks metadata files as outdated

Eliminates time records of the metadata and mirrorlists download
for each repository. This forces yum to revalidate the cache for
each repository the next time it is used.

* Command arguments in two separate strings to be compatible if run_command implementation changes. Doc explains a little better what is that parameter doing
9 years ago
Gabriele 5fbe64a324 Fixing nxos modules when interface is loopback (#20645)
* Fixing modules when interface is loopback

* Remove capitalize
9 years ago
Jiri Tyr 9008e8017b Fixing mounting of multiple sources to the same dest (#21413) 9 years ago
Scott Buchanan 8c6606aeee fix non-zero exit code on missing role file (#19002) 9 years ago
Jiri Tyr d94b2d802e Fixing broken bind mount on CentOS 7 (#20703)
* Fixing broken bind mount on CentOS 7
* Fixing remount
9 years ago
Patrick Deelman 65cd21e9a8 passwordstore (pass) lookup module (#21314)
* passwordstore (pass) lookup module

* removed shebang
changed licensing
9 years ago
Sergey 8cb57f0b1d [cloud] New module: PubNub BLOCKS management module (#20200)
* Added PubNub BLOCKS management module.

* . increased block start/stop wait to 30 seconds

* . fixed multi-line documentation

* . fixed YAML formatting in documentation section

* . removed multi-line commits
. fixed YAML format in description section

* . updated test script to upload event handler sources if non-local connection used for tests
. changed module configuration parameter from 'block' to 'name' (represent target block name)
. updated module docs regarding 'chanes' configuration parameter. Only block 'name' can be changed using this parameter ('description' can be changed directly in module call configuration)
. changed module configuration parameter from 'pwd' tp 'password'
. migrated 'urlencode' import from try..catch to six module imported from Ansible module utils
. removed custom method which is used to verify whether value is empty

* ^ fixed value for key-path function usage with names of application/keyset/block and handlers.
. reduced unnecessary requests (better pre-procesing of previous results)
. event handler name change won't trigger block restart

* ^ fixed too long documentation lines

* . moved PubNub BLOCKS client code into separate package under PyPi
. updated module code to utilize new package
. changed block start stop state to: started and started

* . small changes in documentation format
9 years ago
s-hertel 0123ec786d [cloud] New module: AWS elasticache_snapshot (#21135)
* Adding an elasticache snapshot module.

Allows user to create, copy, or delete a snapshot.

* Removing unnecessary function

* Make indentation uniform.

* Making requested changes.

Fixing PEP8

Adding a more graceful fail for delete() if the snapshot's state valid (such as when it is in the process of being created).

* PEP8

* Fixing some formatting

move imports

fix parameter alignment

* move imports to the top of the file below documentation
9 years ago
Ondra Machacek fd899c0339 [cloud][ovirt] Fix waiting to down state of stateless VM (#21246)
This patch enhances waiting operation of stateless VM to be down.
Because stateless VM creates a snapshot and removes it after the
VM is shutdown, we must wait until the VM is really prepared to
start again.
9 years ago
John R Barker 80c3087977 Revert "Added Ordnance network module." (#21408) 9 years ago
Stepan Stipl 86ed4b116c [cloud] add ec2_vpc_route_table purge_routes and purge_subnets options (#19334)
* Added purge_routes option to ec2_vpc_route_table module

* Added purge_subnets option to ec2_vpc_route_table module
9 years ago
Peter Sprygada d43eac93bc ios local action creates circular reference (#21404)
When loading the params in the local action, the provider key was
inadvertently being loaded as well.  This created the circular
reference.  The load_provider() method will now check for the provider
key and skip it when encountered.

fixes #21399
9 years ago
Alexander Turner f1a6d14d8e Added Ordnance network module. (#20436)
* Added Ordnance network module.

* Tidied up code base as per PR20436

* Whitespace blocking PEP8 test

* Removed acciental addition to VERSION

* Removed acciental addition to VERSION

* Documentation YAML issues

* removed force arg (depreciated)
9 years ago
Loïc Blot acda9e9c85 nsupdate: rename rc(_str) to dns_rc(_str) (#21341)
This prevent module to fail when removing a removed record which returned RC 8 (NXRRSET)
9 years ago
Benjamin JOLIVOT e3328e847b Ansible Mattermost Module (#21247)
* Ansible Mattermost Module v0.9

* __future__ not in top of file

* python3 ready

* trailing whitespace problem

* Bad metadata

* check mode + explicit imports + standardization

* bad false check

* move imports after documentation

* Add notes in doc explaining checkmode

* Remove default=false in doc + remove default values in doc

* rewrite default values in documentation

* trailing whitesapces

* Update description
9 years ago
Tim Rupp 09edc00008 Adds f5-sdk import check to all F5 modules (#21354)
Including this check in module utils so that it can be done
automatically in all F5 modules. This includes the ones that
do not yet use the f5-sdk because those modules too will move
to the SDK in the future
9 years ago
Pilou f2c22109fb Don't mix deprecations messages with warnings messages (#21337)
* Remove unused attribute '_passthrough'

* Don't mix deprecations with warnings

* Return values: add 'deprecations' key used internally

* 'deprecations' and 'warnings' return values: add tests
9 years ago
René Moser f2729f11c3 ios_config: fix "save" arg results in timeout (#21344)
* ios_config: fix "save" arg results in timeout

The command "copy running-config startup-config" prompts for a
destination filename, which was not handled.

~~~
testswitch#copy running-config startup-config
Destination filename [startup-config]?
Building configuration...
[OK]
0 bytes copied in 0.679 secs (0 bytes/sec)

[15:16]
ios: write memory
~~~

* test_ios_config: adjust test_ios_config_save
9 years ago
Peter Sprygada 14b942f3fb updates eos modules to use socket (#21197)
* updates eos modules to use persistent connection socket
* removes split eos shared module and combines into one
* adds singular eos doc frag (eos_local to be removed after module updates)
* updates unit test cases
9 years ago
Peter Sprygada 9937e604f5 fixes ios_facts that was returning no values (#21357)
* adds conversion to command dict into ios shared lib
* fixes hardware commands in ios_facts
* adds network_os value to play_context in ios action plugin

fixes #21190
9 years ago
Tim Rupp bf836850a4 Replaces expanduser with type path
Replaces the usage of expanduser with the type 'path' for the
dest and object options as that functionality is available
in that type automatically.

patch related to #12263
9 years ago
Tim Rupp f8cbfad5e6 Removes usage of expanduser due to type 'path'
Removes the usage of the expanduser function because it is
being performed automatically by the type 'path' of the
path option.
9 years ago
James Cammarata 8cc98b07c5 Fixing PEP8 errors in utils/vars.py 9 years ago
James Cammarata a4b2b0a734 Small fix for 350a32bd to make it Py3 compliant 9 years ago
Tim Rupp b49d39c5db Removes usage of expanduser because of type path
The usage of type 'path' for the path option makes the use
of expanduser redundant. This patch removes the expanduser
call because the path type is already used for the path
option
9 years ago
Brian Coca 2cb658925b fixed for chrrot as ignore error still has rc=0 9 years ago
James Cammarata 350a32bd95 Tweaking the new unique id generate to be uuid compliant 9 years ago
Ondra Machacek c8c4a73e14 Fix compatibility of affinity groups in oVirt 4.0 and 4.1 (#21308)
* cloud: ovirt: exit if incompatible API/SDK version

* cloud: ovirt: fix affinity groups compatibility for oVirt 4.1
9 years ago
Robin Roth 82eaa9735c Add try/except around xml parsing in zypper
Zypper sometimes produces invalid XML. Catch that in a nicer way.

Potential future improvement: Work around broken XML by removing some
sections.
9 years ago
Tim Rupp 4900201c5b Remove expanduser and use type path
This patch removes the use of expanduser and replaces it with
type 'path'. This patch is related to #12263
9 years ago
Tim Rupp c4d3bf3207 Adds path type and remove expanduser
Related to #12263, this patch removes the usage of expanduser
in favor of the path 'type' for the module options of src and
dest
9 years ago
Tim Rupp 1fb53e6aaf Remove expanduser usage because of path type
With the addition of the 'path' type, the usage of expanduser
is redundant. This patch  removes that extra usage.
9 years ago
Tim Rupp 0fcc6edf2b Replace expanduser with type path
This patch removes the use of expanduser and replaces it with
type 'path' for the option. This is related to #12263.
9 years ago
Peter Sprygada 8adb108aa9 updates vyos modules to use socket connection (#21228)
* updates all vyos modules to use socket connection
* adds vyos local action handler
* adds exec_command() to vyos
* updates vyos_config local action
* update unit test cases
* add base class for testing vyos modules
9 years ago
Brian Coca 85194234ba fixed bad copy/paste, deprecations should deprecate 9 years ago
Peter Sprygada 7f1c43e597 updates ios modules to support persistent socket (#21258)
* updates all ios modules to support persistent socket
* adds ios action plugin to connect to device
* adds exec_command() to ios shared module
* fixes ios_config and ios_template local action
* update all unit test cases
* adds base test module for ios module testing
9 years ago
jjlorenzo 3befc894e1 set no_log for url_password 9 years ago
Brian Coca 441ccd3a58 fixed typo 9 years ago
Brian Coca 18b062760c update shared services
added new daemonization function
documented existing functions
9 years ago
Willem van Ketwich 93a689958e [cloud] add summary feature and refactor AWS cloudfront_facts module (#20791)
* initial commit of cloudfront_facts.py

* modification as per review from @georgepsarakis

* fixed shippable build error

* fixed shippable build error

* removed wildcard imports and replaced with specific imports from ansible.module_utils.ec2 as advised by @georgepsarakis

* renamed all instances of cloud_front_origin_access_identity to origin_access_identity as advised by @georgepsarakis

* show facts based on alias and distribution id for easy referencing as advised by @ryansb. have done for both distribution and distribution_config

* fixed incorrect logic for default list_distributions, fixed list_distributions_by_web_acl - wasn't passing web_acl_id, fixed list_invalidations keyword args missing DistributionId

* fixed last fact added clobbering all previous facts for an alias or an id

* removed list_ prefix from list keys

* removed unnecessary boto fields. made list_distributions and list_streaming_distributions dictionaries with id/alias as key. fixed list_invalidations.

* initial commit of cloudfront_facts summary

* checks for empty list returned from boto, standardised list naming

* neatened up parameters

* added summary documentation

* refactoring of functions for modularity

* refactoring, neatening code, fix for if cname not present, added try-catch blocks

* more refactoring, cleaning

* more cleaning, allowed streaming distributions to be found by domain name alias

* removed unnecessary line

* fixed tabs

* fixed indentation

* removed trailing whitespace

* removed more whitespace

* more refactoring, modified where invalidations dict is set

* added ETag to summary

* refactored summary list

* moved list out of for loop

* trailing white space

* reverted line lengthening as advised by @willthames

* modified exceptions to multi line as advised by @willthames

* reverted variable spacing to be more pythonic'

* reverted spacing in YAML as advised by @ryansb

* reverted line spacing for parameters for correct blame attribution as advised by @ryansb

* removed white space

* more white space

* reverted line spacings for parameters as advised by @ryansb

* removed spaces between parameters as advised by @ryansb
9 years ago
Dag Wieers f824b2ce8d Avoid having module documentation links to itself (#21329)
* Avoid having module documentation links to itself

A lot of modules use M(own_module) in their documentation causing a link
in the documentation to itself.

* Make note more clear now
9 years ago
Loïc Blot fb32c19fea New module: nsupdate (#21099)
Add nsupdate module to manage DNS records on a DNS server

This uses dnspython library

It's greatly inspired by https://github.com/mskarbek/ansible-nsupdate with some rework, better feedbacks and documentation addition

Signed-off-by: nerzhul <loic.blot@unix-experience.fr>
9 years ago
Peter Sprygada 92aa92ebd2 updates netconf to use persistent socket (#21307) 9 years ago
Peter Sprygada b8f138cabb adds connection module to module_utils (#21310)
* connection module connecting to persistent sockets
9 years ago
aperigault 1cdde216ec vmware_guest: Extend facts with vmware tools informations (#20860) 9 years ago
aperigault 98d841b324 vmware_guest: Fix undefine variable in rename feature (#20855)
* vmware_guest: Fix undefine variable in rename feature

* vmare_guest: We can't wait_for_task because MarkAsTemplate return None
9 years ago
Ted 65e32243b8 Make access_token type str, remove alias, and make validate_certs def… (#20811)
* Make access_token type str, remove alias, and make validate_certs default value true

* Remove extra white space and add end of file newline

* Remove comma

* Try removing that whitespace again
9 years ago
John R Barker 4ad91fc96b notes (not note) (#21287) 9 years ago
Ivan Bojer 5b9807dbac new module for private cert generation (#20889)
* new module for private cert generation

* - changes based on the reviewer's comments

* - changes based on the reviewer's comments

* extra documentation per request
9 years ago
Sumit Kumar 05c74cee47 Add NetApp SolidFire account manager module (#20728)
* Add NetApp SolidFire account manager module

* Minor fixes

* Set supports_check_mode to True

* Add Ansible Metadata

* Fix 'state' example argument

* Remove logger
9 years ago
Brian Coca 916a10c8ec delegate_to is a string 9 years ago
Brian Coca fa93bf7096 allow more than .service, onus on user 9 years ago
Brian Coca 2f0070639f attempt to fix systemd in chroot env
fixes #21026
9 years ago
Tim Bielawa 1b1d58eb7e Fix incorrect wording in the 'find' module 'paths' parameter 9 years ago
James Cammarata f82a2caa72 Forgot to include the utils/vars.py change with 4cbe610 9 years ago
James Cammarata 4cbe610263 Use a custom id generator over uuid4
>>> timeit.timeit("uuid.uuid4()", setup="import uuid")
9.518647909164429
>>> timeit.timeit("get_unique_id()", setup="from __main__ import get_unique_id")
0.40436601638793945

This will mainly be beneficial when a very large inventory is being
used, however it may also help with some very large playbooks.
9 years ago
s-hertel 84135ef7ad Removing cmp from ec2_vpc_net.py to be compatible with Python3 (#21202)
* Removing cmp to be compatible with Python3

* fix syntax

* Added an overlooked return

* Fixing making  things overly complicated

* Simplifying since tags will always be hashable. Don't need to use cmp at all.
9 years ago
s-hertel 2dc42fce80 [cloud] add tags parameter to `ec2_vol` & PEP8 fixes (#21254)
* Make ec2_vol pep8 and add tags parameter

* Remove ec2_vol.py from pep8 legacy-files
9 years ago
Brian Coca 74e8aa22af no log passwords (#21229)
* no log passwords

* removed unneeded no_log
9 years ago
Damien 2f6966965e Clean up doc, removed required: false, add hard stop etc .. (#21265) 9 years ago
Tim Rupp cbfe15a315 Adds doc fragments for the available env vars (#21251)
For F5 modules, the options that are commonly specified can
also be specified in the environment variables. This patch
adds the doc fragments that describe which env var goes
with which module option.
9 years ago
Alberto Murillo aba2b38b07 Add swupd plugin (#20834)
* Add swupd plugin

Add support for ClearLinux update manager (swupd)

Signed-off-by: Alberto Murillo Silva <alberto.murillo.silva@intel.com>

* swupd: Document RETURN values

Signed-off-by: Alberto Murillo Silva <alberto.murillo.silva@intel.com>

* swupd: Add a meaningful description for failures

Signed-off-by: Alberto Murillo Silva <alberto.murillo.silva@intel.com>

* swupd: Clarify documentation

Provide more information about the options supported by the module
since some concepts are new for people not used to clearlinux/swupd

Signed-off-by: Alberto Murillo Silva <alberto.murillo.silva@intel.com>
9 years ago
Sumit Kumar 512996b803 Add NetApp SolidFire volume access group module (#20733)
* Add NetApp SolidFire volume access group module

* Minor fixes

* Make requested changes

* Set supports_check_mode to True

* Add Ansible metadata

* Make requested changes

* Minor fix to documentation
9 years ago
Sumit Kumar 72cc5fed17 Add NetApp SolidFire check connections module (#20731)
* Add NetApp SolidFire check connections module

* Minor fixes

* Add Ansible metadata and remove Return section

* Minor documentation fix
9 years ago
Robin Miller 951994be5e use backoff/retry for conn.get_zones and conn.get_hosted_zone in route53 module (#20771) 9 years ago
James Cammarata 86beb55a90 Also clean template data even if marked unsafe
Fixes #20568
9 years ago
James Cammarata b5bf525828 Call parent super() in RoleDefinition init before doing other stuff
This only impacts the use of RoleDefinition directly, but it was a tricky
bug to spot.
9 years ago
James Cammarata 0d418789a2 Revert "Fixing another corner case for security related to CVE-2016-9587"
This reverts commit bcceada5d9.
9 years ago
Brian Coca e9b009510f added fixme note 9 years ago
Tim Rupp 5137244c3e Adds fallback env variables for F5 bigip modules (#21213)
These would be a convenience that could be used instead of having
to specify them for each module
9 years ago
Davis Phillips 239c6aee35 added default datacenter ha-datacenter and set wait_for_ip_address to… (#21076)
* added default datacenter ha-datacenter and set wait_for_ip_address to default False - closes 21074

* Updated docs to reflect changes
9 years ago
Toshio Kuratomi 98541b7c8b Fix to bytes surrogate and nonencodable chars (#21180)
* Add a surrogate_then_replace error strategy to keep to_bytes from tracebacking by default
* Port all code that explicitly used surrogate_or_replace to surrogate_then_replace
9 years ago
Ssawa 149dd9ca86 Update winrm to allow fetch_file to work on files in use by processes (#18174) 9 years ago
Peter Sprygada 39aaa32e40 adds socket usage to network common (#21196)
* updates network common the reconstruct the persistent connection socket
9 years ago
Dag Wieers 953ca38b67 Fix typo in example (#21227) 9 years ago
Andrea Tartaglia 2291163a7a Added DIFF_ALWAYS constant
When set to True, will always print the diff. Defaults to False.

Fixes #18416 #16073
9 years ago
Brian Coca 403e9d35df use regex vs list to weed out password fields
- also warn as module SHOULD have no_log
 - make password regex exportable for testing
 - avoids boolean fields
9 years ago
Jordan Borean 5cabe420ea Added win_reg_stat module (#19145) 9 years ago
Alexander Winkler 2ac57e0bc3 Usage of proper Solaris 11 Package Manager
The default Package Manager for Solaris 11 has been set to the module pkg, but there is no such module. Instead pkg5 exists and will be used from now on.
9 years ago
Damien b71a62283c New Module : aos_ip_pool as part of network/aos (#21044)
* Initial version of aos_ip_pool module

* Add examples for IP Pool

* Break down ip_pool into smaller function

* Refactor do_load_resource

* Add get_display_name_from_file

* Add ‘src’ as an option to load ip pool from JSON file

* Rename directory network/apstra to network/aos

* Remove exception handling temporary

* Remove all ‘Exception as XX’ to be python 2.4 compatible

* Replace ‘== False’ with ‘is False’ for PEP8 Test

* Update documentation to be Yaml compatible

* Lisg all method imported from module_utils.aos

* Refactor to align with collection.find() changes

* Update examples by @gundalow’s  recommendations

* Update Documentation per @gundalow’s recommendations

* Change the license per @gundalow recommendation

* Add exception handling for get_aos_session

* Change Auth format and add check_aos_version() to check minimum version

* Add a check for minimum version

* Refactor ‘src’ into ‘content’ to allow more options
Remove get_display_name_from_file in aos.py
Add content_to_dict in aos.py

* Fix variable name in do_load_resource

* Add mention of aos.py in module_utilities doc

* Add try/except for import yaml

* Add try/Except around main block of code and function

* Refactor to auto detect content_format, update doc accordingly

* Change create_new_ip_pool inputs

* Remove unused import

* Remove in_use as it’s never used

* Fix doc format

* Add version number in requirement doc
9 years ago
s-hertel 22701806c3 Adding environment variable support for lambda.py in response to feat… (#20705)
* Adding environment variable support for lambda.py in response to feature idea #20479.

Plus a 1-character bug fix.

* fix yaml syntax

* Fixing option name, adding alias, and fixing a line to allow the user to delete environment variables by setting an empty dict.
9 years ago
Sumit Kumar f21d57570e Add NetApp SolidFire snapshot schedule module (#20734)
* Fix NetApp doc_fragment

* Add NetApp SolidFire Snapshot schedule manager module

* Minor fixes

* Change supports_check_mode to True

* Fix PEP8 issue

* Make requested changes

* Change 'pause' to 'paused'

* Add schedule ID as a returned parameter

* Make requested changes
9 years ago
Peter Sprygada 21157aa1bc loads action handler for a group of network modules (#21194)
* loads action handler based on module group prefix for network modules
9 years ago
s-hertel 0e4f48d684 Merge pull request #20953 from surfuga/fix-20951-ec2_vpc_net-multi_ok
Fixes #20951 fixed multi_ok in ec2_vpc_net.py (var multi usage in vpc_exists function)
9 years ago
Peter Sprygada 138051540e updates the code path for network modules (#21193)
* replaces persistent connection digest with _create_control_path()
* adds _ansible_socket to _legal_inputs in basic.py
* adds connection_user to play_context
* maps remote_user to connection_user when connection is local
* maps ansible_socket in task_vars to module_args _ansible_socket if exists
9 years ago
Dag Wieers 35d97c1e6d Windows: Add-Warning() and Add-DeprecationWarning() (#20903)
* Windows: Add Warn() and Deprecate() mechanisms

Similar to what already exists for python modules.

* Turn deprecations from list of strings, to list of dicts

Since #20884 the internal representations of deprecation messages is
changed from a list of strings to a list of dicts.

* Rename to Add-Warning() and Add-DeprecationWarning()

Implemented as discussed.
9 years ago
Tatsuya Hoshino 41f3680dfd Mask login_password in log (#21199) 9 years ago
stigchristian 27d1286780 Fixed typo "tempalated" => "templated" (#21187) 9 years ago
Brian Coca 2f1ab29855 add url_password to 'cleanse' list 9 years ago
DavidVentura c5a8b78956 fix merge conflicts (#19481) 9 years ago
Adam Friedman 1a28a48176 Refactor dimensiondata_network module (#21043)
* Refactor dimensiondata_network to use shared base class for common functionality.

* Experiment: remove the assignments in the "except ImportError:" block that keep PyCharm happy. If this fixes the build, then I reckon there's a bug in the validate-modules script (https://github.com/ansible/ansible/blob/devel/test/sanity/validate-modules/validate-modules#L322).

* Remove unused imports.

* Changes based on feedback from @gundalow for ansible/ansible#21043.

- Use no_log=True for mcp_password parameter.
- Collapse module parameter definitions.

* Use shared definitions and doc fragments for common module arguments (ansible/ansible#21043).

* Make default network plan "ESSENTIALS", rather than "ADVANCED" (this is consistent with our other tooling).
Tidy up module parameter documentation.

* Simplify dimensiondata module documentation fragments (didn't know you could include multiple fragments).

* Change 'verify_ssl_cert' module parameter to 'validate_certs'.
9 years ago
DavidVentura b5811ccb8a proxmox: Add public key support: fix #19487 (#21142)
* fix #19487

* add 'version_added'

* Check for version compatibility, Ignore keys if incompatible

* add comment about version support

* remove 'type' as requested

* fix merge error
9 years ago
Tuomas-Matti Soikkeli 829f3bd019 Fix default value for remote_src (#21136)
Default value is clearly False, fixed it to correct value.
9 years ago
Jordan Borean 1c885cb848 Added fix for win_file with broken symlinks (#19146) 9 years ago
Matt Clay 4b90f9cf89 Remove obsolete test requirements file. 9 years ago
Jordan Borean 1ce5fcf061 Added win_find module (#19144) 9 years ago
Adrian Likins df3e4cd7f4 Don't check for var._obj in template._clean_data (#20868)
* Don't check for var._obj in template._clean_data

AnsibleUnsafe or other unsafe vars used to have a
'_obj' slot but no longer do. This was causing attribute
errors if a object was 'unsafe' but not a string.

Add tests for AnsibleUnsafe, lookups, and AnsibleContext
9 years ago
Adrian Likins e511326222 Fix 'yum skips updates' bug (#21113)
* Fix 'yum skips updates' bug

When the 'yum check-update' output is parsed, the regex used
to stitch wrapped lines together would fail on the first package.

It would fail because there is an empty line before the first
package, and this triggered the regex. To avoid a more complicated
regex, preprocess the check-update output to strip out any
empty lines.

The regex is also updated to include a group on the non whitespace
match to be used in the sub.

Add test cases based on info provided in the bug reports.

Fixes #20608
9 years ago
stephane 1b8c2a2b0b Restore "skipping: no hosts matched" message
In 159aa26b36
the result of _get_serialized_branches when no hosts were matched
changed from [[]] to []. Thus, the v2_playbook_on_no_hosts_matched
callback would not fire. Change the check so we get the error message
again. Fixes #17706
9 years ago
jerry bd19a9e847 removing unwanted variables and using to_native instead of str()
(cherry picked from commit c4b09cbcb4)
9 years ago
jeronimog 4f85e4831d Adding self.log() on IOErrors and OSErrros
(cherry picked from commit ef1ecfd2c2)
9 years ago
Brian Coca 300718e811 use new 'warn' method
this also prevents warnings from being lost
9 years ago
Tim Rupp 43ae12757e Adds CLI classes for some F5 modules (#21119)
To support the _command module for F5 products, this class is needed.
9 years ago
Ralph Rodkey b1f06f6555 [cloud] make ec2_asg honor 'wait_for_instances' on delete 9 years ago
Matt Martz c3fb4c837b Fix module validation errors for avi_api_session (#21154) 9 years ago
Pilou 4e5c9c3d0d default and minimal callback: display warnings in a consistent manner (#21144)
* default/minimal callback: don't display warnings twice

* minimal callback: display warnings raised by MODULE_NO_JSON modules
9 years ago
Marius Gedminas 2efb692cc4 known_hosts: support --diff (#20349)
* known_hosts: support --diff

* known_hosts: support --diff also without --check

* Add unit tests and fix incorrect diff in one corner case

Tests are good!

* Refactor for readability

* Python 3 compat

* More Python 3 compat

* Add an integration test for known_hosts

* Handle ssh-keygen -HF returning non-zero exit code

AFAICT this is a bug in ssh-keygen in some newer OpenSSH versions
(>= 6.4 probably; see commit dd9d5cc670):
when you invoke ssh-keygen with -H and -F <host> options, it always
returns exit code 1.  This is because in ssh-keygen.c there's a function
do_known_hosts() which calls

  exit (find_host && !ctx.found_key);

at the end, and find_host is 1 (because we passed -F on the command line),
but ctx.found_key is always 0.  Why is found_key always 0?  Because the
callback passed to hostkeys_foreach(), which is known_hosts_hash(),
never bothers to set found_key to 1.

* This test does not need root

* Avoid ssh-ed25519 keys in sample known_hosts file

Older versions of OpenSSH do not like them and ssh-keygen -HF
aborts with an error when it sees such keys:

  line 5 invalid key: example.net...
  /root/ansible_testing/known_hosts is not a valid known_hosts file.

* Fix Python 3 errors

Specifically, the default mode of tempfile.NamedTemporaryFile is 'w+b',
which means Python 3 wants us to write bytes objects to it -- but the
keys we have are all unicode strings.
9 years ago
Brian Coca d0bc98bddb added url and metadata 9 years ago
Brian Coca 82337cf52a remove warning/deprecation keys after usage 9 years ago
Gaurav Rastogi 798972c72a Avi Networks Ansible modules. (#20415)
* Avi Networks Ansible modules.
Avi Version: 16.3.4

* Fixed Review comments
1. Changed description to be full sentences
2. Fixed Pep8 warnings.
3. Fixed comments and descriptions.

* 1. Fixed descriptions and messages as per review comments.
2. Added descriptions for the missing parameters.

* Fixed the shippable break due to the incorrect description format

* Removed the extra modules so that there is a single module for the first commit

* Updated license to BSD based on review comments

* updated comments based on review feedback

* Refactored code to handle POST and PUT scenarios where playbook does not need to check whether object is present.
Moved ansible helper utilities to module_utils as now roles can be patched with module_utils as well.

* fixed pep8 warnings
9 years ago
Thomas Krahn 9f3870ddcd IPA: Remove duplicated code and fix a bug that occurs if empty lists were passed and IPA didn't know the value before (#19210)
* ipa: Add method get_diff and modify_if_diff to class IPAClient

* ipa_*: Use method get_diff and modify_if_diff from class IPAClient
9 years ago
Kevin Kuhls 534dbb094b adding support for no candidate config (#20821)
commit fails for devices with no candidate config, such as when configuraion is written to running-config store.  Commit is set to True in main's call of netconf_edit_config.  The simple edit is to add the additional logic around sending the commit.  Otherwise you could change commit could be set to (if ":candidate" in m.server_capabilities) in the call of netconf_edit_config.  Either way would work.  I'll defer for the decision of which.
9 years ago
Robert Simmons b7e78656ac [cloud] gce_net fix for unsetting firewall rule properties in the project. (#20483) 9 years ago
Ricardo Carrillo Cruz 64ed9bcfd7 Add unit tests for ios_facts module (#21114) 9 years ago
René Moser a6f887ce6e cloudstack: cs_portforward: implement vpc support (#19044)
* cloudstack: cs_portforward: implement vpc support

* cloudstack: cs_portforward: add vpc and network to returns

* cloudstack: cs_portforward: networkid must not be used for rule listing

* cloudstack: fail for get_network when vpc but no network name

This seem to be a global pattern for get_network, we want to enforce a
network name to be set if a vpn param is given.

This is used for cs_portforward.

* cloudstack: cs_portforward: doc: fix defaults for vpc, network
9 years ago
Marius Gedminas 577d0e43ba apt_repository: check for enabled repositories correctly
Fixes #20754.

Details: UbuntuSourcesList.add_source() had a quick check for PPAs being
already present in the source lists.  The check was looking for the PPAs
URL to be present in self.repo_urls, which should contain all valid and
enabled repositories.

The enabled check in repo_urls was incorrect.  It was checking the tuple's
2nd item (which means "valid") and ignoring the 3rd item (which means
"enabled").

self.files contains tuples (line_number, valid, enabled, source_line,
comment_text).  Ideally it would be using named tuples instead of
indexing, to avoid bugs like that, but Python 2.4 didn't have named
tuples, so we can't do that (yet).
9 years ago
Dag Wieers 4f96ee5e27 Add missing iteritems definition (#21106)
Also moved most imports out of try-except block.
9 years ago
Ryan S. Brown d12e9f5748 Convert error to the native text type before writing to stderr
Fixes #20588
9 years ago
René Moser c00604210c cs_instance: fix ssh keys not found in projects (#21104)
Follow up of 5475f3ee64
9 years ago
Adrian Likins 7278308ca2 Redhat subscription (#20729)
* Make unused redhat_subscriptions do something

rhsm_baseurl/server_insecure were module params that were
never used previously. Hook them up for register options.

* pep8/style cleanups
* Set a module scope SUBMAN_CMD before we ref it as a global
* move ansible imports to top, remove '*' imports
* remove redhat_subscriptions from pep8 legacy
9 years ago
Nathaniel Case 530701b398 Vyos system module (#21060)
* vyos_system tests

* Merge vyos_system fixture with vyos_config fixture
9 years ago
Abdul Anshad A b30942787b Add guest shutdown/reboot (#20564) 9 years ago
Craig Francis 3e003b10fa Reminder that lookup(‘file’) can be used (#20649)
* Reminder that lookup(‘file’) can be used

Sometimes the block of text does not easily fit into a playbook, so this acts as a reminder (or a prompt for anyone who hasn't used this before) that the content could be stored in an separate file.

I've also included `backup: yes` as I think this is a good example of where a backup might be needed.

* Correct the not so "smart quotes"

* Update blockinfile.py

Replace – with an an ASCII -
9 years ago
Peter Sprygada d8e57cc60a starts cli if root user login is used for junos terminal (#20761)
fixes #20131
9 years ago
Brian Coca c86a17b7a0 refactoring async
- centralized skipping
- also fixed module name broken by previous refactor
- let action modules handle async processing
- moved async into base action class's module exec
- action plugins can now run final action as async
- actually skip copy if base skips
- fixed normal for new paths
- ensure internal stat is never async
- default poll to 10 as per docs
- added hint for callback fix on poll
- restructured late tmp, now a pipeline query
- moving action handler to connection as networking does
- fixed network assumption invocation is always passed
- centralized key cleanup, normalized internal var
- _supress_tmpdir_delete now in _ansible_xxx and gets removed from results
- delay internal key removal till after we use em
- nicer tmp removing, using existing methods
- moved cleanup tmp flag to mking tmp func
9 years ago
Daniel Brachmann b9334f9f47 improve error message on conflicting actions. Fixes #21057 (#21059)
* this fixes #21057

outputs the conflicting action statements.

* reverting to old  % syntax for python 2.6 compatibility
9 years ago
Mike Rostermund c6a5d9c8bf Fix indentation to match other examples (#21080) 9 years ago
Vincent Bernat d94f9bdd8d cloudstack: ensure we select a template compatible with disksize (#21058)
When the user specify a root disk size, the template image must be
smaller than the specified root disk size.
9 years ago
Ricardo Carrillo Cruz 375846d764 Refactor iosxr_facts to use network_cli plugin (#20857) 9 years ago
Toshio Kuratomi bfffd1952f Make sure that we're comparing text all the way through.
On Darwin, sys.platform returns byte strings on both python2 and
python3.  Turn it into a text string everywhere in order to remedy that.

Fixes #19845
9 years ago
Toshio Kuratomi 5c56e79a8f Cleanup imports 9 years ago
Eugene Krokhalev d67cbaa274 fix urlparse usage in cloud.amazon module to be compatible with python3 (#20917)
* fix urlparse usage in cloud.amazon module to be compatible with python3

* make imports style compatible with six documentation
9 years ago
Brian Coca 8d17055831 error out if systemctl isn't present 9 years ago
Davis Phillips 65e55d47b1 fixes 20904 (#21068) 9 years ago
Evgeni Golov 827723db90 use require_if to check for username or AK instead of custom code (#20937)
the logical or parameter to require_if was introduced in #20220
9 years ago
Brian Coca 770fb03157 minor fixes to template docs 9 years ago
Imran Hussain d7bf3749b7 Add Check Mode capability to kernel_blacklist module (#21007)
* Add Check Mode capability to kernel_blacklist module
* Add suggested changes from @tmshn
* Pass a bool into `Blacklist` that'll just be `module.check_mode`
* Move detection and creation of a file to a separate function within `Blacklist`
* If there's no file on the system and we are running under `Check Mode`, set `self.filename` to `os.devnull` AND mark a change, as the module would have created an empty file.
* Whenever a `self.filename` is being opened in a mode where changes can be made, replace with an if statement that checks `self.checkmode` and if true then open up `os.devnull` instead
9 years ago
Loïc Blot b55d039f67 New modules: vmware_guest_facts & vmware_guest_snapshot (#20971)
* Move gather_facts action outside of vmware_guest module
* Move facts gathering method to vmware.py library
* vmware_guest use some vmware.py library methods
* vmware.py lib: fix some PEP 8 issues
* Move snapshot actions to vmware_guest_snapshot
* Move common snapshot facts to vmware.py library
9 years ago
Toshio Kuratomi 6227c6006b Fix typo when choosing KqueueSelector 9 years ago
Daniel Andrei Mincă 62434d9955 update vague description of only_upgrade (#21050)
* the `only_update` param description was kinda vague:
  * either install if not installed
  * or upgrade if installed
  * or both!?
    * as a result, remove the "install" statement from this sentence

Resolves:
Related:
Signed-off-by: Daniel Andrei Minca <mandrei17@gmail.com>
9 years ago
Peter Sprygada 39426a2207 fixes minor issues with shell (#21039)
* adds sendonly to command dict
* fixes setting timeout param
9 years ago
Peter Sprygada 3eb40d1272 adds netconf shared module (#20743)
New netconf shared lib added to module_utils for sending netconf
messages to remote devices over netconf connection plugin
9 years ago
Ganesh Nalawade 95a75e7c3a Fixes #20412 junos_config delete command fix (#20450)
If same config hierarchy is set and deleted in one playbook
for delete statement add support to check if the config is present
on device or in the playbook. If it is present add delete statement in
updated config list.
9 years ago
JimFicarra 46503c6d1f win_msi:Fixing Issue #20315 - shows changed even when msi not found (#20358)
* win_msi #20315 - shows changed even when msi not found

* make brace placement consistent
9 years ago
Scott Peshak 467fde5644 Correct typo in net_command docs (#20976) 9 years ago
Toshio Kuratomi f75ffe46db Make configparser imports python3 ready
the ConfigParser module was renamed to configparser in Python3.  Use
six.moves to import it so that the modules will function on Python3.
9 years ago
Ryan S. Brown bb9ee0cf6f [cloud][aws] Make `s3_object_version` truly optional in lambda module 9 years ago
Brian Coca a2c38c47aa added docs for vault and made trigger shorter: !vault (#20985)
* added docs for vault and made trigger shorter: !vault

* added single var valuting

* Update playbooks_vault.rst

Edit pass for spelling and grammar. Ship it!

* Update playbooks_vault.rst

Typo fixes.
9 years ago
Davis Phillips 00fdec1d60 closes #21011 (#21015) 9 years ago
Toshio Kuratomi d1a6b07fe1 Move ssh and local connection plugins from using raw select to selectors
At the moment, this change will use EPoll on Linux, KQueue on *BSDs,
etc, so it should alleviate problems with too many open file
descriptors.

* Bundle a copy of selectors2 so that we have the selectors API everywhere.
* Add licensing information to selectors2 file so it's clear what the
  licensing terms and conditions are.
* Exclude the bundled copy of selectors2 from our boilerplate code-smell test
* Rewrite ssh_run tests to attempt to work around problem with mocking
  select on shippable

Fixes #14143
9 years ago
jhawkesworth 2c70450e23 Fix 'touch' mode so it creates zero size files. (#20876) 9 years ago
Peter Sprygada 289fb8e895 remove unneeded eos_cli shared module (#20999) 9 years ago
Peter Sprygada d226f31a0f fixes ios and eos command modules (#20989)
* returns support for prompt/response over cli
* now sends native dict instead of str command
* fixes issue with run_commands() in ios to jsonify request
* updates unit test cases
9 years ago
René Moser 62c97cdd3e ios_cli: fix load_config exec_command (#20994)
fixes AttributeError: 'AnsibleModule' object has no attribute 'exec_command'
9 years ago
Toshio Kuratomi 1df7d95cec Module utils default path (#20913)
* Make the module_utils path configurable
* Add a config value to define the path site module_utils files
* Handle module_utils that do not have source as an error
* Make an integration test for module_utils envvar working
* Add documentation for the ANSIBLE_MODULE_UTILS config option/envvar
* Add it to the sample ansible.cfg
* Add it to intro_configuration.
* Also modify intro_configuration to place envvars on equal footing with
  the config options (will need to document the envvar names in the
  future)
* Also add the ANSIBLE_LIBRARY use case from
  https://github.com/ansible/ansible/issues/15432 so we can close out
  that bug.
9 years ago
Peter Sprygada bce0bd401e bug fixes for shell exec command (#20988)
* fixes up eos_local to call appropriate method
* fixes up ios_cli to call appropriate method
* moves json conversion to eos
9 years ago
Toshio Kuratomi fee6e2953b Split on newlines when checking for prompt matches (#20945)
* Check for the prompt as a substring of the output

sudo sometimes spits out warnings to stdout before getting to the
password prompt.  Account for that when trying to match a password
prompt.

Fixes #20858
9 years ago
Toshio Kuratomi 62ba084003 Do not substitute ssh_exeuctable until we need to
We need to use ssh_executable instead of hardcoding ssh in the command
we run but we need to use "ssh" when we lookup the value of the
{command}_extra_args variable.  Do this by leaving binary as "ssh" and
only expanding when we place it into b_command.

Fixes #20862
9 years ago
Ondra Machacek de2b6469e9 [cloud][ovirt] new module ovirt_snapshots & ovirt_snapshots_facts (#20936)
* cloud: ovirt: add snapshots module

* Move imports in ovirt_snapshots module to match style & pass CI

* Move ovirt_snapshot_facts imports to comply w/ CI
9 years ago
Ondra Machacek 684c766e20 cloud: ovirt: add host engine options to ovirt_hosts (#20967) 9 years ago
Matt Martz 829c0b8f62 Update validate-modules (#20932)
* Update validate-modules

* Validates ANSIBLE_METADATA
* Ensures imports happen after documentation vars
* Some pep8 cleanup

* Clean up some left over unneeded code

* Update modules for new module guidelines and validate-modules checks

* Update imports for ec2_vpc_route_table and ec2_vpc_nat_gateway
9 years ago
Nathaniel Case 1718719d77 vyos_facts 2.3 (#20939)
* Update vyos_facts documentation

* Replace runner for run_commands

* vyos_facts tests

* Update documentation

* vyos_facts is supported by core
9 years ago
Peter Sprygada 76ccfe4627 fixes handle_prompt in shell module (#20982)
* transforms command objects to dict
* transforms string commands to dict
9 years ago
Tobias Rüetschi 4f117df6ec univention udm_user: add parameter to control password update (#20699)
* univention udm_user: added support to set the password always

* module udm_user: added version 2.3 to update_password
9 years ago
Ondra Machacek 4269b12c9d Ovirt vms improve (#20882)
* cloud: ovirt: add function to get id by name

* cloud: ovirt: add instance type parameter

* cloud: ovirt: use param method instead of module.params

* cloud: ovirt: use 'and' at begging of next line

* cloud: ovirt: add description parameter to vms module

* cloud: ovirt: add comment parameter to vms module

* cloud: ovirt: add timezone parameter to vms module

* cloud: ovirt: add serial_policy parameter to vms module
9 years ago
Ondra Machacek ee7f1cde0e ovirt: Add support to diff (#20698)
* cloud: ovirt: Add diff support to

* cloud: ovirt: Add ability to print nested list of objects

* cloud: ovirt: Fix waiting while reinstalling host

* cloud: ovirt: fix ovirt_vms 404 error

* cloud: ovirt: add check_mode support to ovirt_auth module
9 years ago
Brian Coca 6ca5fb49c3 allow debug to be 'changed' (#20957)
* allow debug to be 'changed'

fixes #14430

* removed test that checked against this
9 years ago
Nathaniel Case d87fc9605f vyos_config 2.3 (#20577)
* Rename vyos2 over vyos

* Update vyos_config to LocalAnsibleModule

Change result key 'updates' -> 'commands'

vyos_config is supported by core

* vyos_config tests

* Enable bracket config use

* Sanitize config before use
9 years ago
Peter Sprygada 1e2afd57ae fix up eos doc frags (#20981)
* fix modules with invalid doc frags
* remove unneeded doc frags
9 years ago
s-hertel 0ed1e6a1f3 [cloud] rds module: handle parameters that are False, but also not the default value. Fixes #20370 (#20646)
Boolean options that default as `None` but are set to `False` by the user were ignored on update. This change checks to distinguish None & False so that options like multi_az can be turned off during an update. 

* Modifying how optional parameters are handled in rds.py. Fixes #20370

Allowing options to be set to false/no. Previously ignored unless set to true/yes.

Added a conditional for invalid parameters since the default is false instead of null for some options (e.g. force_failover, apply_immediately, upgrade).

* Making requested revision.
9 years ago
Stephane Maarek c33812450e fixed type mapper and added tests (#20963) 9 years ago
Dag Wieers 3dbce15ccb win_shortcut: Add missing $check_mode definition + bugfix + tests (#20911)
* win_shortcut: Add missing $check_mode definition

For some reason this entry was missing, possible a merge-conflict gone
wrong :-(

* Added integration tests and bugfix

Add missing changes.
9 years ago
Will Thames afe29977cb Revert "clean up unused doc fragments"
Those "unused" doc fragments are still referenced

lib/ansible/modules/network/eos/eos_config.py:extends_documentation_fragment: eapi
lib/ansible/modules/network/eos/eos_facts.py:extends_documentation_fragment: eos

This reverts commit 246cd041d8.
9 years ago
Peter Sprygada e19c2f6a6d adds the cli transport back to the ios modules (#20949)
the cli transport was initially removed to aid in the transition to
network_cli.  This adds the function back to the provider can be
specified.
9 years ago
Peter Sprygada 246cd041d8 clean up unused doc fragments 9 years ago
Peter Sprygada d8d0b007e3 adds support for eos_local connections to eos modules (#20961)
* updates modules to use eos_local
9 years ago
Peter Sprygada 1d7c71ce50 adds eos_local shared module to handle local connections (#20960)
* adds support for eapi
* adds support for cli
* adds doc fragement
9 years ago
Pau Rodriguez cc240e3f2d fixed multi_ok(multi) usage in vpc_exists function 9 years ago
Peter Sprygada 67646a0771 fixes exec_command in shell (#20948)
transforms command to dict for processing by instance of Shell
9 years ago
Brian Coca d4a8816f48 added back return false for when not debian 9 years ago
Will Thames da1c13705d Disassociate EC2 VPC subnets from route tables before deletion (#20114)
* Disassociate subnets from route tables before deletion

If a route table still has subnets associated with it, it will fail
to delete:

```
"msg": "The routeTable 'rtb-abcd1234' has dependencies and cannot be deleted."
```

Avoid this by disassociating subnets before route table deletion

* Fix ec2_vpc_route_table flake8 complaints
9 years ago
Will Thames 950ff3f24a Fix EIP release in ec2_vpc_nat_gateway (#20167)
* Check if EIP exists before deleting it

After deleting the NAT gateway, the EIP sometimes seems to
cease to exist afterwards. Check if it exists before deleting it.

Otherwise you get:
```
Failed to release EIP eipalloc-abdc1234: An error occurred (InvalidAllocationID.NotFound) \
when calling the ReleaseAddress operation: The allocation ID 'eipalloc-abcd1234' does not \
exist", "success": false}
```

* Fix flake8 errors with ec2_vpc_nat_gateway
9 years ago
Maxime Deravet 0d2d25b515 Fix for #20473 - If there is no instance in the ASG, we initialize an empty array for `properties['instances']` (#20475) 9 years ago
Brian Coca 86db15b105 last ditch debian release data (#20571)
fixes #10445
9 years ago
Brian Coca 91b363ea9e allow device to be list for multidev fs (#20655)
* allow device to be list for multidev fs

fixes #20551

* reverted command to string
9 years ago
René Moser 541a51ddf7 module_utils: implement deprecation warning for params (#20884)
* module_utils: implement deprecation warning for params

* rename deprecated_version to removed_in_version

* fix pep8 E121
9 years ago
Ganesh Nalawade 511f2b7907 Fix update check issue (#20915)
Add one of condition in required_if
to ensure configuration statements are
present if update value in provided in
playbook.
9 years ago
jctanner ac78347f2b Use a -short- custom hash for controlpersist path by default (#20843)
* A method to validate and alter the ssh control path automatically.
* First tries %C to use the shortened hash
* On further failure, it removes section by section from the original path
* Fix hostname
* Implement bcoca's suggested changes
* Remove unused option
* Remove unused class var
* Use to_string to avoid unicode error
* Switch from to_text to to_bytes
* Update the example config for the new controlpath feature
9 years ago
Tom Melendez 237b39556c [GCE] External IP Address Module. (#20779)
* [GCE] External IP Address Module.

This module allows users to create and delete External IP Addresses. Both Regional and Global Addresses are supported.

* Removed whitespace causing pep8 issue
9 years ago
naslanidis c29f52897b [cloud] New module ec2_vpc_igw_facts (#19787)
* added ec2_vpc_igw_facts module

* added cr at end of file

* corrected import json in wrong location

* corrected version added

* added snake_case conversion

* updated documentation and fixed for python 3'

* ec2_vpc_igw_facts: simplify logic

Make module arguments more 'Ansiblish'
Remove unnecessary intermediate variables in results generation
Use `ansible_dict_to_boto3_filter_list` rather than duplicating logic
Use `check_mode` rather than pass a `dryrun` argument
Update for flake8 improvements

* updated documentation
9 years ago
Peter Sprygada 406c9e01a2 moves the module utils network cli transport into a separate module (#20921)
This move will allow for the cli transport to go through a deprecation
process as we transition to network_cli plugin
9 years ago
Peter Sprygada 9ab0a49ef2 removes assert and uses to_list common function (#20866)
non impacting change to refactor assert statement out of ios shared
module
9 years ago
Ivan Bojer 327ad42ff2 new panos module to import software or configuration file into firewall (#19901)
* # This is a combination of 6 commits.
# The first commit's message is:
new module to import software or configuration file onto firewall

# This is the 2nd commit message:

changes based on the review comments; remove unecessary if statements; change returned value docstring

# This is the 3rd commit message:

empty checkin to trigger ANSIBLEbot

# This is the 4th commit message:

added additional exception handling

# This is the 5th commit message:

- added new module info to the changelog as requested

# This is the 6th commit message:

removed blank space as tox checks were failing

* new module to import software or configuration file onto firewall
9 years ago
Ganesh Nalawade 01f4d4a666 module_utils/basic.py: Support logical or condition in required_if (#20220)
* Support logical or condition in required_if

Add logical 'or' condition support in 'required_if'
for requirements.
* If requirements is a list all parameters within it should
  be present.
* If requirements is a set atleast one parameter should
  be present

* Fix review comment
9 years ago
Matt Clay cdc56afe01 PEP 8 fixes. 9 years ago
Brian Coca 16615811b4 clean up empty warnings/deprecations from modules 9 years ago
Samuel Boucher 488acc750f Feature/lookup keyring (#18379)
* Add keyring lookup

* Better error control

* Update keyring.py

* Update keyring.py

typo
9 years ago
Matt Clay 2adc71fabc PEP 8 fix. 9 years ago
Brian Coca f4b6b72c5b Warn reserved (#20567)
* removed unused vars

* added warning when using reserved vars

fixes #4816

* cleanup
9 years ago
Adrian Likins b3b598c835 Rhn register misc fixes (#20724)
* Remove monkeypatching of rhn config in rhn_register

rhn_register.Rhn() was doing some complicated monkeypatching of
the up2date_client.config.Config() class to add a default config
value. Since that was only used in one place, remove the monkeypatch
and handle the single default case.

That case was 'server_url' option, so replace it with a Rhn.server_url
property. Also handle the error case when no server url is provided.

* refactoring
* flatten some indention levels
* add 'enable_eus' to module doc
* set enable_eus var and use it directly
* style/pep8/etc cleanups
* some import cleanups

types was unused, os/re were from module_utils * import

* remove * import from module_utils.redhat
* remove * imports from module_utils.base
* remove unused Rhn._subscribe method
* cleanup pep8 style stuff
* remove a unused default mutable arg from Rhn.subscribe

Rhn.subscribe() only gets called in one place, and thats
with channels from module_params which default to [] and
are typed as a list.
9 years ago
Will Thames 38ff9b735e Fix python3, fix flake8, use common code
Update exception handling, remove use of iteritems
Update for better flake8 compliance

Use ansible_dict_to_boto3_filter_list rather than
duplicating its implementation
9 years ago
Etherdaemon 2e35d5716b Remove camel_dict_to_snake_dict as this was breaking the module itself - the result is a list 9 years ago
Etherdaemon b0c49c7141 Update typo for connection to the get_nat_gateways function 9 years ago
Etherdaemon e6821b3472 New facts module for ec2 nat gateway facts module 9 years ago
Brian Coca e6f92bc3a9 reworded conditional skipping to not imply error
fixes #19068
9 years ago
Vlad Glagolev 039d207d24 Add Source Mage GNU/Linux facts (#19671)
* Add Source Mage GNU/Linux facts

* Add unit test for OS-detection
9 years ago
Matt Clay 524e5d2c39 PEP 8 cleanup. 9 years ago
Toshio Kuratomi 5c38f3cea2 Combine jimi-c and bcoca's ideas and work on hooking module-utils into PluginLoader.
This version just gets the relevant paths from PluginLoader and then
uses the existing imp.find_plugin() calls in the AnsiballZ code to load
the proper module_utils.

Modify PluginLoader to optionally omit subdirectories (module_utils
needs to operate on top level dirs, not on subdirs because it has
a hierarchical namespace whereas all other plugins use a flat
namespace).

Rename snippet* variables to module_utils*

Add a small number of unittests for recursive_finder

Add a larger number of integration tests to demonstrate that
module_utils is working.

Whitelist module-style shebang in test target library dirs

Prefix module_data variable with b_ to be clear that it holds bytes data
9 years ago
sebastianneubauer 3f14061584 s3 module: fix urlparse invocation and netloc mixup on Python 3 (#20836) 9 years ago
Doug Bridgens 65f561e496 added ldap auth capability to hashi_vault plugin (#20244)
* added ldap authentication capability
9 years ago
Adrian Likins ee9ab6c665 Show valid bool symbols in error for invalid bool symbol 9 years ago
Eugene Krokhalev eb7495efaf unicode is absent in case of python3 - fix it (#20861) 9 years ago
Brian Coca 7e6758873c added warnings list to module and autoadd
added better way of adding warnings to return data
backwards compatible if warnings key already exists
added deprecations made iface more generic
changed to enforce type per item
added logging of warnings/deprecations
also display deprecations by default
9 years ago
Matt Clay 503e85ed0e PEP 8 E111 cleanup. 9 years ago
Matt Clay 85300883ef PEP 8 E111 cleanup. 9 years ago
Matt Clay 5f89fc4a68 PEP 8 E111 cleanup. 9 years ago
Matt Clay 23f2efbc8d PEP 8 E111 cleanup. (#20841) 9 years ago