Commit Graph

1111 Commits (c52964a6f4595b9e60e059d792a43d6853182cdf)

Author SHA1 Message Date
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
Will Thames d13d7e9404 Fail when attempting to modify unmodifiable target group parameters (#33246)
* Fail when attempting to modify unmodifiable target group parameters

As you can't modify Port, Protocol or VPC id for a target group, fail
when this happens rather than pretending to do it.

One could argue that the target group could be recreated rather than
failing, but this has massive knock on implications to other resources
that depend on the TG (all ASGs would need to be updated, the ELB
listener would need to be updated, etc)

* Use `.get()` instead of direct dictionary access
2017-12-07 15:17:45 -05:00
Brad Macpherson a12cbc3dde [cloud] `ec2_placement_group` module to create/delete EC2 Placement Groups. (#33139)
* Added modules to create, delete, and describe EC2 Placement Groups.

* Remove unnecessary print statement

* Update to use boto3.

* De-linting

* Remove facts from this PR

* Update to newer method of handling Boto3 connections and exceptions.

* Futzing around with imports and HAS_BOTO3

* Fix up exception imports.

* Remove redundant default.

* Handle DryRunOperation errors appropriately.

* Remove redundant BOTO3 check.

* Use shorter licence declaration.

* Remove redundant HAS_BOTO3 import.

* Add AWSRetry decorators to API calls.

* Add new 'strategy' parameter to allow for cluster and spread PGs.
2017-12-07 14:44:09 -05:00
s-hertel 1057ec3dc4 Revert "add support for AWS NLB - fixes #30701 (#30907)"
This reverts commit 78858a5b12.
2017-12-07 10:28:40 -05:00
Deepakkothandan 78858a5b12 add support for AWS NLB - fixes #30701 (#30907)
* add support for NLB

* added version for parameter type
2017-12-07 03:06:50 -05:00
Sloane Hertel 4071cd7a95 Remove check for HAS_BOTO3 since AnsibleAWSModule checks it (#33649) 2017-12-07 08:08:10 +10:00
Brad Macpherson dd041e6f72 Added module to describe EC2 Placement Groups. (#33228)
* Added module to describe EC2 Placement Groups.

* Update to newer way of handling Boto3 connections and exceptions.

* Futzing around with imports and HAS_BOTO3

* Fix up exception imports.

* Fix license block

* Correct task indenting in doc

* Added list-filtering example to docs
2017-12-06 15:36:25 -05:00
Christopher Bradley 71510aa67a iam_role - Add option to supress the creation of instance profiles (fixes #26023) (#32527)
* Defaults to creating the instance profile to preserve current behaviour
2017-12-06 12:46:35 +10:00
Kaz Cheng 60b5c6890a [cloud] Add template_body parameter to cloudformation module to allow lookups (#33485) 2017-12-05 13:42:05 -05:00
Abhijeet Kasurde 807bebaa1f
Add missing msg in fail_json (#33543)
This fix adds msg keyword in fail_json in aws_acm_facts,
cs_host, junos_package module.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2017-12-04 21:57:58 +05:30
Ted Timmons 61cc8b2356 [cloud] Skip StackPolicy when operating on ChangeSets in CloudFormation module (#33401)
Really, the Policy only works on 'create' and 'update'.

(rm my outdated comments too)
2017-11-30 09:08:30 -05:00
Prasad Katti 1cc86167dd fix the return value of route53_zone (#33403)
All the values currently documented as return values are returned inside a 'result' key.
So if you registered the output of the task as 'output', then you would need to do 'output.result.zone_id' instead of 'output.zone_id'.
This commit fixes that so that you can do 'output.zone_id'.
2017-11-30 08:59:43 -05:00
Daniel Temme cdf660ba1b make `instance_monitoring: false` take effect (#33233)
* make `instance_monitoring: false` take effect

Fixes #33200
2017-11-30 10:12:43 +10:00
Brad Chamberlain b10859c192 Adds missing url, public_ip_address, and port keys to cluster dict #33279 (#33288)
Adds missing keys to _collect_facts function
2017-11-28 11:57:49 +10:00
Kaz Cheng 54466fa809 Update facts module to present ansible_friendly tags dictionary on returned nat gateways (#33294) 2017-11-27 16:51:38 +10:00
Brad Chamberlain 8bc74443ad Add option for specifying dc2.large as node type (#33281)
* fixes #33280

adds option for dc2.large node type

* shortens node_type choices line
2017-11-27 09:42:42 +10:00
Simon Fullick 1e46e65103 Fixed typo in aws_api_gateway.py documentation (#33247)
Gateway spelt wrong.
2017-11-24 13:31:38 +10:00
Sloane Hertel e822271d1a Allow delivery delay to be 0 (#33241) 2017-11-24 11:35:58 +10:00
Matt Clay 9735a70059 Fix invalid string escape sequences. 2017-11-21 20:59:08 -08:00
Marc-Aurèle Brothier bd5dc01d65 AWS S3: fix method call for fakes3 S3 backend (#33085)
* AWS S3: fix method call for fakes3 S3 backend

Fixes #33083

Signed-off-by: Marc-Aurèle Brothier <m@brothier.org>

* Auto append port based on proto

Signed-off-by: Marc-Aurèle Brothier <m@brothier.org>
2017-11-21 15:51:16 -05:00
Daniel Shepherd cfbe9c8aee [cloud] Add IPv6 support for ec2_vpc_subnet module(#30444)
* Add integration test suite for ec2_vpc_subnet

* wrap boto3 connection in try/except

update module documentation and add RETURN docs

add IPv6 support to VPC subnet module

rename ipv6cidr to ipv6_cidr, use required_if for parameter testing, update some failure messages to be more descriptive

DryRun mode was removed from this function a while ago but exception handling was still checking for it, removed

add wait and timeout for subnet creation process

fixup the ipv6 cidr disassociation logic a bit per review

update RETURN values per review

added module parameter check

removed DryRun parameter from boto3 call since it would always be false here

fix subnet wait loop

add a purge_tags parameter, fix the ensure_tags function, update to use compare_aws_tags func

fix tags type error per review

remove **kwargs use in create_subnet function per review

* rebased on #31870, fixed merge conflicts, and updated error messages

* fixes to pass tests

* add test for failure on invalid ipv6 block and update tags test for purge_tags=true function

* fix pylint issue

* fix exception handling error when run with python3

* add ipv6 tests and fix module code

* Add permissions to hacking/aws_config/testing_policies/ec2-policy.json for adding IPv6 cidr blocks to VPC and subnets

* fix type in tests and update assert conditional to check entire returned value

* add AWS_SESSION_TOKEN into environment for aws cli commands to work in CI

* remove key and value options from call to boto3_tag_list_to_ansible_dict

* remove wait loop and use boto3 EC2 waiter

* remove unused register: result vars

* revert az argument default value to original setting default=None
2017-11-16 14:58:12 -05:00
Will Thames 46c4f6311a [cloud] Add retries/backoff to ec2_vpc_subnet module (#31870)
* Allow backoff for describe_subnets

Improve exception handling to latest standards

* Add integration test suite for ec2_vpc_subnet

* Add test for creating subnet without AZ

Fix bug identified by test

Fixes #31905
2017-11-16 13:09:42 -05:00
Will Thames 7556ac91e5 [cloud] Allow ec2_lc module to use volume_type for block devices (#32421)
* Allow ec2_lc module to use volume_type for block devices

Makes ec2_lc consistent with ec2, ec2_ami, ec2_vol etc.

* Add deprecation message for device_type
2017-11-16 10:28:41 -05:00
Will Thames 921cc6d650 [cloud] New module elasticache_facts (#30492)
New module for obtaining facts from elasticache clusters

Fixes #30373

* Removed unnecessary boto3 and exception checking

* AnsibleAWSModule checks for lack of boto3
* boto3_conn handles error checking of AWS connection
2017-11-16 10:20:56 -05:00
Will Thames 60b29cf57d [cloud] Follow up on FIXMEs in ec2_ami & ec2_ami tests (#32337)
* Several tests were marked as FIXME and should have been fixed with
the boto3 move.

* Improved tags output. Add purge_tags option (default: no)

* Allow description and tags update

* Return launch_permissions

* Allow empty launch permissions for image creation

* Empty launch permissions should work the same way for image
creation as no launch permissions

* Cope with ephemeral devices in AMI block device mapping

* Ephemeral devices can appear in AMI block devices, and this information should be returned

* Fix notation for creating sets from comprehensions
2017-11-16 10:14:20 -05:00
Sloane Hertel cabd7f078b Fix ec2_snapshot_facts traceback if a snapshot has been deleted (#32217) 2017-11-15 10:56:49 -05:00
Prasad Katti d5e247243f ec2_key - clean up examples (#32714)
* ec2_key - clean up examples

* ec2_key: remove unnecessary example
2017-11-15 22:51:46 +10:00
Prasad Katti e23928cb41 ec2_key: document return values (#32813) 2017-11-14 14:39:54 +10:00
Matt Martz 99d4f5bab4 Remove uses of assert in production code (#32079)
* Remove uses of assert in production code

* Fix assertion

* Add code smell test for assertions, currently limited to lib/ansible

* Fix assertion

* Add docs for no-assert

* Remove new assert from enos

* Fix assert in module_utils.connection
2017-11-13 11:51:18 -05:00
Prasad Katti 306c3508b2 Deprecate ec2_ami_find (#32501) 2017-11-09 11:38:05 +10:00
Sloane Hertel 134b9f50c3 Do not set a default value for description in the iam_role module. (#32629) 2017-11-07 20:14:13 -05:00
Sloane Hertel 680d06d1ab [cloud] remove ec2_asg usage of Python base logging - fixes #32476 (#32508)
* replace logging with module.debug in ec2_asg

* Make module global in ec2_asg.

* Fix the debug messages

* pep8
2017-11-07 16:46:49 -05:00
Will Thames c93ddf5473 Move profile and region checking to module_utils.ec2 (#31921)
* Move profile and region checking to module_utils.ec2

Remove ProfileNotFound checking from individual modules

There are plenty of `if not region:` checks that could be removed,
once more thorough testing of this change has occured

The ec2_asg, iam_managed_policy and ec2_vpc_subnet_facts modules
would also benefit from this change but as they do not have tests
and are marked stableinterface, they do not get this change.
2017-11-07 13:56:17 -05:00
Rob 8b3ca4c537 Fix returning module parameters for iam_role (#30669)
* remove iam_role= from module.exit_json() to match return docs.

* Add back old iam_role= for backwards compat
2017-11-06 16:34:51 -05:00