Commit Graph

2302 Commits

Author SHA1 Message Date
Jack Danger
0ca292b0ca Merge pull request #1289 from terrycain/dynamodb_filter_expression_v2
DynamoDB FilterExpression NOT logic
2017-10-23 09:46:02 -07:00
Jack Danger
72670d5b2d Merge pull request #1259 from tomelliff/fix-running-pending-task-count-attribute
Fix runningTasksCount ECS container instance attribute
2017-10-23 09:43:50 -07:00
Jack Danger
2eec3a5c36 Merge pull request #1197 from terrycain/batch
AWS Batch
2017-10-23 09:43:10 -07:00
Jack Danger
8bf0ed697a Merge pull request #1287 from captainkerk/autoscaling-update-action-fix
update_auto_scaling_group method incorrectly supports LoadBalancerNames
2017-10-23 09:42:19 -07:00
Jack Danger
aaa0202d08 Merge pull request #1285 from captainkerk/autoscaling-load-balancer-target-group-support
Add ELBv2 Support  to Autoscaling Service
2017-10-23 09:41:52 -07:00
Jack Danger
462eceae6f Merge pull request #1283 from terrycain/fix_1276
Fixes #1276 SNS Subject validation
2017-10-23 09:41:17 -07:00
Terry Cain
e9852c381b
Make improvements to filter expression, added NOT keyword 2017-10-22 23:20:00 +01:00
Jack Danger
66a554470b Merge pull request #1286 from terrycain/fix_1282
Fix 1282
2017-10-22 11:53:19 -07:00
Terry Cain
ca3a3633e9
Called terminatejob from canceljob 2017-10-22 13:36:23 +01:00
captainkerk
97ab15d883 boto3 update group method doesnt accept LoadBalancerNames 2017-10-21 22:10:36 +00:00
Terry Cain
ae6f9dcb71
Fixes #1282 2017-10-21 22:10:45 +01:00
captainkerk
993b092083 add target_group support to autoscaling service 2017-10-21 17:29:22 +00:00
Paul Carleton
685e9163a8 Add set-instance-health support 2017-10-20 11:26:23 -07:00
Paul Carleton
21c3775cb1 Add health status to autoscaling instances 2017-10-20 11:26:23 -07:00
Terry Cain
629503398c
Added JobDefinition to cloudformation 2017-10-20 19:10:31 +01:00
Terry Cain
dce81cf875 Fixed typos ;-)
Thanks @hwine
2017-10-20 14:52:24 +01:00
Terry Cain
bca8e11290 Fixes #1276 SNS Subject validation 2017-10-20 13:19:55 +01:00
Jorge Marcial Álvarez Gago
456e5cd25c Fix Error in get-logs request LogEvent instance is not JSON serializable 2017-10-20 12:16:53 +02:00
Jack Danger
3b0afbb570 Merge pull request #1275 from WhileLoop/fix-acm-san-count-check
Check if subject_alt_names is not none before checking length
2017-10-19 18:01:19 -07:00
Terry Cain
9805a279c7
Added JobQueue to cloudformation 2017-10-20 01:06:30 +01:00
Terry Cain
453da4c8b3
Added CreateEnvironment to cloudformation 2017-10-20 00:51:04 +01:00
Argishti Rostamian
427705c9f0 check is subject_alt_names is not none before checking length 2017-10-19 14:53:56 -07:00
Terry Cain
d67ef8d128
Merge branch 'master' into batch 2017-10-19 21:16:40 +01:00
Argishti Rostamian
760f466a9c Fix timezone mismatch in acm certificate created date and now date check 2017-10-18 17:30:00 -07:00
Terry Cain
b40c5e557e Fixed S3 versioning bug + minor cleanup (#1272)
* Fixed S3 versioning bug + minor cleanup

Fixes 1271

* flake8
2017-10-18 16:22:35 -07:00
John Kerkstra
b8a0cfd6f7 filter out already related elbs to prevent duplicates (#1270) 2017-10-18 14:23:14 -07:00
Andrew Miller
194da53a0e Correct the type of a default attribute in SNS PlatformEndpoint (#1267)
The `Enabled` Attribute in the PlatformEndpoint of SNS current returns a boolean, however, the 'enabled' property is expecting a string as `.lower()` is called on the result.

This change simply changes the default from `True` to `'True'` so the property works as expected.
2017-10-17 10:42:29 -07:00
John Kerkstra
b8bb6c2dcf Fix bug with update_attached_elbs (#1266)
* fixed bug where we were using elb_backend.describe_load_balancers
incorrectly, returning all available load balancers when we wanted none.

* improve skip, clean up tests
2017-10-16 22:04:47 -07:00
John Kerkstra
0af3427c15 Add autoscaling load balancer methods (#1265)
* add attach_load_balancers, detach_load_balancers,
describe_load_balancers methods

* prefer using amzn_request_id decorator to generate unique request ids
2017-10-16 19:07:00 -07:00
John Kerkstra
5ef236e966 Add attach_ and detach_instances methods to autoscaling service (#1264)
* add detach_instances functionality to autoscaling service

* use ASG_NAME_TAG constant

* cleanup models method a bit, add mocked DetachInstancesResult to
response template

* add attach_instances method
2017-10-16 17:09:51 -07:00
Terry Cain
49ddb500a8 AWS X-Ray client mock. (#1255)
* X-Ray Client SDK patched

Fixes #1250

* Fixed flake8

* Fixed some issues

* Fixed flake8

* Fixed more typos

* Fixed python2 string

* Fixed aws-sdk patch order

* Added more test cases to test the patching
2017-10-16 17:06:22 -07:00
Terry Cain
2bb3e841d1 Fixed #1261 dynamodb FilterExpression bugs (#1262)
* Fixed #1261 dynamodb FilterExpression bugs

FilterExpression was incorrectly handling numbers, stupid typo there. Also >= <= and <> was not being parsed correctly.

* Switched up logic a bit for better end result. Fixes #1263

* Fixed another bug
2017-10-16 13:56:03 -07:00
Terry Cain
f3623e3cd3 Fix for #1258 (#1260)
* Fix for #1258

* Updated doc link
2017-10-12 13:59:02 -07:00
Tom Elliff
51afd54229 Fix runningTasksCount ECS container instance attribute
ECS container instances have attributes of 'runningTasksCount' and 'pendingTasksCount'.
See Boto3 docs here: http://boto3.readthedocs.io/en/latest/reference/services/ecs.html#ECS.Client.describe_container_instances
REST API docs here: http://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeContainerInstances.html#API_DescribeContainerInstances_ResponseSyntax
2017-10-12 13:26:19 +01:00
Terry Cain
e3024ae1ba
Implemented Terminate, Cancel and List jobs 2017-10-11 23:46:27 +01:00
Terry Cain
ddd52a5a97
Merge branch 'master' into batch 2017-10-11 23:02:47 +01:00
Brian Pandola
8021098815 Remove newlines from create-access-key response 2017-10-11 10:57:15 -07:00
Jack Danger
aa46795ade Merge pull request #1252 from JackDanger/jack/implement-sqs-queuedoesnotexist-error
implement SQS QueueDoesNotExist error
2017-10-10 13:36:45 -07:00
Jack Danger
dc40fce146 implement SQS QueueDoesNotExist error 2017-10-10 13:05:48 -07:00
Terry Cain
9a6ded32ea
More spelling 2017-10-08 10:36:02 +01:00
Terry Cain
9f59f1f7ca
Spelling fix ;-) 2017-10-08 10:34:30 +01:00
Terry Cain
d145b5dc18
Possible fix 2017-10-08 04:57:40 +01:00
Terry Cain
35a69d9f61
Merge branch 'master' into scan_filter_expression 2017-10-08 04:31:34 +01:00
Jack Danger
731bb39fe1 Merge pull request #1239 from terrycain/new_ec2_instance_id_style
Use long format for EC2 instance ID
2017-10-07 20:31:06 -07:00
Terry Cain
77fcafca18
Cleaned up code 2017-10-08 04:18:25 +01:00
Terry Cain
a5895db4f8
Python27 string type fix 2017-10-07 22:20:16 +01:00
Terry Cain
c86bece382
Added FilterExpression to dynamodb scan 2017-10-07 21:57:14 +01:00
William Johansson
88fb732302 Support wildcard tag filters on SecurityGroups 2017-10-06 21:55:01 +02:00
David Morrison
3d3d0e916e minor bugfixes and added tests 2017-10-05 18:46:58 -07:00
Terry Cain
e135344f0c
Added simple SubmitJob and DescribeJobs 2017-10-06 01:21:29 +01:00
David Morrison
8ca7ccfcb5 add support for the modify_spot_fleet_request operation 2017-10-05 12:50:42 -07:00
Terry Cain
6eb755029c
fix flake8 2017-10-05 00:09:10 +01:00
Terry Cain
0ca3fcc7a2
Added DescribeJobDefinitions 2017-10-05 00:00:40 +01:00
Terry Cain
558f246115
Added RegisterJobDefinition 2017-10-04 20:17:29 +01:00
Terry Cain
4a45acc216
Implemented Update and Delete job queue 2017-10-04 18:52:12 +01:00
Terry Cain
93b8da0437
Use long format for EC2 instance ID 2017-10-04 01:21:30 +01:00
Terry Cain
2249eee49d
Potential fix V3 2017-10-04 01:13:34 +01:00
Terry Cain
8441e44e80
Possible fix V2 2017-10-04 01:09:28 +01:00
Terry Cain
8cb381f725
Possible import order fix 2017-10-04 00:20:39 +01:00
Terry Cain
15218df12f
Added CreateJobQueue and DescribeJobQueue 2017-10-03 23:21:06 +01:00
Terry Cain
88a11b21ae
Added DeleteComputeEnvironment and UpdateComputeEnvironment 2017-10-03 22:35:30 +01:00
Terry Cain
a027f86cc8
Merge branch 'master' into batch 2017-10-03 19:37:53 +01:00
Chris Keogh
9bb07e6b6e add awslambda.add_permission 2017-10-03 20:02:23 +13:00
Chris Keogh
b994cf5291 add more realistic policy 2017-10-03 14:52:00 +13:00
Chris Keogh
fc9c250922 add basic awslambda get_policy 2017-10-03 13:33:50 +13:00
Jack Danger
95a4bd5a7b supporting python 3 2017-10-02 15:25:02 -07:00
Jack Danger
867fc3b7f7 Removing dicttoxml dependency 2017-10-02 15:10:06 -07:00
Jack Danger
04542dccc0 implement elbv2 ResourceInUseError 2017-10-02 12:35:52 -07:00
Jack Danger
0c07c4467a Merge pull request #1224 from JackDanger/jack/implement-attached-group-policies
Implement IAM attached group policies
2017-10-01 17:00:27 -07:00
Jack Danger
353f8387a2 implementing detach_group_policy 2017-10-01 15:05:33 -07:00
Jack Danger
3788e42f35 implement handlers for iam attached group policies 2017-10-01 15:01:52 -07:00
Jack Danger
37ae61871c add model methods for iam attached group policies 2017-10-01 15:01:33 -07:00
Brian Pandola
ab595279ad Fix boto/boto3 multi-param discrepancies
boto uses the param.member.N syntax, but boto3 replaces the generic
.member with a more specific identifier.

Example:
boto: ClusterSecurityGroups.member.N
boto3: ClusterSecurityGroups.ClusterSecurityGroupName.N

This commit addresses this issue for the ClusterSecurityGroups, SubnetIds,
and VpcSecurityGroupIds parameters.
2017-09-30 21:51:05 -07:00
Terry Cain
9af88bf206
Fixed batch errors 2017-09-29 23:43:03 +01:00
Terry Cain
f95d72c37c
Finialised create compute environment + describe environments 2017-09-29 23:29:36 +01:00
Terry Cain
ea10c4dfb6
Merge branch 'master' into batch 2017-09-29 22:11:15 +01:00
Brian Pandola
5bb6b98f6d Implement Redshift Taggable Resources (#1217)
- Implement create_tags, describe_tags, and delete_tags endpoints
- Clusters, Parameter Groups, Security Groups, Snapshots, and Subnet Groups can all be tagged
- Test Suite updated
- Minor clean-up of restore_from_cluster_snapshot endpoint
- Miscellaneous typo fixes
2017-09-27 17:18:28 -07:00
Alexander Mohr
9008b85299 lambda + SNS enhancements (#1048)
* updates

- support lambda messages from SNS
- run lambda in docker container

* decode output

* populate timeout

* simplify

* whoops

* skeletons of cloudwatchlogs

* impl filter log streams

* fix logging

* PEP fixes

* PEP fixes

* fix reset

* fix reset

* add new endpoint

* fix region name

* add docker

* try to fix tests

* try to fix travis issue with boto

* fix escaping in urls

* fix environment variables

* fix PEP

* more pep

* switch back to precise

* another fix attempt

* fix typo

* fix lambda invoke

* fix more unittests

* work on getting this to work in new scheme

* fix py2

* fix error

* fix tests when running in server mode

* more lambda fixes

* try running with latest docker

adapted from aiodocker

* switch to docker python client

* pep fixes

* switch to docker volume

* fix unittest

* fix invoke from sns

* fix zip2tar

* add hack impl for get_function with zip

* try fix

* fix for py < 3.6

* add volume refcount

* try to fix travis

* docker test

* fix yaml

* try fix

* update endpoints

* fix

* another attempt

* try again

* fix recursive import

* refactor fix

* revert changes with better fix

* more reverts

* wait for service to come up

* add back detached mode

* sleep and add another exception type

* put this back for logging

* put back with note

* whoops :)

* docker in docker!

* fix invalid url

* hopefully last fix!

* fix lambda regions

* fix protocol

* travis!!!!

* just run lambda test for now

* use one print

* fix escaping

* another attempt

* yet another

* re-enable all tests

* fixes

* fix for py2

* revert change

* fix for py2.7

* fix output ordering

* remove this given there's a new unittest that covers it

* changes based on review

- add skeleton logs test file
- switch to docker image that matches test env
- fix mock_logs import

* add readme entry
2017-09-27 16:04:58 -07:00
Jack Danger
53d8d48e88 Revert "Merge pull request #1209 from JackDanger/jack/store-as-python"
This reverts commit 2a3fdf6b64, reversing
changes made to a06145d781.
2017-09-27 13:58:56 -07:00
Jack Danger
4c1d0c3f5f Store JSON in Python for instance types
This allows it to be bundled in the distributed app more simply
2017-09-27 13:50:48 -07:00
Jack Danger
f09162038d Merge pull request #1194 from terrycain/bug_1189
SNS Publish by phone number
2017-09-27 11:52:03 -07:00
Jack Danger
7fb8eb3434 Merge pull request #1195 from terrycain/polly
AWS Polly implementation
2017-09-27 11:20:55 -07:00
Jack Danger
72243f7b7b Merge pull request #1201 from gvlproject/fix_console_filter_regression
Fix for regression in get_console_output()
2017-09-27 11:07:30 -07:00
Terry Cain
c888d65d6d
Added constant containing instance types 2017-09-27 17:29:58 +01:00
Terry Cain
6feaced0bf
Script to get instance info 2017-09-27 17:27:36 +01:00
Nuwan Goonasekera
5b01071bd4 Fix for regression in get_console_output() 2017-09-27 20:26:45 +05:30
Terry Cain
56e4300ad4
Added preliminary CreateComputeEnvironment 2017-09-26 22:22:59 +01:00
Terry Cain
dfb712848d
Fixed issue with server routing 2017-09-26 20:43:58 +01:00
Terry Cain
f9c8836d54
. 2017-09-26 19:55:44 +01:00
Terry Cain
e61b9cc682
Added utf8 comment to top of resources.py 2017-09-26 19:47:26 +01:00
Terry Cain
993e74dc77
Added tests 2017-09-26 19:42:37 +01:00
Terry Cain
bba6d23eae Started on batch 2017-09-26 17:37:26 +01:00
Terry Cain
fcacecbef0 Nearly finished Polly implementation 2017-09-26 16:46:18 +01:00
Terry Cain
56c65bc67c
Added in publish by phone number 2017-09-26 00:21:07 +01:00
Terry Cain
745263857f
Fix parsing non V4 Authorization headers 2017-09-25 23:28:18 +01:00
Jack Danger
8e79fadb0f Merge pull request #1174 from terrycain/acm
ACM Implementation
2017-09-25 14:36:08 -07:00
Jack Danger
84e4f1ff92 Merge pull request #1182 from mikegrima/s3bug
Fixed bug in S3 put_bucket_tagging. Closes #1181.
2017-09-25 14:06:36 -07:00
Jack Danger
d41bb2e875 Merge pull request #1183 from terrycain/xray
AWS X-Ray
2017-09-25 14:06:24 -07:00
Jack Danger
23d4a672bb Merge pull request #1184 from terrycain/route53_id_fix
Updated R53 ID's to match what AWS do now
2017-09-25 14:00:10 -07:00
Jack Danger
c91cdee603 Merge pull request #1187 from dbfr3qs/master
Return consumed capacity correctly for dynamodb2.get_item, put_item, update_item
2017-09-25 13:59:33 -07:00
Loukas Leontopoulos
4393a4f76c Change checks for handling same layer name un different stack 2017-09-25 14:49:08 +03:00
Chris Keogh
631252dd50 Merge branch 'master' of https://github.com/spulec/moto 2017-09-25 11:40:02 +13:00
Chris Keogh
84bd16d2a2 get_item update_item return capacity consumed correctly 2017-09-25 11:39:09 +13:00
Terry Cain
0bd3899cb3
Finished X-Ray + fixed routing bug 2017-09-23 11:02:25 +01:00
Ron Rothman
e230407074 ssm get_parameter to honot WithDecryption 2017-09-23 01:41:10 -04:00
Terry Cain
7ea4d8c3e6
Fixed missing backend declaration 2017-09-23 00:08:31 +01:00
Terry Cain
983ae57868
Changed urllib to six equivalent 2017-09-23 00:05:25 +01:00
Terry Cain
a401b4f36d
Merge branch 'master' into xray 2017-09-22 23:56:43 +01:00
Terry Cain
17d9701d19
Updated R53 ID's to match what AWS do now 2017-09-22 23:50:01 +01:00
Terry Cain
edd10aaa19
Started Work on X-Ray
Could help #1006
2017-09-22 23:36:26 +01:00
Mike Grima
7167e09ca5 Fixed bug in S3 put_bucket_tagging. Closes #1181. 2017-09-22 13:35:00 -07:00
Jack Danger
d692219927 Merge pull request #1180 from terrycain/sqs_improvement
SQS Cleanup, and fix #1105
2017-09-22 13:23:20 -07:00
Terry Cain
81e615f5c1
Fixed conflicting arguments 2017-09-22 20:37:32 +01:00
Terry Cain
219ed45f94
Flake8 2017-09-22 20:29:40 +01:00
Terry Cain
932cab7f76
Fixed typo 2017-09-22 20:24:14 +01:00
Terry Cain
a91c025398
Cleanup, and fix #1105 2017-09-22 20:08:20 +01:00
Jack Danger
390fe85137 supporting httpretty requests 2017-09-22 10:44:55 -07:00
Jack Danger
ea66a71765 supporting signed urls for private keys 2017-09-22 10:44:37 -07:00
Jack Danger
eb220cc6fb Merge pull request #1177 from terrycain/cloudwatch
Cloudwatch Implementation
2017-09-22 10:10:02 -07:00
Terry Cain
c965fdd47f Added dashboard methods + tests 2017-09-22 16:38:20 +01:00
Terry Cain
4029afeb5b Added method stubs 2017-09-22 15:20:33 +01:00
Terry Cain
e3034275db Finished ACM + tests 2017-09-22 14:26:05 +01:00
Terry Cain
edbbbf6d20 Nearly finished implementation and tests 2017-09-22 11:21:36 +01:00
Jack Danger
4213f88c6b Merge pull request #1166 from terrycain/sns_full
Complete SNS API
2017-09-21 22:30:32 -07:00
Chris Keogh
d0f38407a1 update expression attribute test 2017-09-22 15:52:32 +12:00
Chris Keogh
87d7cacda6 Merge branch 'master' of https://github.com/spulec/moto 2017-09-22 15:44:44 +12:00
Chris Keogh
8840495f77 add AttributeValueNames for basic ProjectionExpressions on query 2017-09-22 15:40:30 +12:00
Chris Keogh
037b357029 add basic projection expressions 2017-09-22 13:12:24 +12:00
Terry Cain
ea318edc94
Flake8 2017-09-22 00:22:50 +01:00
Terry Cain
283b67cb9b
Added nearly all ACM method implementations
Added cryptography>=2.0.0 to install deps
Created base backend and certificate objects
Implemented most of the methods
Added pregenerated certs
2017-09-22 00:20:26 +01:00
Terry Cain
9e19243310
Started ACM framework 2017-09-21 21:44:34 +01:00
Terry Cain
18cb0bce54
General tidy up 2017-09-21 21:16:00 +01:00
Jack Danger
1bd842499e Merge pull request #1169 from JackDanger/jack/public-read-for-public-bucket
S3 keys inherit bucket ACL
2017-09-21 10:40:59 -07:00
Jack Danger
5fc87f8b2b Merge pull request #1165 from JackDanger/jack/import-all-aws-managed-policies
Adding all 278 AWS-managed policies
2017-09-20 19:09:59 -07:00
Jack Danger
ca7661bc1e S3 keys inherit bucket ACL 2017-09-20 19:04:23 -07:00
Jack Danger
727f757bc4 regenerating policies 2017-09-20 18:12:30 -07:00
Terry Cain
19074c535c
Added ConfirmSubscription + Tests + checks
For now subscriptions do nothing, but if we go the route of handing out subscribe tokens, I
have layed the groundwork for validating that
2017-09-20 21:47:02 +01:00
Terry Cain
ef8a97f6c3
Implemented Add/RemovePermission + Tests 2017-09-20 21:13:26 +01:00
Terry Cain
f7f80293c7
Implemented OptInPhoneNumber + Tests 2017-09-20 20:56:37 +01:00
Chris Keogh
51c3fec6dd fix scan return CapacityUnits 2017-09-20 13:57:26 +12:00
Terry Cain
1281ac86d5
Implemented ListPhoneNumbersOptedOut + Tests 2017-09-20 00:03:58 +01:00
Terry Cain
ba8a2ccfc5
Implemented CheckIfPhoneNumberIsOptedOut + Tests + Error code 2017-09-19 23:54:13 +01:00
Terry Cain
57d94d56c3
Implemented SNS.SetSMSAttributes & SNS.GetSMSAttributes + Filtering
TODO:
AddPermission / RemovePermission
CheckIfPhoneNumberIsOptedOut
ConfirmSubscription
ListPhoneNumbersOptedOut
OptInPhoneNumber
2017-09-19 22:48:46 +01:00
Jack Danger
b840cb7455 fixing whitespace on AWS managed policies 2017-09-19 14:19:29 -07:00
Jack Danger
8f2f7fa20d Adding a script to import all of AWS' managed policies
fixes #1118
2017-09-19 14:01:08 -07:00
Terry Cain
16e0326fe7
Fixed #1162 2017-09-19 21:43:55 +01:00
Jack Danger
066382fabc Merge pull request #1156 from terrycain/master
Added SSM GetParameter support
2017-09-18 14:00:05 -07:00
Terry Cain
783c287e51
Added non existant parameter test + needed error responses 2017-09-18 21:27:56 +01:00
Nuwan Goonasekera
ca56955a97 Added invalid id exceptions when filtering vpcs and subnets 2017-09-18 23:38:39 +05:30
Nuwan Goonasekera
08c4eff0b2 Added invalid id exceptions when filtering snapshots and volumes 2017-09-18 23:38:04 +05:30
Nuwan Goonasekera
298772ca92 Raise InvalidGroup.NotFound in DescribeSecurityGroups 2017-09-18 19:51:01 +05:30
Terry Cain
cf7e07b728 Added GetParameter support 2017-09-18 14:13:02 +01:00
Jack Danger
2937cf4c45 Merge pull request #1151 from JackDanger/jack/enforce-s3-acls
enforce s3 acls
2017-09-16 20:16:54 -07:00
Jack Danger
4b7a157560 implement target group tagging 2017-09-16 19:53:09 -07:00
Jack Danger
2055bb62f5 enforce s3 acls 2017-09-16 12:49:07 -07:00
Jack Danger
35feb9feb7 Merge pull request #1150 from gvlproject/refactor_filtering
Refactored handling of unknown filter names
2017-09-16 12:07:13 -07:00
Jack Danger
a7049acf70 Merge pull request #1149 from gvlproject/fix_disassociate_address
Fix for instance public ip not being cleared on eip disassociation
2017-09-16 06:43:45 -07:00
Nuwan Goonasekera
7ed1036ba8 Replaced direct querystring access with inherited _get_param 2017-09-16 19:05:32 +05:30
Nuwan Goonasekera
17d62d9266 Replaced redundant sequence_from_querystring with inherited _get_multi_param 2017-09-16 17:08:21 +05:30
Nuwan Goonasekera
6c7b0bdea0 Refactored handling of unknown filter names 2017-09-16 13:56:07 +05:30
Nuwan Goonasekera
0953ddde51 Fix for instance public ip not being cleared on eip disassociation 2017-09-16 12:26:43 +05:30
Jack Danger
b3ce255eee Merge pull request #1148 from gvlproject/vpc_address_filtering
Improved support for VPC Address filtering
2017-09-15 14:22:21 -07:00
Nuwan Goonasekera
8776129816 Improved support for VPC Address filtering 2017-09-16 01:49:57 +05:30
Nuwan Goonasekera
c116c57eb8 Ensure root device is listed in block device mappings 2017-09-15 21:30:32 +05:30
Chris Keogh
101dfaa412 fix tests for python 3.x 2017-09-15 15:41:48 +12:00
Chris Keogh
2c8326e9b9 allow get_function for lambda created with zipfile 2017-09-15 14:49:32 +12:00
Jack Danger
849ebfb96c Merge pull request #1138 from dbfr3qs/master
Add invoke_async to aws_lambda
2017-09-14 11:14:12 -07:00
Jack Danger
540cfddaf8 Merge pull request #1140 from gvlproject/master
Added keypair filtering
2017-09-14 11:12:04 -07:00
Nuwan Goonasekera
d0c610c5ac Added keypair filtering 2017-09-14 14:59:13 +05:30
Chris Keogh
c20d365021 fix merge conflicts 2017-09-14 14:30:55 +12:00
Chris Keogh
a379d76cfc add aws_lamba.invoke_async method 2017-09-14 13:59:35 +12:00
Jack Danger
2f997a7349 Merge pull request #1134 from brianrower/feature/add-operation-with-update-expression
Add support for the ADD and DELETE operations in dynamodb update expressions
2017-09-13 15:24:55 -07:00
Jack Danger
11b7284b83 Merge pull request #1135 from oharaandrew314/lambda-tags
add Lambda tag_resource, untag_resource, and list_tags methods
2017-09-13 15:21:21 -07:00
aohara-admin
98f95dd4a7 add Lambda tag_resource, untag_resource, and list_tags methods 2017-09-13 15:41:49 -04:00
Brian Rower
c1c592609a Fix python 2.7 issue 2017-09-12 23:30:15 -07:00
Brian Rower
6affc7a4ec Add basic support for the add operation in an update operation
Add basic delete functionality


Improve testing coverage and make behave more like actual dynamo on errors


Lint fix
2017-09-12 21:42:29 -07:00
Chris Keogh
6ee204e458 fix server mode test 2017-09-12 14:55:43 +12:00
Chris Keogh
2a66ae2bfd fix linting errors 2017-09-12 11:18:48 +12:00
Chris Keogh
722859748e Merge branch 'master' of https://github.com/spulec/moto into add-empty-string-validation-exception 2017-09-12 10:52:46 +12:00
Chris Keogh
ed820cc80e return validation error for empty attribute 2017-09-12 09:28:36 +12:00
Jack Danger
d7e64fc927 Merge pull request #1127 from brianrower/feature/add-string-set
Dynamodb2 - Allow doing an ADD update_item of a string set
2017-09-11 12:33:41 -07:00
Jack Danger
550562cbd4 Merge pull request #1092 from ssolari/issue#1091
fix uppercase only issue in update_expression #1091
2017-09-11 12:33:09 -07:00
Brian Rower
386ac94abe Allow doing an ADD update of a string set
Fix test
2017-09-11 12:07:34 -07:00
Julien Duchesne
83dd9559db Handle "max-keys" in list-objects 2017-09-10 10:42:17 -07:00
Jack Danger
1d600011c5 Merge pull request #1123 from julienduchesne/handle-starting-token
Handle starting token in the 'list-objects' query
2017-09-10 10:37:53 -07:00
Julien Duchesne
14dec68f15 Remove superfluous space 2017-09-09 00:27:54 -04:00
Julien Duchesne
0ddbcb5464 Handle 'marker' paginating parameter in the list-objects query 2017-09-09 00:25:02 -04:00
Jack Danger
d2a234f75d falling back to use nic' 2017-09-08 16:30:21 -07:00
Jack Danger
5a03497367 rendering vpc_id in ec2 responses 2017-09-08 15:07:44 -07:00
Mike Grima
5d8cd22b01 Fixed S3 lifecycle error message. (#1110)
Fixes #1109
Also added PutBucketTagging support
Also added Bucket CORS support
2017-09-07 11:30:05 -07:00
Toshiya Kawasaki
b922af8ab7 set None to ecs taskdefinition volumes called when called from cfn (#1104) 2017-09-07 11:28:56 -07:00
Toshiya Kawasaki
2f6f42a183 handle short form function in cfn yaml template (#1103) 2017-09-07 11:28:15 -07:00
Toshiya Kawasaki
8f0e2e7954 fix TargetGroupNnotFoundError is not definied correctly (#1099) 2017-09-07 11:25:59 -07:00
Mike Grima
76b7101bc3 Fixed a bug where Dynamo registers STS and sts calls go to dynamo (#1097)
Fixes #1095
2017-09-07 11:25:14 -07:00
Toshiya Kawasaki
ee4ca0c39a Support IAM account alias (#1088) 2017-09-07 11:21:44 -07:00
Toshiya Kawasaki
0c3708a8e7 Support SNS subscription attributes (#1087)
* remove code for local test

* Add SNS set_subscription_attributes and get_subscription_attributes
2017-09-07 11:19:34 -07:00
sorensolari
9070b1bf66 fix uppercase only issue in update_expression #1091 2017-08-27 13:57:16 -06:00
Daniel Lutsch
1f6b1b8c4a Add list support to filters (#1083)
* initial pass with TODOs

* add list support to get_object_value

* fix group-id filters

* add tests for sg name and id filters
2017-08-25 23:43:29 -07:00
Daniel Lutsch
945b984538 Add private-dns-name filter and fix regional DNS (#1076)
* add private-dns-name to filter_dict_attribute_mapping

* add region_name attribute to Instance and InstanceResponse

* set dns name based on region

* test private-dns-name and network-interface.private-dns-name filters. checking both regional dns formats

* update test_ec2_classic_has_public_ip_address to use correct dns values
2017-08-23 01:39:50 -07:00
Jack Danger
245e75f7b8 Fixing trailing whitespace in elbv2 cert (#1078) 2017-08-23 00:30:48 -07:00
Jack Danger
ed5059367c Handling the case of missing listeners (#1077) 2017-08-22 23:58:32 -07:00
Toshiya Kawasaki
2ace59a60e fix bug that remove_rule doesnt remove rule correctly (#1074) 2017-08-21 12:30:03 -07:00
Toshiya Kawasaki
ce7eabd44a Envelope sns message when sending to sqs (#1066)
* envelop message when sendig from sns to sqs

* add test for publishing sns message to sqs

* specify separators options to json.dumps to avoid json bug in python2

* remove unused print

* replace time string for testing server mode
2017-08-21 12:29:34 -07:00
Toshiya Kawasaki
b6cc208534 ELBv2 modify_rule changes listener rule partially (#1073)
* modify_rule changes listener rule partially

* fix syntax

* fix outdated code

* fix outdated code
2017-08-21 12:28:58 -07:00
Jack Danger
bd98996a19 Merge pull request #1065 from kawasakitoshiya/toshitanian/validate_elbv2_target_group_name
validate target group name
2017-08-18 08:46:39 -07:00
Toshiya Kawasaki
775b8a953a add validation for target name 2017-08-19 00:36:12 +09:00
Toshiya Kawasaki
d4c6111c40 raise error when name is more than 32 when creating target group 2017-08-18 23:54:28 +09:00
Toshiya Kawasaki
469cfb7b3e fix bug that Names filter dont work at describe_target_groups 2017-08-18 15:56:53 +09:00
Toshiya Kawasaki
ccf4cf28b1 escape json string when sending message from sns mock to sqs mock 2017-08-18 10:23:11 +09:00
Jack Danger
de0d201e40 Merge pull request #1056 from aleerizw/fix/get_parameters_invalid
SSM get_parameters should list InvalidParameters
2017-08-16 14:37:29 -07:00
Toshiya Kawasaki
2b10ef8517 dont use base64 for marker at describe_rules 2017-08-17 04:37:42 +09:00
Toshiya Kawasaki
edc2e70fcf make b64encode work both on python2 and python3 2017-08-17 03:56:01 +09:00
Toshiya Kawasaki
ea2a973813 fix syntax 2017-08-17 03:22:40 +09:00
Toshiya Kawasaki
e07bce003c add set_rule_priorities to elbv2 2017-08-17 03:15:30 +09:00
Toshiya Kawasaki
0aaa624205 Fix respose number of rules of create_rule 2017-08-17 02:29:49 +09:00
Toshiya Kawasaki
9bc6779485 add modify_rules to elbv2 2017-08-17 02:25:39 +09:00
Toshiya Kawasaki
a73fa64043 add describe_rules to elbv2 2017-08-17 01:57:02 +09:00
Toshiya Kawasaki
3ac10945c1 add delete_rule to elbv2 2017-08-17 00:38:05 +09:00
Toshiya Kawasaki
05a2715f4b add create_rule to elbv2 2017-08-17 00:22:00 +09:00
Ali Rizwan
1c96335895 get_parameters should list InvalidParameters
Signed-off-by: Ali Rizwan <ari@hellofresh.com>
2017-08-16 12:49:03 +02:00
Jack Danger
f6fc9c7d54 Merge pull request #1053 from rocky4570/rds-stop-start
Rds stop start
2017-08-14 17:53:32 -07:00
Brian Pandola
bca5047202 Implement additional IAM endpoints
- attach_user_policy
- detach_user_policy
- list_attached_user_policies
2017-08-14 13:55:53 -07:00
rocky4570fft
1c1ef9dc25 the linter is too linty 2017-08-15 00:58:33 +10:00
rocky4570fft
c84e8c86f0 modify to use create_snapshot, add extra tests for certain error conditions 2017-08-15 00:55:09 +10:00
Jack Danger
d22671a756 Merge pull request #1049 from aleerizw/feature/add_ssm_delete_parameters
Added support for SSM delete_parameters
2017-08-13 23:47:03 -07:00
David Cuthbert
672604d3e7 Add support for iam:DetachRolePolicy and iam:DeleteRolePolicy. (#1052)
* Add support for iam:DetachRolePolicy and iam:DeleteRolePolicy.

* Raise proper exceptions for iam:DetachRolePolicy and iam:DeleteRolePolicy when the policy doesn't exist.
2017-08-13 21:58:11 -07:00
rocky4570fft
f2cc60b999 satisfy the flake tests - doesnt like my flakey code :( 2017-08-14 00:41:26 +10:00
rocky4570fft
85dd2440f4 oopsie on api version dates for delete and create snapshot_templates, should be on stop/start rds instances 2017-08-14 00:32:08 +10:00
rocky4570fft
ed39c2ea4e fix up some issues found in unittests - comment out snapshotting until later 2017-08-14 00:27:15 +10:00
rocky4570fft
9687b6e03e get appropritate parameters - doh 2017-08-13 12:05:22 +10:00
rocky4570fft
6c3c6623bf should only call create_snapshot if db_snapshot_identifier is filled 2017-08-13 12:02:49 +10:00
rocky4570fft
7afd3532c6 fixup typos and cleanup code a little 2017-08-13 12:00:21 +10:00
rocky4570fft
ecf77d64cd add rds stop-start 2017-08-13 11:52:27 +10:00
Ali Rizwan
d8b0df2bef Added support for SSM delete_parameters
Signed-off-by: Ali Rizwan <ari@hellofresh.com>
2017-08-11 15:19:36 +02:00
Steve Pulec
9ebcaf561e Merge pull request #1046 from spulec/feature/add-proper-errors-to-ecr-calls
Add proper errors to ECR calls
2017-08-10 21:40:55 -04:00
Alexander Mohr
2447725e98 fix list-object-versions with prefix (#1045)
fix list-object-versions with prefix
2017-08-10 17:14:31 -07:00
Hugo Lopes Tavares
973264d940 Convert struct argument to bytestring to avoid errors with Python 2.7.6 2017-08-10 19:59:46 -04:00
Hugo Lopes Tavares
e4da4f6cd5 Add more error handling to the ECR backend
The error messages were copied from `botocore`.
New exceptions: RepositoryNotFoundException & ImageNotFoundException.
2017-08-10 19:54:10 -04:00
Brian Pandola
0a03a7237e Redshift Updates
- Implement create_cluster_snapshot endpoint
- Implement describe_cluster_snapshots endpoint
- Implement delete_cluster_snapshot endpoint
- Implement restore_from_cluster_snapshot endpoint
- Implement limited support for describe_tags endpoint
- Correctly serialize errors to json (for boto) or xml (for boto3)
- Simulate cluster spin up by returning initial status as 'creating' and subsequent statuses as 'available'
- Fix issue with modify_cluster endpoint where cluster values get set to None when omitted from request
- Add 'Endpoint' key to describe_clusters response syntax
2017-08-09 18:43:21 -07:00
Waldemar Hummer
24d1562d2f allow non-ascii characters in request URLs 2017-08-05 21:03:50 +10:00
Waldemar Hummer
ce2f3e6e2b fix receiving of messages from queues with a dot character in their name 2017-08-05 15:47:40 +10:00
Jack Danger
543e5fb077 Implementing ELBV2 target group attributes 2017-08-02 15:57:15 -07:00
Jack Danger
b061ac4d28 Merge pull request #1019 from JackDanger/elbv2
Implemented core endpoints of ELBv2
2017-08-02 13:54:20 -07:00
Jack Danger
161a187ee5 updating explanation of boto client usage 2017-08-02 13:41:39 -07:00
Jack Danger
08a932f5f1 handling AWSPreparedRequest instances in dispatch 2017-08-02 13:41:39 -07:00
Jack Danger
8188fea0ce This is required for the server test to work 2017-08-02 13:41:38 -07:00
Jack Danger
d56c30932f this is handled in moto/elb/urls.py 2017-08-02 13:41:38 -07:00
Jack Danger
ce392fab79 Properly dispatch by api version in server mode
I'm not happy with this solution. Please think of a fix if you're reading this.
2017-08-02 13:41:38 -07:00
Jack Danger
5cd1e2450d adding elbv2 backend 2017-08-02 13:41:38 -07:00
Jack Danger
04e623ea14 Implemented core endpoints of ELBv2 2017-08-02 13:41:38 -07:00
Jack Danger
5011cd28b6 Allow boto3 redshift cluster subnet group creation
Boto3 deviates from the AWS docs in the way subnets are described when
creating a Redshift cluster subnet group.

This entry in botocore nests the SubnetIds under SubnetIdentifier tags:
https://github.com/boto/botocore/blob/develop/botocore/data/redshift/2012-12-01/service-2.json#L5423-L5429
referenced here:
https://github.com/boto/botocore/blob/develop/botocore/data/redshift/2012-12-01/service-2.json#L2296

And the AWS docs do not nest them that way:
https://docs.aws.amazon.com/redshift/latest/APIReference/API_CreateClusterSubnetGroup.html

Fixes #1029
2017-08-02 11:48:12 -07:00
Jack Danger
2b76d07558 Merge pull request #1027 from iCHEF/fix_sns_should_send_json_http_message
Send JSON message to HTTP endpoint of SNS
2017-07-31 12:45:17 -07:00
Peter Us
d76559ee7c SNS delete_topic should also delete subscriptions. 2017-07-31 13:37:29 +02:00
sodastsai
92eedcf291 Send JSON message to HTTP endpoint of SNS
By the documentation from AWS -
http://docs.aws.amazon.com/sns/latest/dg/SendMessageToHttp.html ,
SNS would send messages to HTTP/HTTPS endpoint in JSON format. But
current implementation of `moto` sends messages in form-data format.
2017-07-30 20:44:06 +08:00
Jack Danger
e445c81e83 Implement IAM {update,get}_login_profile 2017-07-27 14:22:25 -07:00
Jack Danger
4028fe1abd Merge pull request #1023 from william-richard/add-ecr-get-authorization-token
Add ecr get_authorization_token response and tests
2017-07-26 11:52:16 -07:00
William Richard
aeefc8056d
Boto actually returns a base64 encoded string of <user>:<password>
Fix the mock to do the same thing
2017-07-26 12:03:20 -04:00
James Brennan
a5089c3d69 Add add, remove, list endpoints for SSM tags 2017-07-26 11:38:12 +00:00
William Richard
025e975e44
Add ecr get_authorization_token response and tests 2017-07-25 17:54:05 -04:00
Taro Sato
e66b6173c9 Merge branch 'master' into ts/throw-client-error-on-head-bucket 2017-07-20 15:40:53 -07:00
Taro Sato
38fa6809c0 Make HEAD bucket throw ClientError instead of NoSuchBucket on boto3 2017-07-20 15:39:45 -07:00
Waldemar Hummer
115b9cee3e add CloudFormation model for Kinesis streams 2017-07-20 14:37:53 +10:00
Jack Danger
074ff68bf1 Merge pull request #1016 from JackDanger/elb-security-groups
Implementing ELB apply_security_groups_to_load_balancer
2017-07-19 17:41:53 -07:00
Jack Danger
7d00f6e92c python 2 support for dict_values 2017-07-19 17:14:20 -07:00
Jack Danger
6ed8d12317 Enforcing ELB security groups must be real 2017-07-19 15:58:49 -07:00
Christian Hellman
63b09eae13 Added DescribeAccountAttributes 2017-07-17 23:33:40 +00:00
Jack Danger
b2b423f833 Merge pull request #1011 from gilgamezh/bad_socket_shadow
Avoid to override SocketType when disabling the mock and bad_socket_s…
2017-07-17 15:07:28 -07:00
eric-weaver
abf3078c28 implement s3 object tagging 2017-07-15 22:36:12 -04:00
gilgamezh
5e5333c243 Avoid to override SocketType when disabling the mock and bad_socket_shadow is True 2017-07-14 19:29:20 -03:00
fdfk
2a65f40a19 Adding list_verified_email_addresses and testing 2017-07-11 08:02:31 +00:00
Jack Danger
28b1d99100 Merge pull request #1002 from JackDanger/raise-error-on-duplicate-elb-listener
Raise error on duplicate elbv1 listener
2017-07-06 22:09:20 -07:00
Jack Danger
5e9c51d839 Merge pull request #790 from tideline/master
Fixes for dynamodb2 mocking
2017-07-06 22:06:08 -07:00
Jack Danger
98342bfcc3 Raise error on duplicate elbv1 listener
AWS returns an error condition when a listener is defined that interferes with an existing listener on the same load balancer port.
2017-07-06 21:52:01 -07:00
Jack Danger Canty
c3d9f4e056 Persisting selected LicenseModel in RDS instances 2017-07-05 16:02:45 -07:00
Jack Danger
8f2a0a83a1 Merge pull request #983 from Polarishq/ssm_describe_parameters
Add describe_parameters support to SSM
2017-07-04 14:30:24 -07:00
Jack Danger
b8cdc06845 Merge pull request #994 from whummer/feat/moto-server-ssl
Add CLI flag to enable SSL for moto_server
2017-07-04 14:23:09 -07:00
Jack Danger
1d74182ab5 Merge pull request #986 from JackDanger/jack/describe_snapshots
Implementing RDS Snapshots
2017-07-04 13:45:03 -07:00
Ferran Puig
e4f42d5880 Don't use exponential notation for SQS message timestamps 2017-07-03 16:17:01 +02:00
Luis Jimenez
898031b40c SQSResponse: include MD5OfMessageAttributes parameter only when there are message attributes 2017-06-29 09:27:31 -04:00
Steven Cipriano
c4b9088bfc Add support for recursive emr settings
- Updates _RecursiveDictRef to not implement __getitem__, avoiding errors when using recursive settings for an emr job flow
2017-06-27 11:31:43 -07:00
Waldemar Hummer
8921920ae6 add flag to enable SSL for moto_server 2017-06-27 18:25:22 +10:00
William Richard
c5ce2848be
Boto3 and cloudformation have different keys for auto scaling tags - handle that gracefully 2017-06-21 15:59:03 -04:00
Jack Danger Canty
e57798cb96 Implementing snapshots on rds instance deletion 2017-06-20 14:46:13 -07:00
Jack Danger Canty
8df7169915 Snapshots are optional 2017-06-20 14:01:30 -07:00
Jack Danger Canty
fb2efb1c6d Implementing snapshots on rds delete 2017-06-20 14:00:56 -07:00
Jack Danger Canty
ccb4ffde7c Supporting io1 type 2017-06-20 13:53:22 -07:00
Jack Danger Canty
63f01039c3 Implementing RDS Snapshots 2017-06-20 13:52:21 -07:00
William Richard
3f20ad2c13
Support filtering by image id or image tag when describing ecr images 2017-06-20 16:22:34 -04:00
Declan Shanaghy
f0fae81af1 Fix iteritems 2017-06-20 12:55:01 -07:00
William Richard
b67e10d5c9
Make sure the repository response_object is json serializable with images
If images had been pushed to a repository, they would be included in the
response object, and the json encoder could not serialize the Image class.

Since they are not included in the boto response, I just deleted the images
field from the response object for Repositories.

I also found a duplicate test in the ecr class, so I removed one of them.
2017-06-20 15:47:39 -04:00
Declan Shanaghy
5a4b213950 Remove blank lines 2017-06-20 12:38:52 -07:00
Declan Shanaghy
db20dfcd82 Added filtering 2017-06-20 11:47:53 -07:00
Declan Shanaghy
c118d12e6f Add describe_parameters support 2017-06-19 18:22:33 -07:00
Peter Gorniak
a0471b0407 add comment about splitting update expression by operator keywords 2017-06-15 15:34:58 -07:00
Steve Pulec
b0fe1d8eae Merge pull request #980 from JackDanger/jack/rds-has-db-name
Include db_name when describing RDS instances
2017-06-14 20:40:23 -04:00
Steve Pulec
3ce2e4777b Merge pull request #978 from JackDanger/loadbalancers-require-ports
create_load_balancer requires port definitions
2017-06-14 20:39:29 -04:00
Steve Pulec
6eeb5c62e0 Merge pull request #977 from gregsterin/support-expected-in-ddbv2-update-item
Support Expected in dynamoDB updateItem
2017-06-14 20:37:43 -04:00
Steve Pulec
09463ce31a Merge pull request #974 from itajaja/responses-pass-through
add pass_through option to responses
2017-06-14 20:36:44 -04:00
Jack Danger Canty
559a863d7f Include db_name when describing RDS instances 2017-06-13 17:09:09 -07:00
Jack Danger Canty
c8794e842d create_load_balancer requires port definitions
Throw the appropriate error when defining a loadbalancer with no ports
2017-06-12 16:42:43 -07:00
Greg Sterin
be07fbda52 Support Expected in dynamoDB updateItem 2017-06-09 17:34:29 -07:00
Paul Carleton
5429f3590e Fix linting problem 2017-06-09 15:22:39 -07:00
Paul Carleton
d94d7f6962 Add propagated tags and ASG name tag to asg instances 2017-06-09 12:27:49 -07: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
Giacomo Tagliabue
1abd880ab8 add pass_through option to responses 2017-06-06 22:26:18 -04:00
Steve Pulec
856de724d0 1.0.1 2017-06-03 20:13:03 -04:00
Steve Pulec
113bfcb4ea Fix duplicate bucket creation with LocationConstraint. Closes #970. 2017-06-03 19:29:59 -04:00
Steve Pulec
49c947ece7 Stop autodecoding content so we can mimic requests. Closes #963. 2017-06-03 19:06:55 -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
Peter Gorniak
b713eef491 cleanup after merge 2017-06-02 13:41:33 -07:00
Peter Gorniak
91657a537b Merge remote-tracking branch 'spulec/master' 2017-06-02 13:38:36 -07: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
Peter Gorniak
5eb866146a add assert to catch odd numbers in operator/value parsing 2017-06-02 13:19:45 -07:00
Jessie Nadler
a0651ccde5 Add exports to CloudFormationBackend 2017-06-02 16:18:52 -04:00
Jack Danger
5684aa5922 Merge pull request #964 from whummer/feat/cloudformation-models
Add extended CloudFormation models for Lambda and DynamoDB
2017-06-01 13:50:53 -07:00
Waldemar Hummer
da7106cfd6 extended CloudFormation models for Lambda and DynamoDB 2017-06-01 22:43:23 +02:00
Jack Danger
6163363c15 Merge pull request #960 from spg/feat-s3-if-modified-since
feat(s3) HeadObject: honor If-Modified-Since header
2017-06-01 09:10:20 -07:00
brett55
7033d142a0 - Bug fix for infinite loop when WaitTimeSeconds was set to 0
- Added 2 unit tests
2017-06-01 09:51:33 -06:00
Jack Danger Canty
b0c83c4e70 Testing ELB connection draining timeouts 2017-05-31 15:53:39 -07:00
Jack Danger Canty
98264148e1 ELB connection draining timeout defaults to 300 seconds 2017-05-31 15:53:39 -07:00
Jeff Hardy
4e2f775c1f Use region list from Boto.
Boto can be configured with extra regions, but moto will fail to import
if they are not in the hardcoded list in ec2/models.py. Instead, use the
region list from boto to build the ec2_backends dict to ensure all
regions are available.
2017-05-26 12:47:28 -07:00
Jack Danger
d23910fb86 Merge pull request #961 from mbjerkness/master
Adding ECR
2017-05-23 14:19:33 -07:00
Jack Danger
22a9844e99 Merge pull request #954 from JackDanger/s3_missing_key_throws_unusual_error
NoSuchKey error in S3 is actually '404'
2017-05-23 14:18:53 -07:00
Simon-Pierre Gingras
a2a6514936 attempt at fixing tests 2017-05-23 11:29:01 -07:00
Simon-Pierre Gingras
9b2c19c909 Merge branch 'master' of github.com:spulec/moto into feat-s3-if-modified-since 2017-05-23 08:42:33 -07:00
Mike Bjerkness
25ae4d42a2 Fix encoding error in ecr/models.py 2017-05-22 23:04:36 -05:00
Mike Bjerkness
35692b5c9a Stub out all remaining ECR methods with NotImplementedError. 2017-05-22 22:49:59 -05:00
Mike Bjerkness
d6873c3dcb Adding ECR to moto/backends.py 2017-05-22 22:04:33 -05:00
Mike Bjerkness
9f019792df Added tests 2017-05-22 21:57:14 -05:00
Kate Heddleston
a21413f4ea NoSuchKey error in S3 is actually '404'
Fixes #571 and #953
2017-05-22 19:08:12 -07:00
Jack Danger Canty
6679def702 Python 2/3 compat for MD5 of SQS attributes 2017-05-22 18:11:59 -07:00
Jack Danger Canty
5e88b5d1b4 MD5 calculation of SQS message attributes
This implements the same MD5 hashing pattern as implemented in the Ruby
and Java AWS SDKs

Doesn't yet handle list types but if you're reading this you might be
surprised how easy that is to add. Give it a shot and if you get stuck
reach out to me for help.
2017-05-22 18:11:59 -07:00
Mike Bjerkness
588e211c71 Adding ECR 2017-05-22 15:50:22 -05:00
Jack Danger
584352aaf6 Merge pull request #958 from JackDanger/implement_iam_delete_role
implementing IAM delete_role
2017-05-19 16:54:00 -07:00
Jack Danger Canty
15d3397a60 implementing IAM delete_role
Fixes #957
2017-05-19 16:23:42 -07:00
Simon-Pierre Gingras
517416c4d9 feat(s3) HeadObject: honor If-Modified-Since header 2017-05-19 15:59:25 -07:00
mickeypash
965dc806c5 Fix the error code for IAMNotFoundException to NoSuchEntity used by AWS. 2017-05-19 23:30:29 +01:00
Hugo Lopes Tavares
bfa8b4552c Fix CloudFormation Lambda ZipFile implementation to be plain text
The AWS CloudFormation documentation[1] states the following about the ZipFile property:

> For nodejs4.3, nodejs6.10, python2.7, and python3.6 runtime environments, the source code of your Lambda function.
> You can't use this property with other runtime environments.

[1]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile
2017-05-17 18:48:54 -04:00
Jack Danger
6ff8d500e5 Merge pull request #946 from heddle317/add_policy_version
Add policy version
2017-05-15 15:10:49 -07:00
Kate Heddleston
992b475093 testing create, get, list, delete policy versions 2017-05-15 14:56:30 -07:00
Kate Heddleston
e307dc38e6 Implementing IAM policy versions
Adding definitions for create, list, and delete policy_versions
2017-05-15 14:56:28 -07:00
Pierre Tardy
2bae587a76
fix warning on py2 as well
object takes no constructor argument whatever the python version.
we simplify the code to not use constructor arguments
2017-05-15 11:28:42 +02:00
Steve Pulec
d45727e028 Merge pull request #941 from georgepsarakis/feature/s3_delete_markers
S3 DeleteMarker support
2017-05-14 16:17:57 -04:00
georgepsarakis
9a861a367d Enable DeleteMarker support for versioned buckets
- Add object version deletion
- Add DeleteMarker in versioned key store as latest version
- GetObject returns NoSuchKey for objects with DeleteMarker as latest
  version
- Enable IsLatest in response when listing object versions
2017-05-14 19:56:25 +03:00
Jerome Bosman
d1789624c4 Fix 2017-05-14 14:21:18 +01:00
Jerome Bosman
227318b037 Fixed typo failing the build 2017-05-14 13:20:18 +01:00
Jerome Bosman
405b8af870 Fixed:
moto/ec2/models.py:1996:21: E131 continuation line unaligned for hanging indent
moto/ec2/models.py:2380:21: E131 continuation line unaligned for hanging indent
moto/ec2/models.py:2582:21: E131 continuation line unaligned for hanging indent
moto/ec2/responses/network_acls.py:91:1: E303 too many blank lines (4)
moto/ec2/responses/network_acls.py:198:4: W292 no newline at end of file
2017-05-14 13:12:28 +01:00
Jerome Bosman
b6d9b4f584 Replace and delete Network ACL Entries 2017-05-14 13:03:43 +01:00
Steve Pulec
af9c65c5cc Version 1.0.0 2017-05-12 19:59:26 -04:00
Steve Pulec
97b920f6cf Fix ec2 tags in instance create. Closes #938. 2017-05-12 19:48:24 -04: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
2adc5f2ace Prefix should not be required for S3 lifecycle config. Closes #930. 2017-05-10 22:45:01 -04:00
Steve Pulec
956f44d46c Merge pull request #932 from grahamhar/master
Update list IAM AccessKeys
2017-05-10 22:42:14 -04:00
Steve Pulec
bbfd307f5e Merge pull request #935 from JackDanger/support-rds-default-ports
support default ports in RDS
2017-05-10 22:24:03 -04:00
Steve Pulec
60e3d55422 Merge pull request #927 from risicle/py3-normalize-headers-after-callable-body
bundled httpretty: re-normalize headers after executing callable_body
2017-05-10 22:09:02 -04:00
Steve Pulec
15b811901b Merge pull request #925 from JackDanger/idempotent-dynamodb2-deletes
Idempotent Dynamodb2 deletes
2017-05-10 22:07:12 -04:00
Steve Pulec
152d71e4f3 Merge pull request #922 from georgepsarakis/bug/s3_list_versions_valueerror
ValueError when calling boto3 list_object_versions
2017-05-10 22:06:26 -04:00
Steve Pulec
ff4649eebd Merge pull request #924 from JackDanger/require-content-length-header
Require content-length header
2017-05-10 22:02:21 -04:00
Steve Pulec
2f923b8248 Merge pull request #921 from picadoh/master
Fixing metadata key on s3 operation response
2017-05-10 21:59:57 -04:00
Steve Pulec
0adebeed24 Merge #913. 2017-05-10 21:58:42 -04:00
Steve Pulec
408a70992c Fix filter wildcards. Closes #910. 2017-05-10 21:33:34 -04:00
Steve Pulec
6ef2f366f6 Merge pull request #916 from code-haven/master
Added validation for record names in route53 (boto3)
2017-05-10 21:32:53 -04:00
Steve Pulec
f0c90c3af0 Merge pull request #914 from smarlowucf/master
Add create date to user response template.
2017-05-10 21:29:47 -04:00
Steve Pulec
d5e73e11fc Merge pull request #909 from dataxu/BT-1753
Implementation of delete_pipeline
2017-05-10 21:04:57 -04:00
Steve Pulec
95f759ce30 Merge pull request #911 from im-auld/query-filters-issue-164
Query filters issue 164
2017-05-10 20:54:55 -04:00
Jack Danger Canty
6d8aa9d8f1 support default ports in RDS 2017-05-08 20:05:46 -10:00
Jack Danger Canty
8e3d46fb05 Deleting from an unknown table raises error
If the table exists then we deletes are idempotent
2017-05-08 17:25:59 -10:00
graham-hargreaves
835fe2d742 Update list IAM AccessKeys
Add the creation date, including timezone info, to the data returned
when requesting all AccessKeys for an IAM user.

This fixes #75
2017-05-07 16:31:26 +01:00
Robert Scott
f23a6954cc bundled httpretty: re-normalize headers after executing callable_body 2017-05-02 16:19:57 +01:00
Jack Danger Canty
02edc6fa00 Idempotent Dynamodb2 deletes
Fixes #873
2017-05-01 12:31:31 -07:00
Jack Danger Canty
a2fd72d2f8 Require content-length header
fixes #908
2017-05-01 12:13:12 -07:00
Jack Danger Canty
bf3fff6e2c Allow yaml templates for cloud formation
Fixes #912
2017-05-01 11:28:35 -07:00
georgepsarakis
617e994ac6 Specify integer value for MaxKeys in S3 response 2017-04-29 22:35:25 +03:00
Abhinav I
06d65fd3da Added test cases that covers route53 client's <change_resource_record_sets> function. Also added validation to throw a ClientError when the record set does not match the hosted zone's config 2017-04-28 21:26:32 +05:30
Hugo Picado
0945765537
Fixing metadata key on s3 operation response
ETag metadata key is being returned as "Etag" instead of "ETag". This leads to issues in some AWS SDKs using MotoServer. This change fixes the issue by updating the key to the correct format.

This closes #920
2017-04-27 13:57:18 +01:00
Sean Marlow
3fecd7f8e9
Add create date to user response template. 2017-04-24 17:10:02 -06:00
Andrii Piasetskyi
ee96c20034 Added description and tags for create_pipeline 2017-04-23 19:20:10 +03:00
Ian Auld
748eb138b2 Started passing QueryFilters to query method in responses.py 2017-04-21 14:54:27 -07:00
Andrii Piasetskyi
d414ecd211 More consistent **kwargs 2017-04-21 21:29:40 +03:00
Andrii Piasetskyi
e749858041 Added DataPipeline Tags. Implemented delete_pipeline. Added tests for delete_pipeline 2017-04-21 21:24:52 +03:00
Michael van Tellingen
783a1d73b4 Implement support for SSM parameter store
This commit adds initial support for the Simple System Manager client.

It currently only mocks the following api endpoints:
 - delete_parameter()
 - put_parameter()
 - get_parameters()
2017-04-18 19:09:10 +02:00
Steve Pulec
df84675ae6 Merge pull request #897 from gjtempleton/TaskDraining
ContainerInstance deregistration
2017-04-15 23:47:47 -04:00
Steve Pulec
e9bf74d8e3 Merge pull request #904 from ambrusadrianz/master
Fixed S3 copyObject compatibility with the Java AWS SDK
2017-04-15 23:46:21 -04:00
Steve Pulec
a83a235637 Merge pull request #903 from mvantellingen/ecs-deployments
Add deployments to the ecs services (describe_services)
2017-04-15 23:46:02 -04:00
Steve Pulec
cc123dafb9 Merge pull request #902 from mvantellingen/ecs-revision
Return the revision in ecs.register_task_definition
2017-04-15 23:45:42 -04:00
GuyTempleton
47bc23f481
Move agent_connected assignation 2017-04-15 16:31:19 +01:00
Ambrus Adrian
121a68be49 Fixed compatibility issue with the Java AWS SDK
Issue is described here: https://github.com/spulec/moto/issues/900
2017-04-15 01:06:28 +03:00
Michael van Tellingen
0ae6e404d0 Add deployments to the ecs services (describe_services) 2017-04-14 18:40:47 +02:00
Michael van Tellingen
18ed73292c Return the revision in ecs.register_task_definition
This matches boto, see
http://boto3.readthedocs.io/en/latest/reference/services/ecs.html#ECS.Client.register_task_definition
2017-04-14 18:16:24 +02:00
Dmytro Milinevskyy
6e61ee4caa s3: handle WebsiteRedirectLocation
spulec/moto#821
2017-04-14 13:32:52 +02:00
Steve Pulec
34c711189f Cleanup IAM user create format. Closes #898. 2017-04-13 21:39:07 -04:00
Steve Pulec
d35e143a20 Merge pull request #899 from smarlowucf/master
Add list user policies endpoint to iam backend.
2017-04-13 21:18:43 -04:00
Sean Marlow
9a2f2fcd4b
Add list user policies endpoint to iam backend.
- Add response and endpoint methods.
- Add test covering put, get, delete and list user policy.
2017-04-13 15:09:23 -06:00
GuyTempleton
69b86b2c7a
Fix indentation of ContainerInstance response object 2017-04-13 18:41:29 +01:00
GuyTempleton
f3aff0f356
Switch ContainerInstance model to snake case 2017-04-13 17:53:23 +01:00
GuyTempleton
acb6c3ce01
Implement container instance deregistration 2017-04-13 17:46:15 +01:00
GuyTempleton
71e8f6ef5b
First cut of container instance deregistration 2017-04-13 08:54:25 +01:00
Steve Pulec
30b1de507c Make ELB created_time dynamic. Closes #887. 2017-04-12 22:25:07 -04:00
Steve Pulec
b62015b27d Add Iam User CreateDate. Closes #886. 2017-04-12 22:19:48 -04:00
Steve Pulec
bf935c210b Fix cloudwatch events delete_rule. Closes #884. 2017-04-12 22:15:23 -04:00
Steve Pulec
23f6f941b1 Merge pull request #895 from gjtempleton/ECSContainerResources
Container Instance Resource implementation
2017-04-12 20:53:06 -04:00
Steve Pulec
a664af465a Merge pull request #892 from whummer/fix/local-domain-names
Fix domain handling for local domain names in S3 API
2017-04-12 20:42:15 -04:00
Steve Pulec
03c4d9fe20 Fix standalone server headers not having HTTP_AUTHORIZATION. Closes #874. 2017-04-12 20:40:55 -04:00
Steve Pulec
11edde2eaa Merge pull request #891 from whummer/fix/sqs-wait-time-seconds
Fix SQS message polling to abort after wait_seconds_timeout
2017-04-12 20:27:54 -04:00
Steve Pulec
42f6487c88 Merge pull request #881 from smarlowucf/master
Add mfa device endpoints to iam backend.
2017-04-12 20:23:49 -04:00
GuyTempleton
880f3fb950
Container Instance Resource implementation 2017-04-12 13:30:32 +01:00
Waldemar Hummer
b8a41c5605 fix domain handling for local domain names in S3 API 2017-04-08 15:28:51 +10:00
Waldemar Hummer
a5727bf64a fix SQS message polling to abort after wait_seconds_timeout 2017-04-06 21:40:03 +10:00
Sean Marlow
8b9d685f1c
Add mfa device endpoints to iam backend.
- Add mfa device class
- Add mfa devices dictionary to user class
- Add responses, endpoints and tests
2017-03-27 13:13:40 -06:00
Valentín Gutiérrez
6e209bb14c Implement availability-zone filter for DescribeNetworkInterfaces 2017-03-22 14:36:20 +01:00
Steve Pulec
bba197e29f Make IAM ARNs more dynamic. Closes #663. 2017-03-19 11:58:24 -04:00
Steve Pulec
2d05f8a79a Add functionality for iam get-user with current user. Closes #480. 2017-03-19 11:09:30 -04:00
Steve Pulec
a0a205328d Cleanup SQS body encoding. Closes #458, #460. 2017-03-19 11:03:55 -04: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
a6e762340d Merge pull request #867 from 2rs2ts/flexible-route53-hostedzoneid-lookup
Be flexible with Route53 Hosted Zone IDs with /hostedzone/ prefix
2017-03-16 22:55:13 -04:00
Andrew Garrett
f2b7ba03b4 Forgot that lstrip works on character sets, not substrings
I suppose this is one way to do it. I could have also split and taken
the last element. Not sure which is best. 🤔
2017-03-17 02:45:58 +00:00
Steve Pulec
c207963a86 Cleanup SNS exceptions. Closes #751. 2017-03-16 22:28:30 -04:00
Steve Pulec
e7a3f3408e Add Lambda header for invoking error. Closes #770. 2017-03-16 22:00:57 -04:00
Steve Pulec
e3bff8b926 Fix cloudformation NoValue parsing to not add attribute. Closes #870 2017-03-16 21:20:01 -04:00
michael_lerch
83084bf2af Prevent 100% cpu usage while SQS long polling on an empty queue
While using moto server with a test SQS client, I noticed significant CPU usage while the client was long polling. I narrowed this down to the `receive_messages` call of the SQS service sitting in a `while True:` statement with no work to be done, thus looping forever.

To produce this issue, I do:
```
$ python3 -m venv venv
$ . ./venv/bin/activate
(venv) $ pip install moto moto[server] boto3
Collecting moto
  Downloading moto-0.4.31-py2.py3-none-any.whl (303kB)
  --snip--
(venv) $ moto_server sqs &
[1] 31727
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
(venv) $ python3
Python 3.6.0 (default, Dec 24 2016, 08:01:42)
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.42.1)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import boto3
>>> client = boto3.client('sqs', region_name='us-east-1', endpoint_url='http://127.0.0.1:5000');
>>> client.create_queue(QueueName='testing')
127.0.0.1 - - [16/Mar/2017 13:34:20] "POST / HTTP/1.1" 200 -
{'QueueUrl': 'http://sqs.us-east-1.amazonaws.com/123456789012/testing', 'ResponseMetadata': {'RequestId': '7a62c49f-347e-4fc4-9331-6e8e7a96aa73', 'HTTPStatusCode': 200, 'HTTPHeaders': {'content-type': 'text/html; charset=utf-8', 'content-length': '343', 'server': 'Werkzeug/0.12.1 Python/3.6.0', 'date': 'Thu, 16 Mar 2017 20:34:20 GMT'}, 'RetryAttempts': 0}}
>>> client.receive_message(QueueUrl='http://sqs.us-east-1.amazonaws.com/123456789012/testing', MaxNumberOfMessages=10, WaitTimeSeconds=10)
```

At this point the moto server will run at 100% cpu for 10 seconds until the request times out waiting for a message. If multiple clients are continuously reconnected (as in mocking a normal sqs worker setup) the server will sit at 100% cpu indefinitely.

This pull request adds a simple sleep statement to the SQS `receive_messages` call when there are no messages to process. In doing so, the loop will be limited to executing once per 0.001 seconds when the queue is empty. The CPU usage is nearly 0% after this change.
2017-03-16 13:43:45 -07:00
Steve Pulec
a5da348fba Fix lint. 2017-03-15 23:43:48 -04:00
Steve Pulec
25e2af0320 Fix camelcase_to_underscore. Closes #767. 2017-03-15 23:39:36 -04:00
Steve Pulec
446843e756 Fix py3 s3 prefix decoding. 2017-03-15 23:13:09 -04:00
Steve Pulec
e25d1499c2 Update cloudformation for new list types. 2017-03-15 23:02:10 -04:00
Steve Pulec
3899eee648 Fix S3 filtering by unicode prefix. Closes #838 2017-03-15 22:53:27 -04:00
Steve Pulec
8a803cdbaf Better EC2 duplicate SG error. 2017-03-15 22:45:28 -04:00
Steve Pulec
5f3fbff627 Standardize on one account id (123456789012). 2017-03-15 22:21:04 -04:00
Steve Pulec
e9e49c5916 Fix py3 redshift encoding. 2017-03-15 22:12:16 -04:00
Steve Pulec
3cdb4afad0 Fix redshift responses to work with json or xml. 2017-03-15 21:58:37 -04:00
Steve Pulec
09a4d177f5 Add kms boto3 test. 2017-03-14 23:42:52 -04:00
Steve Pulec
0df47574ab Merge pull request #865 from adamstauffer/master
update RDS responses to return DBInstanceArn
2017-03-14 23:28:30 -04:00
Steve Pulec
2bd4567801 Do not use flask outside of server mode. 2017-03-14 23:26:31 -04:00
Steve Pulec
7eb5b60620 Merge pull request #860 from 2rs2ts/add-list-hosted-zones-by-name
Add ListHostedZonesByName
2017-03-14 23:24:03 -04:00
Andrew Garrett
6346e44c9d Be flexible with Route53 Hosted Zone IDs with /hostedzone/ prefix
We will continue to store just the unique ID, but since the AWS API
returns /hostedzone/<id>, we should accept attempts to pass that back.
For example, both just the ID as well as /hostedzone/<id> work for
specifying the HostedZoneId of a ResourceRecordSet in CloudFormation. So
we should support that too.

Signed-off-by: Scott Greene <scott.greene@getbraintree.com>
2017-03-14 19:52:36 +00:00
Adam Stauffer
c5853b48da update RDS responses to return DBInstanceArn 2017-03-13 16:48:22 -04:00
Andrew Garrett
b9ea947aa0 Add ListHostedZonesByName 2017-03-13 15:27:45 +00:00
Seamus Cawley
bd2ff89bf1 Ensure SQS property WaitTimeSeconds is an integer 2017-03-13 13:56:55 +00:00
Steve Pulec
cda553abfb Change tests to use default server port of 5000. 2017-03-12 21:04:19 -04:00
Steve Pulec
d2c56619cd Add lint to Travis. 2017-03-12 20:35:45 -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
3a01150154 Add about page. 2017-03-12 19:58:40 -04:00
Steve Pulec
24affc7a5f Fix py3 Model __new__. 2017-03-12 13:04:36 -04:00
Steve Pulec
4d5642ae33 Cleanup dashboard. 2017-03-12 12:59:30 -04:00
Christian Hellman
c271e31745 Fixed terraform deploy against moto fails (#857) 2017-03-12 12:40:49 -04:00
Steve Pulec
09ac3539b7 Sort dashboard attributes. 2017-03-12 12:34:54 -04:00
Steve Pulec
6d422d1f37 Add BaseModel to all models. 2017-03-11 23:41:12 -05:00
Steve Pulec
caea5f441d Fix resetting backends. 2017-03-11 23:18:58 -05:00
Steve Pulec
abe0460dc7 Merge branch 'master' into dashboard 2017-03-11 22:45:45 -05:00
Steve Pulec
1709208872 First version of dashboard. 2017-03-11 22:45:42 -05:00
Steve Pulec
cdd6e476cc If using newer dynamodb api, use version 2. 2017-03-11 20:50:24 -05:00
Steve Pulec
3b4ef2cf15 Merge in master. 2017-03-05 09:58:39 -05:00
Matt Chamberlin
0393c384ad fix etag metadata field name in key response dict (etag --> ETag) (#855) 2017-03-04 23:17:18 -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
e7ea6b350c Fix lambda stdout/stderr mocking (#851)
Originally, the code was setting sys.stdout and sys.stderr back to the
original, official forms, but this breaks idioms like mocking stdout to
capture printing output for tests. So instead, we will reset sys.stdout
and sys.stderr to what they were before running the lambda function, so
that in case someone is mocking stdout or stderr, their tests won't
break.
2017-03-04 23:01:50 -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
Léo Cavaillé
9b6d3983d2 iam: add group policy methods (#849)
Implemented mocks for:
* get_all_group_policies
* list_group_policies (boto3)
* get_group_policy
* put_group_policy
2017-03-04 22:56:36 -05:00
Chris LaRose
56f9409ca9 Use request URL to generate SQS queue URLs; fixes #626 (#827) 2017-03-04 22:53:14 -05:00
William Richard
f46a24180f Cast desired capacity for cloudformation asg to int (#846)
Cloudformation passes MaxSize, MinSize and DesiredCapacity as strings, but
we want to store them as ints.  Also includes tests of this fix, to help
avoid regression.
2017-03-04 22:51:01 -05:00
David Wilcox
a9554924df make cloudformation update stack use parameters provided (#843) 2017-03-04 22:48:51 -05:00
Andy Freeland
783242b696 Elastic IP PhysicalResourceId should always be its public IP (#841)
According to the [CloudFormation `Ref` docs][docs], the `Ref` return
value (and physical ID of the resource) for an Elastic IP is its public
IP address.

[docs]: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html
2017-03-04 22:40:43 -05:00
Andy Freeland
a30ba2b597 EC2 tags specified in CloudFormation should be applied to the instances (#840)
Fixes #839.
2017-03-04 22:37:53 -05:00
David Wilcox
1b6007e2b2 Correct IAM list_server_certs template that was based off incorrect docs (#836)
The documentation for this method is here https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListServerCertificates.html

The docs say the return type is this  ServerCertificateMetadataList.member.N

but the sample response incorrectly include a <ServerCertificateMetadata>. I've sent feedback to the AWS docs telling them to fix their stuff but this also needs to be fixed. I haven't checked other templates with <member> tags in them, as they may be prone to this same problem.
2017-03-04 22:36:25 -05:00
David Wilcox
8d737eb59d Route53: allow hosted zone id as well when creating record sets (#833)
* add test that creates r53 record set from hosted zone id (not name)

* pass test to enable creating record sets by hosted zone ids
2017-03-04 22:31:45 -05:00
Guy Templeton
7d75c3ba18 Feat: ECS container status updating (#831)
* Uptick boto3 version to version supporting ECS container instance state changes

* Add initial status update

* Only place tasks on active instances

* PEP8 cleanup
2017-03-04 22:30:36 -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
1287d53817 Fix tests for py26 and py3. 2017-02-27 20:53:57 -05:00
Steve Pulec
a22caf27ab Cleanup sns default topic. 2017-02-27 10:20:53 -05:00
Steve Pulec
b73360c187 Fix api gateway callback. 2017-02-23 22:34:43 -05:00
Steve Pulec
3c0c4c2996 Fix tests for py3. 2017-02-23 22:28:09 -05:00
Steve Pulec
0dda687762 Fix urlparse for py3. 2017-02-23 21:41:05 -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
cb28eeefbb Add moto reset API. 2017-02-20 18:25:10 -05:00
Steve Pulec
fe46b4c5b9 Remove extra line in test. 2017-02-20 15:50:49 -05:00
Steve Pulec
51df02e7cf Cleanup Server host parsing. 2017-02-20 14:31:19 -05:00
Steve Pulec
d0fe1a0956 Remove pdb. 2017-02-18 09:31:47 -05:00
Steve Pulec
6785d359d3 Cleanup apigateway callback. 2017-02-18 09:25:42 -05:00
Steve Pulec
480c1bba14 Add rest of deprecated decorators. 2017-02-18 09:24:09 -05:00
Steve Pulec
d28f083a0b Cleanup apigateway callback. 2017-02-18 09:19:08 -05:00
Steve Pulec
cad185c74d Cleanup headers and encoding. 2017-02-16 22:51:04 -05:00
Steve Pulec
678f73389f Fix package being submodule. 2017-02-15 22:45:20 -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
Steve Pulec
2d03182ae2 Migrate some sqs tests to boto3. 2017-02-11 19:41:09 -05:00
Jack Danger
53fbd7dca0 KMS encryption under Python 3 (#826)
This upgrades the KMS encrypt and decrypt endpoints to work
under both Python 2 and 3
2017-02-09 22:36:24 -05:00
David Wilcox
012dd497f2 make get_all_security_groups filter AND match group ids, not OR them (#822) 2017-02-08 21:29:37 -05:00
Jason DeTiberus
1045dca7b2 make instanceTenancy configurable for VPCs (#819)
* make instanceTenancy configurable for VPCs

* fix issue with setting tenenancy
2017-02-08 21:23:49 -05:00
Jeffrey Gelens
8fc1ad03bd Reload the server on a file change (#817)
* Added simple server reload support

* updated help text
2017-02-08 21:22:14 -05:00
Stefan Nordhausen
1a01bae74e Implement list_objects_v2() for S3 buckets (#814)
This adds/fixes the following things:
- Add missing KeyCount in result (fixes #734).
- Do not hard code MaxKeys to 1000.
- Truncate result if it has more than MaxKeys items. Set IsTruncated
    and NextContinuationToken accordingly.
- Support the StartAfter parameter.
- Return Owner information only when FetchOwner=True is given.
- "Prefix" in response is now "" instead of None when omitted in request.
- "Delimiter" is now omitted from response when not given in request.
2017-02-08 21:21:43 -05:00
Steve Pulec
ba7223f046 Fix issue for returning dynamodb floats. Closes #812. 2017-02-08 21:06:05 -05:00
Steve Pulec
4eaf5d527e 0.4.31 2017-01-24 09:48:31 -05:00
Hugo Lopes Tavares
88d5e36ffe Add resource IDs to ECS Cluster and Service models (#811) 2017-01-19 11:59:28 -05:00
Michael Nussbaum
51129f6ef3 Allow ELB policies to be set via Cloudformation. (#809)
Also more closely mirror AWS by not returning ELB
BackendServerDescriptions that don't have policies.

Signed-off-by: Michael Nussbaum <michael.nussbaum@getbraintree.com>
2017-01-18 23:02:04 -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
Jesse Szwedko
f68b2963db sts: Implement get_caller_identity (#806)
Return a canned response

Signed-off-by: Andrew Harris <andrew.harris@getbraintree.com>
2017-01-18 22:59:04 -05:00
Jesse Szwedko
55f39265dd Upgrade to boto 2.45 (#803)
Adds support for additional regions:

* ca-central-1
* eu-west-2

Signed-off-by: Andrew Harris <andrew.harris@getbraintree.com>
2017-01-18 22:55:22 -05:00
Akhter Ali
2bf85fe25d Fix Route53 response and tests (#804)
* Fix route53 response \n Fix route53 tests

* Fixing index

* fix zone ID on test_route53_with_update
2017-01-18 21:40:04 -05:00
costypetrisor
a967ec0d39 made the Security Group backend throw the same error as AWS if the nb of sec groups limit is hit (#742)
* made the Security Group backend throw the same error as AWS if the security group limit is hit

* included in the security group limit the count of grants to other security groups & updated the unit tests to cover these

* refactored a few things about the sec group rule count limit
2017-01-18 21:37:55 -05:00
Jesse Szwedko
d42432bfef IAM: raise error if requiested instance profile does not exist (#802)
Signed-off-by: Andrew Harris <andrew.harris@getbraintree.com>
2017-01-18 21:36:50 -05:00
Steve Pulec
a292150087 Throw exception if same security group rule added twice. Closes #737. 2017-01-11 22:35:27 -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
Steve Pulec
201efd5773 Fix bug with listing IAM users. 2017-01-11 20:54:47 -05:00
Jia Chen
2a02259a3c Adding PolicyType to scaling policy and implementing filtering in describe_policies (#797)
* Adding PolicyType to FakeScalingPolicy

* Implement filtering for AutoScalingBackend.describe_policies(...)

* Unit test for describe_policies fuction in autoscaling
2017-01-11 20:40:57 -05:00
Brian Kruger
f212d70104 Use a sane aws sender_id from SQS. (#791) 2017-01-11 20:38:55 -05:00
Taro Sato
02324ad708 Add more availability regions and implement default VPC (#773)
Fix filter name for availability zone

Fix bug assuming dict keys are ordered

Fix tests

Fix tests

Fix bug
2017-01-11 20:37:57 -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
Raghavendra D Prabhu
d07c646032 sqs: Use unix_time in place of time.time() (#787)
unix_time() from moto.core.utils is used as the time source through moto,
and it is identical to time.time() in output. Hence, using unix_time()
since it makes mocking easier during testing (when time is mocked out).
2017-01-11 20:35:56 -05:00
Hugo Lopes Tavares
b5ff3345be Add service ARNs support to the DescribeServices ECS API (#796) 2016-12-20 10:37:49 -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
Peter Gorniak
d4a31e5e50 unit tests did not catch this, but this will not work under python 2.6 2016-12-08 14:34:21 -08:00
Peter Gorniak
114de9ba0b more fixes for 2.6 and 3 2016-12-07 13:55:26 -08:00
Peter Gorniak
0c875fd268 fixes for python 2.6 and 3 2016-12-07 13:31:15 -08:00
Peter Gorniak
3c128fdb51 correct looping through update actions, value stripping, hash key regex 2016-12-07 11:47:48 -08:00
Peter Gorniak
390bef7752 fake change to force push because github was broken 2016-12-06 16:57:36 -08:00
Peter Gorniak
98a39cf4b5 account for keys potentially being substrings of other keys (e.g. #c1 and #c10) 2016-12-06 12:14:57 -08:00
Steve Pulec
a39f30ad18 Fix merge conflicts. 2016-12-03 19:40:39 -05:00
Steve Pulec
2c6a967f45 Disable strict_slashes for Flask so that S3 works in server mode. 2016-12-03 18:59:28 -05:00
Rob Walker
ed0e81fc61 Fixup lambda for ResponseRequest (#781)
* Fixup lambda for ResponseRequest

* one day will get this right
2016-12-03 18:17:15 -05:00
mfranke
5dc8e59fab Fix s3bucket_path (#784)
* check HTTP header for IPv4 or IPv6 addresses and default to path based S3

* improved IPv4 and IPv6 checking with optional ports

* typo

* subdomain bucket creation with trailing '/' did not work

* Use regex for Host field check to determine IPv4/IPv6

* add testcases for trailing slash, IPv4 and IPv6
2016-12-03 18:15:24 -05:00
Tom V
c54985a39f Fix for #748. Turn on autoescape for S3 templates. (#779) 2016-12-03 18:13:24 -05:00
Paul Cieslar
ee8e72766a Support for ecs describe_task_definition (#777)
* describe_task_definition support

* Refactor fetch_task_definition

* Add ECS Descriptors  (#772)

* Add support for "DescribeServices" in ecs mock

* Add support for "DescribeTaskDefinition" in ecs

* Let ecs responses handle baseobject for services

* Update Cloudformation/parsing#load_parameters to split commadelimitedlists into lists (#774)

* Fix JSON dump error in ecs.update_service with task_definition (#775)

* Fix s3bucketpath handling for IP based requests (#765)

* check HTTP header for IPv4 or IPv6 addresses and default to path based S3

* improved IPv4 and IPv6 checking with optional ports

* typo

* Freezetime.

* Add S3 ACL for aws-exec-read. Closes #740.

* Fixed time formatting in ec2/models.py (#778)

* Fixed time formatting in ec2/models.py

* Used freezegun on test that was failing due to time progression causing timestamp differences.

* rename duplicate rds/models db_instance_identifier to physical_resource_id (#776)

* rename duplicate db_instance_identifier to physical_resource_id

* Update create_from_cloudformation_json to use db_source_identifier str

* Update code to be more conventional.

* describe_task_definition support

* Refactor fetch_task_definition
2016-12-03 18:12:22 -05:00
Justin Wiley
c7757f953c Can't iterate over dict values in Python 3.3+. Changed Rule.targets from a dict to an array, which is probably better anyway since the dict doesn't maintain order, making API calls with the Limit parameter specified unreliable. 2016-12-01 19:52:00 -08:00
Justin Wiley
5d7a102e4c Stoopid import was still hanging around. 2016-12-01 19:24:40 -08:00
Justin Wiley
6c85a85e0d Removed OrderedDicts for 2.6 and dict.iteritems() calls for 3.3+ compatibility. 2016-12-01 19:10:59 -08:00
Justin Wiley
db0b494b4f Completed the CloudWatch Events mocking module and tests. 2016-12-01 17:23:51 -08:00
Justin Wiley
d0def03c4c Events models first draft done, need to write tests, then get responses going. 2016-11-30 17:09:58 -08:00
Justin Wiley
d0a66f2dff Begin work on mocking CloudWatch Events. 2016-11-29 17:19:26 -08:00
Peter Gorniak
2c50561563 fix decoding keys in query condition 2016-11-29 14:04:23 -08:00
Peter Gorniak
5a7c711a74 bring dynamodb2 update expression handling closer to spec 2016-11-25 21:07:24 -08:00
David Wilcox
c3c6eaf281 rename duplicate rds/models db_instance_identifier to physical_resource_id (#776)
* rename duplicate db_instance_identifier to physical_resource_id

* Update create_from_cloudformation_json to use db_source_identifier str

* Update code to be more conventional.
2016-11-23 20:07:26 -06:00
Justin Wiley
d6890640b2 Fixed time formatting in ec2/models.py (#778)
* Fixed time formatting in ec2/models.py

* Used freezegun on test that was failing due to time progression causing timestamp differences.
2016-11-23 20:06:35 -06:00
Steve Pulec
136f6d67fb Add S3 ACL for aws-exec-read. Closes #740. 2016-11-23 19:42:36 -06:00
mfranke
040c2cd8cc Fix s3bucketpath handling for IP based requests (#765)
* check HTTP header for IPv4 or IPv6 addresses and default to path based S3

* improved IPv4 and IPv6 checking with optional ports

* typo
2016-11-23 19:05:34 -06:00
Pior Bastida
09ca1c4388 Fix JSON dump error in ecs.update_service with task_definition (#775) 2016-11-23 19:01:48 -06:00
David Wilcox
4ea915fc3a Update Cloudformation/parsing#load_parameters to split commadelimitedlists into lists (#774) 2016-11-23 18:57:47 -06:00
Robert Sheehy
17584e9aa4 Add ECS Descriptors (#772)
* Add support for "DescribeServices" in ecs mock

* Add support for "DescribeTaskDefinition" in ecs

* Let ecs responses handle baseobject for services
2016-11-23 18:56:12 -06:00
Sean Marlow
fa3663c610 Add support for login profile deletion (#768)
* Add support for delete_login_profile.

Mock deletion of login profile. Set password to
none. Add tests to cover new endpoint.

* Fix typo in create_login_profile response.

Change CreateUserResult to CreateLoginProfileResult
in the CREATE_LOGIN_PROFILE_TEMPLATE. Caused KeyError
when using boto3.

Add test to cover boto3 in addition to boto.
2016-11-11 17:05:01 -05:00
Nuno Santos
71c1fbadbe Add DynamoDB tests for update_item() with UpdateExpression, support spaces in the UpdateExpression. (#758)
Fixes #745.
2016-11-11 17:04:14 -05:00
Mike Pappas
4942e74ab1 Fix SNS application endpoint to match AWS return format (#763) 2016-11-11 17:01:47 -05:00
Steve Pulec
1c61498cc8 0.4.30 2016-11-09 11:25:14 -05:00