Commit graph

11590 commits

Author SHA1 Message Date
Stein Inge Morisbak
b685cc32c0 Removed import of json. It is already imported in the common module. 2016-12-08 11:32:22 -05:00
Stein Inge Morisbak
5b56faeed2 Fall back to simplejson if ImportError on json 2016-12-08 11:32:22 -05:00
Brian Coca
701a85e7fc revamp of gluster volume management also implemented deleting a volume 2016-12-08 11:32:22 -05:00
Michael Scherer
3dab019dca Add a new option immediate= to immediately apply a permanent change
Currently, either you apply the change in the configuration
of firewalld ( without permanent=True ), or you apply it live.
I most of the time want to do the 2 at the same time, ie open the
port ( so I can use the service ) and make sure it stay open on reboot.
2016-12-08 11:32:22 -05:00
Jeroen Thora
26ae02b2f5 Small typo fix 2016-12-08 11:32:22 -05:00
Brian Coca
baf514957c moved version added 2016-12-08 11:32:22 -05:00
Brian Coca
3ef53f92eb minor cleanup, removing unused/redundant code, cleaned some comments, slight reformating in class to remove kwargs 2016-12-08 11:32:22 -05:00
Ravi Bhure
7e83da3480 Recorded the changes suggested by brian coca 2016-12-08 11:32:22 -05:00
Ravi Bhure
e0f0cc4049 used ansible conventions to use trigered action ==> state, now only two states are available enabled/disabled_ get weight for backend server, is default behavior for both state, supports set weight while enable server in lb pool 2016-12-08 11:32:22 -05:00
Ravi Bhure
a1c5149de3 Instead of action [enable_server,disable_server] we prefer to use state [enabled,disabled] [FIXED] misplaced the checkmode support (#L146) [FIXED] no need to check if host is not set as the argument spec (#L138), it should already complain about that [FIXED] 2016-12-08 11:32:22 -05:00
Ravi Bhure
6edde18f90 updated version 1.9 and moved haproxy module to network category 2016-12-08 11:32:22 -05:00
Ravi Bhure
594b5ce64b Added module haproxy, to handle enable/disable backend server with shutdown_sessions feature in haproxy. 2016-12-08 11:32:21 -05:00
Brian Coca
9057295065 changed to use ansible standard 'name' instead of 'package' 2016-12-08 11:32:21 -05:00
Brian Coca
766125d585 minor doc tweaks to snmp_facts 2016-12-08 11:32:21 -05:00
Toshio Kuratomi
79bd23da3e Fixes to documentation 2016-12-08 11:32:21 -05:00
ogenstad
61cf02b727 1.9 2016-12-08 11:32:21 -05:00
ogenstad
779614e9cf added_version -> 1.9 and file move 2016-12-08 11:32:21 -05:00
ogenstad
ba456c0020 Snmp module for Ansible 2016-12-08 11:32:21 -05:00
nate-kingsley
854e086efc Adding Uptime Robot Module
Added uptime robot module. This currently has the ability to start or
pause existing monitors. The ability to create or delete is forthcoming.
2016-12-08 11:32:21 -05:00
Taneli Leppä
36fb7e0529 Added .py extension to glusterfs module. 2016-12-08 11:32:21 -05:00
Taneli Leppa
71172bd762 Added GlusterFS module. 2016-12-08 11:32:21 -05:00
Peter Mounce
71d2faab18 Windows package management with Chocolatey 2016-12-08 11:32:21 -05:00
Peter Mounce
f408ac2d82 Add module to install windows updates
Supports specifying which category to install all updates from.
NEEDS: `choco install PSWindowsUpdate` beforehand - does not attempt to install it (or detect it's missing, yet)
PSWindowsUpdate: http://gallery.technet.microsoft.com/scriptcenter/2d191bcd-3308-4edd-9de2-88dff796b0bc#content
2016-12-08 11:32:21 -05:00
Cristian Van Ee
e7146ed265 Fixed cachedir function 2016-12-08 11:32:21 -05:00
Cristian van Ee
b0a1baa981 Created dnf package manager module, based on the yum package manager module. 2016-12-08 11:32:21 -05:00
Ben Mather
1e98302cb8 mark all actions as private 2016-12-08 11:32:21 -05:00
Ben Mather
1a30d3fcfd mark list as private instead of shadowing 2016-12-08 11:32:21 -05:00
Ben Mather
eebde78ded make it possible to configure the content type of a github webhook 2016-12-08 11:32:20 -05:00
Ben Mather
06559cad3c rename list to list_ to avoid shadowing in github_hooks module
The definition was leaking into ansible.module_utils.basic and causing
type checking to fail when running module as script.  Not entirely clear
why this should be the case.
2016-12-08 11:32:20 -05:00
Aurélien Bompard
27afdc9566 Module alternatives: support RedHat-based OSes
RedHat-based OSes have a version of update-alternatives which comes from
the chkconfig package and does not support the --query parameter. Work
around that.
2016-12-08 11:32:20 -05:00
Aurélien Bompard
2d5c2dabe8 Module alternatives: support check mode 2016-12-08 11:32:20 -05:00
Michael Warkentin
7925c0a453 Add bower module 2016-12-08 11:32:20 -05:00
Steve
2cb1176bc2 New crypttab module for editing Linux /etc/crypttab file 2016-12-08 11:32:20 -05:00
René Moser
cc666194ac zabbix_group: new module
Add or remove a host group to Zabbix.

Signed-off-by: René Moser <mail@renemoser.net>
2016-12-08 11:32:20 -05:00
Toshio Kuratomi
cdb9c1b1c4 Use the python db api to quote mysql values 2016-12-08 11:32:20 -05:00
Brian Coca
ff66d56d4a corrected and made better docs for getent 2016-12-08 11:32:20 -05:00
Joseph Tate
5faecb76ae Actually what we need is to import the urls utils 2016-12-08 11:32:20 -05:00
Joseph Tate
b75c10d5ea If you're going to use urllib, you'd better import it 2016-12-08 11:32:20 -05:00
Toby Evans
7685d60c58 Update the webhook url
This change fixes the 404 seen with the current version.

fixes #100
2016-12-08 11:32:20 -05:00
Michael Warkentin
45f2a6734d Fix typo: authenicate -> authenticate 2016-12-08 11:32:20 -05:00
Artem Chernikov
b4c6b81619 Fixing SuSE to SUSE as latter is the right one since some time 2016-12-08 11:32:20 -05:00
Toshio Kuratomi
ae51f28420 Move from md5 to sha1 to work on fips-140 enabled systems 2016-12-08 11:32:20 -05:00
Filipe Niero Felisbino
d740265e13 Replace dev_string to dev_list 2016-12-08 11:32:20 -05:00
Michael DeHaan
cf622a7299 Categorize some modules. 2016-12-08 11:32:19 -05:00
Michael DeHaan
7d6ceb4f06 Reorganization. 2016-12-08 11:32:19 -05:00
Michael DeHaan
ee87304fb8 Fix rename error. 2016-12-08 11:32:19 -05:00
Michael DeHaan
55b41340fc Module reorg 2016-12-08 11:32:19 -05:00
anatoly techtonik
2a67586432 README.md: Reference module development guide (fixes #10) 2016-12-08 11:32:19 -05:00
Sergei Antipov
e60d6e413a Added missed importing 2016-12-08 11:32:19 -05:00
Eric Hanchrow
aff36f5a97 Clarify doc for cpan module
... note that you can pass names that include a precise version number.
2016-12-08 11:32:19 -05:00
Chris West
4176c3b500 Enable "ufw default allow routed"
* The policy is shown in `status verbose`, so all the check mode stuff should keep working.
 * `--dry-run` works as expected.
 * No idea whether it's legal as an argument to `interface`
2016-12-08 11:32:19 -05:00
Boris Manojlovic
b1ec3fd57e fixed zypper.py and zypper_repository.py for SLE10 platform 2016-12-08 11:32:19 -05:00
anatoly techtonik
cb70fbc9d1 composer: Fix changed status that always returns False
re.match in has_changed function never worked properly, because match
requires searched sequence to be present exactly at a start of processed
string, which is not the case here.
2016-12-08 11:32:19 -05:00
Mikolaj Chwalisz
5e9f16b206 opkg: fix package state detection 2016-12-08 11:32:19 -05:00
Paul Nicholson
8875d45632 Add missing __init__.py files for find_package() to work 2016-12-08 11:32:19 -05:00
Baptiste Mispelon
7a60427749 Fixed typo in locale_gen documentation. 2016-12-08 11:32:19 -05:00
Philip Misiowiec
85c15e5303 Added version 2016-12-08 11:32:19 -05:00
Philip Misiowiec
7db849397c Ability to enable SSL when creating MongoDB users 2016-12-08 11:32:19 -05:00
jravetch
2a8fc63645 mkfs.xfs uses -f instead of -F flag
mkfs.xfs uses the -f instead of -F flag to force creating a filesystem on a devices that have an existing filesystem
2016-12-08 11:32:18 -05:00
kustodian
e9f98c0efc mysql_replication should not connect to the 'mysql' database
All the actions by the mysql_replication plugin can be done by connecting to the NULL database. There is no need to connect to the 'mysql' db, since there are permissions problems when connecting to remote hosts, e.g. when you want to query "SHOW MASTER STATUS" on a remote host.
2016-12-08 11:32:18 -05:00
René Moser
e9eb19a7f2 zabbix_maintenance: set state to be present by default
Signed-off-by: René Moser <mail@renemoser.net>
2016-12-08 11:32:18 -05:00
Patrik Lundin
66cb7f1a37 openbsd_pkg: revert "changed" simplification.
module.exit_json() does not like when the "changed" variable contains a
match object:

TypeError: <_sre.SRE_Match object at 0x81e2ae58> is not JSON serializable
2016-12-08 11:32:18 -05:00
Patrik Lundin
98dcb3a006 Simplify logic by using required=True. 2016-12-08 11:32:18 -05:00
James Cammarata
e7405643e1 Refactor openbsd package upgrade change to work more like yum/apt 2016-12-08 11:32:18 -05:00
Patrik Lundin
6aaf5eb1d6 openbsd_pkg: add upgrade argument.
Running the module with the argument "upgrade=yes" invokes an upgrade of
all installed packages.

While here clean up some comments.

Functionality requested by @qbit.
2016-12-08 11:32:18 -05:00
Michael DeHaan
d2110d7502 Update README.md 2016-12-08 11:32:18 -05:00
Michael DeHaan
7ba58f93a0 package files 2016-12-08 11:32:18 -05:00
Michael DeHaan
5879c503bb File extensions! 2016-12-08 11:32:18 -05:00
James Cammarata
d4b117843a Copying snapshot of extras modules 2016-12-08 11:32:07 -05:00
James Cammarata
8afa090417 Resolving differences in core modules post-merge 2016-12-08 11:25:36 -05:00
James Cammarata
95d59b61eb Removing unnecessary files before repo merge 2016-12-08 11:25:36 -05:00
Toshio Kuratomi
7319104552 Refreshed metadata for core modules 2016-12-08 11:25:35 -05:00
Adam Chainz
46ca2b8bcd Cloudformation - remove dead invoke_with_throttling_retries function (#5690)
Unused since f040d63403.
2016-12-08 11:25:35 -05:00
Fabio Alessandro Locati
5edbbabe0b Call main in conditional way - packaging (#5826) 2016-12-08 11:25:35 -05:00
Fabio Alessandro Locati
17c80f6bbb Call main in conditional way - utilities (#5827) 2016-12-08 11:25:35 -05:00
Fabio Alessandro Locati
2e34bad425 Call main in conditional way - files (#5828) 2016-12-08 11:25:35 -05:00
Fabio Alessandro Locati
8855b3274c Call main in conditional way - databases 2016-12-08 11:25:35 -05:00
Fabio Alessandro Locati
21bd86ef1d Call main in conditional way - cloud/rackspace 2016-12-08 11:25:35 -05:00
Fabio Alessandro Locati
c8fd24ee04 Call main in conditional way - cloud/amazon 2016-12-08 11:25:35 -05:00
Fabio Alessandro Locati
1c3aeb5cb7 Call main in conditional way - source_control 2016-12-08 11:25:35 -05:00
Fabio Alessandro Locati
a6cd0272fb Call main in conditional way - system 2016-12-08 11:25:35 -05:00
Fabio Alessandro Locati
4d2a3229d3 Call main in conditional way - web_infrastructure 2016-12-08 11:25:35 -05:00
Toshio Kuratomi
42a5b1977f Do not use the fstab parameter on openbsd for mounting (#5805)
* Do not use the fstab parameter on openbsd for mounting

OpenBSD's mount command doesn't allow selecting which fstab file to use.
So if we're operating on the live filesystem (mount or remount) return
an error if the user specified an fstab file.

Fixes #5591

* Fix the logic inversion (thanks to @landryb)
2016-12-08 11:25:35 -05:00
Fabio Alessandro Locati
a5a15acd55 Native YAML - files/file.py (#5799)
* Native YAML - files/file.py

* Rollaback part of the change as for request
2016-12-08 11:25:35 -05:00
Fabio Alessandro Locati
8b7db84e91 Native YAML - cloud/google/gce.py (#5800) 2016-12-08 11:25:34 -05:00
Fabio Alessandro Locati
2b0bdd45e8 Unquote urls in YAML - windows (#5798) 2016-12-08 11:25:34 -05:00
Fabio Alessandro Locati
ca047c3881 Unquote urls in YAML - cloud (#5797) 2016-12-08 11:25:34 -05:00
Fabio Alessandro Locati
eb54b80a92 Unquote urls in YAML - system (#5796) 2016-12-08 11:25:34 -05:00
Fabio Alessandro Locati
18d022d808 Unquote urls in YAML - source_control (#5795) 2016-12-08 11:25:34 -05:00
Fabio Alessandro Locati
013be6fa1c Unquote urls in YAML - web_infrastructure (#5794) 2016-12-08 11:25:34 -05:00
Fabio Alessandro Locati
8ae7d2dcc4 Unquote urls in YAML - packaging (#5793) 2016-12-08 11:25:34 -05:00
Fabio Alessandro Locati
e49667d94c Unquote urls in YAML - network (#5792) 2016-12-08 11:25:34 -05:00
Evan Kaufman
580c74140a Fix for python 2.4 compatibility (#5693)
Fixes #5692
2016-12-08 11:25:34 -05:00
Asara
dddf810a19 Fixed typo in docker_image.py docs (#5764) 2016-12-08 11:25:34 -05:00
Brian Coca
e3a43c0d4b made fact_path actual path (#5789) 2016-12-08 11:25:34 -05:00
Ted Timmons
367f675420 use 'six' for urlparse compatability (#5777)
* use 'six' for urlparse compatability
2016-12-08 11:25:34 -05:00
John R Barker
b05df29978 Missing space between key:value (#5785) 2016-12-08 11:25:34 -05:00
René Moser
507559dba5 doc: network: fix syntax errors in examples (#5780) 2016-12-08 11:25:34 -05:00
Rob White
3f81a65e53 Fail if specifying an ENI as device but in_vpc is not true 2016-12-08 11:25:34 -05:00
Dustin C. Hatch
b49aa70c29 systemd: Start inactive units for reload/restart
The `service` module starts services that are not running when
`action=restarted` or `action=reloaded`, which is especially convenient
for initial deployments because it eliminates an extraneous operation
for when the service starts for the first time. This commit adjusts the
behavior of the `systemd` module to match.
2016-12-08 11:25:33 -05:00
Matt Davis
ce0412aa85 Fix test failures in win_command/win_shell on Powershell 3
Switched to use Exit-Json to avoid JSON escaping bugs in ConvertTo-Json formatter without -Compress option.
2016-12-08 11:25:33 -05:00
Wouter Oosterveld
61060f4b5f mysql_user: fix user_mod on MySQL(-like) 5.7+ (Fixes #3003) (#5388) 2016-12-08 11:25:33 -05:00
ekultails
0358919db8 add correct SELinux file context for crontabs (#4511) (#4595) 2016-12-08 11:25:33 -05:00
David Wittman
cc334a078b Set IdentitiesOnly=yes when using key_file (#5682)
Sets the SSH option `IdentitiesOnly=yes` in the SSH wrapper when a
`key_file` is provided to the git module. This option ensures that
the provided key is used. Otherwise, the system's ssh-agent could
provide undesired identities when connecting.

From ssh_config(5):

> Specifies that ssh(1) should only use the authentication identity and
> certificate files explicitly configured in the ssh_config files or
> passed on the ssh(1) command-line, even if ssh-agent(1) or a
> PKCS11Provider offers more identities. The argument to this keyword
> must be “yes” or “no”. This option is intended for situations where
> ssh-agent offers many different identities. The default is “no”.
2016-12-08 11:25:33 -05:00
Matt Clay
86d53db3e4 Update async_wrapper.py to remove own temp dir. (#5719) 2016-12-08 11:25:33 -05:00
jctanner
d41b4e3802 Use the the new features of fail_if_missing for checkmode (#5750) 2016-12-08 11:25:33 -05:00
Brian Coca
d2fec9d259 added docs for use option
(cherry picked from commit ad5cb0f0d7231ff74d7918faa26091ba710c4709)
2016-12-08 11:25:33 -05:00
Toshio Kuratomi
b95f483b8d Force BSDs to use umount/mount instead of trying to use remount. (#5715)
* Force BSDs to use umount/mount instead of trying to use remount.

Fixes #5591

* Initialize out and err
2016-12-08 11:25:33 -05:00
Brian Coca
da9adccb02 systemctl show rc changes across versions
to avoid different errors across versions, ignore rc in favor of
found/notfound

fixes #5710
2016-12-08 11:25:33 -05:00
Jiri Tyr
b264f8c1cd Fall back if mountinfo reading failed (fixing #5603) 2016-12-08 11:25:33 -05:00
Matt Clay
82e74668a6 Support script interpreters in async_wrapper. (#5703) 2016-12-08 11:25:33 -05:00
Andrea Tartaglia
48d47a57d5 ported iterkeys to py3 syntax (#5657)
* ported iterkeys to py3 syntax

Addresses ansible/ansible#18507

* Use ansible.module_utils.six.moves iterkeys instead of dict.keys()

* Removed 'iterkeys'
2016-12-08 11:25:33 -05:00
Sam Doran
c0c26f83a8 Examples syntax batch7 (#5624)
* Change example syntax on nxos_feature module

* Change example syntax on nxos_hsrp module

* Change example syntax on nxos_igmp module

* Change example syntax on nxos_interface module

* Change example syntax on nxos_interface_ospf module

* Change example syntax on nxos_ip_interface module

* Change example syntax on nxos_ping module

* Change example syntax on nxos_switchport module

* Change example syntax on nxos_vlan module

* Change example syntax on nxos_vrf module

* Change example syntax on nxos_vrf_interface module

* Change example syntax on nxos_vrrp module

* Change example syntax on meta module

* Change example syntax on set_fact module

* Change example syntax on win_copy module

* Change example syntax on win_file module

* Change example syntax on win_get_url module

Remove escaping of \ characeter in Windows paths since it's no longer required for single quoted or unquoted values when using multi-line YAML syntax.

* Change example syntax on win_lineinfile module

* Change example syntax on win_msi module

* Change example syntax on win_stat module

* Remove nxos_bgp example from nxos_igmp module

* Mark examples as regexp to avoid syntax error

* Cleanup win_copy.py examples

* Cleanup win_file.py examples

* Remove quotes in win_get_url.py examples

* Cleanup quotes and languare in win_lineinfile.py

* Cleanup examples in win_group.py

* Cleanup examples in win_service.py

* Don't use : in documentation because it breaks the YAML syntax check

* Cleanup win_copy.py examples

* Cleanup win_copy.py examples

* Minor change to fix test failure

* Use single quotes
2016-12-08 11:25:33 -05:00
Sam Doran
bf184b1a92 vyos_command Document ANSIBLE_VYOS_TERMINAL_LENGTH (#5676)
* Update documentation for vyos_command

Add information on new environment variable added in #18546.
Add note on command that should not be run via Ansible.

* White space changes

Two spaces after period.
2016-12-08 11:25:33 -05:00
Kevin Kirsche
1fe0bd33f3 Remove set from junos_facts as it errors out (#5670)
Fix #5636 per @ganeshnalawade
2016-12-08 11:25:33 -05:00
Ganesh Nalawade
d39ae36ab1 Fix 5646 junos_config issue if config format is text (#5658)
If 'src_format' is not mentioned in playbook
and config is in text format a list object is
passed to 'guess_format' function instead
of string, hence TypeError execption is seen.
Fix is to pass string object instead of list.
2016-12-08 11:25:32 -05:00
Brian Coca
2ba5967673 fix yaml format, clarify docs 2016-12-08 11:25:32 -05:00
Brian Coca
b278fafec8 updated desc 2016-12-08 11:25:32 -05:00
Orion Poplawski
ade7b47f28 Be able to find all contents of a directory (#3711) 2016-12-08 11:25:32 -05:00
tedder
78f8ef267c update formatted lines to use named identifiers 2016-12-08 11:25:32 -05:00
Dag Wieers
c22e383836 Ensure proper error when fetch_url returns status -1
When using a file:// or ftp:// URL the normal provisions that a non-200 status code means error have been disabled.
But the common error status -1 from fetch_url is not properly returning an error message.
This fix ensures that if the status code returns -1, we return a proper error message.

This fixes #3563
2016-12-08 11:25:32 -05:00
Rob Cutmore
6a3969ca6b Git: indicate if remote url was changed or not (#5677) 2016-12-08 11:25:32 -05:00
jctanner
10f0d3ca95 Set b_src to abspath of b_path so that symlinks work again. (#5678)
Fixes #5653
2016-12-08 11:25:32 -05:00
John R Barker
b1c6b9272f win_msi - Don't list choices twice (#5684)
* win_msi - Dont list choices twise

http://docs.ansible.com/ansible/win_msi_module.html shows

Choices:
True
True
False
False

As the yes/no are expanded to true/false by the docs generation

* Update win_msi.py
2016-12-08 11:25:32 -05:00
Toshio Kuratomi
ef3699e277 Fix for call to umount() in remount() 2016-12-08 11:25:32 -05:00
Brian Coca
1d8be78963 try remount but fallback to unmount + mount (#2445)
* allow mount to try remount

falls back to unmount/mount

* fixed fstab handling and switched to ismount

custom function deals with bind mounts unlike built in

* un ** args

* last ** args
2016-12-08 11:25:32 -05:00
tedder
c77f7af765 add .format indexes for 2.6 compatability
Fixes #5551; the "".format() style needs to have `{0}` instead of the implied `{}` version for compatability with 2.6.
2016-12-08 11:25:32 -05:00
zaiusdr
74b32d9ec0 Fix wait_for Module to handle socket response as string in Python3
In Python3 socket module returns responses as bytes type. So it's
necessary to convert it to string for the module work correctly.
2016-12-08 11:25:32 -05:00
Kevin Kirsche
4e95ee036e Update pull request template to provide context
This updates the pull request template to provide more context about why specific things may be needed. This helps to make it feel like it is being asked for to help the team rather than arbitrary questions that don't seem applicable, such as command output for a docs change.
2016-12-08 11:25:32 -05:00
Matt Davis
13a9b98565 Prevent handle inheritance from blocking Windows async_wrapper (#5666) 2016-12-08 11:25:32 -05:00
Brian Coca
44c07d7ca8 Several systemd fixes
Allow some operations on missing services
Better sysv handling
Rearranged error reporting
fixed load error catching and order logic
also minor doc/comment updates
added warnings
2016-12-08 11:25:32 -05:00
Peter Sprygada
7079fe41be Revert "ios_mods - added stdout to exception output. Removed to_lines()" (#5663) 2016-12-08 11:25:31 -05:00
Monty Taylor
509846e6d6 Add a few lines about testing (#5662) 2016-12-08 11:25:31 -05:00
Toshio Kuratomi
52698596bc Clarify the comment 2016-12-08 11:25:31 -05:00
Toshio Kuratomi
91d98bb1a6 Older versions of rhn-client-tools don't understand containment tests. 2016-12-08 11:25:31 -05:00
Dag Wieers
54fdff16db Performance improvement using in-operator on dicts
Just a small cleanup for the existing occurrences.

Using the in-operator for hash lookups is faster than using .keys()
http://stackoverflow.com/questions/29314269/why-do-key-in-dict-and-key-in-dict-keys-have-the-same-output
2016-12-08 11:25:31 -05:00
Dag Wieers
c843eeabc2 Performance improvement using in-operator for hash lookups
Just a small cleanup for the existing occurrences.

Using the in-operator for hash lookups is faster than using .has_key()
http://stackoverflow.com/questions/1323410/has-key-or-in
2016-12-08 11:25:31 -05:00
David Wittman
85f6c26dff Add 'link' file_type to find_module
- Adds the 'link' file_type for finding symbolic or hard links
 - Use `os.lstat` instead of `os.stat` to prevent the following
   of links when statting the file.
2016-12-08 11:25:31 -05:00
Sam Doran
895179929c Examples syntax batch6 (#5623)
* Change example syntax on os_auth module

* Change example syntax on os_client_config module

* Change example syntax on os_image_facts module

* Change example syntax on os_networks_facts module

* Change example syntax on os_nova_flavor module

* Change example syntax on os_object module

* Change example syntax on os_server module

* Change example syntax on os_subnet_facts module

* Change example syntax on rax_files module

* Change example syntax on rax_files_objects module

* Change example syntax on mysql_db module

* Change example syntax on file module

* Change example syntax on uri module

* Change example syntax on cl_bond module

* Change example syntax on cl_bridge module

* Change example syntax on cl_img_install module

* Change example syntax on cl_interface module

* Change example syntax on cl_license module

* Change example syntax on cl_ports module

* Remove trailing colon
2016-12-08 11:25:31 -05:00
Jesse Keating
4c3f8cbd92 Do not require password when deleting os_user (#5601)
I broke backwards compat with the addition to define when a password
should be updated. It was requiring that a password value be passed when
deleting a user, which seems silly.

This moves the argument logic out of the argument spec and into when it
would be needed, when state is present.
2016-12-08 11:25:31 -05:00
Luc Charpentier
be7af0193d error in docker_container example (#5631) 2016-12-08 11:25:31 -05:00
Abdul Anshad A
480c364afd fixes issue #5517 (#5519) 2016-12-08 11:25:31 -05:00
Sam Doran
38c0769abb Examples syntax batch5 (#5622)
* Change example syntax on supervisorctl module

* Change example syntax or _ec2_ami_search module

* Change example syntax on cloudformation module

* Change example syntax on ec2 module

* Change example syntax on ec2_facts module

* Change example syntax on ec2_eip module

* Change example syntax on rds module

* Change example syntax on route53 module

* Change example syntax on s3 module

* Change example syntax on digital_ocean module

* Change example syntax on docker_service module

* Change example syntax on cloudformation module

* Change example syntax on gc_storage module

* Change example syntax on gce module

* Change example syntax on gce_mig module

* Change example syntax on _glance_image module

* Change example syntax on _keystone_user module

* Change example syntax on _nova_keypair module

* Change example syntax on _quantum_floating module

* Change example syntax on _quantum_floating_ip_associate module

* Change example syntax on _quantum_network module

* Change example syntax on _quantum_router module

* Change example syntax on _quantum_router_gateway module

* Change example syntax on _quantum_router_interface module

* Change example syntax on _quantum_subnet module

* SQUASH _quantum_subnet

* Add missing quotes
2016-12-08 11:25:31 -05:00
Sam Doran
b56a9852ee Examples syntax batch4 (#5620)
* Change example syntax on authorized_key module

* Change example syntax on cron module

* Change example syntax on group module

* Change example syntax on hostname module

* Change example syntax on seboolean module

* Change example syntax on selinux module

* Change example syntax on service module

* Change example syntax on sysctl module

* Change example syntax on systemd module

* Change example syntax on user module

* Change example syntax on debug module

* Change example syntax on fail module

* Change example syntax on include module

* Change example syntax on include_role module

* Change example syntax on include_vars module

* Change example syntax on pause module

* Change example syntax on wait_for module

* Change example syntax on apache2_module module

* > Change example syntax on django_manage module

* Change example syntax on htpasswd module
2016-12-08 11:25:31 -05:00
Sam Doran
ad6999e2eb Change example syntax on subversion module 2016-12-08 11:25:31 -05:00
Sam Doran
8a1caba407 Change example syntax on hg module 2016-12-08 11:25:31 -05:00
Sam Doran
1c801ac574 Change example syntax on git module 2016-12-08 11:25:30 -05:00
Sam Doran
2bb5ab9776 Change example syntax on pip module 2016-12-08 11:25:30 -05:00
Sam Doran
d42f73f5e9 Change example syntax on gem module 2016-12-08 11:25:30 -05:00
Sam Doran
8a1bd4178a Change example syntax on easy_install module 2016-12-08 11:25:30 -05:00
Sam Doran
4c93d3edf0 Change example syntax on yum module 2016-12-08 11:25:30 -05:00
Sam Doran
ea3c8ee406 Change example syntax on rpm_key module 2016-12-08 11:25:30 -05:00
Sam Doran
66c92d5623 Change example syntax on rhn_register module 2016-12-08 11:25:30 -05:00
Sam Doran
25af0652b9 Change example syntax on rhn_subscription module 2016-12-08 11:25:30 -05:00
Sam Doran
3208cf5abf Change example syntax on redhat_subscription module 2016-12-08 11:25:30 -05:00
Sam Doran
6c16ab6ca8 Change example syntax on package module 2016-12-08 11:25:30 -05:00
Sam Doran
ca12f5acac Change example syntax on apt_rpm module 2016-12-08 11:25:30 -05:00
Sam Doran
e4978ea98d Change example syntax on apt_repository module 2016-12-08 11:25:30 -05:00
Sam Doran
b2ffded3a7 Change example syntax on apt_key module 2016-12-08 11:25:30 -05:00
Sam Doran
f8ce66cbde Change example syntax on apt module 2016-12-08 11:25:30 -05:00
Sam Doran
c773539359 Change example syntax on group_by module 2016-12-08 11:25:30 -05:00
Sam Doran
a97964a22d Change example syntax on add_host module 2016-12-08 11:25:30 -05:00
Sam Doran
385d34a3d7 Change example syntax on xattr module 2016-12-08 11:25:30 -05:00
Sam Doran
c5921612d1 Change example syntax on unarchive module 2016-12-08 11:25:29 -05:00
Rezart Qelibari
d7e9fbe631 Update system/group.py module.
Add ability to add system groups with next free system gid (< 500) on macOS.
2016-12-08 11:25:29 -05:00
John R Barker
5945b19ad3 double quotes for consistency 2016-12-08 11:25:29 -05:00
John R Barker
1d00dd80f1 Need to quote if there is a : 2016-12-08 11:25:29 -05:00
Ben Tomasik
0de338824a Set suspend_processes version_added to 2.3 2016-12-08 11:25:29 -05:00
Ben Tomasik
f2af5b8664 Add support for suspending scaling processes Ref: http://docs.aws.amazon.com/autoscaling/latest/userguide/as-suspend-resume-processes.html 2016-12-08 11:25:29 -05:00
Sam Doran
f71134cb98 Change example syntax on template module 2016-12-08 11:25:29 -05:00
Sam Doran
a1b945a23e > Change example syntax on synchronize module 2016-12-08 11:25:29 -05:00
Sam Doran
065749ee2a Change example syntax on stat module 2016-12-08 11:25:29 -05:00
Sam Doran
d3e7d4f469 Change example syntax on replace module 2016-12-08 11:25:29 -05:00
Sam Doran
25f6f36a92 Change examples syntax on lineinfile module 2016-12-08 11:25:29 -05:00
Sam Doran
1923666b22 Change examples syntax on ini_file module 2016-12-08 11:25:29 -05:00
Sam Doran
ba76df1af1 Change examples syntax on find module 2016-12-08 11:25:29 -05:00
Sam Doran
0c46813871 Change examples syntax on file module 2016-12-08 11:25:29 -05:00
Sam Doran
6ea87c583b Change examples syntax on fetch module 2016-12-08 11:25:29 -05:00
Sam Doran
532c77849a Change examples syntax on copy module 2016-12-08 11:25:29 -05:00
Sam Doran
8f097580ec Change examples syntax on assemble module 2016-12-08 11:25:28 -05:00
Sam Doran
c694fe6ca4 Change examples syntax on acl module 2016-12-08 11:25:28 -05:00
Sam Doran
6d06f80097 Change examples syntax on postgresql_user module 2016-12-08 11:25:28 -05:00
Sam Doran
13c827a31c Change examples syntax on postgresql_privs module 2016-12-08 11:25:28 -05:00
Sam Doran
8edd2673b2 > Change examples syntax on postgresql_db module 2016-12-08 11:25:28 -05:00
Sam Doran
e0cfe14901 Change examples syntax on mysql_variables module 2016-12-08 11:25:28 -05:00
Sam Doran
db723af8aa Change examples syntax on mysql_user module 2016-12-08 11:25:28 -05:00
Sam Doran
119a767cd2 Change examples syntax on mysql_db module 2016-12-08 11:25:28 -05:00
Sam Doran
079bf05ec3 Change examples syntax on shell module 2016-12-08 11:25:28 -05:00
Sam Doran
60a92eadd7 Change examples syntax on script module 2016-12-08 11:25:28 -05:00
Brian Coca
847cc0a1ec Revert "stat: doc: add version for new returns" 2016-12-08 11:25:28 -05:00
Brian Coca
50c9a276d7 added file flags/attributes to stat (#5358)
depends on http://github.com/ansible/ansible/issue/18213
also documented return version of fields added in 2.2
added get_mime to keep consistency
changed default mime behaviour
2016-12-08 11:25:28 -05:00
Gyorgy Szombathelyi
33ef72b584 Ini_file: fix regression with the create option
The new create option with the default value 'no' changes the
behavior from the previous Ansible releases. Change the default to
'yes' to create missing ini files by default.

Fixes: #5488
2016-12-08 11:25:28 -05:00
René Moser
c8da9b012b stat: doc: add version for new returns (#5594) 2016-12-08 11:25:28 -05:00
Fabio Alessandro Locati
2cacc3e787 Use native YAML (#5571) 2016-12-08 11:25:28 -05:00
einarc
22df46d168 Avoid TypeError when desired_capacity is not provided to ec2_asg module (#5501)
Moving the "check if min_size/max_size/desired_capacity..." code to execute BEFORE the desired_capacity code is used in the following operation:
num_new_inst_needed = desired_capacity - len(new_instances)

Otherwise the following exception occurs when desired_capacity is not specified and you're replacing instances:
    num_new_inst_needed = desired_capacity - len(new_instances)
TypeError: unsupported operand type(s) for -: 'NoneType' and 'int'

Stack Trace:

An exception occurred during task execution. The full traceback is:
Traceback (most recent call last):
  File "/var/lib/awx/.ansible/tmp/ansible-tmp-1478229985.74-62334493713074/ec2_asg", line 3044, in <module>
    main()
  File "/var/lib/awx/.ansible/tmp/ansible-tmp-1478229985.74-62334493713074/ec2_asg", line 3038, in main
    replace_changed, asg_properties=replace(connection, module)
  File "/var/lib/awx/.ansible/tmp/ansible-tmp-1478229985.74-62334493713074/ec2_asg", line 2778, in replace
    num_new_inst_needed = desired_capacity - len(new_instances)
TypeError: unsupported operand type(s) for -: 'NoneType' and 'int'

fatal: [localhost]: FAILED! => {"changed": false, "failed": true, "invocation": {"module_name": "ec2_asg"}, "module_stderr": "Traceback (most recent call last):\n  File \"/var/lib/awx/.ansible/tmp/ansible-tmp-1478229985.74-62334493713074/ec2_asg\", line 3044, in <module>\n    main()\n  File \"/var/lib/awx/.ansible/tmp/ansible-tmp-1478229985.74-62334493713074/ec2_asg\", line 3038, in main\n    replace_changed, asg_properties=replace(connection, module)\n  File \"/var/lib/awx/.ansible/tmp/ansible-tmp-1478229985.74-62334493713074/ec2_asg\", line 2778, in replace\n    num_new_inst_needed = desired_capacity - len(new_instances)\nTypeError: unsupported operand type(s) for -: 'NoneType' and 'int'\n", "module_stdout": "", "msg": "MODULE FAILURE", "parsed": false}
	to retry, use: --limit @
2016-12-08 11:25:28 -05:00
Patrick F. Marques
dc4cff7350 Remove duplicated option from examples 2016-12-08 11:25:28 -05:00
Zaius Dr
d8c21b153d Improve ec2 module Python3 Support (#5497)
Imported six module from ansible module_utils for backwards compatibility.
2016-12-08 11:25:27 -05:00
Lars Van Casteren
0a435058a5 Docs update for os_security_group (#5531)
The example used equal characters and not colon characters.
2016-12-08 11:25:27 -05:00
Andrew Gaffney
2ef59561ba Fix bare variable references in docs (#5554) 2016-12-08 11:25:27 -05:00
Ryan Brown
e45e25c257 Fix cloudformation error when stack-rollback fails (#5550)
In cases where a CFN stack could not complete (due to lack of
permissions or similar) but also failed to roll back, the gathering of
stack resources would fail because successfully deleted items in the
rollback would no longer have a `PhysicalResourceId` property.

This PR fixes that by soft-failing when there's no physical ID
associated to a resource.
2016-12-08 11:25:27 -05:00
Ryan S. Brown
bf9077bfad Fix doc examples for ec2_elb_lb module
The examples had the listeners as a list item for each param, when they
really need to be their own objects.
2016-12-08 11:25:27 -05:00
Ryan S. Brown
5dd9372ff8 Fail gracefully in ec2_asg module when there are no matching launch configurations 2016-12-08 11:25:27 -05:00
jctanner
06e1141106 replace type() with isinstance() (#5541)
Replace all use of type() with isintance()

Addresses https://github.com/ansible/ansible/issues/18310
2016-12-08 11:25:27 -05:00
Ryan S. Brown
2744fde7c9 Fix link in cloudformation module docs 2016-12-08 11:25:27 -05:00
Sean Summers
59b11be65d added requires for botocore with RoleARN support
Added a requires for the minimum botocore version required to support RoleARN
2016-12-08 11:25:27 -05:00
Sean Summers
67934ac7db add role_arn to support Service Role
Add `role_arn` to support [AWS CloudFormation Service Role](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-servicerole.html)
2016-12-08 11:25:27 -05:00
jctanner
019acfa9b0 Correct the handling of state=latest for yum groups. (#4141)
* Correct the handling up state=latest for yum groups.
* Use yum-deprecated when available

Fixes #4119
2016-12-08 11:25:27 -05:00
Jason Cormie
9baca6ef3d Addition of InstanceUUID to facts (#4424)
The Instance UUID(refered to as PersistenceUUID in the API) is a the ID
vcenter uses to idenify VMs.
My use case for this is that I configure Zabbix using ansible and its
vmware module relies on using these to identify VMs.
2016-12-08 11:25:27 -05:00
Yair Fried
7eeb3445a4 Expose internal_network in os_floating_ip (#5510)
* Expose internal_network in os_floating_ip

Shade project has finally exposed this argument so now this module
matches old quantum_floatingip module's capabilities.

Use "nat_destination" term instead of "internal_network" to match shade
terminology.

* Add (private|internal)_network aliases to os_floating_ip

* Fix typo in os_floating_ip
2016-12-08 11:25:27 -05:00
mrLarbi
3bee788b72 ios_config : Set multiline_delimiter version to 2.3 (#5525) 2016-12-08 11:25:27 -05:00
Peter Sprygada
7d374689ad roll up of more fixes for ios_config multiline banners (#5524)
* now works for any banner in the config
* provides a configurable delimiter

link #5318
2016-12-08 11:25:27 -05:00
bdowling
ddd13bf53a ios_mods - added stdout to exception output. Removed to_lines() (#5428)
stdout lines are now available when certain exceptions occur
(Ref ansible/ansible#18241)

Also noticed that to_lines was essentially handled in
lib/ansible/plugins/action/__init__.py -- only difference was
it didn't handle a list.  to_lines() could be removed across
network modules now, but this commit is only for ios_command.

Also adds disconnect() to ios_command that was added
to ios_config in #5247
2016-12-08 11:25:26 -05:00
Michael Scherer
6806965bda Add no_log on password argument
Also do not use a wildcard import, for later refactoring
2016-12-08 11:25:26 -05:00
mickael-ange
23eba8fd97 Added aws and ec2 extends_documentation_fragment to cloud/amazon/rds module. (#3951) 2016-12-08 11:25:26 -05:00
Abel Boldú
6077028560 Add uplink provider type (#5282) 2016-12-08 11:25:26 -05:00
Michael Herold
e5cc4a45d3 Removes outdated "requirement" and outdated "note" (#5332)
- 7f59773460 no longer uses `ConfigParser`
- 1d4c0abe29 removed the `import` statement
2016-12-08 11:25:26 -05:00
Eduard Iskandarov
8ec5757789 Fixes: #4516 add placement_group argument for ec2_asg module 2016-12-08 11:25:26 -05:00
René Moser
447842c524 apt: fix changed when cache updated but not pkg (#5487) 2016-12-08 11:25:26 -05:00
Matt Martz
08ce50c2b3 If fetch_url failed to download the URL fail early with a proper error message. Fixes #5474 (#5476) 2016-12-08 11:25:26 -05:00
Michael Scherer
352d280058 Make service work when the service is not present in rc.conf
After installing a package from the ports collection on a
fresh FreeBSD 11.0, Ansible was unable to enable it, failing with
"unable to get current rcvar value". Debugging showed that sysrc
didn't see the variable from /usr/local/etc/rc.d/myservice, but
adding the value was working.

So we will just fallback to the default value if we can't find it.
2016-12-08 11:25:26 -05:00
Tom Melendez
b85bcb71c3 Support for named_ports in Managed Instance Groups. A libcloud guard has been implemented, as this feature will only be available in libcloud >= 1.3, or by using trunk. (#5167) 2016-12-08 11:25:26 -05:00
Jesse Keating
0ec56bb563 Add update_password argument to os_user (#5219)
There is a desire to not have this module always result in a change if a
password argument is supplied. The OpenStack API does not return a
password back when we get a user, so we've been assuming that if a
password argument was supplied, we should attempt to change the password
(even if nothing else is changing), and that results in a "changed"
state. Now we will only send along a password change attempt if the user
wants one (the default to match history).

Fixes #5217
2016-12-08 11:25:26 -05:00
Peter Sprygada
f8bcf55289 fixes problem when trying load banner into ios device (#5494)
this fix will now handle loading a multiline banner on ios based
devices without hanging.  It separates the processing of banners
from the remainder of the config

link #5318
2016-12-08 11:25:26 -05:00
jctanner
1ccd4ae8b0 Re-add version_added to include_vars (#5493) 2016-12-08 11:25:26 -05:00
Peter Sprygada
8b70d17f61 ios_facts module will no longer error on missing command (#5491)
The module will error if it tries to use a cli command that is not available
on a given platform.  This fix will address that problem.  If the cli
command is not available, then the command is silently discarded and the
facts that the command output is based on is not returned.  Any failed
commands are provided in the module return under the failed_commands
key.  This fix also updates the Examples docstring to make it consistent
with other ios_* modules

fixes #5444
fixes #5372
2016-12-08 11:25:26 -05:00
Matt Robinson
df70a58d72 apt_repository: Relax PPA checks and add basename (#5432)
Allow installation of PPA repositories on non-Ubuntu Debian derived
distribution targets (e.g. neon, Mint, Debian itself) by removing the
specific check for UbuntuDistribution before allowing PPA: format
sources. This fixes the addition of PPA repositories under KDE neon (as
the codenames match the base Ubuntu distribution).

To make the functionality also useful under Mint and Debian which have
different codenames to their Ubuntu upstream / downstream releases, add
a 'codename' option to override the default used in the PPA source
entry.
2016-12-08 11:25:26 -05:00
Matt Clay
be48ea4389 Simplify compileall checks. Remove py3 skip list. 2016-12-08 11:25:26 -05:00
Chris Becker
fabb63c43f Add more specific language to module description and examples
* Add 'on the remote server' to `file` parameter description
* Add example showing how to use the `file` parameter, with specific
  language about the file's location being on the 'remote server'
2016-12-08 11:25:25 -05:00
zuiurs
eeecc3adcc fix the behavior that the dest is directory
This fixes the behavior that the dest is directory,
when we set the "force: no" argument.
To be join the dest and the src's basename,
before checking the "force" argument.
2016-12-08 11:25:25 -05:00
Ricardo Carrillo Cruz
33d7745794 Add rebuild support to os_server_actions (#4289)
Fixes #2714
2016-12-08 11:25:25 -05:00
Allen Sanabria
c9960c00dc Updated documentation for PR http://github.com/ansible/ansible/pull/17207 2016-12-08 11:25:25 -05:00
Brian Coca
00fbd98f97 dont join when group is none 2016-12-08 11:25:25 -05:00
John R Barker
2a9e5687eb Correct typos in docs strings (#5233) 2016-12-08 11:25:25 -05:00
Jamie Dyer
4ac3b0c5d5 Make the RDS endpoint available if AWS returns it. Fixes #3865 (#4143) 2016-12-08 11:25:25 -05:00
jctanner
60dd2f1fff apt: update cache until corrupt package lists are fixed (#5448)
* apt: If the cache object fails to lost due to a corrupt file, try to update the cache until it is fixed.
* Append -q to the update parameters
* Remove unused variable
* Use a string that doesn't rely on internationalization
* Use py24 exception style
* Use get_exception

Fixes #2951
2016-12-08 11:25:25 -05:00
Brian Coca
ba6bc5382d corrected version added 2016-12-08 11:25:25 -05:00
Brian Coca
20f2fe4e91 added logout to docker_login
also cleaned up 'actions' and minor doc issues
2016-12-08 11:25:25 -05:00
Brian Coca
9e931f89fb added ability to control sleep between attempts
the default was 1s but it makes sense to make this configurable
2016-12-08 11:25:25 -05:00
Brian Coca
97b23c0fb7 docit 2016-12-08 11:25:25 -05:00
Brian Coca
52332f5b78 allow groups to be passed as YAML list as well
keeps backwards copat with 'comma delimited string'
fixes #5163
2016-12-08 11:25:25 -05:00
Evan Kaufman
5d3e64b0d2 Identify existing unmanaged jobs by exact match, when no header comment is found
* updated `find_job` method to find by exact match of job, when no matching header comment is found
  * note this fallback injects a header comment for later calls to `update_job` or `remove_job`
* abstracted header comment building to `do_comment` method

Fixes #3256
2016-12-08 11:25:25 -05:00
Brian Coca
47ffb6d542 minor updates to include docs 2016-12-08 11:25:25 -05:00
Brian Coca
d36bea766d make sure all svcadm operations are syncronous
fixes #5296
2016-12-08 11:25:25 -05:00
Toshio Kuratomi
0d74ae3368 Need to locate a pip inside a venv when venv is specified
Alternative to #5359

Fixes #5347
2016-12-08 11:25:24 -05:00
Matt Clay
24615e10e3 Removed tests migrated to ansible/ansible repo. (#5452) 2016-12-08 11:25:24 -05:00
Matt Davis
2c216cdf35 fix JSON junk in win_file state=directory case (#5427) 2016-12-08 11:25:24 -05:00
Charles Paul
f6676f4957 add id: back to documentation 2016-12-08 11:25:24 -05:00
bencomp
d25ba6a30a Make find return sample a YAML dict
In the description of the find module return value, the sample dict
has its key=value strings converted to key=value: None in the
web documentation. This commit updates the sample output to a 'real'
dict.

Minor additional edit in the description: "return list *of* files".
2016-12-08 11:25:24 -05:00
Matt Davis
8e97539e20 fix win_shell/win_command deadlock on large interleaved stdout/stderr (#5384)
fixes #5229
2016-12-08 11:25:24 -05:00
Fahri Cihan Demirci
1ecb63f0e0 Fix String Type for Python 3 Branch Comparison
* Use the `to_native` conversion method to convert a command output to the
  appropriate form when looking for branch names in the command output,
  therefore avoiding a `TypeError` in Python 3.
2016-12-08 11:25:24 -05:00
Hiroaki Nakamura
c2d37f1db9 hostname: add support for alpine linux (#4837)
* Add update_current_and_permanent_hostname to the hostname module

* Add support for Alpine Linux to the hostname module
2016-12-08 11:25:24 -05:00
Evan Kaufman
42079bcc59 Exposed backup file path, simplified result args (#5364)
Fixes #245
2016-12-08 11:25:24 -05:00
Toshio Kuratomi
38b3c43c68 Fix uri for change in case in response
In python3, response fields are title cased whereas in python2 they were
not.  We return these fields to the module's caller so we need to
normalize all of them to be lower case.

This reverts the lowercase check from 454f741ef5
as that one was only targetted as a single field.
2016-12-08 11:25:24 -05:00
Matt Davis
dfc2a29bdb fix win async tempdir deletion failure 2016-12-08 11:25:24 -05:00
Matt Davis
73f77e2af6 switch win async to use Win32 CreateProcess
should fix flaky async startup behavior where watchdog/module exec starts and immediately dies
2016-12-08 11:25:24 -05:00
Toshio Kuratomi
bd9e790cfe First set of fixes for uri module to work with py3.
This fix handles changes in the response headers (no longer all
lowercased) and switches from unicode() to to_text().
2016-12-08 11:25:24 -05:00
Jonathan Mainguy
51313e6da8 update maintainer 2016-12-08 11:25:24 -05:00
Timothy Appnel
5a17277bd3 clarifies synchronize module on use of --delayed-updates 2016-12-08 11:25:24 -05:00
Evan Kaufman
f8dad7130d Record existing cron file as string property, rather than only recording termination
This seems less hackish, and feels more proper for diff generation
2016-12-08 11:25:24 -05:00
Evan Kaufman
f64990df02 Rendering of crontab should reflect actual newline termination, in diff mode 2016-12-08 11:25:24 -05:00
Evan Kaufman
b416015634 Ensure trailing newline is written to cron file
Records whether existing cron file (or CRONCMD output) has a terminating newline, and ensures a trailing newline is written as necessary EVEN IF NO CHANGE WAS MADE to the target env/job

Fixes #2316
2016-12-08 11:25:23 -05:00
Evgenii Terechkov
da71acf1bf Replace dangerous shell calls with module.run_command 2016-12-08 11:25:23 -05:00
Evgenii Terechkov
8fd4785062 Ensure that we use shell
to run apt-get -y install ... >/dev/null

this commit must fix #2839
2016-12-08 11:25:23 -05:00
Rowan Wookey
914e205eb3 Added work around for Ubuntu Xenial calling php7_module php7.0 2016-12-08 11:25:23 -05:00
Luca Berruti
2bbbf58156 ini_file: return more infos on changes. 2016-12-08 11:25:23 -05:00
Luca Berruti
6d8b140f46 ini_file: diff support. 2016-12-08 11:25:23 -05:00
Luca Berruti
73401182c1 ini_file: add create= option. 2016-12-08 11:25:23 -05:00
Luca Berruti
1a22dde1ac ini_file: fixes #1788, fails --check when file doesn't exist. 2016-12-08 11:25:23 -05:00
Brian Coca
fccaf883da refactor stat
make format function 'format only'
added platform dependant info, when it is available
avoid rechecking same info
added comments to each info gathering section

(cherry picked from commit a79acf73d7eb79b76d808ff8a1d6c505dfd9ec82)
2016-12-08 11:25:23 -05:00
Toshio Kuratomi
e2fce828f6 Order of return values was reversed 2016-12-08 11:25:23 -05:00
Toshio Kuratomi
9aac87e08c Fix builddep when a source package exists without a binary package
builddep only requires a source package to be in the repos but our code
was checking for a binary package before running buiddep.  Reversing the
order makes it work correctly.

Fixes #4519
2016-12-08 11:25:23 -05:00
Toshio Kuratomi
b8279e7447 Only change to short IDs for delete (#5353)
* Only change to short IDs for delete

If the user specifies long IDs, use them for all commands except for
deleting a key.  Need to use short IDs there because of an upstream
apt_key bug.  Fixed in apt_key 1.10 (fix is present in Ubuntu 16.04 but
not Ubuntu 14.0 or some Debians).

Fixes #5237

* Check that apt-key really erased the key

When erasing a key, apt-key does not understand how to process subkeys.
This update explicitly checks that the key_id is no longer present and
throws an error if it is.  It also hints at subkeys being a possible
problem in the error message and the documentation.

Fixes #5119

* Fix apt_key check mode with long ids

apt-key can be given a key id longer than 16 chars to more accurately
define what key to download.  However, we can use a maximum of 16
chars to verify whether a key is installed or not.  So we need to use
different lengths for the id depending on what we're doing with it.

Fixes #2622

Also:

* Some style cleanups
* Use get_bin_path to find the path to apt-key and then use that when
  invoking apt-key
* Return a nice user error message if the key was not found on the
  keyserver
* Make file and keyring parameters type='path' so envars and tilde are
  expanded
2016-12-08 11:25:23 -05:00
Charles Zaffery
4c830400f8 Remove line when 'state: absent' with 'option:' instead of commenting 2016-12-08 11:25:23 -05:00
Adrian Likins
29978344ea Make authorized_key preserve key order (#5339)
* Make authorized_key preserve key order

Track the ordering of keys in the original file (rank)
and try to preserve it when writing out updates.

Fixes #4780
2016-12-08 11:25:23 -05:00
Toshio Kuratomi
e7fcfa981e Remove the yaml dep from the git module 2016-12-08 11:25:23 -05:00
Toshio Kuratomi
fad760dc7a Fix git for py3
Comparing to the output of run_command() needs to use native strings

Also fix imports: We were relying on them coming from the import of
basic.  A few (like yaml) weren't imported at all.
2016-12-08 11:25:23 -05:00
Robin Roth
5446e6639f Fix git failure for use of depth with version (#5135)
* Fixes #5108
* before module fails with "fatal: A branch named 'STABLE' already
  exists." when depth is used on a fresh clone with a non-HEAD branch
2016-12-08 11:25:22 -05:00
René Moser
3dda38a90f doc: add_host: add example without deprecated vars (#5323)
ansible_ssh_* are deprecated since 2.0
2016-12-08 11:25:22 -05:00
John Baublitz
352b620665 GCE: Add support for 'number' parameter for manually provisioned Google Compute clusters (#4276)
* Add option for number parameter to generate manually provisioned clusters from a base name

* Refactor code to work with starting and stopped when number is specified

* Update docs

* Fix documentation error breaking Travis

* Fixes for async gce operations

* Fix documentation

* base_name from parameter to alias for name and fixes for renaming variables

* Fix breaking change on gce.py

* Fix bugs with name parameter

* Fix comments for Github build checks

* Add logic to set changed appropriately for cluster provisioning
2016-12-08 11:25:22 -05:00
Toshio Kuratomi
ff6bac126e On Ubuntu16, virtualenv always tries to use python2 even when python2 is not installed.
Workaround that by mimicing the upstream virtualenv behaviour in code
(use the python version that was used to invoke virtualenv/the ansible
module)
2016-12-08 11:25:22 -05:00
Toshio Kuratomi
9bbe71154c Fix authorized_key module to preserve the order of options
The last fix allowing multiple definitions of the same option key (for
permitopen support) introduced a set() which removed the guaranteed
ordering of the options.

This change restores ordering.  The change is larger than simply
removing the set because we do need to handle the non-dict semantics
around keys not being unique in the data structure.  The new code make
use of __setitem__() and items() to do its work.  Trying to use
getitem() or keys() should be looked upon with suspicion as neither of
those follow dictionary semantics and it is quite possible the coder
doesn't realize this.  The next time we need to touch or enhance the
keydict code it should probably be rewritten to not pretend to extend
the dictionary interface.
2016-12-08 11:25:22 -05:00
Matthew Jones
107a473dd8 Add separate checkout and update parameters (#5306)
* Add separate checkout and update parameters

This brings the svn module in line with the git module for controlling
individual update and checkout functionality based on whether the
directory exists or not.

It also allows specifying `no` for both to pull the remote revision
without performing a checkout

* Update version-added for new parameters
2016-12-08 11:25:22 -05:00
Matthew Jones
97bf5b84e3 Add separate clone parameter (#5307)
* Add separate clone parameter

This brings the hg module in line with the git module for controlling
individual update and checkout functionality based on whether the
directory exists or not.

It also allows specifying `no` for both to pull the remote revision
without performing a checkout

* Reflect the right added ver for the hg clone arg
2016-12-08 11:25:22 -05:00
Ryan S. Brown
422ec08649 Remove unused YAML import from cloudformation 2016-12-08 11:25:22 -05:00
Ryan Brown
dfd57942f9 Support native YAML in CloudFormation module (#5327)
Support the new native YAML format in the CloudFormation API. This means
the existing `template_format` parameter is deprecated. This commit also
adds a warning for the deprecated parameter.
2016-12-08 11:25:22 -05:00
John R Barker
96f9992884 Typo in cleanup (#5322) 2016-12-08 11:25:22 -05:00
Filip Hubík
9a2d8337f2 Fix incorrect line wrapping in output from yum check-updates
https://github.com/ansible/ansible-modules-core/issues/4318#issuecomment-251416661
2016-12-08 11:25:22 -05:00
John R Barker
7a3d93b9f6 Run validate-modules from ansible/ansible@devel (#5257)
* Run validate-modules from devel

Use a clean dir for checkout

typo

Correct path

validate-modules requires mock and voluptuous==0.8.8

typo

Ensure script is running

Remove testing debug

Install Ansible only once

Install ansible and validate_modules requirements

Now that we no longer pip install Ansible we need to manually install
it's dependencies

Debug

Dependencies are listed in ansible/ansible

debug

submodules

typo

typo

working

* Matt's feedback

* Use mktemp to checkout and delete directory after running

* Single quotes
2016-12-08 11:25:22 -05:00
Daniel Andrei Minca
ca36d232d5 fix unclear documentation for docker container
the docker container module's `exposed_ports` was slightly ambigous.

Use the official Docker documentation to define what an `exposed port`
is.

Resolves: ansible/ansible-modules-core#5303
Signed-off-by: Daniel Andrei Minca <mandrei17@gmail.com>
2016-12-08 11:25:22 -05:00
Michael Scherer
ed590257a3 Fix code for python 3
Since dict.keys return a dictkeys under python 3, we hav to cast it
to a list to avoid traceback:

    Traceback (most recent call last):
      File "/tmp/ansible_sh16ejbd/ansible_module_authorized_key.py", line 496, in <module>
        main()
      File "/tmp/ansible_sh16ejbd/ansible_module_authorized_key.py", line 490, in main
        results = enforce_state(module, module.params)
      File "/tmp/ansible_sh16ejbd/ansible_module_authorized_key.py", line 410, in enforce_state
        parsed_new_key = parsekey(module, new_key)
      File "/tmp/ansible_sh16ejbd/ansible_module_authorized_key.py", line 308, in parsekey
        options = parseoptions(module, options)
      File "/tmp/ansible_sh16ejbd/ansible_module_authorized_key.py", line 259, in parseoptions
        options_dict[key] = value
      File "/tmp/ansible_sh16ejbd/ansible_module_authorized_key.py", line 164, in __setitem__
        self.itemlist.append(key)
    AttributeError: 'dict_keys' object has no attribute 'append'

Yet another fix for https://github.com/ansible/ansible/pull/18053
2016-12-08 11:25:22 -05:00
Michael Scherer
e6b3c0d88a cleanup import for htpassword module
In order to ease future refactoring, we should avoid importing
'*' from ansible.module_utils.basic.
2016-12-08 11:25:22 -05:00
Michael Scherer
2c078dcb97 Cleanup import for authorized_key
Do not import '*', to ease future refactoring and cleanup of
module_utils.
2016-12-08 11:25:21 -05:00
Ryan S. Brown
08b119df33 Fix cloudformation module return parameter documentation
Always return stack outputs, even if only an empty dict
2016-12-08 11:25:21 -05:00
tedder
d01bfa6a72 Cloudformation module fix unintentional changed=true
- Don't rewrite the result; this is causing 'changed=true' on update
- Move AWSRetry import to top since it's a decorator, and is needed at definition-time
2016-12-08 11:25:21 -05:00
tedder
763399830d Boto3 rewrite of cloudformation module
- removed star-imports, which wasn't possible in Ansible 1.x
- boto doesn't have any of the modern features (most notably, changesets), so this rewrite goes all-in on boto3.
- tags are updateable, at least in boto3. Fix documentation.
- staying with "ansible yaml to json conversion" because I'm trying to keep this scoped properly. The next PR will have AWS-native yaml support.
- documented the output. Tried to leave it backwards-compatible but the changes to 'events' might break someone's flow. However, the existing data wasn't terribly useful so I don't assume it will hurt.
- split up the code into functions. This should make unit testing possible.
- added forward-facing code: 'six' for iterating, started using AWSRetry, common tag conversion.
- add todo list
- Pass `exception` parameter to fail_json
2016-12-08 11:25:21 -05:00
Michael Scherer
3f43879db8 Cleanup imports of xattr
Since the module use re and os, we need to import them.
And rather than importing '*', we should limit to the
only object/function needed, so we can more easily refactor
later.
2016-12-08 11:25:21 -05:00
Dag Wieers
858d02ac4c Ensure yum failures in with-loop result into a failed task
The implementation is fairly simple, we force the rc= parameter to not be zero so that the check in _executor/task_result.py_ correctly determines that it failed. Without this change Ansible would report the task to be ok (despite failed=True and msg=Some_error_message) although Ansible stops and the summary output reports a failed task.

This fixes #4214, #4384 and also relates to ansible/ansible#12070, ansible/ansible#16006, ansible/ansible##16597, ansible/ansible#17208 and ansible/ansible#17252
2016-12-08 11:25:21 -05:00
Jamie Evans
606ac78a20 verify both tags and commits (#2654)
This fixes a bug where the module fails to verify tags.  I added a conditional statement in `verify_commit_sign()` that checks if `version` argument is a tag, if so, use `git verify-tag` instead.
2016-12-08 11:25:21 -05:00
Brian Coca
720574ef77 added allow_duplicates to include_role docs 2016-12-08 11:25:21 -05:00
Michael Scherer
9ecd220683 Make the code run on python 3
Test suite block on:

    Traceback (most recent call last):
      File "/tmp/ansible_fhootp1e/ansible_module_authorized_key.py", line 496, in <module>
        main()
      File "/tmp/ansible_fhootp1e/ansible_module_authorized_key.py", line 490, in main
        results = enforce_state(module, module.params)
      File "/tmp/ansible_fhootp1e/ansible_module_authorized_key.py", line 410, in enforce_state
        parsed_new_key = parsekey(module, new_key)
      File "/tmp/ansible_fhootp1e/ansible_module_authorized_key.py", line 308, in parsekey
        options = parseoptions(module, options)
      File "/tmp/ansible_fhootp1e/ansible_module_authorized_key.py", line 253, in parseoptions
        if options_dict.has_key(key):
    AttributeError: 'keydict' object has no attribute 'has_key'

With keydict being a subclass of dict.
2016-12-08 11:25:21 -05:00