Commit Graph

948 Commits (28db5b7dd1c260f709502a34af030729af83a863)

Author SHA1 Message Date
Timothy R. Chavez 2ef913a288 Pass network argument to add_ips_to_server
The `network` argument needs to be passed through `add_ips_to_server`
so that the default value can be properly overridden from ansible.
2016-12-08 11:23:58 -05:00
Marios Andreopoulos 1ae765d61f fix: do not set scopes account to service account used for instance creation 2016-12-08 11:23:58 -05:00
Alexey Wasilyev 4d30ae313d Add cpu_shares option for docker module 2016-12-08 11:23:57 -05:00
krdlab c680611fe4 Fix `self.changed` value in `ElbManager` (ec2_elb_lb) 2016-12-08 11:23:57 -05:00
Will Rouesnel b565da78b3 docker: Fix state=reloaded to detect default LoggingDriver for docker
Previously the logging module hard coded the default logging driver. This means
if the docker daemon is started with a different logging driver, the ansible
module would continually restart it when run.

This fix adds a call to docker.Client.info(), which is inspected if a logging
driver is not supplied in the playbook, and the container only restarted if
the logging driver applied differs from the configured default.

In usage, this has solved issues with using alternative logging drivers.
2016-12-08 11:23:57 -05:00
Brian Coca 351de21ee7 made port default depending on db engine 2016-12-08 11:23:57 -05:00
Brian Coca 1fe3387971 crrected version added 2016-12-08 11:23:57 -05:00
Brian Coca 0ca9356675 added versions note in description for new choice 2016-12-08 11:23:56 -05:00
Pavel Derendyaev 3129154a2a Add "timeout" option to Docker module 2016-12-08 11:23:56 -05:00
Jon Hadfield d0e37fa542 return allocation id for vpc address. 2016-12-08 11:23:56 -05:00
Dmitry Labutin b20066ff8e Fix issue #2721: os_object parameters and docs don't align (file/filename) 2016-12-08 11:23:56 -05:00
Ben Visser a01fe88263 staging that num_nodes is required when state=present 2016-12-08 11:23:56 -05:00
Brian Coca 1367e73c94 be smarter when dealing with policy_json input
Now module will assume that if the argument is a string it is already formated as json
and will only try to convert non strings into json string.
Also removed unused 'msg' var declarations and the ifs that set them
fixes #2009
2016-12-08 11:23:56 -05:00
Vic Iglesias 353db36515 Update GCE PEM deprecation text and examples 2016-12-08 11:23:56 -05:00
Charles Paul 980691338a adding no_log to password 2016-12-08 11:23:55 -05:00
Vic Iglesias 612d9c3e92 Use credentials_file for GCE module auth config 2016-12-08 11:23:55 -05:00
tksarah 7ad225eedd Edit azure.py 2016-12-08 11:23:55 -05:00
Etherdaemon eba78d08f9 Update to wait and wait_timeout with a maximum of 10 minutes timeout 2016-12-08 11:23:55 -05:00
luto 610de975e6 vsphere_guest: when creating a guest, gather facts about it *before* disconnect 2016-12-08 11:23:55 -05:00
Etherdaemon cd3f306518 Proposing a wait_for function to ensure elb has been successfully removed 2016-12-08 11:23:55 -05:00
Mike Buzzetti f20b09e2ec Add evaluate taget health for alias based records 2016-12-08 11:23:55 -05:00
sebi 76af56eaca added unless stopped option 2016-12-08 11:23:55 -05:00
Brian Coca 7d6c704404 fix bad linebreak 2016-12-08 11:23:55 -05:00
Michael Scherer 69036826a8 Fix #2629, replace choices=BOOLEANS by type='bool' 2016-12-08 11:23:55 -05:00
luto d20c4368d2 vsphere_guest: add power status to facts 2016-12-08 11:23:55 -05:00
Manuel Tiago Pereira 057cbacf8a Add support for legacy registries to pull_image().
Since we now have several exceptions to the assumption that the
result of the pull would be on the last status line returned by
docker-py's pull(), I've changed the function so that it looks
through the status lines and returns what if finds on it.
Despite the repeated `break`s, the code seems simpler and a little
more coherent like this. From what I've checked using
`https://github.com/jlafon/ansible-profile`, the execution time is
mostly the same.
2016-12-08 11:23:54 -05:00
Sam Thursfield eba767902c os_server: Add some error checking for the 'nics' parameter
If this parameter was not of the right type, the module would fail with a
traceback, with a "AttributeError: 'str' object has no attribute 'get'"
exception.

