Commit Graph

3315 Commits (0a85e64b4a95dbbd11e0ee605adc509a0234800e)

Author SHA1 Message Date
Peter Sprygada b1243feac8 rename arugment from default to defaults
This argument_spec incorrectly named an argument default and it should have
been defaults.  This corrects that issue
2016-12-08 11:25:05 -05:00
Peter Sprygada 4327e67a7e rename the argument default to defaults
The argument_spec incorrectly had the argument default and it should have
been defaults.  This corrects the problem.
2016-12-08 11:25:05 -05:00
John Barker 42d5d7b21b Docs improvements to _config 2016-12-08 11:25:05 -05:00
GGabriele e375b4c61c Fixing nxos_feature 2016-12-08 11:25:05 -05:00
Christopher Kotfila f916dae700 Unpack AWS reservations while waiting to terminate (#4012)
Previously calculation of the number of instances that have been
terminated assumed all instances were in the first reservation returned
by AWS.  If this is not the case the calculated number of instances
terminated never reaches the number of instances and the module always
times out. By unpacking the instances we get an accurate number and the
module correctly exits.
2016-12-08 11:25:05 -05:00
Ryan Brown 1a02005b8d Handle EC2 instances with multiple network interfaces (#4766)
Currently instances with multiple ENI's can't be started or stopped
because sourceDestCheck is a per-interface attribute, but we use the
boto global access to it (which only works when there's a single ENI).

This patch handles multiple ENI's and applies the sourcedestcheck across
all interfaces the same way.

Fixes #3234
2016-12-08 11:25:05 -05:00
Peter Sprygada 3a7301bb3b fixes error when calling load_config() with session keyword
The session keyword is no longer needed or supported in the load_config()
method for eos.  This fixes an issue in eos_template where the session
keyword was still being sent.
2016-12-08 11:25:05 -05:00
Toshio Kuratomi ae310d5034 Fix syntax 2016-12-08 11:25:05 -05:00
Senthil Kumar Ganesan fffd7ff44b Addressed review comments from @privateip 2016-12-08 11:25:04 -05:00
Robin Roth 2df69fb5d8 Speedup git module on clone and pull (#4562)
* remove redundant if submodules_updated

* speed up git by reducing remote commands

* run fetch only once
* run ls-remote less
  * don't run ls-remote if one would run fetch anyhow
* remove unnecessary remote_branch check in clone
  * kept if depth and version given

* fix fetch on old git versions
2016-12-08 11:25:04 -05:00
Brian Coca 627da622fe removed chdir / as it breaks tasks
fixes #17466
2016-12-08 11:25:04 -05:00
John Barker c01328b597 Document `backup` options
To make future diffing easier, use consistent ordering
2016-12-08 11:25:04 -05:00
Senthil Kumar Ganesan 9d32e313b7 Added Command module to support Dell Networking OS6 2016-12-08 11:25:04 -05:00
Senthil Kumar Ganesan 253cbc10a6 Added Command module to support Dell Networking OS9 2016-12-08 11:25:04 -05:00
Brian Coca 6030bcdb47 switched to use built in function for validation 2016-12-08 11:25:04 -05:00
Monty Taylor e27b7af1e6 Don't change to root dir in async_wrapper (#4779)
The daemonizing code here is taken from an ActiveState recipe, which
includes changing to / as a general best practice. While that is
normally true to allow for deleting the directory that the daemon
process started in, in this case it is not relevant as this is not
intended to be an actual long-running daemon.

Issue ansible/ansible#17466
2016-12-08 11:25:04 -05:00
Antonio Murdaca b9962d2389 system/systemd: enable systemctl --user (#4208)
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2016-12-08 11:25:04 -05:00
glovenglaven 289e5f1884 Added Solaris support to core mount module (#4771)
* Added Solaris support to the mount module.

* Added checking so that if a non-standard fstab file is specified it will
still work in Solaris without breaking existing functionality.

* Added a check to avoid writing duplicate vfstab entries on Solaris

* Added "version_added" to new boot option
2016-12-08 11:25:04 -05:00
Dag Wieers 433dfd0c5b Don't add included files as arguments on the command line (#4626)
This means we will have to unarchive the complete archive if a single change is found.
Unfortunately we cannot fix this for `unzip`, the only hope is a pure-python reimplementation.

This fixes problems reported in the comments of #3810
2016-12-08 11:25:04 -05:00
Martin Matuška 3366a95765 Force download if checksums do not match (#4262) 2016-12-08 11:25:04 -05:00
Gregor Giesen b87ef7772f cron: replacement for os.getlogin() (#4777)
os.getlogin() returns the user logged in on the controlling terminal. However
'crontab' only looks for the login name of the process' real user id which
pwd.getpwuid(os.getuid())[0] does provide.

While in most cases there is no difference, the former might fail under certain
circumstances (e.g. a lxc container connected by attachment without login),
throwing the error 'OSError: [Errno 25] Inappropriate ioctl for device'.
2016-12-08 11:25:04 -05:00
nitzmahone 915b59a6d5 Fix win_user issue with disabled accounts/expired passwords
Disabled and password-expired accounts cannot call ValidatePassword successfully

fixed #4369
2016-12-08 11:25:04 -05:00
Peter Sprygada ad707c2724 roll up updates to nxos_config module
* remote 'updates' argument
* clean up functions
* update doc strings
* add required_if dependencies
2016-12-08 11:25:04 -05:00
Peter Sprygada b6748443c7 roll up updates to junos_config module
* remove 'update' argument
* update doc strings
* reorder functions
2016-12-08 11:25:04 -05:00
Peter Sprygada 47bd484b70 roll up updates to ops_config module
* 'before' and 'after' now only apply to 'lines' argument
* add required_if dependencies
* update doc strings
* remove 'update' argument
* clean up functions
2016-12-08 11:25:04 -05:00
Peter Sprygada 18957c4039 roll up updates to sros_config module
* update doc strings
* update message if rollback isn't configured
2016-12-08 11:25:03 -05:00
Peter Sprygada a9557bc12b roll up of updates to vyos_config module
* remove 'udpates' argument
* add required_if dependencies
* clean up functions
* update doc strings
2016-12-08 11:25:03 -05:00
Peter Sprygada 8444b1ed8f roll up of updates to iosxr_config module
* 'before' and 'after' arguments now only apply to 'lines'
* update doc strings
* remove update argument
* clean up warnings
2016-12-08 11:25:03 -05:00
Peter Sprygada 6a0b04d6a7 roll up of updates to ios_config module
* 'before' and 'after' are now only applied to 'lines'
* remove update argument
* update doc strings
* add path argument when performing config difference
2016-12-08 11:25:03 -05:00
Peter Sprygada e5c26150fb roll up of updates to eos_config module
* removes update argument
* adds `config` option to replace argument
* moves session management into shared module
* cleans up doc strings
* `before` and `after` args now only apply to lines
2016-12-08 11:25:03 -05:00
Andrew Gaffney bac0c4595c Fix missing colons in network module examples (#4778) 2016-12-08 11:25:03 -05:00
Peter Sprygada d73fbaaf05 add new module sros_rollback
Provides a configuration resource for managing the rollback feature on
remote devices running Nokia SROS
2016-12-08 11:25:03 -05:00
Chris Houseknecht e95f773d96 Set default log_driver to None to prevent config comparison when a log_driver is not specified. Fixes #4600. 2016-12-08 11:25:03 -05:00
Chris Houseknecht 05303a974d Purge networks using network name rather than ID. Fixes 4596. 2016-12-08 11:25:03 -05:00
Chris Houseknecht 890c2d04e2 Default restart_retries to None rather than 0. Fixes #4534. 2016-12-08 11:25:03 -05:00
Ryan Brown 6ae4e50e47 Fix failure when powering on/off EC2 instances by tag only. (#4767)
If you apply `wait=yes` and use `instance_tags` as your filter for
stopping/starting EC2 instances, this stack trace happens:

```
An exception occurred during task execution. The full traceback is:                                                                          │~
Traceback (most recent call last):                                                                                                           │~
  File "/tmp/ryansb/ansible_FwE8VR/ansible_module_ec2.py", line 1540, in <module>                                                            │~
    main()                                                                                                                                   │~
  File "/tmp/ryansb/ansible_FwE8VR/ansible_module_ec2.py", line 1514, in main                                                                │~
    (changed, instance_dict_array, new_instance_ids) = startstop_instances(module, ec2, instance_ids, state, instance_tags)                  │~
  File "/tmp/ryansb/ansible_FwE8VR/ansible_module_ec2.py", line 1343, in startstop_instances                                                 │~
    if len(matched_instances) < len(instance_ids):                                                                                           │~
TypeError: object of type 'NoneType' has no len()                                                                                            │~
                                                                                                                                             │~
fatal: [localhost -> localhost]: FAILED! => {"changed": false, "failed": true, "invocation": {"module_name": "ec2"}, "module_stderr": "Traceb│~
ack (most recent call last):\n  File \"/tmp/ryansb/ansible_FwE8VR/ansible_module_ec2.py\", line 1540, in <module>\n    main()\n  File \"/tmp/│~
ryansb/ansible_FwE8VR/ansible_module_ec2.py\", line 1514, in main\n    (changed, instance_dict_array, new_instance_ids) = startstop_instances│~
(module, ec2, instance_ids, state, instance_tags)\n  File \"/tmp/ryansb/ansible_FwE8VR/ansible_module_ec2.py\", line 1343, in startstop_insta│~
nces\n    if len(matched_instances) < len(instance_ids):\nTypeError: object of type 'NoneType' has no len()\n", "module_stdout": "", "msg": "│~
MODULE FAILURE", "parsed": false}
```

That's because the `instance_ids` variable is None if not supplied
in the task. That means the instances that result from the instance_tags
query aren't going to be included in the wait loop. To fix this, a list
needs to be kept of instances with matching tags and that list needs to
be added to `instance_ids` before the wait loop.
2016-12-08 11:25:03 -05:00
Dag Wieers 976d876e55 Ensure unicode characters in zip-compressed filenames work correctly (#4702)
* Ensure unicode characters in zip-compressed filenames work correctly

Another corner-case we are fixing hoping it doesn't break anything else.

This fixes:
- The correct encoding of unicode paths internally (so the filenames we scrape from the output and is returned by zipfile match)
- Disable LANG=C for the unzip command (because it breaks the unicode output, unlike on gtar)

* Fix for python3 and other suggestions from @abadger
2016-12-08 11:25:03 -05:00
Peter Sprygada 53bcf18eab minor updates to junos_package module for 2.2 (#4761)
* replaces get_module() with NetworkModule()
* removes old call to package_version()
2016-12-08 11:25:03 -05:00
Peter Sprygada 09b8e220ca update junos_facts module to remove get_module() factory function (#4760)
Replaces get_module() with NetworkModule instance
2016-12-08 11:25:03 -05:00
Peter Sprygada 290a4b5fac adds path kwarg when difference() is called from iosxr_config
Adds the path kwarg to handle use cases with exact and strict matching
2016-12-08 11:25:03 -05:00
Matt Clay e8f70f25df Python 3 fixes for apt_* modules. (#4754) 2016-12-08 11:25:03 -05:00
Peter Sprygada d339004437 minor bug fix to pass path to difference() in ios_config
The ios_config module needs to pass the path kwarg to difference when
specifying match=exact or strict.
2016-12-08 11:25:02 -05:00
afunix f2c324facc Updated get_url module to process FTP results correctly [#3661] (#4601) 2016-12-08 11:25:02 -05:00
Peter Sprygada 6cca2b06fe fixes bug where nxos_config wasn't handling checkpoints correctly 2016-12-08 11:25:02 -05:00
Abhijit Menon-Sen 841ceb808d Fix spot instance creation by ignoring instance_initiated_shutdown_behavior (#4741)
Before this, all spot instance requests would fail because the code
_always_ called module.fail_json when the parameter was set (which it
always was, because the module parameter's default was set to 'stop').

As the comment said, this parameter doesn't make sense for spot
instances at all, so the error message was also misleading.
2016-12-08 11:25:02 -05:00
Florian Dambrine 2adc325ef6 Fix ec2 module source_dest_check when running on non VPC instances (EC2 Classic) (#3243) 2016-12-08 11:25:02 -05:00
Peter Sprygada d6e16ded3f fix bug in ios_template when include_defaults is set to true
Module was ignoring  include_defaults argument.  This fixes the issue
such that the correct configuration is returned
2016-12-08 11:25:02 -05:00
Peter Sprygada 8a87d7ff11 adds path kwarg when performing config diff checks in ios_config 2016-12-08 11:25:02 -05:00
mlewe afa9d30717 Fixes ansible/ansible#15922 (#3793) 2016-12-08 11:25:02 -05:00
Matt Ferrante d88f5f6808 Properly support tag updates on CloudFormation stack-update actions (#3638) 2016-12-08 11:25:02 -05:00
@skg_net eae69a154f dnos10_template module 2016-12-08 11:25:02 -05:00
David J Peacock 14fb0e4136 description expanded for 112, AKA VRRP protocol) (#4645)
* description expanded for 112, AKA VRRP protocol)

* corrected syntax for description for IP protocols
2016-12-08 11:25:02 -05:00
Brian Coca a42cb96b75 added backup_file to module returns (#4723)
fixes #14502
also cleaned up some unused stuff and fixed imports
2016-12-08 11:25:02 -05:00
Peter Sprygada bfdc5098cb minor bug fixes in eos_template
* fixes issue where configuration was not being loaded (#4704)
* fixes issue where defaults were not included when argument was set to True

tested on EOS 4.15.4F
2016-12-08 11:25:02 -05:00
Matt Davis 009ebf619b fix async_wrapper start suspended race (#4718)
Main thread in started-suspended process may not be immediately resumable on slow targets- poll for proper state for awhile before attempting resume
2016-12-08 11:25:02 -05:00
Matt Davis 6099e6d19e Windows async module support (#4710)
Powershell impls of async_wrapper, async_status- associated tests and async action changes are in https://github.com/ansible/ansible/pull/17400.
2016-12-08 11:25:02 -05:00
Brian Coca 909e62b25b updated include_role docs 2016-12-08 11:25:02 -05:00
Dag Wieers 5995097e61 Support DOS file attributes (e.g. archive-bit or hidden-bit) (#4705)
This fixes #4554
2016-12-08 11:25:02 -05:00
GGabriele bc7b093089 Removed newline 2016-12-08 11:25:01 -05:00
GGabriele dfa9904599 Added missing fullstop 2016-12-08 11:25:01 -05:00
Peter Sprygada db49e1e436 fixes issue where the configobjs are not deserialized to a list
When the configuration is compared and the results deserialized, the
dumps() function returns a string.  This cohereces the return to a list
in case before and/or after needs to be applied

fixes 4707
2016-12-08 11:25:01 -05:00
GGabriele 87b839e1f8 Adding missing fullstop 2016-12-08 11:25:01 -05:00
GGabriele d2d1b18ef4 Fixed param value format in docstring 2016-12-08 11:25:01 -05:00
GGabriele 745b504aa1 Fixed module structure and added one new param 2016-12-08 11:25:01 -05:00
GGabriele a71b84853c Fixed config function 2016-12-08 11:25:01 -05:00
GGabriele f577f46ccf fix imports 2016-12-08 11:25:01 -05:00
Peter Sprygada 8eab599ade removes state argument from ops_config module
this removes the state argument from ops_config.  The state argument should
not have been there
2016-12-08 11:25:01 -05:00
Peter Sprygada c071273fbf removes argument from vyos_config module
The state argument should not be in vyos_config.  This commit removes the
state argument
2016-12-08 11:25:01 -05:00
Peter Sprygada 807974f515 updates nxos_config to remove state argument
The state argument should not be in the nxos_config module.  This change
removes the state argument for this release
2016-12-08 11:25:01 -05:00
Peter Sprygada c38a90a2e9 removes state argument from ios_config
The state argument should not be in ios_config.  This change removes the
state argument
2016-12-08 11:25:01 -05:00
Peter Sprygada 51613d4307 roll up of minor fixes in eos_config module
* fixes save argument to be type bool
* now properly sets the changed returned flag based on diff
* updates docstring RETURNS to add backup_path
* removes unneeded state argument

tested on EOS 4.15.4F
2016-12-08 11:25:01 -05:00
GGabriele 7010a66638 Removed tabs 2016-12-08 11:25:01 -05:00
Peter Sprygada 7a234fc7cc update junos_netconf module
Updates the junos_netconf module with changes to load the
NetworkModule instead of the get_module factory method.  This
update is part of the 2.2 refactor of network modules
2016-12-08 11:25:01 -05:00
Peter Sprygada f5e62a0611 update junos_template module
This updates the junos_template module implementing the changes for
Ansible 2.2
2016-12-08 11:25:01 -05:00
GGabriele 174ffde2e9 Adding nxos_igmp_interface 2016-12-08 11:25:00 -05:00
GGabriele 93d816a183 Adding nxos_igmp 2016-12-08 11:25:00 -05:00
Matt Clay 1f6e3326db Python 3 fixes for async_wrapper and async_status. (#4671) 2016-12-08 11:25:00 -05:00
GGabriele 693fc690d7 nxos_vrf_interface support for 2.1 and 2.2 2016-12-08 11:25:00 -05:00
Peter Sprygada 213c8e5a81 update junos_config module
* adds src argument to load configuration from disk
* adds src_format to set the source file format
* adds update argument with choices merge or replace
* deprecates the replace argument in favor of update=replace
2016-12-08 11:25:00 -05:00
GGabriele 0303c813c8 Updating nxos_vrf 2016-12-08 11:25:00 -05:00
GGabriele 7560c6dac2 nxos_vlan support 2.1 and 2.2 2016-12-08 11:25:00 -05:00
Matt Clay cb30558a41 Make async_wrapper ignore '_' as an argsfile. (#4678)
This provides support for passing additional positional parameters to async_wrapper.
Additional parameters will be used by the upcoming async support for Windows.
2016-12-08 11:25:00 -05:00
GGabriele 7391b5ba63 nxos_ping support for 2.1 and 2.2 2016-12-08 11:25:00 -05:00
GGabriele 85e65a7873 nxos_ip_interface support for 2.1 and 2.2 2016-12-08 11:25:00 -05:00
GGabriele 631ee66ed9 Adding nxos_reboot 2016-12-08 11:25:00 -05:00
GGabriele 6d9a63a08b Fix PR 2016-12-08 11:25:00 -05:00
GGabriele 4c3a1e37ff Added python object for 2.1 and 2.2 support 2016-12-08 11:25:00 -05:00
GGabriele 4bcf5797b6 Increase timeout 2016-12-08 11:25:00 -05:00
GGabriele 3c0a1675c0 Adding nxos_rollback 2016-12-08 11:25:00 -05:00
GGabriele 25f9d122aa Adding nxos_vxlan_vtep 2016-12-08 11:25:00 -05:00
GGabriele b3c428e61f Adding nxos_vrf_af 2016-12-08 11:25:00 -05:00
GGabriele 705b61ae7a Adding nxos_portchannel 2016-12-08 11:24:59 -05:00
GGabriele 933a555408 Adding nxos_vpc 2016-12-08 11:24:59 -05:00
GGabriele eb32565b73 Adding nxos_static_route 2016-12-08 11:24:59 -05:00
GGabriele 4ee018e51d Fix error handling 2016-12-08 11:24:59 -05:00
GGabriele 1d393941c0 Adding nxos_smu 2016-12-08 11:24:59 -05:00
GGabriele 751f63c6a2 Adding nxos_pim_rp_address 2016-12-08 11:24:59 -05:00
GGabriele 1327e6bcd4 Adding nxos_pim module 2016-12-08 11:24:59 -05:00
GGabriele 9c254656aa Fixing module description 2016-12-08 11:24:59 -05:00
GGabriele 2b434515d5 Addin nxos_overlay_global 2016-12-08 11:24:59 -05:00
Scott Butler bbf209b071 Added semicolon to invalid operators list redux. 2016-12-08 11:24:59 -05:00
Kenny Woodson 3cb42fc5dd Fix for validate rule. Ensure rule is a dict. (#4640) 2016-12-08 11:24:59 -05:00
Evan Kaufman 77f5472a53 Declare empty diff dict ahead of time (#4646)
Fixes #4634
2016-12-08 11:24:59 -05:00
Kenny Woodson f1db594e9f Getting rid of a None type error when no resource tags are defined. (#4638) 2016-12-08 11:24:59 -05:00
Toshio Kuratomi 69ec272982 Python3 fixes to copy, file, and stat so that the connection integration tests can be run (#4632)
* Python3 fixes to copy, file, and stat so that the connection integration tests can be run

* Forgot to audit the helper functions as well.

* Fix dest to refledt b_dest (found by @mattclay)
2016-12-08 11:24:59 -05:00
GGabriele cba6804824 Adding nxos_interface_ospf 2016-12-08 11:24:59 -05:00
GGabriele 0a8a84a50d Adding nxos_hsrp 2016-12-08 11:24:59 -05:00
GGabriele c902f2da14 Fix typo 2016-12-08 11:24:58 -05:00
GGabriele aabab30a4f Fix try/except 2016-12-08 11:24:58 -05:00
GGabriele e392417232 Adding nxos_file_copy 2016-12-08 11:24:58 -05:00
GGabriele 40e600e901 Adding nxos_evpn_vni 2016-12-08 11:24:58 -05:00
GGabriele 52ed410679 Fixed DOCSTRING 2016-12-08 11:24:58 -05:00
GGabriele 0bedbb6bed Adding nxos_bgp_neighbor_af module 2016-12-08 11:24:58 -05:00
GGabriele bd758e8188 Adding nxos_bgp_neighbor module 2016-12-08 11:24:58 -05:00
GGabriele fdfec51cce Fixing DOCSTRING yaml format 2016-12-08 11:24:58 -05:00
GGabriele b5dbfd70d4 Fixing DOCSTRING 2016-12-08 11:24:58 -05:00
GGabriele e0f4565822 Adding nxos_bgp_af module 2016-12-08 11:24:58 -05:00
GGabriele a6f09215ec Adding python object for 2.1 support 2016-12-08 11:24:58 -05:00
GGabriele 77c247ba3b Adding python objects for 2.1 support 2016-12-08 11:24:58 -05:00
GGabriele d0acaf72e8 Removing delete for bollean, fixing argparse, embedding python object 2016-12-08 11:24:58 -05:00
Peter Sprygada ac1c643cc8 bugfix that adds missing itertools import to ios_facts
fixes #4647
2016-12-08 11:24:58 -05:00
Peter Sprygada 702efda508 add new functionality to junos_command module
* commands argument now accepts a dict arguments
* rpcs argument now accepts a dict argument
* waitfor has been renamed to wait_for with an alias to waitfor
* only show commands are allowd when check mode is specified
* config mode is no longer allowed in the command stack
* add argument match with valid values any, all
2016-12-08 11:24:58 -05:00
Michael Scherer 30cd0e8afe Add support for selinux_boolean_sub conversion (#4570)
SELinux since 2012 use a configuration file to
convert boolean names from a old name to a new name,
for preserving backward compatibility.

However, this has to be done explicitely when using the python
bindings, and the module was not doing it.

Openshift ansible script use this construct to detect if
a boolean exist or not:

    - name: Check for existence of virt_sandbox_use_nfs seboolean
      command: getsebool virt_sandbox_use_nfs
      register: virt_sandbox_use_nfs_output
      failed_when: false
      changed_when: false

    - name: Set seboolean to allow nfs storage plugin access from containers(sandbox)
      seboolean:
        name: virt_sandbox_use_nfs
        state: yes
        persistent: yes
      when: virt_sandbox_use_nfs_output.rc == 0

On a system where virt_sandbox_use_nfs do not exist, this work. But
on a system where virt_sandbox_use_nfs is a alias to virt_use_nfs (like
Fedora 24), this fail because the seboolean is not aware of the alias.
2016-12-08 11:24:58 -05:00
Toshio Kuratomi 45846127c5 to_text, to_bytes, and to_native now have surrogate_or_strict error handler (#4630)
On python3, we want to use the surrogateescape error handler if
available for filesystem paths and the like.  On python2, have to use
strict in these circumstances.  Use the new error strategy for to_text,
to_bytes, and to_native that allows this.
2016-12-08 11:24:57 -05:00
John R Barker aa0b93a338 Consistent naming of Arista EOS device (#4616) 2016-12-08 11:24:57 -05:00
Matt Clay 928ef28fc8 Add python3 testing for module PRs. (#4629) 2016-12-08 11:24:57 -05:00
Senthil Kumar Ganesan fed23d2f31 Cleaned up the module imports 2016-12-08 11:24:57 -05:00
Tobias Wolf cda78382b6 Fix database table quoting in privileges_unpack() (#3858)
In Ansible 2.x this module gives `changed = True` for all privileges
that are specified including a table with

    priv: "database.table:GRANT"

Mysql returns escaped names in the format

    `database`.`tables`:GRANT

However in PR #1358, which was intended to support dotted database names
(a crazy idea to begin with), the quotes for the table name were left
out, leading to `curr_priv != new_priv`.

This means that the idempotency comparison between new_priv and
curr_priv is always 'changed'.

This PR re-introduces quoting to the table part of the priv.
2016-12-08 11:24:57 -05:00
Jean Prat ed246a328f if user is empty, it is not converted to tuple when using host_all (#3038) 2016-12-08 11:24:57 -05:00
James Cammarata aa67bb43fe Adding 'end_play' docs to meta module 2016-12-08 11:24:57 -05:00
GGabriele 5277f645e5 Fixing DOC string 2016-12-08 11:24:57 -05:00
GGabriele 0b887cd193 Fixing RETURN string 2016-12-08 11:24:57 -05:00
GGabriele 6590c4677d Adding nxos_ospf_vrf module 2016-12-08 11:24:57 -05:00
GGabriele a678439059 Adding nxos_ospf module 2016-12-08 11:24:57 -05:00
GGabriele c8016946f3 Adding nxos_evpn_global module 2016-12-08 11:24:57 -05:00
GGabriele fb4da92308 Fixing typo 2016-12-08 11:24:57 -05:00
Toshio Kuratomi 5bd9cdad5a We've decided that pythn 3.5 is the minimum python3 version (#4572) 2016-12-08 11:24:57 -05:00
GGabriele a539ea47bc Adding nxos_acl_interface_module 2016-12-08 11:24:57 -05:00
Michael Scherer 25fd3928b6 Make async work on python 3 (#4583)
Since dict no longer have a iteritems method, we have to
use six to support python 2 and 3.
2016-12-08 11:24:56 -05:00
Michael Scherer f4158304ac Port mount.py to python3, need to use six.iteritems (#4581) 2016-12-08 11:24:56 -05:00
Michael Scherer b48e65219b Fix uri to run on python3 (#4580)
Since dict no longer have a method iteritems, we have to use
the six wrapper.
2016-12-08 11:24:56 -05:00
Michael Scherer f59af7d29e Port postgresql module to python3 (#4579)
Iteritems is no longer a dict method in Python3, replace it with
the six wrapper.
2016-12-08 11:24:56 -05:00
Michael Scherer 839d5b6de4 Fix mysql_user for python3 (#4576)
dict no longer have a iteritems method, it was replaced
by items. So we need to use six.

    Traceback (most recent call last):
      File \"/tmp/ansible_hjd7d65c/ansible_module_mysql_user.py\", line 587, in <module>
        main()
      File \"/tmp/ansible_hjd7d65c/ansible_module_mysql_user.py\", line 571, in main
        changed = user_add(cursor, user, host, host_all, password, encrypted, priv, module.check_mode)
      File \"/tmp/ansible_hjd7d65c/ansible_module_mysql_user.py\", line 239, in user_add
        for db_table, priv in new_priv.iteritems():
    AttributeError: 'dict' object has no attribute 'iteritems'
2016-12-08 11:24:56 -05:00
GGabriele 549ca5183d Adding RETURN string 2016-12-08 11:24:56 -05:00
Michael Scherer f2b6c7b6a2 Fix user module under python3 (#4560)
Using something like:

    - name: Create ssh keys
      user:
        name: root
        generate_ssh_key: yes
      register: key

result into this traceback on F24

    Traceback (most recent call last):
      File \"/tmp/ansible_jm5d4vlh/ansible_module_user.py\", line 2170, in <module>
        main()
      File \"/tmp/ansible_jm5d4vlh/ansible_module_user.py\", line 2108, in main
        (rc, out, err) = user.modify_user()
      File \"/tmp/ansible_jm5d4vlh/ansible_module_user.py\", line 660, in modify_user
        return self.modify_user_usermod()
      File \"/tmp/ansible_jm5d4vlh/ansible_module_user.py\", line 417, in modify_user_usermod
        has_append = self._check_usermod_append()
      File \"/tmp/ansible_jm5d4vlh/ansible_module_user.py\", line 405, in _check_usermod_append
        lines = helpout.split('\\n')
    TypeError: a bytes-like object is required, not 'str'
2016-12-08 11:24:56 -05:00
Michael Scherer 898cf5b462 Fix traceback on python3 (#4556)
Traceback (most recent call last):
  File "/tmp/ansible_csqv781s/ansible_module_systemd.py", line 374, in <module>
    main()
  File "/tmp/ansible_csqv781s/ansible_module_systemd.py", line 263, in main
    for line in out.split('\\n'): # systemd can have multiline values delimited with {}
2016-12-08 11:24:56 -05:00
GGabriele a4817cff30 Adding nxos_acl module 2016-12-08 11:24:56 -05:00
John R Barker 51aa4e803f Consistent naming of Arista EOS device 2016-12-08 11:24:56 -05:00
GGabriele bc47cf362b Fixing string case 2016-12-08 11:24:56 -05:00
Senthil Kumar Ganesan 8c5b189f8b Incorporated Ansible community feedback 2016-12-08 11:24:56 -05:00
Peter Sprygada 019de090d4 update ops_facts with enhancements
* adds support for default facts subset
* adds support for config facts subset
* maintain legacy facts from ops_facts pre-2.2

Tested on Openswitch 0.4.0
2016-12-08 11:24:56 -05:00
Peter Sprygada 018cdf33a2 update ops_template module using refactored network shared modules
This updates the ops_template module to work with the network shared
modules introduced in Ansible 2.2

Tested with OpenSwitch 0.4.0
2016-12-08 11:24:56 -05:00
Peter Sprygada 54232c3b2d update ops_config module with new enhancements
* add src argument to provide path to config file
* add new choice to match used to ignore current running config
* add update argument with choices merge or check
* add backup argument to backup current running config to control host
* add save argument to save current running config to startup config
* add state argument to control state of config file
* deprecated force argument, use match=none instead

Note: this module only supports transport=cli

Tested on OpenSwitch 0.4.0
2016-12-08 11:24:56 -05:00
Peter Sprygada ef46627f1f added new functionality to ops_command
* commands argument now accepts a dict arguments
* waitfor has been renamed to wait_for with an alias to waitfor
* only show commands are allowed when check mode is specified
* config mode is no longer allowed in the command stack
* add argument match with valid values any, all

Tested on OpenSwitch 0.4.0
2016-12-08 11:24:56 -05:00
GGabriele 882f201aa0 Fixing DOC 2016-12-08 11:24:56 -05:00
GGabriele 2b2636510d Adding nxos_bgp.py 2016-12-08 11:24:55 -05:00
Senthil Kumar Ganesan c66432bbae Moved the modules to Dell folder 2016-12-08 11:24:55 -05:00
Senthil Kumar Ganesan 90cb4710d7 Added Command and Config modules to support Dell Networking OS10 device 2016-12-08 11:24:55 -05:00
Peter Sprygada 0f4446166b update eos_eapi module with new enhancements
* add support for vrf configurations
* add support for configing the qos value for eapi
* add config argument to specify the device running-config

Tested on EOS 4.15.4F
2016-12-08 11:24:55 -05:00
Peter Sprygada 5e5698dc9e removes output keyword from command in ios_command
IOS devices only support a single command output which is structured
text.  This removes the ability to specify the command output format
when providing complex arguments to the commands
2016-12-08 11:24:55 -05:00
Peter Sprygada 7280b2642a update nxos_nxapi module with minor enhancements (#4573)
* added new config argument
* added states present and absent
* update to use network shared modules

Tested on NXOS 7.3(0)D1(1)
2016-12-08 11:24:55 -05:00
Timothy Appnel 5b00b40c22 Fixes get_url examples in docs and applies native YAML syntax. (#4474) 2016-12-08 11:24:55 -05:00
John R Barker 89529366bf digital_ocean_tag name is a required field
Spotted during final review of https://github.com/ansible/ansible-modules-core/pull/4218/files
Simple to change, so fixing post merge
2016-12-08 11:24:55 -05:00
Victor Volle 6a20e6649d Digitalocean tags (replaces #4209) (#4218)
* Fixes #4117: Add DigitalOcean Tag support

* Add GPLv3 license header and RETURN documentation

* ansible.module_utils.urls instead of "requests"
2016-12-08 11:24:55 -05:00
Arun prasath 7a7ac2ee83 Fixes bug #4546 - Made password optional (#4574) 2016-12-08 11:24:55 -05:00
David J Peacock bcc738bd0d Fix #4412: os_security_group_rule support numbered protocols (#4444) 2016-12-08 11:24:55 -05:00
Ryan Brown c85d854c84 Remove spurious `changed` state on iam_policy module (#4381)
Due to a mixup of the group/role/user and policy names, policies with
the same name as the group/role/user they are attached to would never be
updated after creation. To fix that, we needed two changes to the logic
of policy comparison:

- Compare the new policy name to *all* matching policies, not just the
  first in lexicographical order
- Compare the new policy name to the matching ones, not to the IAM
  object the policy is attached to
2016-12-08 11:24:55 -05:00
James S. Martin 4d75f9b4bc Shows messages for uncaught exceptions from called modules in async_wrapper output. (#4591) 2016-12-08 11:24:55 -05:00
Rick Mendes 503c2b6158 Fixes #3144 (#4305) 2016-12-08 11:24:55 -05:00
Vytis Banaitis 3149fdf158 Fix change status on django_manage collectstatic. (#4239)
Ignore blank lines in collectstatic output.
2016-12-08 11:24:55 -05:00
Guillaume Delpierre 90bf5434d0 gem: add support for --env-shebang (#4377)
* gem: add support for --env-shebang

* fix version added
2016-12-08 11:24:55 -05:00
Levi Morales 0c9d895438 Fixes #2322 fix for missing append check on Darwin systems (#4256) 2016-12-08 11:24:55 -05:00
Evan Kaufman 254df9bcca Implemented file content diff for replace module (#4479) 2016-12-08 11:24:54 -05:00
Matías Pizarro c1dae481e8 Use named parameters in new_droplet method call (#4483)
This mirrors the original method signature and guards against any
change in order parameter
2016-12-08 11:24:54 -05:00
Anton Onufriev f5f1062d72 Remove colors from git-branch output for correct local search (#4545)
We got an error while switching on existent local branch
because git module can not find branch in function get_branches
if we have color.branch=always in git config.
2016-12-08 11:24:54 -05:00
Michael Scherer ee5a48b84d Port the module to run on python 3 (#4496)
One of the usual issue is that run_command return bytes,
so we have to adapt the string to either be bytes too,
or convert to string.

This result into that kind of traceback:

    Traceback (most recent call last):
      File \"/tmp/ansible_ej32yu2w/ansible_module_git.py\", line 1009, in <module>
        main()
      File \"/tmp/ansible_ej32yu2w/ansible_module_git.py\", line 873, in main
        git_version_used = git_version(git_path, module)
      File \"/tmp/ansible_ej32yu2w/ansible_module_git.py\", line 788, in git_version
        rematch = re.search('git version (.*)$', out)
      File \"/usr/lib64/python3.5/re.py\", line 173, in search
        return _compile(pattern, flags).search(string)
    TypeError: cannot use a string pattern on a bytes-like object

Another issue is filter being a object instead of a list.
2016-12-08 11:24:54 -05:00
James Pharaoh 06f5f2e26d fix error in documentation for stat checksum (#4582) 2016-12-08 11:24:54 -05:00
Ilja Bauer 729486809e Replaced use of bare variables with full variable syntax (#4149) 2016-12-08 11:24:54 -05:00
Gennady Trafimenkov 7ea7564bf4 Clarify what checksum algorithm is used by copy modules (#4198) 2016-12-08 11:24:54 -05:00
Ali Ok 1e411f9551 Fix minor syntax error in authorized_key module doc (#4491) 2016-12-08 11:24:54 -05:00
Robin Roth ccddeb8cdc Clarify that refspec is needed to checkout a git hash (#4564)
fixes #1531
2016-12-08 11:24:54 -05:00
Michael Scherer 338a8c8632 Convert command output to native string (#4559)
Without it, the module always return changed on python3,
which is harmless but add noise and can have some side effects.
2016-12-08 11:24:54 -05:00
Peter Sprygada 66b0a1ef2d convert nxos_facts map from dict to frozenset
* key maps are now frozenset instead of dict objects
* FactsBase now includes utility functions for transforming json data structures

Tested on NXOS 7.3(0)D1(1)
2016-12-08 11:24:54 -05:00
chouseknecht 964b7ecffa Fix container labels expected vs actual comparison. 2016-12-08 11:24:54 -05:00
Brian Coca e37f57fc90 added docs for vars_from/defaults_from 2016-12-08 11:24:54 -05:00
Brian Coca 79d970d5b8 updated include_role docs to latest info 2016-12-08 11:24:54 -05:00
Peter Sprygada 4fd4ff8d5c update eos_template for network shared module
This updates the eos_template module to work with the changes introduced
in the network shared module in Ansible 2.2

Tested on EOS 4.15.4F
2016-12-08 11:24:54 -05:00
Peter Sprygada d0a98bc433 update nxos_template module with network shared module changes
This updates the nxos_template module to work with the network shared
modules introduced in Ansible 2.2

Tested on NXOS 7.3(0)D1(1)
2016-12-08 11:24:54 -05:00
Peter Sprygada 8f303981d4 update ios_template module using refactored network shared modules
This updates the ios_template module to work with the network shared
modules introduced in Ansible 2.2

Tested in IOS 15.6(1)T
2016-12-08 11:24:54 -05:00
Peter Sprygada 7eb550aa53 update iosxr_template to use network shared modules
This updates the iosxr_template module to make it work with the new
shared network modules introduced in Ansible 2.2

Tested on IOSXR 6.0.0
2016-12-08 11:24:53 -05:00
Peter Sprygada 0da190abbd add new iosxr_facts module for fact collection from XR devices
* adds support for std network facts
* adds support for default facts subset
* adds support for config facts subset
* adds support for interface facts subset
* adds support for hardware facts subset

Tested on IOS-XR 6.0.0
2016-12-08 11:24:53 -05:00
Jason Edelman 3b83e676e6 removed feature check for nxos_interface 2016-12-08 11:24:53 -05:00
Brian Coca b7d2c62f2b 1st draft of include role docs 2016-12-08 11:24:53 -05:00
Peter Sprygada 751eab187f updates nxos_facts with more fact collections
* adds support for std network facts
* adds support for default facts subset
* adds support for config facts subset
* adds support for interface facts subset
* adds support for hardware facts subset
* maintains backwards capabilitity with 2.1 facts module

Tested on NXOS 7.3(0)D1(1)
2016-12-08 11:24:53 -05:00
Peter Sprygada 733ee349b0 add new eos_facts module for fact collect of EOS nodes
* adds support for std network facts
* adds support for default facts subset
* adds support for config facts subset
* adds support for interface facts subset
* adds support for hardware facts subset

Tested on EOS 4.15.4F
2016-12-08 11:24:53 -05:00
Peter Sprygada d138b94c70 update iosxr_config with new arguments
* add src argument to provide path to config file
* add new choice to match used to ignore current running config
* add update argument with choices merge, replace or check
* add backup argument to backup current running config to control host
* add comment argument to provide comment to commit
* deprecated force argument, use match=none instead
2016-12-08 11:24:53 -05:00
Toshio Kuratomi c4988262b5 Fixes for lineinfile (#4553)
Lineinfile deals heavily with Unic text files.  Makes some sense to deal
with it all as byte strings.  So there is a lot of work done here to
show that we're dealing with byte strings throughout.
2016-12-08 11:24:53 -05:00
Peter Sprygada 28ab66cef2 update RETURNS doc string in ios_facts
updates the doc string for consistency and completeness
2016-12-08 11:24:53 -05:00
Patrick Marques 697a328124 ssh_public_keys on Azure virtual machine is a list (#4350)
The ssh_public_keys must be a list otherwise will give the error:
"argument ssh_public_keys is of type <type 'dict'> and we were unable to convert to list"
2016-12-08 11:24:53 -05:00
Peter Sprygada 5ebe26e782 initial add of network/sros modules
* adds support for sros_command module for sending arbitrary commands
* adds support for sros_config module for working with sros configurations
2016-12-08 11:24:53 -05:00