Commit Graph

1069 Commits (24a33d5c10f5a96417641e6001776bf70ea808d1)

Author SHA1 Message Date
Monty Taylor b80be42ed9 Add ability to filter on image and flavor names
The fun part about having multiple vendors providing the same cloud
is that while their APIs are the same, what they do with their metadata
tends to be ... fun. So in order to be able to express sanely what you
want without needing to stick tons of unreadable uuids in your config,
it turns out what sometimes you need to further filter image and flavor
names. Specific examples are (deprecated) images in HP Cloud and the
Standard and Performance flavors on Rackspace.
10 years ago
Monty Taylor 65adb6465b Specify nova image and flavor by name
Putting uuid and numberic identifies in playbooks is fragile, especially
with cloud providers who change them out from under you. Asking for
Ubuntu 14.04 is consistent, the UUID associated with that is not. Add
mutually exclusive parameters to allow for specifying images by name and
flavors by RAM amount.
10 years ago
Monty Taylor 3fe1083192 Use mutually exclusive on nova floating ip params
ansible knows how to deal with mutually exclusive parameters, so
instead of coding that ourselves, use it.
10 years ago
Monty Taylor d17a1b5c19 Add common auth handling across openstack modules
Taking a page out of the ec2 config, make sure that all of the
OpenStack modules handle the inbound auth config in the same way.
The one outlier is keystone wrt auth_url.
10 years ago
Monty Taylor ac420fd483 Consume standard OpenStack environment settings
The OpenStack client utilities consume a set of input environment
variables for things like username and auth_url, so it's very
common for OpenStack users to have such settings set in their
environment. Indeed, things like devstack also output a shell file
to be sourced to set them. Although in a playbook it's entirely
expected that variables should be used to pass in system settings
like api passwords, for ad-hoc command line usage, needing to pass
in five parameters which are almost certainly in the environment
already reduces the utility.

Grab the environment variables and inject them as default. Special care
is taken to ensure that in the case where the values are not found, the
behavior of which parameters are required is not altered.
10 years ago
Monty Taylor 2611246b89 Cleanup in nova after a failed floating ip
There is a potential leak of resources if there is somehow a failure
adding a floating ip to a server. Clean up after ourselves.
10 years ago
Monty Taylor 6045923cab Find IPs on OpenStack clouds without floating-ips
The floating-ip extension, while pretty ubiquitous, is not a
foregone conclusion. Specifically, Rackspace, while also
served by the rax module, is a valid OpenStack cloud and can
be interacted with directly via nova interfaces.