It now gives a proper error message on type errors.
2016-12-08 11:23:54 -05:00
Toshio Kuratomi 7a492764d0 Fix up documentation 2016-12-08 11:23:54 -05:00
Toshio Kuratomi 4fa9de5af3 entrypoint feature added in 2.1 2016-12-08 11:23:54 -05:00
Toshio Kuratomi eb65f819f5 labels is actually not aded in 1.9.4 but in 2.1 2016-12-08 11:23:54 -05:00
Andrew Pashkin c811a3f4bc Add 'entrypoint' parameter to Docker module 2016-12-08 11:23:54 -05:00
Andrew Pashkin 8342397427 Harden matching running containers by "command" in the Docker module
Before this patch:

  - Command was matched if 'Command' field of docker-py
    representation of Docker container ends with 'command' passed
    to Ansible docker module by user.
  - That can give false positives and false negatives.
  - For example:
      a) If 'command' was set up with more than one spaces,
         like 'command=sleep  123', it would be never matched again
         with a container(s) launched by this task.
         Because after launching, command would be normalized and
         appear, in docker-py API call, just as 'sleep 123' - with one
         space. This is false negative case.
      b) If 'entrypoint + command = command', for example
         'sleep + 123 = sleep 123', module would give false positive
         match.

This patch fixes it, by making matching more explicit - against
'Config'->Cmd' field of 'docker inspect' output, provided by docker-py
API and with proper normalization of user input by splitting it to
tokens with 'shlex.split()'.
2016-12-08 11:23:54 -05:00
Omar Khan 369fe78c60 Add stop_timeout option to docker module 2016-12-08 11:23:54 -05:00
Toshio Kuratomi a708ad65c4 Add version_added to documentation 2016-12-08 11:23:54 -05:00
Joe Quadrino b6e2b2dce1 add devices parameter for docker module 2016-12-08 11:23:54 -05:00
Yann Hamon 1faf8dd5c2 Docker module: restarted should update the container when necessary 2016-12-08 11:23:54 -05:00
Andy Nelson 444895f889 Update to ec2_vpc.py to: 1 allow interface ids and vpc peering connections as route targets 2 set state to "terminated" when VPC is removed 3 fix some comment typos
updates per PR comments
2016-12-08 11:23:54 -05:00
HAMSIK Adam 2af105bcbc Convert enabled value to boolean to actually work, make sure we can set expiration period to 0(None) to disable it 2016-12-08 11:23:53 -05:00
Pedro Romano bcae9a2b5e GCE libcloud 0.15 support and code cleanup * Code formatting (indentation and white space) fixes for improved PEP8 conformity. * Remove redundant backslashes inside parentheses. * Test for object identity should be 'is not None'. * Test for membership should be 'not in'. * Fit docstring to the PEP8 79 character limit. * Use forward compatible Python 2.6+ 'except .. as' syntax for exception handling. * Support libcloud > 0.15 'metadata' argument format. 2016-12-08 11:23:53 -05:00
Alberto Gireud 58c39f47c1 Update root_volume variable 2016-12-08 11:23:53 -05:00
luto d48dffc298 vsphere_guest: support putting a guest into a nested folder 2016-12-08 11:23:53 -05:00
Toshio Kuratomi 8d293651df Fix os_server docs build 2016-12-08 11:23:53 -05:00
Donovan Jones 8b9cd7f410 fix typo in os_server security_groups description 2016-12-08 11:23:53 -05:00
Brian Coca 9259b51c97 updated module docs, added choices to state 2016-12-08 11:23:53 -05:00
Tobias Smolka cf5403afa3 Making cluster parameter optional 2016-12-08 11:23:53 -05:00
Monty Taylor a715c91d0b Add support for network, boot_from_volume and volumes
nics is a great flexible parameter, but it's wordy. Shade now supports
a simple parameter too, which is just "network" and takes a name or id.
Add passthrough support.

In addition to supporting booting from a pre-existing volume, nova and
shade both support the concept of booting from volume based on an image.
Pass the parameters through.

Shade supports boot-time attachment of additional volumes for OpenStack
instances. Pass through the parameter so that ansible users can also
take advantage of this.
2016-12-08 11:23:52 -05:00
Brian Coca b4f87ac7fe made note that Z/z are only 2.1 options 2016-12-08 11:23:52 -05:00
Timothy R. Chavez 37ac954123 Get new server object after adding floating IP
We need a new server object once we add the floating ip, otherwise we
will be operating with the older server object pre-floating-ip
assignment.
2016-12-08 11:23:52 -05:00
Michel Alexandre Salim 325a979876 Set the argument type for ec2_vol's encrypted parameter
If this is not set, Ansible parses the parameter as a string.
This is fine if the parameter is not provided by the caller, but
if it is set to False or True explicitly, ec2_vol receives this as
the string 'False' or the string 'True', both of which are truthy.

