Commit graph

8990 commits

Author SHA1 Message Date
Brian Coca
322518d06c stat doc fix fixes #1371 2016-12-08 11:23:02 -05:00
Robin Miller
a2f685a134 Replaced lambda functions with list comprehensions. 2016-12-08 11:23:02 -05:00
whiter
d252e7c08f Fix for issue #1332 - when instance is has finished deleting and get_db_instance returns None, exit gracefully 2016-12-08 11:23:01 -05:00
Robin Miller
8859a7cf8e Only revoke actually granted permissions, not 'ALL'.
This prevents errors when the login_user does not have 'ALL'
permissions, and the 'priv' value contains fewer permissions than are
held by an existing user. This is particularly an issue when using an
Amazon Web Services RDS instance, as there is no (accessible) user with
'ALL' permissions on *.*.
2016-12-08 11:23:01 -05:00
Brian Coca
7ccc2143fd sleep when only doing a time delay to avoid cpu churn 2016-12-08 11:23:01 -05:00
fdupoux
e34c7f31dc Refactoring to avoid duplication of code which manages the decompression of database dumps in various formats 2016-12-08 11:23:01 -05:00
fdupoux
9b83311471 Simplify code which prepares the decompression command 2016-12-08 11:23:01 -05:00
Toshio Kuratomi
dd4838e4aa Refactor dump compression and use get_bin_path for finding the compressors 2016-12-08 11:23:01 -05:00
fdupoux
aa79810cc8 Decompress mysql dumps on the fly using python subprocess during an import to simplify operation 2016-12-08 11:23:01 -05:00
Wang Qiang
86b6f39cf0 Do instance update after add tags to instance. 2016-12-08 11:23:01 -05:00
Jonathan Mainguy
20301427f8 fixes check mode for Ubuntu 14.04 2016-12-08 11:23:01 -05:00
James Cammarata
3e72a0657d Re-reverting windows modules PR #384 2016-12-08 11:23:01 -05:00
Vladislav Lewin
36ce019beb add SLE12 support to hostname.py 2016-12-08 11:23:01 -05:00
marko
de813195c5 Added support for foreign security groups (Fixes: #373) 2016-12-08 11:23:01 -05:00
Jesse Keating
96b03ce138 Add an openstack servers actions module
This module supports a few of the server actions that are easy to
initially impiment. Other actions require input and provide return
values in the API calls that will be more difficult to impliment, and
thus are not part of this initial commit.
2016-12-08 11:23:01 -05:00
Vasyl Kaigorodov
70235a930b Fix "_is_package_installed() takes exactly 4 arguments, 3 provided" error 2016-12-08 11:23:01 -05:00
Schlueter
b3be960d24 Add 'version_added' to state documentation for easy_install resource 2016-12-08 11:23:01 -05:00
Schlueter
9e8ce34031 Correct reference to gem in easy_install resource 2016-12-08 11:23:01 -05:00
Schlueter
58863d3b48 Add Documentation 2016-12-08 11:23:01 -05:00
Schlueter
1fc687b19d Use standard if statement to check state in easy_install resource 2016-12-08 11:23:00 -05:00
Schlueter
1ddf4c2368 Correct pass by object reference issue 2016-12-08 11:23:00 -05:00
Jonathan Mainguy
b25bc20d3d changes hostname to lowercase 2016-12-08 11:23:00 -05:00
Jonathan Mainguy
ce4c9cccf5 fixes example documenation 2016-12-08 11:23:00 -05:00
Zoltan Kozma
1a6b273a4f - Fixed annoying bug that disablerepo was essentially broken if a package needed updating by state latest. - Replaced some unsafe practice with default parameters. However looking at the code this does not seem to matter much as the calling functions always seem to supply these parameters anyway. 2016-12-08 11:23:00 -05:00
Schlueter
e198884280 Add state to easy_install 2016-12-08 11:23:00 -05:00
Jonathan Mainguy
06cd532cc5 added nice error for systemd hosts where name > 64 chars 2016-12-08 11:23:00 -05:00
Semyon Deviatkin
732b26ab23 Fix issue #1230
When virtual package providing only one package, look up status of target package
2016-12-08 11:23:00 -05:00
Toshio Kuratomi
9eac68b417 Fix problem writing binary content to a temporary file in the uri module.
Fixes https://github.com/ansible/ansible/issues/10938
Fixes https://github.com/ansible/ansible/issues/7606
2016-12-08 11:23:00 -05:00
Monty Taylor
eeacb7486d Add OpenStack Network module
Also, deprecate the old quantum network module
2016-12-08 11:23:00 -05:00
Toshio Kuratomi
84110be91d Update the cron docs to specify that it takes a boolean value 2016-12-08 11:23:00 -05:00
Toshio Kuratomi
623f70ecd6 Fix documentation of the variable that backup file name is returned in 2016-12-08 11:23:00 -05:00
Greg Taylor
79dd0466b5 Adding directory creation example to file module. 2016-12-08 11:23:00 -05:00
Brian Coca
b4775234c9 minor docfix 2016-12-08 11:23:00 -05:00
Brian Coca
831af880f0 minor doc fix and made sure check_implicit_admin is true boolean 2016-12-08 11:23:00 -05:00
Toshio Kuratomi
5c96c5c9c2 Fix splitting of role_attrs 2016-12-08 11:23:00 -05:00
Toshio Kuratomi
7e5a4afb6b Update module "imports" to new style
Fixes #1351
2016-12-08 11:23:00 -05:00
Brian Coca
b13fd5ac9a value should be string as that is what it compares against 2016-12-08 11:22:59 -05:00
Pierre Baillet
eba0f12769 Support optional dockerfile name 2016-12-08 11:22:59 -05:00
Jonathan Mainguy
f4b07b105b added openbsd to hostname module 2016-12-08 11:22:59 -05:00
Toshio Kuratomi
20d7f929be Fix use of codecs.escape_decode() 2016-12-08 11:22:59 -05:00
Toshio Kuratomi
5204e94bda Slightly more future-proof version of the lineinfile fix 2016-12-08 11:22:59 -05:00
Toshio Kuratomi
1002fafedf Correct lineinfile documentation about double quoting... Hasn't been the case for years. 2016-12-08 11:22:59 -05:00
Semyon Deviatkin
e94140e52b Fix unused variable systemd_enabled
Removed declared but unused variable systemd_enabled
2016-12-08 11:22:59 -05:00
Benno Joy
d24fbf5c3e fixe issue #600, where ec2 module returns instance state as runing even after instance is terminated 2016-12-08 11:22:59 -05:00
fdupoux
6f2f07ef51 Add support for xz compression (for dump and import) in mysql_db module 2016-12-08 11:22:59 -05:00
Brian Coca
18e16a16b7 fixed try/except/finally to be 2.4 compatible 2016-12-08 11:22:59 -05:00
whiter
0eb17142b5 Added postgresql-license type 2016-12-08 11:22:59 -05:00
Jason Paige
329266975b update flat description
default behavior is to append the `hostname/path/to/file`, not prepend as currently stated by the flat arg docs
2016-12-08 11:22:59 -05:00
zimbatm
933256fc63 ec2_group: prioritise current VPC group names over others 2016-12-08 11:22:59 -05:00
zimbatm
c3e720a393 ec2_group: select own group if the name matches
This fixes an issue where multiple VPC have the same group name and
the one from the other VPC is selected.
2016-12-08 11:22:58 -05:00
Martin Froehlich
8bff781a0a Use get_aws_connection_info to get AWS creds.
Previously used get_ec2_creds did not consider security_token,
making MFA requests fail.
2016-12-08 11:22:58 -05:00
Brian Coca
831e1d8739 added updated cache time to apt, also started documenting return values 2016-12-08 11:22:58 -05:00
Jesse Keating
17aabee6df Add service option to avoid failure on missing service
This adds a must_exist option to the service module, which gives callers the
ability to be tolerant to services that do not exist. This allows for
opportunistic manipulation of a list of services if they happen to exist on the
host. While failed_when could be used, it's difficult to track all the
different error strings that might come from various service tools regarding a
missing service.
2016-12-08 11:22:58 -05:00
Jan Brauer
af689dece3 Handle the case where a stack rollback fails. 2016-12-08 11:22:58 -05:00
Matt Schurenko
ef140a084a adding stickiness support to ec2_elb_lb.py
removing policy if enabled is no

adding sanity checks

removing debuging

check if policy exists before deleting

updating version_added to 2.0

adding stickiness support to ec2_elb_lb.py (squashed commit)
2016-12-08 11:22:58 -05:00
Jell
2e007167b9 Find or Create volume by name 2016-12-08 11:22:58 -05:00
Toshio Kuratomi
5336217649 Several cleanups to many modules:
* Fix docs to specify when python2.6+ is required (due to a library
  dep).  This helps us know when it is okay to use python2.6+ syntax in
  the file.
* remove BabyJson returns.  See #1211  This commit fixes all but the
  openstack modules.
* Use if __name__ == '__main__' to only run the main part of the module
  if the module is run as a program.  This allows for the potential to
  unittest the code later.
2016-12-08 11:22:58 -05:00
Brian Coca
0567404c03 generic fix for Exceptions that heppen when trying to set permissions on extracted files fixes ansible/ansible#10934 which is really a corner case 2016-12-08 11:22:58 -05:00
Nathaniel
935550d20d Update set_fact.py
Context: I recently discovered that when setting a fact, key=value pairs and complex arguments differ in how the fact is stored. For example, when attempting to use complex arguments using key=values, the result can be stored as a unicode string as opposed to an object/list/etc.

I'm hoping the above example update will better demonstrate to and instruct people to use complex arguments instead of key=value pairs in certain situations.
2016-12-08 11:22:58 -05:00
Matt Martz
65508bb21a Python2.4 fixes
* Ignore accelerate.py
* Don't use a lambda or a ternary
2016-12-08 11:22:58 -05:00
macbeth76
fce97365a4 Update user.py
M in date format is minutes. m is for months.
2016-12-08 11:22:58 -05:00
Chris Lundquist
7b4107a169 fix ami_search doc copy pasta 2016-12-08 11:22:58 -05:00
Toshio Kuratomi
dd02483b26 Explain why the apt module does not do implicit regex matches on package name since this is different than the apt-get command line tool.
Fixes #1258
2016-12-08 11:22:58 -05:00
Dominic Hargreaves
535f0e9b11 apt_key documentation: add a note explaining the benefit of including 'id' 2016-12-08 11:22:58 -05:00
Benno Joy
fc1ad5e1f1 fixes issue 122, where the module recreates the route table in each run 2016-12-08 11:22:58 -05:00
Ratnadeep Debnath
a99d7da0c1 Fixed typo in cloud docker module. 2016-12-08 11:22:57 -05:00
Toshio Kuratomi
5844a04061 Fix documentation formatting 2016-12-08 11:22:57 -05:00
Bret Martin
b2453bf9a3 ec2_vpc module: add route table resource tagging 2016-12-08 11:22:57 -05:00
Jonathan Mainguy
f662a48de7 Adds the exclude= option to the yum module. Works the same way --exclude does when yum install or yum update 2016-12-08 11:22:57 -05:00
Herby Gillot
6a39dc891a Use existing ec2_eip address if already associated
If an EC2 instance is already associated with an EIP address, we use
that, rather than allocating a new EIP address and associating it with
that.

Fixes #35.
2016-12-08 11:22:57 -05:00
louis
9d20a3091e added skeleton support in user module 2016-12-08 11:22:57 -05:00
(@cewood)
17b5d851f2 Support specifying cidr_ip as a list
Update/fix to Support specifying cidr_ip as a list

Unicode isn't compatible with python2, so we needed some other
solution to this problem. The simplest approach is if the ip item
isn't already a list, simply convert it to one, and we're done.
Thanks to @mspiegle for this suggestion.
2016-12-08 11:22:57 -05:00
Jonathan Mainguy
1ba2e34ae1 Adds all_databases option which allows a user to dump or import all databases at once, identical to mysqldump --all-databases
fix line 132

Update to name=all

cleaned up all_database per abadger's suggestions
2016-12-08 11:22:57 -05:00
Sam Doiron
a3ec0a1562 Fix Issue #1216 (ValueError with Amazon RDS)
Fix typo where wrong variable was used, causing ValueError.
2016-12-08 11:22:57 -05:00
Alex Feinberg
1ac9c20b6e Fix a typo in create_instances
Fix a typo in create_instances: use 'placement_group' instead of placement_group
when calling boto_siupports_param_in_spot_request().
2016-12-08 11:22:57 -05:00
Brian Coca
fb527955c9 added deprecated doc entry 2016-12-08 11:22:57 -05:00
James Cammarata
d7ce6b0d4b Fix bug in service where upstart services incorrectly use init scripts
Fixes #1170
2016-12-08 11:22:57 -05:00
Toshio Kuratomi
c2bf2c7c54 Fix error when container has no names.
Rename loop variable from "i" to more informative "container"

Fixes #1188
2016-12-08 11:22:57 -05:00
David Shrewsbury
dd6b153700 Update os_server for shade flavor API changes
Latest shade fixes the flavor API so that raw objects are not
returned.
2016-12-08 11:22:57 -05:00
Chris Meyers
cec3c8c209 better timeout logic when deleting vm disks. Python 2.4 safe excepts 2016-12-08 11:22:57 -05:00
Chris Meyers
cdcaa2d6a0 correctly delete disks associated with vms 2016-12-08 11:22:57 -05:00
Will Thames
9aff204f63 Usage is not a valid database or table privilege
Remove `USAGE` from the `VALID_PRIVS` dict for both database and
table because it is not a valid privilege for either (and
breaks the implementation of `has_table_privilege` and
`has_database_privilege`

See http://www.postgresql.org/docs/9.0/static/sql-grant.html
2016-12-08 11:22:57 -05:00
Will Thames
43bad27948 Update postgresql users only when necessary
For read-only databases, users should not change when no changes
are required.

Don't issue ALTER ROLE when role attribute flags, users password
or expiry time is not changing.

In certain cases (hashed passwords in the DB, but the password
argument is not hashed) passlib.hash is required to avoid
running ALTER ROLE.
2016-12-08 11:22:56 -05:00
Monty Taylor
78daf52994 Add OpenStack Server module
Also deprecated old nova_compute module
2016-12-08 11:22:56 -05:00
Ryan Hartkopf
118382ca70 synchronize: don't add ssh_args to ssh_opts when false or null 2016-12-08 11:22:56 -05:00
Brian Coca
2e9462aa21 minor doc fixes, set version added for new tags: parameter should Fix #10894 2016-12-08 11:22:56 -05:00
Toshio Kuratomi
8bc34613bc Second try at fixing #1227 -- set e default value earlier 2016-12-08 11:22:56 -05:00
Toshio Kuratomi
030858df67 Return empty list if an image has no repo_tags 2016-12-08 11:22:56 -05:00
Julia Kreger
6f7cd5c307 Set default for mysql_user config_file
The default value set by the module was a value of None for the
config_file parameter, which propogates into the connect method
call overriding the stated default in the method.

Instead, the default should be set with-in the parameter
specification so the file check is not requested to check None.
2016-12-08 11:22:56 -05:00
Toshio Kuratomi
0d468a3aa0 Get docker's default api version definition from both 1.2 location and pre-1.2 location
Fixes #1227
2016-12-08 11:22:56 -05:00
Brian Coca
018b0118dc removed deprecated docs, not true anymore 2016-12-08 11:22:56 -05:00
Toshio Kuratomi
4592b795d9 Only split on the first colon.
Fixes #1214
2016-12-08 11:22:56 -05:00
Brian Coca
b5b34f6931 removed unused and undefined aws_regions 2016-12-08 11:22:56 -05:00
Evgenii Terechkov
37d6c10133 Add ALT Linux support to hostname module 2016-12-08 11:22:56 -05:00
Brian Coca
953ed0aecc avoid exception when boto is not available 2016-12-08 11:22:56 -05:00
Brian Coca
5e892b894b removed redundant region def 2016-12-08 11:22:56 -05:00
David Shrewsbury
c29ae705f0 Update os_server_volume for latest shade
The shade volume API was updated to return a dict rather than the
object as returned by cinder.
2016-12-08 11:22:56 -05:00
David Shrewsbury
4ea6bded61 Update os_volume for latest shade
The shade volume API was updated to return a dict rather than the
object as returned by cinder.
2016-12-08 11:22:56 -05:00
Sven Schliesing
90d434d66d use default value for parameter config_file in connect() 2016-12-08 11:22:55 -05:00
mcameron
dcb8fa0cb9 Net_id already present, remove unnecessary lookup. 2016-12-08 11:22:55 -05:00
mcameron
1cc057ca97 Valodate fip is on the correct network 2016-12-08 11:22:55 -05:00
mcameron
9f30125876 Adding openstack multiregion support 2016-12-08 11:22:55 -05:00
David Shrewsbury
4699e5b905 Recognize when volume attach/detach is not necessary
Do not attempt to attach an already attached volume.
Likewise, do not attempt to detach a volume that is not
attached.

This version adds support for check mode.
2016-12-08 11:22:55 -05:00
Heikki Partanen
ec566d86b3 Add support for extra_hosts to docker module
extra_hosts parameter (maps to --add-host in 'docker run' syntax) is used
to add host-to-ip mappings to the container.
2016-12-08 11:22:55 -05:00
Matt Martz
1ceaa78dc0 Add version_added for the use_ssh_args option 2016-12-08 11:22:55 -05:00
Matt Martz
4faf0d59da Add ability to specify using ssh_args in synchronize 2016-12-08 11:22:55 -05:00
Monty Taylor
63a0c0999a Add OpenStack Volume module 2016-12-08 11:22:55 -05:00
Monty Taylor
15013cde32 Add OpenStack Server facts module 2016-12-08 11:22:55 -05:00
Monty Taylor
522a28b75c Add OpenStack Server Volume module 2016-12-08 11:22:55 -05:00
muffl0n
62bc6f2ba6 Use MySQLdbs read_default_file 2016-12-08 11:22:55 -05:00
Bobby Calderwood
cd14b8115b Fixes regression introduced by edf1ac1ea6 2016-12-08 11:22:55 -05:00
Toshio Kuratomi
9133ae8c55 Allow yum module to take a yaml list of package names and also ", " separated string-list (in addition to comma separated string-list) 2016-12-08 11:22:55 -05:00
bw-will-usher
efd2cc6089 Fixed MS SQL port number in documentation (1443->1433) per: https://support.microsoft.com/en-us/kb/287932 2016-12-08 11:22:55 -05:00
Romain Dartigues
cf86c9b29f Issue #1161 DigitalOcean API 2 ssh_key_ids problem
* fix documentation: show a valid syntax
* make ssh_key_ids a list and not a string
2016-12-08 11:22:55 -05:00
Michael Scherer
f7707ea137 Name is a required parameter, fix https://github.com/ansible/ansible/issues/10335 2016-12-08 11:22:55 -05:00
Brian Coca
88e3c19e9a added new ec2_ami_find as per #905 2016-12-08 11:22:54 -05:00
Brian Coca
2733705a19 deprecated ec2_ami_search 2016-12-08 11:22:54 -05:00
sisso
17a409f20d fixed bug where scaling policy return a random policy if many autoscale group have policies with same name. 2016-12-08 11:22:54 -05:00
Toshio Kuratomi
1ddae11bd1 Implement feature to return list of files in the archive 2016-12-08 11:22:54 -05:00
Brian Coca
9dc1f5693c updated content description to discourage using as a tempalte module 2016-12-08 11:22:54 -05:00
Toshio Kuratomi
02b8e17f61 Tar --diff only sends output to stderr if a file is missing. Handle that case
Fixes #1064
2016-12-08 11:22:54 -05:00
James Cammarata
5a0a9d9f72 Add version_added string to new org_id param in rhn_subscription 2016-12-08 11:22:54 -05:00
Brian Coca
a6107e35e9 simplified bad if chain hopefully fixes #1136 2016-12-08 11:22:54 -05:00
Keith Johnson
06579c560e Make link clickable 2016-12-08 11:22:54 -05:00
bugchecker
b7b6367ad5 prevent using undefined variable 2016-12-08 11:22:54 -05:00
Jan Brauer
31abdc7ace Add missing comma 2016-12-08 11:22:54 -05:00
Brian Coca
b6e3ddba9a ifxed error message as code remove the repo r var 2016-12-08 11:22:54 -05:00
Schmitt Christian
cc71372182 Removed the wrong Note
Currently as already in the description, this module works with proxy settings.
2016-12-08 11:22:54 -05:00
Daekwon Kim
a22bdd8356 Fix indent of "register" key 2016-12-08 11:22:54 -05:00
Daekwon Kim
4591761c73 Fix typo (volue -> volume) 2016-12-08 11:22:54 -05:00
Brian Coca
00a327bdaa added docs to show wait_for default timeout settings
Fixes #400
2016-12-08 11:22:54 -05:00
Brian Coca
3f325408df find module updated to be able to get checksums and stat data, also now it only stats a file once so it should be quite faster on large file sets 2016-12-08 11:22:53 -05:00
David Wittman
be0d28a4ac Set disabled repos before enabled repos
The ordering of disabling/enabling yum repositories matters, and
the yum module was mixing and matching the order. Specifically,
when yum-utils isn't installed, the codepath which uses the yum
python module was incorrectly ordering enabling and disabling.

The preferred order is to disable repositories and then enable them
to prevent clobbering. This was previously discussed in
ansible/ansible#5255 and incompletely addressed in 0cca4a3.
2016-12-08 11:22:53 -05:00
Jaanus Torp
0f0cb9dc16 Added support for tagging images in ec2_ami.py 2016-12-08 11:22:53 -05:00
Niels de Vos
ca9fd7e136 redhat_subscription: add the org_id parameter
When subscribing a system with an activationkey, it seems (sometimes?)
required to pass the "--org <number>" parameter to subscription-manager.
Activation Keys can be created through the Red Hat Customer Portal, and
a subscription can be attached to those. This makes is easy to register
systems without passing username/passwords around.

The organisation ID can be retrieved by executing the following command
on a registered system (*not* the account number):

  # subscription-manager identity

URL: https://access.redhat.com/management/activation_keys
Signed-off-by: Niels de Vos <ndevos@redhat.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2016-12-08 11:22:53 -05:00
Michael Scherer
1559bccdb3 Remove unused option in the repoquery call
Citing the man page:
       -q, --query
              For rpmquery compatibility, doesn't do anything.
2016-12-08 11:22:53 -05:00
Andrey Trubachev
ac5b0ca59b Fix mess of ipv6 and ipv4 addresses in private_ip 2016-12-08 11:22:53 -05:00
James Cammarata
68a07a2bb5 Merge branch 'osx_user_fix' of https://github.com/bambou42/ansible-modules-core into bambou42-osx_user_fix
Includes commits for:
* Don't return change if the password is not set
* Set the group to nogroup if none is specified
* Set an uid if none is specified
* Test if SHADOWFILE is set (for Darwin)
* remove unused uid
2016-12-08 11:22:53 -05:00
Kyle Johnson
cf61778689 Fix typo in rds_subnet_group.py
aws_connection_kwargs should be aws_connect_kwargs
2016-12-08 11:22:53 -05:00
Matt Martz
0b4fec0a06 Don't use a dict comprehension, be more verbose 2016-12-08 11:22:53 -05:00
Brian Coca
a014bde3f0 switched to use python's built in os.separator vs using / 2016-12-08 11:22:53 -05:00
Brian Coca
7f618bd787 minor docfixes 2016-12-08 11:22:53 -05:00
Ken Dreyer
46372842e8 redhat_subscription: fix activationkeys argument
Prior to this commit, Ansible would pass '--activationkeys <value>' as a
literal string, which the remote server would interpret as a single
argument to subscription-manager.

This led to the following failure message when using an activation key:

  subscription-manager: error: no such option: --activationkey "mykey"

Update the arguments so that the remote server will properly interpret
them as two separate values.
2016-12-08 11:22:53 -05:00
Monty Taylor
0283791d5f Add OpenStack Auth module
Use this to pre-auth or to get a copy of the service catalog.
2016-12-08 11:22:53 -05:00
Jesse Rusak
9d93f052c2 Update rds module for RDS2 parameter name change.
boto's rds2 renamed `vpc_security_groups` to `vpc_security_group_ids`
and changed from a list of `VPCSecurityGroupMembership` to just a
list of ids. This accommodates that change when rds2 is being used.
2016-12-08 11:22:53 -05:00
steenzout
67f769d9a6 issue #994: use HAS_BOTO to determine if import was successful: - removed import of sys module. - HAS_BOTO constant to check if import was successful. - trigger a failure when import fails. - removed unnecessary imports. 2016-12-08 11:22:53 -05:00
Richard Tier
0a48d54c1c added version to docstring 2016-12-08 11:22:53 -05:00
Monty Taylor
ea809efe7b Revert "Add OpenStack Router Gateway module" 2016-12-08 11:22:52 -05:00
Monty Taylor
c4db70a133 Add OpenStack Router Gateway module
Also deprecate old quantum_router_gateway module
2016-12-08 11:22:52 -05:00
Ash Wilson
c6b0656c1c Record facts for each changed container. 2016-12-08 11:22:52 -05:00
Brian Coca
7985682c94 added support for postgres9.4 which is now available from amazon 2016-12-08 11:22:52 -05:00
Brian Coca
706db441b4 really fixed docs this time 2016-12-08 11:22:52 -05:00
Brian Coca
2dafff3f97 fixed doc issues on cloudformation 2016-12-08 11:22:52 -05:00
tedder
9fd568f655 code review fixes per #957 2016-12-08 11:22:52 -05:00
Richard Tier
0c1624f9b7 allow setting header 2016-12-08 11:22:52 -05:00
Tor Åke Fransson
459fd81435 Remove all reference to obsolete client_id and rename api_key to the for v2 more correct api_token 2016-12-08 11:22:52 -05:00
Tor Åke Fransson
02883a460b Make digital_ocean ssh command use API v2 2016-12-08 11:22:52 -05:00
David Wittman
15235a718d Fix bug with upstart detection
Upstart scripts are being incorrectly identified as SysV init scripts
due to a logic error in the `service` module.

Because upstart uses multiple commands (`/sbin/start`, `/sbin/stop`,
etc.) for managing service state, the codepath for upstart sets
`self.svc_cmd` to an empty string on line 451.

Empty strings are considered a non-truthy value in Python, so
conditionals which are checking the state of `self.svc_cmd` should
explicitly compare it to `None` to avoid overlooking the fact that
the service may be controlled by an upstart script.
2016-12-08 11:22:52 -05:00
Tor Åke Fransson
5faa882138 WIP: DigitalOcean API version 2 with user_data option 2016-12-08 11:22:52 -05:00
tedder
35ce9fb095 skip password changes so pg_authid isn't needed
Some places ([AWS RDS](https://forums.aws.amazon.com/thread.jspa?threadID=151248)) don't have, or don't allow, access to the `pg_authid` table. The only reason that is necessary is to check for a password change.

This flag is a workaround so passwords can only be set at creation time. It isn't as elegant as changing the password down the line, but it fixes the longstanding issue #297 that prevented this from being useful on AWS RDS.
2016-12-08 11:22:52 -05:00
Solomon Gifford
d14bbf514e mysql_user #829: add update_password to mysql_user 2016-12-08 11:22:52 -05:00
Richard Lander
2091278ff0 azure check for hosted service and vm before creating 2016-12-08 11:22:52 -05:00
Rob Johnson
d8af3f3b67 allow both template and template_url parameters 2016-12-08 11:22:52 -05:00
Sébastien Bocahu
f88f895795 Removes YAML body_format option
It would require adding a dependency to the YAML module while it might
not provide much benefit (has anybody seen a HTTP API taking YAML as
input ?)
2016-12-08 11:22:51 -05:00
Mick Bass
5de4c053b6 clean rebase of https://github.com/ansible/ansible-modules-core/pull/1024 on a new branch 2016-12-08 11:22:51 -05:00
Brian Coca
4f7bc895d2 removed requirements/boto as it broke documentation as it is duplicated in shared aws fragements 2016-12-08 11:22:51 -05:00
Florian Apolloner
a925a075a6 Added os.path.expanduser to app_path in django_manage 2016-12-08 11:22:51 -05:00
Florian Apolloner
f07096bfe5 Added os.path.expanduser when searching for pip executable. 2016-12-08 11:22:51 -05:00
Adam Chainz
21339664ce Make cloudformation module's template argument not required in case of stack deletion 2016-12-08 11:22:51 -05:00
Jonathan Davila
de85294d2d allow boto profile use with s3 2016-12-08 11:22:51 -05:00
Sébastien Bocahu
4af3b60167 Add body_format for handling of JSON and YAML body
body_format is a new optional argument that enables handling of JSON or
YAML serialization format for the body argument.
When set to either 'json' or 'yaml', the body argument can be a dict or list.
The body will be encoded, and the Content-Type HTTP header will be set,
accordingly to the body_format argument.

Example:

- name: Facette - Create memory graph
  uri:
    method: POST
    url: http://facette/api/v1/library/graphs
    status_code: 201
    body_format: json
    body:
      name: "{{ ansible_fqdn }} - Memory usage"
      attributes:
        Source": "{{ ansible_fqdn }}"
        link: "1947a490-8ac6-4bf2-47c1-ff74272f8b32"
2016-12-08 11:22:51 -05:00
Lorin Hochstein
5224375a5a Use the correct alias syntax 2016-12-08 11:22:51 -05:00
Lorin Hochstein
17e6be671b ec2 module: add instance_id alias
Create an alias named instance_id for the instance_ids parameter.
2016-12-08 11:22:51 -05:00
Robert Estelle
268763995c ec2_group allow empty rules. 2016-12-08 11:22:51 -05:00
Kohei YOSHIDA
f0db5c0cd0 support secure connection on fakes3 2016-12-08 11:22:51 -05:00
Ryan Trauntvein
eaa0ce0ceb Specify that "state: reloaded" was added in Ansible 1.9 2016-12-08 11:22:51 -05:00
Scott Miller
751434de9d describe choices in alias documentation 2016-12-08 11:22:51 -05:00
Mick Bass
9980205edc Add support for AWS Security Token Service (temporary credentials) to all AWS cloud modules. 2016-12-08 11:22:51 -05:00
Toshio Kuratomi
e710e46ff2 Make lack of boto call fail_json instead of sys.exit
Fixes #994
2016-12-08 11:22:51 -05:00
Brandon W Maister
c1571928e5 Make cache_subnet_group default to empty security groups
Since they can't be specified together, it seems like setting the
default to no security groups is the right option.
2016-12-08 11:22:51 -05:00
Tom Wadley
ad248376b1 use aws connect call in rds_subnet_group that allows boto profile use 2016-12-08 11:22:50 -05:00
Dan Abel
2250a95638 use simpler ec2_connect ec2 util call
This allows boto profile use
2016-12-08 11:22:50 -05:00
David Fritzsche
14720b54ac Add working status detection for pf on FreeBSD
The return code of "service pf onestatus" is usually zero on FreeBSD (tested with FreeBSD 10.0), even if pf is not running. So the service module always thinks that pf is running, even when it needs to be started.
2016-12-08 11:22:50 -05:00
Mick Bass
e9a0fad36b add retry with exponential backoff when we receive throttling error code from cloudformation 2016-12-08 11:22:50 -05:00
Brandon W Maister
cffb2bdee9 Add cache_subnet_group to elasticache module
According to the [docs] cache subnet groups are required inside a VPC.

[docs]: http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/CacheSubnetGroups.html
2016-12-08 11:22:50 -05:00
Brian Coca
7cd7bad2e8 added patch to workaround some s3 connection faliures 2016-12-08 11:22:50 -05:00
Brian Coca
252df8685a refactrored connection exception handling, added check to see if we actually get a connection before proceeding
Fixes #964
2016-12-08 11:22:50 -05:00
Toshio Kuratomi
a6643160c5 Fix stat code to return name of group owning the file rather than name of group that the file's owner belongs to.
Followup to #17
2016-12-08 11:22:50 -05:00
Ash Wilson
2dde45cea9 Only fetch details when necessary. 2016-12-08 11:22:50 -05:00
Ash Wilson
93b620ea8a Compare container images to Config.Image. 2016-12-08 11:22:50 -05:00
Sarah Zelechoski
17334b21ea fix syntax in last example 2016-12-08 11:22:50 -05:00
Sam Thursfield
5d2652f31b Fix authorized_key module crashing when given an invalid key
I tried a playbook with the following (accidentally wrong) task:

  tasks:
      - name: authorized key test
        authorized_key: key=/home/sam/.ssh/id_rsa.pub key_options='command="/foo/bar"' user=sam

I got the following traceback:

    TASK: [authorized key test] ***************************************************
    failed: [localhost] => {"failed": true, "parsed": false}
    Traceback (most recent call last):
    File "/home/sam/.ansible/tmp/ansible-tmp-1427110003.65-277897441194582/authorized_key", line 2515, in <module>
        main()
    File "/home/sam/.ansible/tmp/ansible-tmp-1427110003.65-277897441194582/authorized_key", line 460, in main
        results = enforce_state(module, module.params)
    File "/home/sam/.ansible/tmp/ansible-tmp-1427110003.65-277897441194582/authorized_key", line 385, in enforce_state
        parsed_new_key = (parsed_new_key[0], parsed_new_key[1], parsed_options, parsed_new_key[3])
    TypeError: 'NoneType' object has no attribute '__getitem__'

With this fix, I see the expected error instead:

    TASK: [authorized key test] ***************************************************
    failed: [localhost] => {"failed": true}
    msg: invalid key specified: /home/sam/.ssh/id_rsa.pub
2016-12-08 11:22:50 -05:00
Brian Coca
c04c84887e fix to return vals docs 2016-12-08 11:22:50 -05:00
James Martin
57cf6e8bb4 Re-wording of feature. 2016-12-08 11:22:50 -05:00
Toshio Kuratomi
e5149f3b30 Fix review comments from @bcoca in #745 2016-12-08 11:22:50 -05:00
Toshio Kuratomi
5378b5db98 Minor code formatting 2016-12-08 11:22:50 -05:00
Tim Rupp
db6c2bac75 Add missing import of apt.debfile
In cases when the python-apt package is not installed, ansible will
attempt to install it. After this attempt, it tries to import the
needed apt modules, but forgets to import the apt.debfile module.

The result is that playbooks that use the dpkg argument on a machine
that does not initially have the python-apt package available will
fail with the following error

AttributeError: 'module' object has no attribute 'debfile'

This patch adds the appropriate import to the apt module to ensure
that necessary libraries are available in cases when the dpkg argument
is being used on a system that does not initially have the python-apt
package installed
2016-12-08 11:22:50 -05:00
Rowan Wookey
04fcfdad2c Fixed group name not being passed to wait_for_new_instances when replacing instances
Fixed group_name not being passed to wait_for_elb
Minor code clean up
2016-12-08 11:22:49 -05:00
moe
bd09ebe5b4 Woops, make collect/delete loop more efficient. 2016-12-08 11:22:49 -05:00
moe
5e1e1a4dff Fixes #744.
The following cases work for me now:
- Create new ASG with tags
- Update tags on ASG (create/change/delete)

In short, the module should now work as expected
wrt tagging. The previous code did not work at all
with latest boto for me (serialization errors) and
the logic was buggy anyway; e.g. removed tags
would never get deleted from ec2.
2016-12-08 11:22:49 -05:00
James Martin
cadfd56304 check lb for instance healthy and some refactoring of rolling replace functions.
Optionally waiting for new instances to be in viable state on ASG creation/update.

Properly updating properties and terminating group.
2016-12-08 11:22:49 -05:00
Brian Coca
7f8094e977 undeprecated openstack modules as new ones are not making into release 2016-12-08 11:22:49 -05:00
moncho
0156188a54 Update docker.py
Fix typo that prevents use_tls 'encrypt' option from working properly.
2016-12-08 11:22:49 -05:00
Toshio Kuratomi
5262d768e0 Add another valid status from downloading images 2016-12-08 11:22:49 -05:00
nemunaire
7eebab43ae Convert tuple items to string before format 2016-12-08 11:22:49 -05:00
Robert Marsa
b7649cc5ca Added multiple allowed ranges. 2016-12-08 11:22:49 -05:00
Julien Syx
c676adde0b Fix the issue #931
Checking that the parameter doesn't exist. The old code had a bug when the parameter was 0.
2016-12-08 11:22:49 -05:00
Toshio Kuratomi
d5e3abc5d5 Some code cleanup (removed unused variables and imports) 2016-12-08 11:22:49 -05:00
Toshio Kuratomi
f892ca5b8f Also use DOCKER_TLS_VERIFY env var to turn on tls verification 2016-12-08 11:22:49 -05:00
Toshio Kuratomi
1bb98542d3 Fix a potential bug in docker pull 2016-12-08 11:22:49 -05:00
Toshio Kuratomi
0ad023a0ac When no use_tls is not specified and no tls parameters are given we need to not attempt tls. 2016-12-08 11:22:49 -05:00
Alex Rowley
eeb867daf0 cloud/amazon/s3: update documentation
update description to show that module can do more than just put files into s3
2016-12-08 11:22:48 -05:00
Toshio Kuratomi
2e93f8e9f7 Make state=running work for backwards compatibility with 1.8 2016-12-08 11:22:48 -05:00
Toshio Kuratomi
1946f05baf Fix lookup of parameter name to be pid instead of pid_mode 2016-12-08 11:22:48 -05:00
Toshio Kuratomi
09a0db1e1f Make pid_mode parameter do minimum docker-py/docker server version checks 2016-12-08 11:22:48 -05:00
Toshio Kuratomi
95df4bcbee Fix for problems found by @dguerri
* TLSConfig['verify'] has to be set to False if we're only encrypting the
  connection, not verifying the host.
* tls_hostname was not set if tls_ca_cert was not present

https://github.com/ansible/ansible-modules-core/pull/926#issuecomment-78573877
2016-12-08 11:22:48 -05:00
Toshio Kuratomi
7c261b3954 Implement comments from @smashwilson:
* if tls_ca_cert is set then use tls to verify the server
* take tls_hostname from the environment variable DOCKER_TLS_HOSTNAME
  if it's not specified in the playbook

https://github.com/ansible/ansible-modules-core/pull/926#issuecomment-78542210
2016-12-08 11:22:48 -05:00
Ian Babrou
3bfe9a7b50 fixed: global name 'e' is not defined 2016-12-08 11:22:48 -05:00
Toshio Kuratomi
3284359894 Alternative implementation of tls for docker
Alternative to #854
2016-12-08 11:22:48 -05:00
Toshio Kuratomi
c9b33d5de2 Fix for py2.6 (no dict comprehensions on py2.6) 2016-12-08 11:22:48 -05:00
Toshio Kuratomi
c9cc8d0b70 Initialize the value of vpc_id variable 2016-12-08 11:22:48 -05:00
Mario Loria
00613cd4f3 Setting the actual passno and dump defaults, and warning user of consequences in nulling
Using ansible 1.8.4, I found that these two options actually work slightly different than advertised.
2016-12-08 11:22:48 -05:00
Toshio Kuratomi
ba90eea165 Also don't fail if files are different and overwrite is false for uploads (this mimics copy and template).
Related to #489
2016-12-08 11:22:48 -05:00
Hagai Kariti
7d16ec283e Fix KeyError in public zones in route53 2016-12-08 11:22:48 -05:00
Toshio Kuratomi
a02641b4f3 Documentation style changes 2016-12-08 11:22:48 -05:00
James Bowes
0d3aed3e1f Fix C() formatting typo in file module 2016-12-08 11:22:48 -05:00
Matt Martz
bcd9f83521 Prevent an empty error message 2016-12-08 11:22:48 -05:00
Brian Coca
34dbd69e12 updated to keep same info as in extras repo 2016-12-08 11:22:47 -05:00
Ian Babrou
005d02b185 not triggering reload for links and not string env variables 2016-12-08 11:22:47 -05:00
Ash Wilson
7c4e8774d8 Use {0}, {1} style format indices for 2.6 compat 2016-12-08 11:22:47 -05:00
Ash Wilson
ff0d0ceb70 Expect module env vars to override Dockerfile ones. 2016-12-08 11:22:47 -05:00
Ash Wilson
4e7d766e8f Include bind mounts in VOLUMES check. 2016-12-08 11:22:47 -05:00
Ash Wilson
959d135b60 Exposed ports, env vars, volumes from the image.
This will account for settings that are provided by the hierarchy of
Dockerfiles used to construct your image, rather than only accounting
for settings provided to the module directly.
2016-12-08 11:22:47 -05:00
Ash Wilson
0d822c0c02 Full image inspection and just repo tags
Hat tip to @bobrik.
2016-12-08 11:22:47 -05:00
Toshio Kuratomi
bba322a10e Sort subnets by the order they are specified in the play
Fixes #172
2016-12-08 11:22:47 -05:00
Bret Martin
650a7365f9 Allow vpc_subnet_id to remain unspecified (see bc0c169) 2016-12-08 11:22:47 -05:00
Sam Yaple
42fd85f041 Updated version and fixed default 2016-12-08 11:22:47 -05:00
Sam Yaple
24f1cf80bd Add pid mode support to docker module
This allows setting the pid namespace for a container. Currently only
the 'host' pid namespace is supported.

This requires Docker 1.4.1 and docker-py 1.0.0
2016-12-08 11:22:47 -05:00
Ash Wilson
1c5601a0b5 Connect to Docker with optional TLS. 2016-12-08 11:22:47 -05:00
Ash Wilson
4224dd1acb Rework docker module states.
Organize each state into a distinct function for readability and composability.
Rework `present` to create but not start containers. Add a `restarted` state
to unconditionally restart a container and a `reloaded` state to restart a
container if and only if its configuration is incorrect. Store our most recent
knowledge about container states in a ContainerSet object. Improve the value
registered by this task to include not only the inspect data from any changed
containers, but also action counters in their native form, a summary message
for all actions taken, and a `reload_reasons` key to store a human-readable
diagnostic to determine why each container was reloaded.
2016-12-08 11:22:47 -05:00
Matt Ferrante
aaca9b5127 check keys is in dim2 before evaluating 2016-12-08 11:22:47 -05:00
Lorin Hochstein
09e10ea031 Don't pass volumes_from to create_container
Don't pass the volumes_from argument to the Docker create_container method.

If the volumes_from argument is passed to the create_container method, Docker
raises the following exception:

    docker.errors.DockerException: 'volumes_from' parameter has no effect on
    create_container(). It has been moved to start()
2016-12-08 11:22:47 -05:00
zitterbacke
264a16d822 fix uri modul for JSON-escape quotation marks
consider the following response body (content) of a REST/JSON webservice containing escaped quotation marks:

```json
{ "key": "\"works\"" }
```

decoding this string not as raw will lose the backslash as JSON escape. later json.loads will fail to parse.

Inspired by [this thread](https://groups.google.com/forum/#!topic/ansible-project/kymtiloDme4) on the mailing list and the following python shell code:

```python
import json
string=r'{ "key": "\"works\"" }'
json.loads(string)
json.loads(string.decode('raw_unicode_escape'))
json.loads(string.decode('unicode_escape'))
```
2016-12-08 11:22:47 -05:00
Ash Wilson
338bbf6efc Pull newer image versions when requested. 2016-12-08 11:22:46 -05:00
Ash Wilson
6505ce3940 Another documentation commit. 2016-12-08 11:22:46 -05:00
Dag Wieers
43ef3a2bd9 Update authorized_key.py
Fix a (common) error in the examples. This is something that may go unnoticed during troubleshooting when copy&pasting the example.
2016-12-08 11:22:46 -05:00
Lev Popov
5f31654704 Allow to keep instance boot disk after instance deletion in google cloud module 2016-12-08 11:22:46 -05:00
Toshio Kuratomi
e5ba4e87d8 Fix for int port assignment in a playbook failing
Ports are integer values but the old code was assuming they were
strings.  When login_port is put into playbook complex_args as an
integer the code would fail.  This update should make the argument
validating make sure we have an integer and then we can send that value
directly to the relevant APIs.

Fixes #818
2016-12-08 11:22:46 -05:00
Toshio Kuratomi
49511ea078 Small code cleanup 2016-12-08 11:22:46 -05:00
Toshio Kuratomi
86f8a3d381 Clarify the documented behaviour of insertbefore slightly. 2016-12-08 11:22:46 -05:00