Add support for determining public and private IPs for
OpenStack clouds that don't use floating ips by reading
the public and private keys from the addresses dict.
10 years ago
Monty Taylor 1e0e7a6b28 Add support for nova availability zones
If a cloud has availability zone support, it's possible to specify
an availability zone via the nova client. Add that as a config param.
10 years ago
Monty Taylor 8938222029 Pass through nova region name
If the region name is specified in the config, we need to pass it
in to the nova client constructor. Since key_name is similarly optional,
go ahead and handle both parameters the same.
10 years ago
Monty Taylor 10a50b4a61 Split nova floating-ip pool logic
The desires around getting a floating ip associated with a pool and
getting a floating ip not associated with a pool is just different
enough that following it as one set of nested ifs is tricky. Split
the function into two, one for the pool and one for the non-pool logic.
10 years ago
CaptTofu 6da266f64c Added floating IP functionality to nova_compute 10 years ago
Lorin Hochstein 42df1f890a ec2 module: document valid states 10 years ago
James Cammarata 22f3f2b74a Merge pull request #8174 from altruism/devel
Make ec2_group module not just fail
10 years ago
James Cammarata 745b28072a Check for the numeric "all" value (-1) for the rule protocol
Fixes #7832
10 years ago
James Cammarata 00ce87484b Merge pull request #8363 from greenmoss/devel
Fix Docker image name parsing
10 years ago
James Laska 7288a6095b Several azure fixes
Several azure fixes/improvements, including:
* Improve failure message when python-azure is not installed
* Improve required argument handling
* Fixes a traceback on instance termination when the variable
'deployment' was not set.
* Fixes a traceback (#8298) when creating instances using the newer SDK
10 years ago
Michael DeHaan 19bf388a17 Merge pull request #8353 from gdamjan/ec2-running-return-info
return the most up-to-date info about an instance when starting/stopping it
10 years ago
Dave Johnson 76c925c22a Parameters to disable_rollback are "true" or "false" 10 years ago
Kurt Yoder 8ee6906885 Fix Docker image name parsing
Fixes #8357
10 years ago
Damjan Georgievski 16e5b1b9e6 return the most up-to-date info about an instance when starting/stopping it
otherwise the module will return the info about the instance that it got prior to the action taken
So if you had a task to start an instance:

      ec2:
         instance_ids: ...
         state: running
      register: ec2_info

the registered data would have empty public_dns_name, public_ip, private_dns_name, private_ip
10 years ago
Michael DeHaan f948a94f51 Merge pull request #8313 from sivel/issue/8250
Make sure to assign pyrax.cloudservers to cs. Fixes #8250
10 years ago
Matt Martz 571f343e7d Make sure to assign pyrax.cloudservers to cs. Fixes #8250 10 years ago
James Laska d51e10a3f4 Correct BotoServerError typo in ec2 module
Resolves a traceback due to an undefined 'BotoSeverError' exception.
10 years ago
James Cammarata 1134f6169c Minor indentation fixes on ec2_eip 10 years ago
James Martin 1453f7b013 Fixes #8290. 10 years ago
Michael DeHaan 2769b3d0b2 Update version_added attribute on recent GCE module additions. 10 years ago
Michael DeHaan 98c6688343 Merge pull request #6976 from clconway/gce-snapshots
Adds support for snapshots and extra persistent disks to the gce modules
10 years ago
Jacob Hickey ea9af2cbb1 Add missing params to get_target_from_rule
get_target_from_rule was extracted from main() without enough parameters for
all the local variables it took with it from the extraction site.
10 years ago
Michael DeHaan 3aa10d9db5 Merge pull request #8145 from amandolo/ec2_tag
Fix EC2_TAG module output structure when listing tags
10 years ago
James Cammarata 68e59332c7 Merge branch 'patch-2' of https://github.com/napkindrawing/ansible into napkindrawing-patch-2 10 years ago
James Cammarata 02a6d5224f Merge pull request #8124 from dataxu/dev-asg-set-health-checks
Added setting of the health_check options on an existing ASG
10 years ago
Andrea Mandolo d346b76fb7 Fix EC2_TAG module output structure when listing tags 10 years ago
napkindrawing fe74cb0ad0 New option for route53: retry_interval
The current (hard-coded) retry interval of 500 seconds can cause ansible to have excessive run-times in the case of many domains. `retry_interval` provides a way to customize the wait between retries of calls to route53.
10 years ago
James Cammarata 49d07ca4cc Adding a note about 'type' field becoming required in rax_dns_record 10 years ago
James Cammarata b2f09d3989 Merge branch 'rax-ptr' of https://github.com/sivel/ansible into sivel-rax-ptr 10 years ago
Matt Ferrante 66d3d75b35 Added setting of the health_check options on an existing ASG 10 years ago
James Cammarata d52b50cb03 Merge pull request #7478 from sivel/rax-keypair-filepath
rax_keypair module: Allow public_key to be a path to a file
10 years ago
James Cammarata 8753849959 Merge pull request #7477 from sivel/rax-user-data
rax module: Support config_drive and user_data
10 years ago
James Martin e36ef4defb Updated tag behavior. 10 years ago
Graham Mainwaring fb83bdffa8 Fixed tracebacks when datacenter not found, when notes not given, and when collecting facts after VM creation. Fixes #8067. 10 years ago
James Cammarata 4d86bbe6dc Merge pull request #8086 from dataxu/dev-fix-typo
Bug Fix - fixed the choices typo got the ec2_asg module
10 years ago
James Cammarata 3a6d00f81d Add note about changing resource_tags to required in ec2_vpc 10 years ago
James Cammarata 2184b15542 Merge branch 'psa-resource-tag-required' into devel 10 years ago
Matt Ferrante 03fc2714f1 fixed the choices typo got the ec2_asg module 10 years ago
James Cammarata 3e7d91723f Adding version_added for new vm_hw_version field in vpshere_guest 10 years ago
James Cammarata 87d1cdd035 Merge branch 'fix-7206' of https://github.com/hiciu/ansible into hiciu-fix-7206 11 years ago
James Cammarata 0798f3cda4 Merge branch 'issue_7848' of https://github.com/mpeters/ansible into mpeters-issue_7848 11 years ago
James Cammarata 26707568c7 Merge branch 'issue_7906' of https://github.com/mpeters/ansible into mpeters-issue_7906 11 years ago
James Cammarata aecd292f13 Merge branch 'resource-tag-required' of https://github.com/psa/ansible into psa-resource-tag-required 11 years ago
James Cammarata 06f72ca3b1 Merge branch 'bug/8057' of https://github.com/ericwb/ansible into ericwb-bug/8057 11 years ago
James Cammarata 0da5996bb5 Merge pull request #8049 from ranjan/dev
Provision VM using virtual network.
11 years ago
Joe Moretti 8357ca2b36 Add optional docker_api_version parameter to Docker Module 11 years ago
Eric Brown cdedb0f817 Adds an option to specify the glance endpoint type
Some environments that utilize an SSL terminator with a self-signed
certificate can use the publicURL without getting certificate
verify errors.  This allows using the internalURL with in my case
is HTTP and not HTTPS.

Closes issue: #8057
11 years ago
James Cammarata 1f2a436bbf Merge pull request #8038 from caphrim007/correct-missing-msg-argument
Fix missing msg argument
11 years ago
James Cammarata ec16b18bab Merge pull request #8036 from sqs/remove-fragile-RDS-instance-type-validation
Remove validation of RDS DB instance type names because Amazon frequently adds new ones
11 years ago
James Cammarata 1f813ba128 Merge pull request #8022 from psa/vpc-gateway-peering
Fix for #7368 breaks peering connections. Unreak them.
11 years ago
Tim Rupp 4a871f496a Fix missing msg argument
The following patch adds a missing 'msg=' syntax. An exception is raised
in ansible if this block is reached during the execution of the module

    TypeError: fail_json() takes exactly 1 argument (2 given)

With the 'msg=' added, you get a more informative error. For example

    msg: No settings provided to update_domain().
11 years ago
Quinn Slack 9190df2aa9 Remove validation of RDS DB instance type names because Amazon frequently adds new ones 11 years ago
Ranjan Kumar ac252ea731 Provision VM using virtual network. 11 years ago
Paul Armstrong 97b3e8c6e4 Fix for #7368 breaks peering connections. Unreak them. 11 years ago
Frédéric de Villamil ed9c2419d1 Adds support for instance monitoring in ec2_lc module. 11 years ago
Frédéric de Villamil 3ecfbfce4b Adds the possibility to attach a public IP address to instances launched into an autoscaling group within a VPC to ec2_lc module. 11 years ago
Frédéric de Villamil 729b56cb23 Adds support for EBS optimized instances in ecl_lc module. 11 years ago
Frédéric de Villamil 00c6253c8f Adds support for IAM instance profile in ec2_lc module 11 years ago
Frédéric de Villamil fcdafb7ff4 Adds RAM disk id support for ec2_lc module. 11 years ago
Frédéric de Villamil c555b3a0b9 Adds support for `kern_id` param in ec2_ls module. 11 years ago
James Cammarata 746f52c5aa Merge pull request #7896 from botify-labs/feature/add-instance-monitoring-to-ec2-lc
Adds support for Cloudwatch detailled monitoring in ec2_lc module.
11 years ago
James Cammarata 0ee28c1a0e Make sure subnets and route_tables are initialized before using
Fixes #7712
11 years ago
Paul Armstrong d5b6781482 Make resource_tags required and do whitespace cleanup 11 years ago
Lorin Hochstein 7413e501a1 ec2_ami_search: new EBS types
In ec2_ami_search module, add support for the new SSD-backed EBS (ebs-ssd)
volume as well as support for provisioned IOPS (ebs-io1).
11 years ago
Steve Zesch 16e61dc3e2 ELB enhancements
* connection draining
* cross AZ load balancing
11 years ago
James Cammarata 05eb6aacec Merge pull request #7925 from devpopol/fixes/api_error
fixes the now-incorrect module for ApiError -- noticed since 0.3.2
11 years ago
Tim Ruffles 676f0a6e76 grammar fix 11 years ago
Stephen Paul Suarez 49cf5831c5 support old and new versions of APIError 11 years ago
Stephen Paul Suarez dfabf2707a fixes the now-incorrect module for ApiError
https://github.com/dotcloud/docker-py/blob/0.3.2/docker/errors.py
- ApiError is now(0.3.2) under the docker.errors
11 years ago
James Cammarata 375edbd087 Check to make sure key exists in tag list before using it
Fixes #7910
11 years ago
Michael Peters 45cf1dbbc5 Fixing issue #7906
Catch any InvalidInstanceID.NotFound errors coming from the boto library
when trying to find the newly created instance. When this happens We should
just wait and try again.
11 years ago
Frédéric de Villamil 126d15cc43 Adds support for Cloudwatch detailled monitoring in ec2_lc module.
Enabling detailled monitoring in the launch config is mandatory to be able to activate cloudwatch in the to be created autoscaling group.
11 years ago
James Cammarata 2bfdad1e86 Merge pull request #7904 from loglevel9/7903
force evaluation of vars memory_mb, num_cpus to be int fixes #7903
11 years ago
James Cammarata eef05f7b31 Merge branch 'botify-labs-bug/fix-health-check-to-zero-bug/7898' into devel 11 years ago
Dann Bohn 677e99e375 force evaluation of vars memory_mb, num_cpus to be int fixes #7903 11 years ago
Frédéric de Villamil 1f3663b196 Adds support for `health_check_period` and `health_check_type` in `ec2_asg` module.
Default is set to 300 seconds, which is AWS default.

This PR fixes a bug (#7898) where instances created within an autoscaling group using the `ec2_asg` module gets immediately terminated because the `health_check_period` is set to 0, which causes the instance to be checked without having the time to actually boot.

Adding `health_check_type` is needed because you may want to check your instance health against an ELB instead of just EC2 default cloudwatch.
11 years ago
Frédéric de Villamil 93daebe1e2 Adding support for spot instances in ansible_lc.
AWS allows to define launch configuration with spot instances. This is also natively supported by boto (see http://boto.readthedocs.org/en/latest/ref/autoscale.html)
11 years ago
James Cammarata 1c3a654912 Conditionally try to get ebs_optimized parameter from instance 11 years ago
Yap Sok Ann f80467e013 ec2_vpc: Fix error when using InstanceId as a route gateway.
See https://github.com/ansible/ansible/issues/7368

Fixes #7368
11 years ago
James Cammarata 1c318fa3bd Merge branch 'exit_json' of https://github.com/psa/ansible into psa-exit_json 11 years ago
Michael Peters 87a6290065 Use the right name for the vpc_id parameter
Fixes #7853
11 years ago
Michael Peters 3f1cf5a98a This should fix issue #7848
We need to catch any InvalidVpcID.NotFound errors and treat them
just like getting back a vpc that's not "available"
11 years ago
James Cammarata 3929118142 Merge pull request #7829 from bennojoy/asg_policy
return properties of the newly created scaling policy
11 years ago
James Cammarata 49fb36ef83 Merge pull request #7827 from willthames/delay_tagging_in_ec2
ec2 module: Delay instance tagging to later in the instance creation process
11 years ago
James Cammarata 4b18c46723 Merge branch 'issue_7828_rds_param_group' into devel 11 years ago
Benno Joy d1d96b6b50 return properties of the newly created scaling policy 11 years ago
James Cammarata ffce57a8f6 Fixing doc typos and adding version_added for tags param in ec2_asg 11 years ago
James Cammarata 42e26987bf Merge branch 'ec2_asg_info' of https://github.com/dataxu/ansible into dataxu-ec2_asg_info 11 years ago
James Cammarata 853471f14d Handle integer param values that are calculated values
Fixes #7828
11 years ago
willthames a1aec8dadd Delay instance tagging to later in the instance creation process
Tagging recently created instances can result in
InvalidInstanceID.NotFound errors.

By delaying the tagging until the last part of instance creation,
we should be typically more fortunate (avoiding all such race
conditions might need more work)
11 years ago
Roberto Migli ca5f1fcf03 Fixed error in docs 11 years ago
Roberto Migli 7a3c826f0c Fixed typo in docs 11 years ago
James Cammarata b7a5ce37a4 Merge pull request #7755 from sivel/rax-asg-normalize-nic
module rax_scaling_group: safe normalization of nics
11 years ago
Brice Leroy 50d8047c6e Fix task description 11 years ago
Matt Martz b2d24aba61 Perform safe normalization of nics to use uuid 11 years ago
James Cammarata 1173a8d6af Catch error in azure related to a failed deployment when creating a vm 11 years ago
James Cammarata 0b8c8b0581 Merge branch 'devel' of https://github.com/matlockx/ansible into matlockx-devel 11 years ago
James Cammarata ccf47577c4 Merge branch 'sivel-rax-autoscale' into devel 11 years ago
Peter Kolloch 7a6354f753 Hack to fix #7738: Allow tag in image parameter of docker module
It also defaults to the "latest" tag for pulling the image
instead of pulling all versions.
11 years ago
James Cammarata 917ad8da72 Merge pull request #7687 from ryanpetrello/devel
Fix neutron floating IP allocation for networks w/ multiple subnets
11 years ago
James Cammarata 07e10fb9ff Merge branch 'rax-autoscale' of https://github.com/sivel/ansible into sivel-rax-autoscale 11 years ago
Paul Myjavec 074a6f3e3e Docker links and required alias
If no alias is passed one will now be created for you with the same name
as the target link container, as per the documentation
11 years ago
James Cammarata 0073b34653 Merge pull request #7259 from darKoram/nova_keypair_check_keys
nova_keypair should fail if 'name' of key exists in keystore, but ssh hash value != public_key offered
11 years ago
James Cammarata 150a2346c1 Merge pull request #7238 from willthames/ec2_snapshot_argument_spec
Improve the ec2_snapshot argument spec and docs
11 years ago
Matt Ferrante 3e875c7867 ec2_asg module enhancements
- Added a more verbose response
  - includes its settable attributes and a list of its instances.
  - allows setting of tags, changes upon which mark the task changed
  - allow getting of information from asg module, not just setting
  - doesn't mark changed if the parameter wasn't specified
  - Availability Zones are pulled from the region
11 years ago
Martin Joehren 98ff559fa0 azure - fixed missing return statement 11 years ago
Martin Joehren 188a13efc0 azure - fix for: temporary redirect, not deleted vhds, missing locations and role types, async api calls 11 years ago
James Cammarata 5637426f51 Merge branch 'devel' of https://github.com/ansible/ansible into devel 11 years ago
Ryan Petrello bb0ca4c1aa Fix neutron floating IP allocation for networks with a v4 *and* v6 subnet.
For networks that have both a v4 and a v6 subnet, the floating IP plugin
currently has two problems:

* When determining the subnet for the provided `internal_network_name`, it
assumes that the first item in the list of subnets is the one you want.
Instead, it should pick the first v4 subnet.

* When multiple fixed IP's exist for a given port (as is the case in a network
a v4 and a v6 subnet), neutron needs a hint as to which fixed IP to associate
to the floating IP address (the v4 one).
11 years ago
James Cammarata 5bd8cd6e00 Cleaning up azure module
* Fixed error messages to be more descriptive
* Removed direct use of subprocess module and replaced it with calls
  to module.run_command
* Changed AZURE_MANAGEMENT_CERT_PATH to be just AZURE_CERT_PATH, which
  matches what is expected by the inventory script
11 years ago
Matt Martz ad5cf5d55d Add Rackspace Autoscale modules
- rax_scaling_group
- rax_scaling_policy
11 years ago
James Cammarata e083168773 Merge branch 'devel' of https://github.com/jwhitbeck/ansible into jwhitbeck-devel 11 years ago
James Cammarata bd5cf57e76 Merge pull request #7653 from evanccopengeo/devel
ec2_group: Fix for 500 error when creating new security groups
11 years ago
James Cammarata 9cb05a0845 Catch failed connection due to a bad region in ec2_scaling_policy
Fixes #7505
11 years ago
James Cammarata a760299170 Catch failed connection due to a bad region in ec2_scaling_policy
Fixes #7506
11 years ago
Kevin Bell e0a4c389f3 Fixed asg instance count polling 11 years ago
Kevin Bell 426a827b46 Fix default availability zone list 11 years ago
James Cammarata 26aaa7bcdd Fix typo in nova_keypair import of exceptions from novaclient
Fixes #7640
11 years ago
James Cammarata b3bbca03d5 Add additional params to get_target_from_rule method in ec2_group
Fixes #7592
11 years ago
James Cammarata 9f0d496d67 Fixing version_added strings for new features in ec2_elb_lb
Fixes #7631
11 years ago
James Cammarata 609fd2e993 Merge branch 'rax-meta' of https://github.com/sivel/ansible into sivel-rax-meta 11 years ago
evanccopengeo fac9a64d23 fixing problem where ansible would error out because Amazon was saying the group didnt exist yet (needed to wait a few more seconds for amazon to propagate correctly) 11 years ago
Christoph Dwertmann 5cab159bda Don't use deprecated BaseException.message in keystone_user
fixes error "failed to parse: <attribute 'message' of 'exceptions.BaseException' objects>
TypeError: <attribute 'message' of 'exceptions.BaseException' objects> is not JSON serializable"
11 years ago
Matt Martz 7dd5b731d2 Mention that user_data can be a file path or a string 11 years ago
Matt Martz 70881d5489 Switch functions over to kwargs to make it easier to manage in the future 11 years ago
Matt Martz 4ca7840861 Add user_data and config_drive support 11 years ago
Matt Martz 84b1f21617 Add rax_meta module
Also update rax to mirror meta value normalization from rax_meta
11 years ago
Michael DeHaan 6bc056e012 Merge pull request #6863 from sivel/rax-untouched
rax module: Return untouhced servers with exact_count
11 years ago
CorbanR 42f54238e4 updating example, to be more consistent with parameter names 11 years ago
Sean Whitbeck 796d8db860 Add azure VM provisioning/termination module 11 years ago
Krzysztof Warzecha 8326b7672a vsphere_guest: Add support for setting hardware version (should fix #7206) 11 years ago
Johannes 'fish' Ziemke 352daa0138 Add networking mode parameter (net) to docker
Since 0.11 Docker supports different networking modes (see docker run
--net). This commit add support for that to the ansible docker module.

This depends on
2d58351164
11 years ago
Stephen Paul Suarez 2c8564e787 fix spacing 11 years ago
James Cammarata ba641de69e Merge pull request #7536 from fly/linode-warn-ssl
warn if remote SSL cert is not checked in linode
11 years ago
Jon Chen be7ff82e2d require pycurl for linode module 11 years ago
Stephen Paul Suarez 1edcee5ae8 fix typo 11 years ago
Stephen Paul Suarez d1da454da6 support rw bind mode in docker module 11 years ago
Matt Martz 27ac5b1856 Don't fail in rax_cbs when the volume is not found 11 years ago
Matt Martz 576224e202 Add PTR record support to rax_dns_record 11 years ago
Michael DeHaan ee82681d14 Merge pull request #7501 from sivel/rax-dns-serial-doc
Add notes to rax_dns and rax_dns_record to recommend using serial: 1
11 years ago
Matt Martz 413243186d Add notes to rax_dns and rax_dns_record to recommend using serial: 1 11 years ago
Matt Martz 73c67cea91 Allow public_key to be a path to a file 11 years ago
Atlas Health 26c2491583 Stopped instances can also be terminated 11 years ago
Andrew Snare 0cc6c479bc Support internal-only ELBs in EC2. 11 years ago