Thus, without this fix, setting the parameter results in encryption
always enabled.
2016-12-08 11:23:52 -05:00
Steve Spencer d4aca8eacc Sync up with allowable docker volume mounting modes 2016-12-08 11:23:52 -05:00
Steve Spencer 769d7db1d0 Add support for mounting host volumes with Z and z options 2016-12-08 11:23:52 -05:00
Leonty 22648e88cd Corrected misspelling in the 'labels' docker parameter documentation. 2016-12-08 11:23:52 -05:00
Aaron Boushley 876bdb62e1 Fix issue with comparing versions improperly.
This allows old versions of docker api to function.
2016-12-08 11:23:51 -05:00
Leonty 8638d9d26c Support 'labels' parameter for docker. 2016-12-08 11:23:51 -05:00
Jumpei Ogawa ebb0d6301d Add explanation in case that ipv4_range is required 2016-12-08 11:23:51 -05:00
Jumpei Ogawa 256c840942 Add better error message when specified network doesn't exist and ipv4_range is not specified 2016-12-08 11:23:51 -05:00
Arthur Clement 7c8d3d9b20 Example of single instance with ssd gp2 root volume creation 2016-12-08 11:23:50 -05:00
Toshio Kuratomi 6cb1606005 Don't raise or catch StandardError in amazon modules 2016-12-08 11:23:50 -05:00
Markus Suonto 39d3c3dea6 fixed quantum_ modules to work with minimum access rights if greater access rights are not needed 2016-12-08 11:23:49 -05:00
Jay Rogers bef2b75857 Update in Amazon IAM Policy Documentation
There were typos in the documentation that made the examples seem misleading of what was being demonstrated. This update fixes that.
2016-12-08 11:23:49 -05:00
Brian Coca b30438f2c8 updated docs to denote retirement of v1 api and clarify when and why auth fields have changed 2016-12-08 11:23:49 -05:00
Lippy Lee 2ce1f87bf8 Make digital_ocean_domain use API v2 2016-12-08 11:23:49 -05:00
Michel Alexandre Salim fba26fda1c Fix ec2_snapshot documentation
last_snapshot_min_age is added in 2.0, not 1.9
2016-12-08 11:23:49 -05:00
Brian Coca 1c1c8d0854 doc updates - added version_added to new api_token - updated notes to explain API issues, option switch and versions affected. 2016-12-08 11:23:49 -05:00
Max Rothman 086038cb4f Fix rds "promote" command never promoting
Previously, the `promote` command in the `rds` module would always return OK and never actually promote an instance. This was because `promote_db_instance()` had its conditions backwards: if the instance had the `replication_source` attribute indicating that it **was** a replica, it would set `changed = False` and do nothing. If the instance **wasn't** a replica, it would attempt to run `boto.rds.promote_read_replica()`, which would always fail.
2016-12-08 11:23:49 -05:00
joshuaeke 88f221fd9f Update ec2.py remove state tag
'exact_count' and 'state' are mutually exclusive options they should not be in the following examples:
- # Enforce that 5 running instances named "database" with a "dbtype" of "postgres" example and
- # Enforce that 5 instances with a tag "foo" are running
2016-12-08 11:23:49 -05:00
Toshio Kuratomi a90de29ceb Minor simplification of code 2016-12-08 11:23:49 -05:00
Brian Coca 2efb97e9d5 corrected version_added, removed empty alias 2016-12-08 11:23:49 -05:00
David Shrewsbury 5c5db04ff0 Bug fix for os_image and min_disk/min_ram
The min_disk and min_ram parameters were not being passed to
the shade API. They also need to be integer values. Also
updated the description of these parameters for better
clarification.
2016-12-08 11:23:49 -05:00
Keith Hassen f7dfcc153e Fail if any group name is not resolved to an ID. 2016-12-08 11:23:48 -05:00
Daniel Donckers 5c7f72233f Fixes #822 2016-12-08 11:23:48 -05:00
Mike Riddle f0156dda0d Fixed error message: TypeError: fail_json() takes exactly 1 argument (2 given) 2016-12-08 11:23:48 -05:00
David Shrewsbury ebd977e780 Fix os_user_group module
This module had a couple of errors in it. Also added check mode
support.
2016-12-08 11:23:48 -05:00
Brian Coca 0425d6be39 fixed break order 2016-12-08 11:23:48 -05:00
Tom Paine 0bf5fa1c23 Update ec2_elb_lb.py 2016-12-08 11:23:48 -05:00
Marcin Stolarek d3029a6059 Save changes of special characters to rset, without that comparison rset.to_xml() == wanted_rset.to_xml() will fail if record contains * or @ characters. 2016-12-08 11:23:48 -05:00
Marcin Stolarek 3c7787c05c It may be string with int comparison, if ansible user specifies identifier as int 2016-12-08 11:23:48 -05:00
J Levitt 502717d387 Add rds restore example to list of examples
There was no db restore example. I've provided one that shows how to do the restore, then add a security group (you cannot add the security group during the restore step -- it has to be done in a modify step afterward). Also, I show how to get the endpoint.
2016-12-08 11:23:48 -05:00
Monty Taylor a848d06a04 Use add_ips_to_server API
This module is still using an old pre-release API and needs to update
to use the current API.

