Commit Graph

1144 Commits

Author SHA1 Message Date
Will Thames
a685b621cd Route table boto3 (#32059)
* Allow protection of certain keys during camel_to_snake

Create an `ignore_list` parameter that preserves the case
of the contents of certain dictionaries. Most valuable
for `tags` but other uses might arise.

* Port ec2_vpc_route_table to boto3

Update tests to reflect fixes in boto3.

* Add RETURN documentation to ec2_vpc_route_table

* Update DOCUMENTATION to be valid yaml

* Add check mode tests
2018-01-09 20:09:25 -05:00
Will Thames
39af276639 Respect egress rule definitions when creating security groups in default VPC (#34626)
* Add test for unexpected egress rule in default VPC

When passing rules_egress to ec2_group, the default
egress rule shouldn't be created (if `purge_rules_egress`)
is set. Test this.

* Respect egress rule defintions for default VPC groups

When passing rules_egress and purge_rules_egress, the
default egress rule should not be created

Fixes #34429

* Change AWS credential passing to be YAML anchors

Vastly simplify the AWS tasks by reducing the credentials to a YAML
block
2018-01-09 13:44:13 -05:00
Daniel Shepherd
56da2c13d6 [cloud] Add ipv6 support to ec2_vpc_nacl_facts (#30581)
* wrap boto3 connection in try/except and handle exception, add traceback import

* params dont need to be mutually exclusive and support check mode

* add check to set nacl_ids to empty list instead of None for boto3 func

* standard exception handling using traceback

* update current RETURN documentation which is incorrect.

* update logic to check for and return ipv6 cidr instead of ipv4 cidr in a NACL

* ignore default and reserved rule numbers - greater than 32766

* was breaking on non-standard protocol numbers - AWS nacls now support full list -1 to 254

* update port range and icmp type/code handling

* add some more detail to returned nacl entries

* Update exception handling to account for BotoCoreError

Remove exception handling from the boto connection creation since it does nothing

* rules numbers from 32767 to 65535 are reserved for internal AWS use so we ignore here
2018-01-08 16:24:40 -05:00
Vinay Dandekar
f20af4b909 [cloud] Change S3 MD5 checksum for multipart support in aws_s3 (#34216)
- If file has only one part and is uploaded as multipart, it is still computed the same way as having multiple parts
2018-01-08 15:21:45 -05:00
Sloane Hertel
34206a0402 ec2_vpc_vgw_facts: fix getting facts about gateways without tags (#34575) 2018-01-08 13:16:49 -05:00
Sloane Hertel
788010d0f0 [cloud][testing] New integration tests for ec2_asg (#30554)
* Add some integration tests for ec2_asg.

* Remove exception handling from ec2_asg boto3 connection since it is handled in boto3_conn().

* Update test failure assertions

* Use yaml anchor for credentials and remove unnecessary dependencies.

* Move AWS boto3 module credentials tests to separate target

* Remove filters from tests
2018-01-08 11:21:49 -05:00
Will Thames
4d5533c597 Update ec2_asg_lifecycle_hook to meet modern best AWS module practices (#34379)
* Use `AnsibleAWSModule`
* Update exception handling to use `fail_json_aws` and check
  for `BotoCoreError` exceptions associated with bad connection
  parameters.
* Remove connection creation exception handling as it does nothing.
2018-01-03 16:35:24 -05:00
Will Thames
1412d6eb18 Allow ec2_vpc_net to work in non classiclink regions (#34336)
describe_vpc_classic_link only works in regions that support
EC2-Classic.
2018-01-03 15:36:02 -05:00
René Moser
798aa8a2d2 ec2_asg: fix desired_capacity not optional (#34194)
1# Please enter the commit message for your changes. Lines starting
2018-01-03 09:31:34 -05:00
Takuya Sato
a323521e46 ecs_taskdefinition module : proposal : add force_create: true parameter (#23480)
* ecs_taskdefinition module : add `force_create: true` parameter
2018-01-03 08:56:19 -05:00
Mohit Kumar
605243f41f Updating ecs_task_definition module example (#34237)
Appending logConfiguration: parameter for ecs task definition. To define user specific log configuration attribute.
2018-01-03 08:50:53 -05:00
Abhijeet Kasurde
daae4d922a Add missing msg keyword for fail_json (#34387)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-01-03 04:44:53 -05:00
Will Thames
136d902ff3 Update ec2_asg_lifecycle_hook to pass tests
ec2_asg_lifecycle_hook was merged without rerunning tests.

Changes needed to pass tests:
* version_added
* metadata version
* copyright header
2018-01-02 18:09:31 -08:00
Igor (Tsigankov) Eyrich
b14e5c33ab Autoscaling Groups Lifecycle Hooks module (#22412)
New ec2_asg_lifecycle_hook module
2018-01-03 10:30:20 +10:00
Ted Timmons
32929f916a docfixes: spelling, width (#34301)
Remove examples from main section and make sure it is all in the examples. Should helpw ith the HTML breakage (it is too wide for most monitors).

tyop fixes too.
2017-12-29 21:44:21 -05:00
Ted Timmons
2f6fedd91f add aliases to match the names returned by the module (#34276) 2017-12-29 13:51:54 -05:00
Gustavo Maia
8fba6e6684 [cloud] New module aws_scaling_policy (#31241)
* Add scaling_policy module

* Change exception format

* Rename scaling_policy module to aws_application_scaling_policy
2017-12-21 19:47:02 -05:00
Rob
2616f9d713 [cloud] Add encryption support to efs module (#32815)
* Add encryption support to efs module

* Update the exception handling in AWS EFS module
2017-12-21 13:51:46 -05:00
Sloane Hertel
f0cf1b35d5 [ec2_asg_facts] Add exception handling to describing the target groups in case they are in the process of being deleted. (#33997) 2017-12-21 13:48:23 -05:00
Sloane Hertel
cc6331f155 ec2_asg: remove AWSRetry from function with many boto calls (#32512)
* Remove AWSRetry.backoff decorator from function with many boto calls.

* Use retries to describe autoscaling groups
2017-12-21 12:37:22 -05:00
Sloane Hertel
d877c146ab [cloud] ec2_group fix CIDR with host bits set - fixes #25403 (#29605)
* WIP adds network subnetting functions

* adds functions to convert between netmask and masklen
* adds functions to verify netmask and masklen
* adds function to dtermine network and subnet from address / mask pair

* network_common: add a function to get the first 48 bits in a IPv6 address.

ec2_group: only use network bits of a CIDR.

* Add tests for CIDRs with host bits set.

* ec2_group: add warning if CIDR isn't the networking address.

* Fix pep8.

* Improve wording.

* fix import for network utils

* Update tests to use pytest instead of unittest

* add test for to_ipv6_network()

* Fix PEP8
2017-12-20 14:57:47 -05:00
John R Barker
c50da48049 Fix various RST warnings (#34084)
* Fix various RST warnings

* shorter lines
2017-12-20 15:20:05 +00:00
Kim Egede Jakobsen
fd2150f9fa Typo fix (#34088) 2017-12-20 14:53:17 +00:00
Gobin Sougrakpam
e2de3c9776 [cloud] New module - AWS Direct Connect Gateway (#33890)
* Adding module for AWS Direct Connect Gateway

* Fixes for failing checks

* Fix errors for shippable checks

* Fix pep8 errors

* Fixes from review comments

* Simplify logic and add exception handling for every boto3 call

* Fix undefined variable
2017-12-19 17:22:18 -05:00
Sloane Hertel
bf8d695ec3 [ec2_vpc_peer] Remove use of DryRun since the module doesn't support check mode (#34062) 2017-12-19 16:42:26 -05:00
Brian Lamar
fcc79de246 Add support for intra-region VPC peering (#34036)
* [ec2_vpc_peer] Add support for intra-region VPC peering
2017-12-19 16:05:14 -05:00
Øyvind Saltvik
b385e3d725 Add support for adding CORS to S3 bucket on AWS - fixes #29238 (#22284)
* Add aws_s3_cors module for adding/removing CORS to S3 bucket on AWS

Based on code found here but fixes some of the mentioned issues.

https://github.com/ansible/ansible-modules-extras/pull/1177/files
2017-12-19 14:23:51 -05:00
Prasad Katti
ba32827f3b Cleanup route53_zone examples (#34000) 2017-12-18 12:43:15 -05:00
Prasad Katti
2cdbde524b route53_zone: fix the private zone creation example (#33995)
Creating a private hosted zone requires both `vpc_id` as well as `vpc_region`
2017-12-18 12:02:53 -05:00
Prasad Katti
423b5e475e update ec2_vpc_net return values in docs (#33902) 2017-12-18 09:29:29 -05:00
Matthew Staebler
82cd5ffa1d [aws modules] use ec2_url in a few places it was missing (#33954) 2017-12-15 12:06:24 -05:00
Sloane Hertel
cae14e16ac Port ec2_vpc_net to boto3 and add support to expand existing VPCs - fixes #31216 (#33105)
* Port ec2_vpc_net to boto3 and add support to expand existing VPCs

* Add s-hertel as an author for ec2_vpc_net

* Update ec2_vpc_net test for new error triggered by lack of credentials

Fix backwards compatibility

Document new return value

* Fix pep8 and return documentation
2017-12-15 09:41:03 +10:00
Will Thames
ddc3465408 [cloud] Remove repeated error handling and region checking, both now in boto3_conn (#32774)
* Remove boto usage from boto3 modules

* Remove region checking

boto3_conn now takes care of region checking and handles NoRegionError
exceptions with a standard message

boto3_conn also takes care of other connection exceptions too.

* Document boto3 as a requirement for ec2_eni_facts
2017-12-14 16:16:59 -05:00
Mamad Purbo
c52964a6f4 [cloud] support encryption on create S3 folder (#33854) 2017-12-14 16:10:42 -05:00
Stefan Horning
c421878523 [cloud] Return id of ENI in addition to network_interface_id for ec2_eni_facts (#33814)
* Return id of ENI in addition to network_interface_id. To be compatible to ec2_eni.

* Added documentation for the return values of the ec2_eni_facts module

* Fix typo in docs for ec2_eni_facts
2017-12-14 15:02:06 -05:00
Prasad Katti
6995985a52 Pass in '**results' to exit_json only if results is a dict (#33910) 2017-12-14 10:59:56 -05:00
Stefan Horning
e55efc547c [cloud] Bring return parameters for name/arn and subnet ID back to ec2_asg module (#33775)
* Readded vital return parameters to the ec2_asg that have been spared for no obvious reason

* Fix typo in ec2_asg docs

* Fixing another typo in ec2_asg docs.
2017-12-13 10:45:34 -05:00
Ryan S. Brown
bd769bf79a Add iam_role_facts to changelog 2017-12-12 12:21:20 -05:00
Will Thames
c27ded6bbc [cloud] New iam_role_facts module (#32874)
* Add iam_role_facts module

Provide information about IAM roles

* Improve path prefix handling

Add preceding or trailing `/` if not already present
2017-12-12 12:19:53 -05:00
Sloane Hertel
5e24f5c701 [cloud] Ec2 module warning when IP assignment is changed on existing instances (#33783) 2017-12-11 15:21:56 -05:00
Will Thames
3283f46ffa Create common waf module for use by future waf modules (#33003)
Move waf common code into waf module_utils.
This will be used by future waf modules
2017-12-08 15:50:26 -05:00
mikedlr
a95894dfcb ec2_vpc_route_table - unmask exceptions during route create/delete (#32256) 2017-12-08 15:48:09 -05:00
Justin Menga
fa313c58c0 [cloud] Delete stack using CloudFormation role ARN if available 2017-12-08 15:45:27 -05:00
Sloane Hertel
cc802624a6 [cloud] document return values for ec2_lc (#32592) 2017-12-08 15:41:25 -05:00
Matt Doller
bcb19b9d3a [cloud] Enable redshift enhanced vpc routing, dc2.8xlarge type (#33674)
- Adds Enhanced VPC Routing as a configurable option when creating a
  new cluster.  Defaults to 'false'
- Adds the new dc2.8xlarge node type
2017-12-08 15:35:53 -05:00
Prasad Katti
5d579e1e66 [cloud] Port ec2_key module to boto3 (#33075)
* port ec2_key to boto3

* update tests for ec2_key
2017-12-08 15:34:46 -05:00
Prasad Katti
fb0343cd12 Remove default value for 'value' option in route53 module (#32297)
* [route53] Remove default value for 'value' option. Fixes #32296.

* assign value_in the default value after the required_if check
2017-12-08 14:15:41 +10:00
John R Barker
18529a275b Bulk pep8 fixes - hand crafted (#33690)
* Bulk pep8 fixes - hand crafted

Fix by hand the remaining issues that autopep8 couldn't

* Next batch of hand crafted pep8 fixes

* Ignore W503

https://github.com/PyCQA/pycodestyle/pull/499

* Revert more of W503
2017-12-07 19:29:21 -08:00
John Barker
10cd2cd1b7 Manually fix issues that autopep8 introduced
* iam.py 161 -> 160 chars
* lamba -> single line function -> multiline function

Avoid redefining key

iam line length

iam.py now clean
2017-12-07 20:25:55 +00:00
John Barker
c57a7f05e1 Bulk autopep8 (modules)
As agreed in 2017-12-07 Core meeting bulk fix pep8 issues

Generated using:
autopep8 1.3.3 (pycodestyle: 2.3.1)
autopep8 -r  --max-line-length 160 --in-place --ignore E305,E402,E722,E741 lib/ansible/modules

Manually fix issues that autopep8 has introduced
2017-12-07 20:25:55 +00:00