Commit Graph

262 Commits

Author SHA1 Message Date
Matěj Cepl
77dc60ea97 Port test suite from nose to pytest.
This just eliminates all errors on the tests collection. Elimination of
failures is left to the next commit.
2020-11-10 08:23:44 +01:00
waynemetcalfe
0a938f7bb4
issue-3379 iam list_roles: implement PathPrefix, MaxItems and Marker (#3380)
* issue-3379 iam list_roles: implement PathPrefix, MaxItems and Marker

* issue-3379 fix cloudformation test
2020-10-12 12:13:20 +01:00
jweite
49d92861c0
Iam cloudformation update, singificant cloudformation refactoring (#3218)
* IAM User Cloudformation Enhancements: update, delete, getatt.

* AWS::IAM::Policy Support

* Added unit tests for AWS:IAM:Policy for roles and groups.  Fixed bug related to groups.

* AWS:IAM:AccessKey CloudFormation support.

* Refactor of CloudFormation parsing.py methods to simplify and standardize how they call to the models.  Adjusted some models accordingly.

* Further model CloudFormation support changes to align with revised CloudFormation logic.  Mostly avoidance of getting resoure name from properties.

* Support for Kinesis Stream RetentionPeriodHours param.

* Kinesis Stream Cloudformation Tag Support.

* Added omitted 'region' param to boto3.client() calls in new tests.

Co-authored-by: Joseph Weitekamp <jweite@amazon.com>
2020-08-27 10:11:47 +01:00
Guilherme Martins Crocetti
f744356da7
Lambda reserved concurrency (#3215)
* lambda-responses: add method to dispatch concurrency calls

* lambda-resources: add route to handle concurrency requests

* lambda-model: implement put_function_concurrency and concurrency attribute

* put-concurrency-tests: add one simple test

* get_function: add concurrency entry - with test

* lambda-reserved-concurrency: cloudformation support

* lambda-concurrency: implement delete_reserved with tests

* lambda-concurrency: implement get_reserved with tests

* lint

* implementation-cov: mark delete_function_concurrency, put_function_concurrency and get_function_concurrency

* botocore doesn't display concurrency entry for lambdas without it

* lambda(refactor): improvements on response's handler
2020-08-26 11:06:53 +01:00
jweite
736c8b77ce
Fixed Failures in CloudFormation Provisioning of S3 Buckets When Stack has Long Name... (#3169)
* Fixed defect with CloudFormation provisioning of S3 buckets occuring when stack has a long name, resulting in the default S3 bucket name's length exceeding its 63 char limit.

* PR 3169 July 23, 2020 2:57a ET comment: added additional asserts to assure provisioned bucket's name complies.  Fixed bug in my earlier change that could produce default bucket names with illegal upper-case characters in it.

Co-authored-by: Joseph Weitekamp <jweite@amazon.com>
2020-07-29 07:47:18 +01:00
usmangani1
bc1674cb19
CF : Added support for get template summary (#3179)
* CF : Added support for get template summary

* Linting

Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-07-27 14:08:01 +01:00
Steve Pulec
7481d07a3d
Merge pull request #3119 from bblommers/bugfix/dynamodb_table_cfn_output
CFN - Allow DynamoDB table as an Output
2020-07-26 15:30:29 -05:00
usmangani1
a123a22eeb
Fix : cloudFormation dynamodb : delete resource on delete stack (#3120)
* Fix :  cloudFormation dynamodb : delete resource on delete stack

* Delete function for dynamodb

* Added tests for delete stack using dynamodb.

* Added tests for non decorator

* Linting

Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-07-19 11:59:19 +01:00
usmangani1
c5de56ce70
Fix: CloudFormation support status filter in list stacks (#3115)
* Fix: CloudFormation support status filter in list stacks

* Added test for non decorator

Co-authored-by: usmankb <usman@krazybee.com>
2020-07-12 13:39:42 +01:00
Bert Blommers
80761ebb3b #3114 - Allow DynamoDB table as CFN output 2020-07-11 09:46:03 +01:00
Adam Richie-Halford
766f527d37
Add NUMBER and LIST<NUMBER> parsing to cloudformation/parsing.py (#3118)
* Add NUMBER and LIST<NUMBER> parsing to cloudformation/parsing.py

* Fix black formatting error in test_stack_parsing.py
2020-07-11 08:43:45 +01:00
Shane
0f062f68ff
Cloudformation: Fix - validate template yml fixes
This change fixes:
* Replace call to non-existent exception yaml.ParserError
* Catches yaml scanner error for valid json with tabs
* Supply yaml loader to ensure yaml loading throws exception validly for json with tabs and doesn't try to load the json incorrectly
2020-06-30 22:35:47 +01:00
Shane Dowling
80c53d8b5a
Add support for template urls in cfn validation (#3089)
Added as boto supports both TemplateBody and TemplateUrl

* Adds TemplateURL as a validate_template option
* Adds a test to validate this
2020-06-26 14:01:57 +01:00
Shane Dowling
6305f707d2
fix to capture yaml scanner error (#3077) 2020-06-18 09:50:58 +01:00
Steve Pulec
09c061e8a8
Merge pull request #3072 from bblommers/cloudformation-check-name-in-use
CloudFormation - Check stack name in use
2020-06-14 14:01:48 -05:00
Guilherme Martins Crocetti
0dd41d4c32
Cloudformation support for EventSourceMapping (#3045)
* change line position for uuid and last_modified because they're not input parameters

* add event_source_arn validator and setter

* refactor batch_size as setter

* add helper function to parse arn and return source service

* fix for EventSource's create_from_cfn, there was no reference in the lambda object for the esm if created by cfn

* add esm deletion by cloudformation

* remove unused variable in test

* add cfn's update

* add complete implementation of delete_from_cfn

* blacked changed files

* fix test with invalid batchsize for sqs

* Dynamodb2 Table - Bugfix for localindex and implemented get_cfn_attributes

* Dynamodb2 eventsource - fix test to use StreamArn attribute

* Lambda Test - fix test_update_event_source_mapping
2020-06-14 16:03:00 +01:00
Bert Blommers
4556a2f96f #1954 - CF - Check stack name in use 2020-06-14 11:31:44 +01:00
Steve Pulec
ee0328b0a3
Merge pull request #3050 from bblommers/cloudformation-support-dynamodb-streams
CloudFormation - Support DynamoDB Streams
2020-06-11 20:58:19 -05:00
Guilherme Martins Crocetti
e32a60185f
Cloudformation - EventBus support (#3052)
* add EventBus to model's map

* add support for creation of EventBus through cloudformation's api

* add cloudformation's delete

* add cloudformation's update

* add cloudformation's attribute
2020-06-06 11:31:14 +01:00
Bert Blommers
a66b0e5b1a CloudFormation - Support DynamoDB Streams 2020-06-04 07:45:00 +01:00
Guilherme Martins Crocetti
149e307bc9
Rule's cloudformation support for updates (#3043)
* add support to update stack using cloudformation

* blacked test file
2020-06-03 06:54:01 +01:00
Jeremie Tharaud
90e200f0f6
Add missing changes when creating a change set (#3039)
* Display changes when creating a change set

* add change set id and description when describing stack

* fix lint with flake8 and black
2020-06-03 06:08:35 +01:00
Jeremie Tharaud
8fa625c3de
Cfn change set fix outputs (#3033)
* set creation time of the change set

* fix status, execution status, stak id, creation time and update tests
2020-05-29 07:33:24 +01:00
Jeremie Tharaud
162a38bb10
fix missing sure package and region_name (#3031) 2020-05-28 14:14:09 +01:00
Zach Brookler
31ce74a842
Fix autoscaling tags (#3010)
* ENH: Add unit test for propagation tags

* BUG: Add missing translation of boolean PropagateAtLaunch tag values to strings

* BUG: Should really be checking for "true" and not True

* CLN: Black formatting
2020-05-24 12:21:29 +01:00
Steve Pulec
59c71760ff
Keep order in request body to ensure auth signing works. (#3024)
* Keep order in request body to ensure auth signing works.

* Lint.

* More OrderedDict to ensure data parameter order.

* Lint.

* Improve CF test assertions.

* Fix syntax error.

* Cleanup CF test.
2020-05-24 08:51:45 +01:00
Zach Brookler
80b64f9b3f
Cloud formation "depends_on" #2845 Add depends on and update name type mapping (#2994)
* ENH: Add unit test for cloudformation DependsOn

* ENH: Add implementation of retrieving list of resources that account for dependencies

* ENH: Update the name mappings so that they are consistent with the latest cloudformation names

* ENH: Add launch configuration to type names

* ENH: Create subnet for test and test creation with dependencies

* CLN: Code reformatting

* CLN: Remove print statements

* BUG: Fix error resulting in possible infinite loop

* CLN: Remove commented out fixture decorator

* BUG: Remove subnet creation

* CLN: Remove main and ec2 dependencies

* BUG: Add back in instance profile name type

* CLN: Remove print

* BUG: Fix broken unit test

* CLN: Code reformatting

* CLN: Remove main

* ENH: Add autoscaling group name to type names

* ENH: Add unit test for string only dependency and add assertions to unit tests

* ENH: Add unit test for chained depends_on in cloudformation stack

* BUG: Remove f strings for python 2.7 compatibility

* BUG: List needs to be sorted for python2.7

* CLN: Fix code formatting
2020-05-18 09:47:18 +01:00
Steve Pulec
229b3ec196
Merge pull request #2838 from bblommers/feature/2388
CloudFormation - CreateChangeSet should not create resources
2020-04-25 18:44:18 -05:00
Mike Grima
bdeeeb701a
Merge pull request #2880 from bblommers/bugfix/2877
EC2 - Ensure NCI always has a Subnet
2020-04-16 15:02:45 -07:00
Bert Blommers
414fcf7bbd Fix AvailibilityZones in CF tests 2020-04-08 15:14:39 +01:00
Guilherme Martins Crocetti
503eeb51ae style with black 2020-04-01 22:48:40 -03:00
Guilherme Martins Crocetti
c15ca133b8 add support for Fn::GetAtt in event's cloudformation 2020-04-01 22:14:51 -03:00
Guilherme Martins Crocetti
af08d71310 add support for RetentionInDays for LogGroup 2020-04-01 22:14:41 -03:00
Bert Blommers
04f488da62 #2388 - CloudFormation - CreateChangeSet does not create resources, as per spec 2020-03-24 10:22:08 +00:00
Guilherme Martins Crocetti
788b8fb6e1 Add tests for Events::Rule integration with cf 2020-03-23 22:17:02 -03:00
Guilherme Martins Crocetti
98a17dfc46 Add test for boto3 integration 2020-03-22 18:03:42 -03:00
Guilherme Martins Crocetti
7318523b50 Add cloudformation support for EventBridge 2020-03-22 16:56:58 -03:00
Steve Pulec
94f85902bc
Merge pull request #2821 from bblommers/feature/2255
CloudFormation - Add Support for FN:Transform and AWS:Include
2020-03-19 19:40:46 -05:00
Bert Blommers
cbf0397953 #2255 - CF - Implement FN::Transform and AWS::Include 2020-03-18 13:02:07 +00:00
Bert Blommers
3fab3f572f #2773 - CloudFormation - Set CreationDate 2020-03-17 16:09:42 +00:00
Bert Blommers
9163f04292 Linting 2020-03-11 13:19:40 +00:00
Luis Pollo
20364b177a Fix IAM role name when parsed from CloudFormation JSON. 2020-03-11 13:17:35 +00:00
Steve Pulec
b252ab6675
Merge pull request #2173 from sthuber90/master
Extending IoT Policy and Jobs functionality
2020-02-17 17:55:03 -06:00
Steve Pulec
e40d75359a
Merge pull request #2717 from bblommers/feature/s3_illegallocationconstraint
S3 Feature: Add IllegalLocationConstraintException
2020-02-15 10:41:00 -06:00
Bert Blommers
d5a36752d7 Add S3 LocationConstraint to CF tests 2020-02-02 12:44:26 +00:00
Brandon Bradley
8b3c2b6654
fix test 2020-01-30 17:50:21 -06:00
Brandon Bradley
b7795b7111 test for ListStackResources 2020-01-30 16:35:19 -06:00
Stephan Huber
20020c5170 Change whitespaces back to the way they were and fix typos 2020-01-23 15:46:50 +01:00
Stephan Huber
0527e88d46 Merge remote-tracking branch 'upstream/master' 2019-12-23 08:38:53 +01:00
Fabio Dias
743dd46399 black linting 2019-12-16 21:25:20 -05:00
Fabio Dias
fd9ac4b9a5 ACCOUNT_ID moved to moto.core, MOTO_ACCOUNT_ID env var override 2019-12-16 21:05:29 -05:00
Fabio Dias
b83a750630 Added references to moto.iam.models.ACCOUNT_ID instead of hardcoded id 2019-12-16 19:56:11 -05:00
Bert Blommers
8362179f70 Use deprecated IAM, only plays nice with deprecated CF 2019-11-23 10:18:56 +00:00
Bert Blommers
d759f16331 Specify region name when creating Lambda roles 2019-11-22 08:12:47 +00:00
Bert Blommers
c6dd3c96ea AWSLambda - refactor exception handling 2019-11-17 10:59:20 +00:00
Bert Blommers
ad23b65784 Implement CloudFormations IAMRole::GetArn 2019-11-07 11:35:07 -08:00
Bert Blommers
40aa73a12b #2546 - AWS Lambda: Add Role validation when creating functions 2019-11-07 17:11:13 +00:00
Asher Foa
96e5b1993d Run black on moto & test directories. 2019-10-31 10:36:05 -07:00
Stephan Huber
5a9c921d97 Merge remote-tracking branch 'upstream/master' 2019-08-30 14:39:29 +02:00
Randy Westergren
ccceb70397
And event source mapping endpoints and SQS trigger support 2019-08-20 21:54:57 -04:00
Stephan
d0de38601d Merge remote-tracking branch 'upstream/master' 2019-05-28 08:55:50 +02:00
Bendegúz Ács
f408709ef9 VPC IPv4 validation (#2026)
* Implemented throwing invalid subnet range error and fixed breaking tests.

* Implemented throwing invalid CIDR block parameter error for vpcs and subnets.

* Implemented throwing invalid destination CIDR block error.

* IPv6 addresses not accepted, strict checking disabled.

* Implemented throwing invalid subnet conflict error and fixed breaking tests.

* Implemented throwing invalid VPC range error and fixed breaking tests.

* Fixed accidentally removed ).

* Fixed test case trying to create two subnets with the same CIDR range.
2019-05-25 18:35:07 +01:00
Koudai Aono
a61124f774 support to create dynamodb resource by cloudformation (#2219)
* support to create dynamodb resource by cloudformation
2019-05-25 10:16:33 +01:00
Craig Anderson
33efe07b43 Hide CloudFormation pararamters with NoEcho. Fixes #2021 (#2024) 2019-05-21 00:05:02 +01:00
Stephan
5804441d38 Merge remote-tracking branch 'upstream/master' 2019-04-29 12:11:47 +02:00
Steve Pulec
88e1f0fa23
Merge pull request #2015 from corrjo/master
#1514 Stackset Support
2019-04-22 19:04:47 -05:00
Steve Pulec
66dafc6679
Merge pull request #2130 from spulec/bugfix/network-interface-and-private-ip
Add private IP to every NetworkInterface
2019-04-01 15:17:36 -05:00
Mike Grima
921b5a3227 Fixing broken tests #2126
- KMS
- S3
- CloudFormation (Thanks kgutwin!)
2019-03-28 10:09:03 -07:00
Hugo Lopes Tavares
7c62f4a75c Add test to CloudFormation and PrimaryPrivateIpAddress GetAtt
This test would raise an error before d4e39146b7
2019-03-27 16:28:18 -04:00
John Corrales
a6f7f06c30
Merge branch 'master' into master 2019-02-11 17:51:18 -08:00
Mark Challoner
337601b5fb
Add CloudFormation methods delete_change_set, describe_change_set and list_change_sets. 2019-01-21 17:18:50 +00:00
John Corrales
5fb43ee7b6
Operations (#4)
Added stop, list operation results, and describe operation
2019-01-14 22:01:53 -08:00
John Corrales
4207a8e182
Add stacksets (#3)
Added most stack set responses
2019-01-10 21:33:15 -08:00
Jacob Grismo
4f7d6e15c9 adds failing test case for lambda cfm env vars
Adds a failing test case that shows that a Lambda function resource in a CloudFormation template ignores
the Environment variable mapping.
2018-12-28 22:16:07 -05:00
Steve Pulec
5d172d9c97
Merge pull request #1969 from grahamlyons/list-deleted-cloudformation-stacks
Return the deleted stacks in the list stacks call
2018-12-28 21:07:06 -05:00
Steve Pulec
8ba1a09c0d
Merge pull request #1921 from adamdavis40208/cloudformation-validate-spike
Adding cloudformation-validate. Cfn-lint does the heavy lifting.
2018-12-28 20:39:00 -05:00
Stephan
e51d1bfade merge 2018-12-21 12:28:56 +01:00
grahamlyons
4de92accab
Fix existing tests which use list_stacks
The tests are expecting that deleted stacks are not listed when in
fact they should be.
2018-11-27 11:11:13 +00:00
grahamlyons
2d554cd098
Return the deleted stacks in the list stacks call
This matches the behaviour of the AWS API.
2018-11-26 23:58:41 +00:00
adam davis
b66965e6e8 Adding cloudformation-validate. Cfn-lint does the heavy lifting. 2018-11-05 15:16:32 -08:00
Mark Challoner
a0708a70fc
Fix Tags parameter on CloudFormation create_change_set method. 2018-10-29 13:33:30 +00:00
temyers
c3b690114c Add support for CloudFormation Fn::GetAtt to KMS Key (#1681) 2018-07-13 11:40:54 +01:00
Theodore Wong
76c69c0dc5 Added region parameter to boto3 calls 2018-05-31 16:31:04 -07:00
Theodore Wong
da8bd545bf Fixed CF creation to trap imports of non-existent values 2018-05-30 11:59:25 -07:00
Darien Hager
4a275ccf95 Add failing unit-test (errors treating dict as json string) 2018-04-19 23:24:27 -07:00
Ben Jones
c13f77173f add UsePreviousValue support for parameters when updating a CloudFormation stack (#1504) 2018-03-21 09:13:05 -07:00
Steve Pulec
1dd21d6cd6
Merge pull request #1442 from JackDanger/jack/importing-sure-in-tests-that-require-it
importing sure in tests that require it
2018-03-06 22:38:10 -05:00
Steve Pulec
7fa14c81f4
Merge pull request #1425 from whummer/feat/cf-fn-GetAZs
Implement Fn::GetAZs function in CloudFormation
2018-03-06 22:28:31 -05:00
Hugo Lopes Tavares
5f61950096 Make SpotPrice optional when requesting a spot fleet
When price is omitted, AWS will default to the on-demand price
2018-02-01 18:07:35 -05:00
Koudai Aono
0eb02613a0 fix get_template tests to support OrderedDict 2018-01-25 02:37:51 +09:00
Koudai Aono
9ef271fafa Remove unneeded comments 2018-01-25 01:34:27 +09:00
Jack Danger
52f0d0a4e4 importing sure in tests that require it 2018-01-20 19:44:22 -08:00
dbfr3qs
7d0733ad10 hack tests now that boto get_templates returns ordered dicts 2018-01-18 19:40:24 +13:00
Waldemar Hummer
da4a6fe616 implement Fn::GetAZs function in CloudFormation 2018-01-10 22:44:16 -05:00
Gordon Irving
e9b81bb325 add test for vpc tags 2017-12-28 19:27:53 +00:00
Alex M
e75f3ef4d4 Implement execute change set endpoint (#1391) 2017-12-14 12:07:23 +00:00
William Richard
df7a7958c1 Path is an optional property of instance profile cloudformation resource (#1382)
* Path is an optional property of instance profile cloudformation resource

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html

* Path is also optional for iam role clouformation resources

Based on http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html

* Use `properities.get` with a default instead of doing default handling myself
2017-12-14 12:06:04 +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
Hugo Lopes Tavares
aa6a0765c1 Move target group default values to model FakeTargetGroup (#1343)
Before this commit everything that needs to create target groups
had to handle the default values (i.e., cloudformation call & ELBV2Response call)
2017-11-15 19:36:53 +00:00