Co-Authored-By: Marton Kiss <marton.kiss@gmail.com>
2016-12-08 11:23:47 -05:00
Toshio Kuratomi 6f214bccca Add zfil as an owner of the docker module 2016-12-08 11:23:47 -05:00
Toshio Kuratomi edaa4c3f32 Add a new contributor as a maintainer of the docker module 2016-12-08 11:23:47 -05:00
Rabenstein 8eb04fe0d3 Squash of 3 commits for bugfix.
Absent unction was not working on user with login profile
also fixed the exception handling

fixed the delete user function
now works with or without loginprofile (password)

typo
2016-12-08 11:23:47 -05:00
Rabenstein 4c08545974 Absent unction was not working on user with login profile also fixed the exception handling 2016-12-08 11:23:47 -05:00
Stewart Rutledge b71740125d Added support for reconfiguring network (moving to another switch, for example) 2016-12-08 11:23:47 -05:00
Brian Coca 7517e6366e use marker instead of is_truncated which does not seem to work 2016-12-08 11:23:47 -05:00
Brian Coca 90d084d82b loop to get all load balancers, boto limited to 400 at a time fixes #2115 2016-12-08 11:23:47 -05:00
Lars Kellogg-Stedman 35240830f6 os_server_facts returns facts about multiple servers
have `os_server_facts` call `list_servers` rather than `get_server`, and
treat the `server` parameter as a wildcard pattern.  This permits one to
get facts on a single server:

    - os_server:
        server: webserver1

On mutiple servers:

    - os_server:
        server: webserver*

Or on all servers:

    - os_server:

Introduces a `detailed` parameter to request additional server details
at the cost of additional API calls.
2016-12-08 11:23:47 -05:00
Kevin Falcone 35e6684163 Mark this as a string so it is rendered in the docs
When this was treated as a boolean, sphinx was leaving the Default
column on http://docs.ansible.com/ansible/ec2_module.html blank,
implying it would use AWS's default.  In reality, it passes False, which
overrides the defaults at AWS (it's possible to boot an instance which
AWS claims will always have EBS optimization without it because of this
silently passed False).
2016-12-08 11:23:46 -05:00
whiter c0d135e44c Allow iam_policy to maintain idempotentce if the role referenced has been removed 2016-12-08 11:23:46 -05:00
Adrian Bridgett 6bc4c877fc remove unneeded aliases 2016-12-08 11:23:46 -05:00
Adrian Bridgett f90bcfee1f add idle_timeout support 2016-12-08 11:23:46 -05:00
Kai Webber 4a8bd74f52 Added launch group support for ec2 module 2016-12-08 11:23:46 -05:00
Michael Fenn 89eec3e4cf Support cloning VMs into a specific VM folder
The pysphere VIVirtualMachine.clone() method supports specifying a VM
folder to place the VM in after the clone has completed.  This exposes
that functionality to playbooks.

Also documents that creating VMs could always place VMs in a specific
folder.
2016-12-08 11:23:46 -05:00
Mike 922cf9d96b update_disks(): added origins of the code. 2016-12-08 11:23:46 -05:00
Mike Christofilopoulos 0e1ff271c9 add new disks automatically when the 'vm_disk' section changes 2016-12-08 11:23:46 -05:00
Philippe Jandot 5b7d72e4ef fix regression introduced by f38186ce8b49ea98e29241712da45917a3154e73, and propose a fix for docker facts 2016-12-08 11:23:46 -05:00
Toshio Kuratomi 66a4cb5c13 Make cache_parameter_group the name of this new param to match with similar params (leave old name as an alias) 2016-12-08 11:23:46 -05:00
Toshio Kuratomi a692b2e4af Revert "Expose cache_parameter_group_name in elasticache module"
This PR #1950 implements duplicate functionality to #1353
This reverts commit b04efa22c4403ca869e94e7918721306d23afa8d.

Conflicts:
	cloud/amazon/elasticache.py
