Commit graph

23 commits

Author SHA1 Message Date
Will Thames
7d0e161662 Work to allow security tokens and profiles to work with Ansible
Allow security tokens and profiles to be used as arguments
to the 'common' ec2 modules

Mostly refactoring to provide two new methods,
`get_aws_connection_info`, which results in a dict that can be
passed through to the boto `connect_to_region` calls, and
`connect_to_aws` that can pass that dict through to the
`connect_to_region` method of the appropriate module.

Tidied up some variable names

Works around boto/boto#2100

profiles don't work with boto < 2.24, but this detects for that
and fails with an appropriate message. It is designed to work
if profile is not passed but boto < 2.24 is installed.

Modifications to allow empty aws auth variables to be passed
(this is useful if wanting to have the keys as an optional
parameter in ec2 calls - if set, use this value, if not set,
use boto config or env variables)

Reworked validate_certs improvements to work with refactoring

Added documentation for profile and security_token to affected modules
2014-03-06 16:28:30 +10:00
James Cammarata
f3ef528dfa Modifying the wait logic for newly created images to avoid tracebacks
Fixes #4619
2014-02-26 13:33:31 -06:00
James Cammarata
24759f566c Adding 'validate_certs' option to EC2 modules
When disabled, the boto connection will be instantiated without validating
the SSL certificate from the target endpoint. This allows the modules to connect
to Eucalyptus instances running with self-signed certs without errors.

Fixes #3978
2014-02-13 12:32:49 -06:00
Will Thames
f92e4605ab Create a common EC2 connection argument spec for EC2 modules
Refactor the currently well-factored ec2 modules (i.e. those that already use ec2_connect) to
have a common argument spec. The idea is that new modules can use this spec without duplication
of code, and that new functionality can be added to the ec2 connection code (e.g. security
token argument)
2014-02-06 15:27:41 +10:00
Timur Batyrshin
9ad52632c5 reword "except Error as e:" into "except Error, e:" to be compatible with Python 2.5 (#5852) 2014-02-03 13:00:40 -06:00
willthames
74f9f91abf Move more responsibility to common EC2 module
Moved `AWS_REGIONS` into `ec2` module
Created `ec2_connect` method in `ec2` module
Updated modules able to use `ec2_connect` and `AWS_REGIONS`
2013-12-17 14:07:24 +10:00
James Tanner
077b923f39 Addresses #5276 update documentation for ec2_ami no_reboot parameter 2013-12-12 18:03:00 -05:00
evan82
18f446eac1 Fix ec2_ami no_reboot setting (currently it will not reboot instances to create the AMI)
Line 276: no_reboot = dict(default=True, type="bool"),

This should really default to False (When AMIs are created the machine will reboot before copying the disk).

"When enabled, Amazon EC2 does not shut down the instance before creating the image. When this option is used, file system integrity on the created image cannot be guaranteed."
2013-12-12 15:49:24 -07:00
Jeffrey Nappi
d15eeff010 Corrected documentation in ec2_ami module - no_reboot defaults to yes 2013-12-09 18:57:58 -07:00
Justin Ludwig
bd9e6a74f7 Fix AWS credential params for s3 and other modules
The `ec2_ami`, `ec2_elb`, `ec2_tag`, `ec2_vpc`, `route53`, and `s3` modules
all canonicalize the AWS access and secret key params as
`aws_access_key` and `aws_secret_key`. However, following the fixes for #4540,
those modules now use `get_ec2_creds` from `lib/ansible/module_utils/ec2.py`,
which requires access/secret key params to be canonicalized as
`ec2_access_key` and `ec2_secret_key`. As a result, AWS credentials passed
to those six modules as parameters are ignored (they instead always use
the AWS credentials specified via environment variables, or nothing).

So this change fixes those six modules to canonicalize the
AWS access and secret key params as `ec2_access_key` and `ec2_secret_key`,
allowing them to again accept AWS credentials passed via module params.
2013-11-26 19:29:06 -08:00
Michael DeHaan
08996d78d6 Add version_added to all modules missing version_added information, the docs formatter will now
raise errors when omitted, updated changelog with new modules.
2013-11-18 18:55:49 -05:00
James Tanner
0a5adda059 Fixes #4540 Use shared module snippet to evaluate ec2 credentials 2013-11-01 11:59:24 -04:00
Yap Sok Ann
05a235a318 ec2_ami: Account for AWS's "eventual consistency" with AMI creation.
Calling `ec2.get_image` right after `ec2.create_image` may raise error
"InvalidAMIID.NotFound". This has happend roughly 1 time out of 10 for me.

Other people has bitten by this too:
- 5707f100a0
- http://stackoverflow.com/a/14794952
- https://bitbucket.org/utoolity/bamboo-aws-plugin/pull-request/22/baws-116-fix-ec2-image-task-failing-with/diff
2013-10-04 23:17:04 +08:00
James Cammarata
d9c460ed07 Merge branch 'rb2' of https://github.com/bpennypacker/ansible into bpennypacker-rb2
Conflicts:
	library/cloud/route53
2013-08-23 11:36:45 -05:00
Joshua Lund
fe5154f0c6 Fixing typo in EC2 modules 2013-08-21 18:13:05 -06:00
Bruce Pennypacker
11470fea04 Rebase attempt
No idea if I'm rebasing properly or not.  This is my first attempt.
2013-08-20 15:14:16 -04:00
Michael DeHaan
5c8e5c81de Fix YAML doc errors. 2013-07-21 11:15:06 -04:00
Evan Duffield
c9cd296a09 added note about AMI security 2013-07-08 10:24:22 -07:00
Evan Duffield
56471c52a1 Merge branch 'devel' of https://github.com/evan82/ansible into devel 2013-07-08 09:26:04 -07:00
Evan Duffield
dcc850dccf added region to spec 2013-07-08 09:24:18 -07:00
Evan
eaa9233cc8 Getting timeout errors this morning as AMIs are taking a bit longer to create, so I changed to timeout to 15 minutes 2013-07-03 11:10:39 -07:00
Evan
200f69f9d5 fixed spelling errors, unused variables and unused import 2013-07-03 10:35:32 -07:00
Evan Duffield
dca20ca508 Added module for baking EC2 AMIs 2013-07-02 11:24:40 -07:00