163 Commits

Author SHA1 Message Date
Joe Keegan
bb4bc01999 update self.template_dict based on new template 2017-12-21 12:10:27 -08:00
NimbusScale
21606bc8ae update support JSON or YAML 2017-12-18 20:44:04 -08:00
Alex M
e75f3ef4d4 Implement execute change set endpoint (#1391) 2017-12-14 12:07:23 +00:00
Alex M
2346e14e00 Add create change set endpoint (#1389) 2017-12-11 09:23:35 +00:00
William Richard
92f5f7b263 Add cloudformation update from s3 support (#1377)
* Fix variable name typo

* Make it possible to delete EC2 instances from cloudformation json

* Add support for updating a cloudformation stack from an s3 template url
2017-12-08 10:48:29 +00:00
Terry Cain
bd8c1e4567
adding owner id to amis v2 (#1331)
* Adding owner-id/OwnerId to the AMI classes to allow the value to be specified to test filtering images based on owner.

* Added default AMIs and filtering by owner-id

* Fixed some tests

* Fixed more random tests

* Updated MANIFEST

* .
2017-11-12 11:18:25 +00:00
Hugo Lopes Tavares
9804d7a963 Evaluate output values
Do not assume output values are string, evaluate them.
2017-10-27 15:31:45 -04:00
Hugo Lopes Tavares
7b074b50a9 Add CloudFormation support to AWS::ElasticLoadBalancingV2::Listener 2017-10-27 14:38:40 -04:00
Hugo Lopes Tavares
dfd41d8c00 Add CloudFormation support to AWS::ElasticLoadBalancingV2::TargetGroup 2017-10-27 14:24:11 -04:00
Hugo Lopes Tavares
8786c2df05 Add CloudFormation support to AWS::ElasticLoadBalancingV2::LoadBalancer 2017-10-27 11:54:55 -04:00
Terry Cain
453da4c8b3
Added CreateEnvironment to cloudformation 2017-10-20 00:51:04 +01:00
Toshiya Kawasaki
2f6f42a183 handle short form function in cfn yaml template (#1103) 2017-09-07 11:28:15 -07:00
Waldemar Hummer
115b9cee3e add CloudFormation model for Kinesis streams 2017-07-20 14:37:53 +10:00
Jessie Nadler
f5106f2cc8 Add Fn::ImportValue support 2017-06-08 18:34:09 -04:00
Jessie Nadler
8e4c79625c Clean Export name and value before appending to exports 2017-06-08 18:34:09 -04:00
Jessie Nadler
d3faaad46b Add Fn::Sub support 2017-06-08 18:34:09 -04:00
Jessie Nadler
711dbaf4fd Simplify Fn::Join parsing 2017-06-08 15:22:16 -04:00
Jessie Nadler
a1549b04b4 Add Fn::Split and Fn::Select support 2017-06-08 15:22:05 -04:00
Steve Pulec
3d886aeadc Merge pull request #972 from nadlerjessie/add-exports
Add exports
2017-06-03 16:34:49 -04:00
Jessie Nadler
9d37992c64 Make all_exports subscriptable 2017-06-02 17:17:22 -04:00
Jessie Nadler
c0afcfade5 Use .items() not .iteritems() 2017-06-02 17:03:16 -04:00
Jessie Nadler
87752457a3 Remove useless list comprehension 2017-06-02 16:57:16 -04:00
Jessie Nadler
c6603c6248 Validate export names are unique 2017-06-02 16:35:19 -04:00
Jessie Nadler
de9ea10eb1 Add list_exports to CloudFormationResponse 2017-06-02 16:31:46 -04:00
Jessie Nadler
a0651ccde5 Add exports to CloudFormationBackend 2017-06-02 16:18:52 -04:00
Waldemar Hummer
da7106cfd6 extended CloudFormation models for Lambda and DynamoDB 2017-06-01 22:43:23 +02:00
Steve Pulec
0fe824277b Merge pull request #923 from JackDanger/jack/cloud-formation-yaml
Allow yaml templates for cloud formation
2017-05-12 18:41:46 -04:00
Jack Danger Canty
9801d22629 The name of yaml exceptions is more consistent between Py2->3 2017-05-11 07:15:07 -07:00
Steve Pulec
0adebeed24 Merge #913. 2017-05-10 21:58:42 -04:00
Jack Danger Canty
bf3fff6e2c Allow yaml templates for cloud formation
Fixes #912
2017-05-01 11:28:35 -07:00
Andrew Garrett
6f4cb512ac Allow CloudFormation stack tags to be updated
Limitations:

* does not update the tags of the resources in the stack. that can be
implemented later.
* does not support the supposed feature of clearing tags by passing an
empty value that boto3 mentions in its documentation. I could not find
anything in the request body to indicate when an empty value was passed.
2017-03-17 23:57:57 +00:00
Steve Pulec
e3bff8b926 Fix cloudformation NoValue parsing to not add attribute. Closes #870 2017-03-16 21:20:01 -04:00
Steve Pulec
e25d1499c2 Update cloudformation for new list types. 2017-03-15 23:02:10 -04:00
Steve Pulec
5807a38092 Merge pull request #858 from spulec/dashboard
Add a dashboard
2017-03-12 20:26:42 -04:00
Steve Pulec
0e2fdf94f9 Cleanup lints. 2017-03-12 20:18:54 -04:00
Steve Pulec
6d422d1f37 Add BaseModel to all models. 2017-03-11 23:41:12 -05:00
Steve Pulec
3b4ef2cf15 Merge in master. 2017-03-05 09:58:39 -05:00
Andrew Garrett
e7735c3ee1 Add event IDs to CF Stack events (#852)
So that events can be uniquely identified.

I tried to match the format documented here:
http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-listing-event-history.html
2017-03-04 23:12:55 -05:00
Andrew Garrett
f6465df630 Return CF Stack events in reverse chronological order (#853)
This is how the AWS API works:
http://boto3.readthedocs.io/en/latest/reference/services/cloudformation.html#CloudFormation.Client.describe_stack_events
2017-03-04 23:00:25 -05:00
David Wilcox
a9554924df make cloudformation update stack use parameters provided (#843) 2017-03-04 22:48:51 -05:00
David Wilcox
bcc3e57949 Cloudformation ResourceMaps incorrectly share namespaces for Conditions and Resources (#828)
* add tests to check CF's conditions and resources have distinct namespace

* separate the resource and condition namespaces for CF
2017-03-04 22:26:23 -05:00
Steve Pulec
3c0c4c2996 Fix tests for py3. 2017-02-23 22:28:09 -05:00
Steve Pulec
f37bad0e00 Lints. 2017-02-23 21:37:43 -05:00
Steve Pulec
81836b6981 Get standalone server mode working for all tests. 2017-02-23 19:43:48 -05:00
Steve Pulec
fde721bed7 Testing new version of decorator. 2017-02-15 22:35:45 -05:00
Steve Pulec
d3df810065 Generalize decorator code. 2017-02-12 00:22:29 -05:00
Jesse Szwedko
e1260bca06 cloudformation: Support RoleARN for create and update stack (#807)
Signed-off-by: Andrew Harris <andrew.harris@getbraintree.com>
2017-01-18 22:59:47 -05:00
Michael Nussbaum
74bbd9c8e5 Various RDS, RDS/Cloudformation, RDS/KMS improvements. (#789)
We need to mock out deploying RDS instances with full disk encryption
and detailed tagging. We also need to be able do deploy these instances
with Cloudformation, and then access them with both boto and boto3.

* Join RDS and RDS2 backends - this makes RDS resources created via
  either of the two boto RDS APIs visible to both, more closely
  mirroring how AWS works
* Fix RDS responses that were returning JSON but should be returning XML
* Add mocking of RDS Cloudformation calls
* Add mocking of RDS full disk encryption with KMS
* Add mocking of RDS DBParameterGroups
* Fix mocking of RDS DBSecurityGroupIngress rules
* Make mocking of RDS OptionGroupOptions more accurate
* Fix mocking of RDS cross-region DB replication
* Add RDS tag support to:
  * DBs
  * DBSubnetGroups
  * DBSecurityGroups

Signed-off-by: Andrew Garrett <andrew.garrett@getbraintree.com>
2017-01-11 21:02:51 -05:00
Andrew Garrett
231d3cadcb Fix the CloudFormation ValidationError message (#788)
It should be a string, not a tuple, and it has a different form.
I'm not sure if it used to be different, but in the most recent
boto3/botocore, the message is "Stack with id {id} does not exist"

```python
>>> cf = boto3.client('cloudformation', region_name='us-west-2')
>>> try:
...     cf.describe_stacks(StackName='adfgfhghg')
... except botocore.exceptions.ClientError as e:
...     print e.response['Error']['Message']
...
Stack with id adfgfhghg does not exist
```

I am on boto3 1.4.2 and botocore 1.4.82 as of this commit message.
2017-01-11 20:36:45 -05:00
Hugo Lopes Tavares
0115267f2a Add ECS CloudFormation support (#795)
* Add cloudformation support to AWS::ECS::Cluster

* Add CloudFormation support to AWS::ECS::TaskDefinition

* Add CloudFormation support to AWS::ECS::Service

* Add support to update AWS::ECS::Cluster through CloudFormation

* Fix Cluster.update_from_cloudformation_json to return original_resource if nothing changed

* Implement TaskDefinition.update_from_cloudformation_json

* Implement Service.update_from_cloudformation_json
2016-12-20 10:37:18 -05:00