2016-12-08 11:23:46 -05:00
Brian Coca 4d74c1d508 added missing version added 2016-12-08 11:23:46 -05:00
Greg DeKoenigsberg 248ea2deea Remove @ralph-tice from maintainership per his request 2016-12-08 11:23:45 -05:00
Greg DeKoenigsberg 1c0b231e29 Clarity of owner, even though module is deprecated 2016-12-08 11:23:45 -05:00
Greg DeKoenigsberg 742b452dc1 @lorin stepping down as maintainer 2016-12-08 11:23:45 -05:00
Gilad Peleg 9cb4388f9e Add state=running on some ec2 examples
`state=running` was missing in some of the ec2 module examples
2016-12-08 11:23:45 -05:00
Sarah Haskins 3ad19e75cc Expose cache_parameter_group_name in elasticache module
The cache_parameter_group_name was not previously exposed in
elasticachy.py, I have exposed it, as optional.
2016-12-08 11:23:45 -05:00
Toshio Kuratomi 2619ec5321 Fix issues version_added and chaged => changed typo 2016-12-08 11:23:45 -05:00
Michael Schuett e61a4f2fb5 Fix message
Previous fix did not actual work. This fix does however.
2016-12-08 11:23:45 -05:00
Michael Schuett 0cefc2358b Handle connection error
Try and help when mac hits a connection error.
2016-12-08 11:23:45 -05:00
Michael Schuett 536bfb521a remove .geturl()
Can't call geturl on a string.
2016-12-08 11:23:45 -05:00
Michael Schuett 6ff693f975 Remove faulty logic
Update logic after splitting the error into two separate messages.
2016-12-08 11:23:45 -05:00
Michael Schuett 5a20bb473b Documentation Fix
Updated documentation to match current module state.
2016-12-08 11:23:44 -05:00
Michael Schuett 8d1f8dacba Improve Message
Give user a course of action in the case where the suggestions do not
work. This will hopefully allow us to work through any further issues
much faster.
2016-12-08 11:23:44 -05:00
Michael Schuett 53294dbaaa Improve Error Reporting
This will hopefully help mac users be able to quickly resolve any issues
they may find when trying to use this module.
2016-12-08 11:23:44 -05:00
Michael Schuett 75a61ae6e1 docker_image TLS
Check commit enables using tls when using the docker_image module. It
also removes the default for docker_url which doesn't allow us to check
for DOCKER_HOST which is a more sane default. This allows you to use
docker_image on OSX but more documentation is needed.
2016-12-08 11:23:44 -05:00
Lars Kellogg-Stedman 51fae74e7c make os_router return a top level 'id' key
make os_router return a top-level 'id' key, much like other
os_* resources.
2016-12-08 11:23:43 -05:00
Lars Kellogg-Stedman 45cc987fe0 allow os_port to accept a list of security groups
with this commit, the `security_groups` attribute for `os_port` will
accept either a common-delimited string or ` YAML list.  That is, either
this:

    - os_port:
        [...]
        security_groups: group1,group2

Or this:

    - os_port:
        [...]
        security_groups:
          - group1
          - group2
2016-12-08 11:23:43 -05:00
Lars Kellogg-Stedman c96dd16d5a allow os_server to accept a list of security groups
This commit allows the `security_groups` parameter of the `os_server`
module to be either a YAML list or a common-delimited string (much like
the `nics` attribute).  E.g., this:

    - os_nova_server:
        [...]
        security_groups:
          - default
          - webserver

Or this:

    - os_nova_server:
        [...]
        security_groups: default,webserver
2016-12-08 11:23:43 -05:00
Lars Kellogg-Stedman 45012ea723 allow empty description attribute for os_security_group
The `os_security_group` module would fail if there was no `description:`
attribute:

    localhost | FAILED! => {
        "changed": false,
        "failed": true,
	"msg": "Error creating security group larstest: Invalid input for
	description. Reason: 'None' is not a valid string."
    }

This commit makes the default description `''` rather than `None`.
2016-12-08 11:23:43 -05:00
Lars Kellogg-Stedman ff090a1224 make os_keypair return a top level 'id' key
make os_keypair return a top-level 'id' key, much like other os_*
resources.
2016-12-08 11:23:43 -05:00
Lars Kellogg-Stedman bdd73fdfd0 make os_flavor return a top-level 'id' key
make os_flavor return a top-level 'id' key, much like other os_*
resources.
2016-12-08 11:23:43 -05:00
Lars Kellogg-Stedman c1e081fcf6 make os_network correctly report changed status
The `os_network` module was incorrectly returning changed=False whether
or not the network was created.  This commit makes the changed return
value useful.
2016-12-08 11:23:43 -05:00
Lars Kellogg-Stedman 70bd95b4f0 return information about created subnet
make os_subnet behave like os_network in terms of returning information
about the created resource.  With this commit, os_subnet will return the
created subnet in `subnet` and the subnet id in `id`.
2016-12-08 11:23:43 -05:00
David Shrewsbury f086279a23 Fix for routers without external interfaces 2016-12-08 11:23:43 -05:00
Monty Taylor c2b695390b Actually pass in is_public to create_image
Fixes #2325
2016-12-08 11:23:43 -05:00
Brian Coca e0d4d397ff fixed mispelled description 2016-12-08 11:23:42 -05:00
Etherdaemon 63c8c40a37 Update try statement as pointed out by defionscode 2016-12-08 11:23:42 -05:00
Toshio Kuratomi a5d95b4047 Another fix for docs 2016-12-08 11:23:42 -05:00
Toshio Kuratomi ac58ef1404 Correct docs build 2016-12-08 11:23:42 -05:00
David Shrewsbury 024b8365c2 Clarify password requirement and add return docs. 2016-12-08 11:23:42 -05:00
David Shrewsbury c66491c076 Add OpenStack Keystone User module
This is a replacement for PR #1598 and fixes #283
2016-12-08 11:23:42 -05:00
Constantin Bugneac 55afa7e944 Added documentation for returned structure 2016-12-08 11:23:42 -05:00
Etherdaemon 9fe689eaec fixes #12831 by updating the boto iam connection method to connect_to_region 2016-12-08 11:23:42 -05:00
Constantin Bugneac aa887ce49f Included 'block_device_mapping' in the output of module and other missing attributes 2016-12-08 11:23:42 -05:00
Brian Coca 9f503540f1 added missing version_added to new accesslogs feature 2016-12-08 11:23:42 -05:00
David Shrewsbury 92e6e2f7ea Fix os_router to accept internal interfaces
Allow the 'interfaces' attribute to represent internal router
interfaces, composed of subnet names, and the 'external_fixed_ips'
attribute to represent external interface subnet/IP.
2016-12-08 11:23:41 -05:00
Lars Kellogg-Stedman 413a9d0c62 fix handling of nics argument
The existing code was receiving a list of strings and erroneously
assuming it was being given a list of dictionaries, leading it to fail
with:

    AttributeError: 'str' object has no attribute 'get'

This commit corrects the list handling code to check the type of each
item and handle it appropriately.   Also, based on bcoca's comment
in #2253, thie code removes the special case for a string-only argument.

By transforming string arguments into dicts and then handling them like
any other dict argument, this also permits arguments of the form:

    nics: net-name=mynet

Or:

    nics: port-name=mynet

Previous versions of this code only supported `net-id` and `port-id` in
string specifications.
2016-12-08 11:23:41 -05:00
Monty Taylor db59af564e Make the auto ip parameter auto_ip
There was a parameter in the docs called 'public_ip' that didn't
actually exist. Additionally, auto_floating_ip is not consistent with
the underlying parameter which is auto_ip - for no good reason.

Add auto_ip as the real parameter, and then make public_ip and
auto_floating_ip as aliases for it for backwards compatability.

Fixes #2301
2016-12-08 11:23:41 -05:00
Brian Coca 28749a794a added note on when reboot command became available fixes #2050 2016-12-08 11:23:41 -05:00
Brian Coca 5ecbd6c63a fixed results docs 2016-12-08 11:23:41 -05:00
Toshio Kuratomi 9c5ce44477 Some docs fixes 2016-12-08 11:23:41 -05:00
Gilad Peleg 295a28e128 Docs: remove redundant quotes in ec2_elb docs 2016-12-08 11:23:41 -05:00
Gilad Peleg c340587bb8 Docs: add state choices to ec2_elb_lb
add state options (`present` and `absent`) to `ec2_elb-lb` doc
2016-12-08 11:23:41 -05:00
Val Komarov 0b294d69c5 Remove duplicate logic 2016-12-08 11:23:41 -05:00
dagnello 11f66c0742 Adding string support to metadata argument
This patch adds support to setting metadata key/value through a string
argument.  Variables can now be used for both the metadata key and
value.

example:
meta: "{{ var1 }}:SomeValue,key:{{ var2 }}"
2016-12-08 11:23:41 -05:00
whiter 9ee13c4e55 Add region to doc and handle missing region parameter 2016-12-08 11:23:40 -05:00
Rob 11c0be06fb Update ec2_vol.py
Changed=true now reported on new volume.
Only detach volume when instance is specified as 'None' or '' rather than whenever instance is not specified at all
Fix regression caused by 6b27cdc where by no volume is created if id or Name is not supplied
Remove unnecessary empty aliases
Corrected example to use acceptable parameter for ions
Added exception handling to get_all_instances call
Moved the attachment state validation code to attach_volume function rather than create_volume function
Refactored attach_volume and detach_volume so that changed state can be passed back to call
Created get_volume_info function so that state=present and state=list can return the same data.  Also added instance_id as a returned value in attachment_set dict
Updated aws connection method so that boto profile can be used
2016-12-08 11:23:40 -05:00
Adam Williamson 83d941da27 fix #2043: strip empty dict from end of 'pull' stream
When pulling an image using Docker 1.8, it seems the output
JSON stream has an empty dict at the very end. This causes
ansible to fail when pulling an image, as it's expecting a
status message in that dict which it uses to determine whether
it had to download the image or not. As a bit of an ugly hack
for that which remains backward compatible, try the last item
in the stream, and if it's an empty dict, take the last-but-one
item instead.

The strip() is needed as the exact value appears to be '{}/r/n';
we could just match that, but it seems like the kind of thing
where maybe it'd happen to just be '{}/n' or '{}' or something
in some cases, so let's just use strip() in case.
2016-12-08 11:23:40 -05:00
Sam Yaple a4a4b6f423 Catch the second occurance of ExposedPorts as well 2016-12-08 11:23:40 -05:00
Sam Yaple 463fb5a058 Don't assume ExposedPorts exists (bug #2257)
A recent change [1] in docker between v1.8.2 and v1.8.3 changed what
is returned in the json when inspecting an image. Five variables which
could have been expected before will now be omited when empty. Only
one of those variables is being addressed in the docker, ExposedPorts.

Unfortunately there was also no API version change on this so this
can't be easily corrected with pinning the API to the older version.

This does a get() which will return None if the variable is not in the
dict formed from the json that was returned. Everything else works the
same way.

[1] 9098628b29
2016-12-08 11:23:40 -05:00
Constantin Bugneac 7dd5ec5373 Added deleteOnTermination in the output of list option 2016-12-08 11:23:40 -05:00
Abhijit Menon-Sen e9071c62ba Add missing variable initializations
Without this, «ec2: state=stopped instance_ids=…» would fail with a
traceback like this:

    if inst.get_attribute('sourceDestCheck')['sourceDestCheck'] != source_dest_check:
NameError: global name 'source_dest_check' is not defined
2016-12-08 11:23:40 -05:00
Brian Coca a1484a0e5b doc fixes 2016-12-08 11:23:40 -05:00
Frank van Tol 5872e0a493 Update ec2_asg.py 2016-12-08 11:23:40 -05:00
Rob ed3d248234 Move import statements for easier debugging (correct line numbers) 2016-12-08 11:23:40 -05:00
Brian Coca 205d607320 added version added to new rax_cdb choices 2016-12-08 11:23:40 -05:00
Rob 61af70c087 Set default of dimensions parameter to be empty dict 2016-12-08 11:23:39 -05:00
fperks 11dbd985b6 Fix error on ec2 status change
Both `source_dest_check` and `termination_protection` variables are not
available within the scope of the startstopec2 instance method. This just
pulls them from module.params.
2016-12-08 11:23:39 -05:00
Adrian Lopez 624e95d718 Fix yaml syntax 2016-12-08 11:23:39 -05:00
Gerard Lynch 27f93bef40 minor doc fix 2016-12-08 11:23:39 -05:00
Colin Hutchinson d70c33f932 make a text link into a actual hyperlink
the text link doesn't fit on some screen resolutions. Making it into sphinx hyperlink will solve that
2016-12-08 11:23:39 -05:00
Matias De Carli f2bc0a6d85 keep backwards compatibility 2016-12-08 11:23:39 -05:00
Toshio Kuratomi 99659c8667 Fix docs build 2016-12-08 11:23:38 -05:00
David Shrewsbury bf9c3e0092 Add author to os_router 2016-12-08 11:23:38 -05:00
David Shrewsbury 78ea0df607 Deprecate older router modules.
The quantum_router_gateway.py and quantum_router_interface.py modules
are deprecated with this change.
2016-12-08 11:23:38 -05:00
Shayne Clausson 92f88a4cb4 Replaces 'old' get_ec2_creds connection method with get_aws_connection_info to support passing in security_token for temporary creds. 2016-12-08 11:23:38 -05:00
David Shrewsbury f91cc1d3e5 Allow setting external attribute
With shade > 0.13.0, networks can be created that are externally
accessible. This adds a parameter for that.

Also, add RETURN documentation and 'if __name__' check around call
to main().
2016-12-08 11:23:38 -05:00
David Shrewsbury 14546fe33c Allow complete router configuration
This change allows one to completely configure a router, including
gateway and interfaces, using the latest shade (>0.13.0).
2016-12-08 11:23:38 -05:00
justnom b724bf8f1c Adding additional Docker log drivers.
Adding additional `log_driver` choices:
* journald
* gelf
* fluentd

Compatible with Docker version >= 1.8.0
2016-12-08 11:23:38 -05:00
Alex Kessinger 4d227e508d Fix a argument mismatch in elasticache
I think in this commit 720aeffca2bd2ae1eca158abc2d1463a8597afb6

There was bug introduced where the ElastiCacheManager init method has
a number of positional arguments like so.

```py
    def __init__(self, module, name, engine, cache_engine_version, node_type,
                 num_nodes, cache_port, parameter_group, cache_subnet_group,
                 cache_security_groups, security_group_ids, zone, wait,
                 hard_modify, region, **aws_connect_kwargs):
```

But then later in the code the positional arguments are passed in
like this.

```py
    elasticache_manager = ElastiCacheManager(module, name, engine,
                                             cache_engine_version, node_type,
                                             num_nodes, cache_port,
                                             cache_subnet_group,
                                             cache_security_groups,
                                             security_group_ids, parameter_group, zone, wait,
                                             hard_modify, region, **aws_connect_kwargs)
```

If you count, you can see that cache_subnet_group, is being passed in
where the manager expects to see parameter_group.
2016-12-08 11:23:38 -05:00
Jens Carl 00f9dfac34 Change type of parameter 'template' to 'path'. 2016-12-08 11:23:38 -05:00
Gerard Lynch f85a8ac746 allow use of volume_type in volumes dict 2016-12-08 11:23:37 -05:00
Jens Carl 507111f090 Fix to handle user directory within parameter 'template'. 2016-12-08 11:23:37 -05:00
Tom Bamford dbf882a600 Clarify available options for device_mapping parameter of ec2_ami module 2016-12-08 11:23:37 -05:00
Shawn Silva 2962dabeda Fix for modifying the size of an RDS instance. When attempting to modify the size of an RDS instance Ansible succeeds and returns a "changed" status. However, no changes are applied to the RDS instance. Boto is looking for a keyword parameter of "allocated_storage" to update the size, and this parameter wasn't being included. 2016-12-08 11:23:37 -05:00
Selivanov Pavel 63d2575f9f ec2_group.py: added ICMP rule example 2016-12-08 11:23:37 -05:00
Nathaniel Felsen ec14a5c728 Adding support for access logs in ELB 2016-12-08 11:23:37 -05:00
dagnello ec1c18e3d5 Adding new os_subnets_facts module
There can be instances during an Ansible play where the list of subnets
currently available from OpenStack is required.  This update provides
subnet list functionality as a new os_subnets_facts module.
2016-12-08 11:23:37 -05:00
Matias De Carli d32809cadb updated dependencies to work with azure.py 1.0.1 2016-12-08 11:23:37 -05:00
dagnello d46894cf91 Adding new image facts module 2016-12-08 11:23:37 -05:00
dagnello d76f6cceed Adding os_port Module to openstack ansible modules 2016-12-08 11:23:36 -05:00
whiter 82c898be5a Remove 'str' type so that json is properly quoted 2016-12-08 11:23:36 -05:00
dagnello a4148c50e9 Adding os_networks_facts module
There can be instances during an Ansible play where the list of networks
currently available from OpenStack is required.  This update provides
network list functionality as a new os_networks_facts module.
2016-12-08 11:23:36 -05:00
Abitha Palaniappan 5047561036 os_server: Adding support to accept 'n' nic args as a string containing list 2016-12-08 11:23:36 -05:00
evanccnyc@users.noreply.github.com ff81aa11c0 Fixing ec2_asg termination_policy
If this isnt set, it wont launch the instances because it needs to default to "Default" despite what boto docs say.
2016-12-08 11:23:36 -05:00
David Shrewsbury b67fb2bd29 More os_router module cleanup and fixes.
Added a RETURN section, corrected version_added value, removed use of
'result' in exit_json() calls.
2016-12-08 11:23:36 -05:00
Frank van Tol db6c6ec5c9 Update s3.py
We are copying from S3,  the bucket is the source, not the target.
2016-12-08 11:23:36 -05:00
Rob 08999ecfd1 Update iam_policy.py
Fixed doc for policy_name - it is a required field
Removed empty aliases
2016-12-08 11:23:36 -05:00
Gerard Lynch 3339749017 order params, add missing tag param. update examples 2016-12-08 11:23:36 -05:00
Toshio Kuratomi 29cfd80220 Fix improper indentation 2016-12-08 11:23:36 -05:00
Evan Carter 5cd3217fc8 fixing termination policies for ec2_asg 2016-12-08 11:23:35 -05:00
Evan Carter e9c04cfdfd Fixing bug #2058 and adding some backwards compatibility 2016-12-08 11:23:35 -05:00
Rob 4f9bb86e58 Add exception handling to iam 2016-12-08 11:23:35 -05:00
wimnat 540061c9fc Remove unnecessary json.loads 2016-12-08 11:23:35 -05:00
Tom Fotherby 135e7c60de Fix #1984 - allow load_balancer_port as a variable 2016-12-08 11:23:35 -05:00
Abitha Palaniappan d26bff8162 Add support for port-id,port-name to nics in os_server 2016-12-08 11:23:35 -05:00
Victor Costan 8d9768c049 Fix indentation in os_server documentation 2016-12-08 11:23:35 -05:00
Yanchek99 ebbd206e86 Fixed typo for instance_tags documentation 2016-12-08 11:23:35 -05:00
David Dyball cdff62643b Updated PR based on comments 2016-12-08 11:23:35 -05:00
Taneli Lepp fb317c72b6 Added option to set multiple ACLs for S3 objects. Also verifies the selected permissions against Boto's canned ACL strings list. 2016-12-08 11:23:35 -05:00
Bret Martin b1c5b17155 Use general-purpose parameter mutual exclusion code for network_interfaces 2016-12-08 11:23:35 -05:00
Bret Martin 0afa813324 Add alias `network_interface` and accept a string for a single ENI 2016-12-08 11:23:35 -05:00