Commit Graph

1006 Commits

Author SHA1 Message Date
Steve Pulec
f37bad0e00 Lints. 2017-02-23 21:37:43 -05:00
Steve Pulec
1433f28846 Update s3 test. 2017-02-23 19:50:34 -05:00
Steve Pulec
81836b6981 Get standalone server mode working for all tests. 2017-02-23 19:43:48 -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
cad185c74d Cleanup headers and encoding. 2017-02-16 22:51:04 -05:00
Steve Pulec
fde721bed7 Testing new version of decorator. 2017-02-15 22:35:45 -05:00
Steve Pulec
9076e48fee Fix sqs tests region. 2017-02-11 19:50:26 -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
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
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
Steve Pulec
82bc502cf7 Fix assert_raises for catching parents of exceptions. 2017-01-18 22:46:51 -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
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
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
Steve Pulec
a39f30ad18 Fix merge conflicts. 2016-12-03 19:40:39 -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
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
Steve Pulec
1b4bb156e4 Freezetime. 2016-11-23 19:23:47 -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
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
Steve Pulec
05c6fc6738 Fix tests for py3. 2016-11-11 17:22:45 -05: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
5c3d9b4ae1 Have spot requests launch instances. 2016-11-07 23:08:30 -05:00
Steve Pulec
5371044b6f Spot fleet (#760)
* initial spot fleet.

* Add cloudformation spot fleet support.

* If no spot fleet ids, return all.
2016-11-07 09:53:44 -05:00
Steve Pulec
38021c6ef5 Test Boto 2.43.0 . 2016-11-06 10:29:50 -05:00
Steve Pulec
3b98566f20 Merge pull request #757 from nfvs/dynamodb_putitem_conditional
Attempt to parse simple ConditionExpressions in DynamoDB put_item().
2016-11-06 09:53:45 -05:00
Steve Pulec
44636d1f73 Merge pull request #755 from dtenenba/master
bump tag limit from 10 to 50 to align with actual AWS limit
2016-11-06 09:52:20 -05:00
Steve Pulec
721d1b3a3f Merge pull request #736 from okomestudio/ts/botocore_update
Remove botocore version pinning
2016-11-06 09:50:28 -05:00
Steve Pulec
2fdc5498b5 Merge pull request #744 from helenst/scan-after-has-item
Fix failure of scan() after has_item()
2016-11-06 09:45:12 -05:00
Steve Pulec
ee369de3ef Merge pull request #741 from costypetrisor/sec-group-authorize-revoke-in-batch
Sec group authorize revoke in batch
2016-11-06 09:40:16 -05:00
Steve Pulec
ac89403807 Merge pull request #738 from okomestudio/ts/more_iam_endpoints
Implement IAM managed policy
2016-11-06 09:39:22 -05:00
Nuno Santos
bfc664cca8 Add additional put_item test with an attribute_exists condition. 2016-11-04 13:29:53 +01:00
Nuno Santos
74b56faafd Attempt to parse simple ConditionExpressions in DynamoDB put_item().
Internally these get converted into simpler Expected={} parameters, so
for now only `attribute_exists` and `attribute_not_exists` are supported;
OR is also not suported since `expected` does not support it.
2016-11-04 12:37:10 +01:00
Dan Tenenbaum
ed7ea86f7b add positional argument for python 2.6 compatiblity 2016-11-03 14:42:23 -07:00
Dan Tenenbaum
de0a741309 syntax fix 2016-11-03 14:30:35 -07:00
Dan Tenenbaum
ffa6b1d9c1 should pass unit tests 2016-11-03 14:24:47 -07:00
Taro Sato
5538b541a8 Fix a bug with map type not properly handling multiple entries 2016-10-31 11:29:39 -07:00
Helen Sherwood-Taylor
08d07fed30 Fix failure of scan() after has_item()
Fixes #731
2016-10-25 17:09:39 +01:00
Costy Petrisor
8689b40d23 made the security group endpoints that authorize or revoke firewall rules
to support batch rules (boto doesn't expose this, but botocore/boto3 does)
2016-10-20 19:34:11 +00:00
Costy Petrisor
6f622b9689 an unit test for the bulk authorization and revokation of security group
rules
2016-10-20 18:14:22 +00:00
Taro Sato
159a81723c Implement IAM managed policy.
This requires boto 2.39 for managed policy tests
2016-10-20 10:07:41 -07:00
Taro Sato
484faa54c4 Implement filters and pagers for some EMR end points 2016-10-20 10:03:17 -07:00
Taro Sato
ed91b093cd Ignore RetryAttempts field generated by recent botocore versions 2016-10-16 21:50:21 -07:00
Taro Sato
b632df3aa4 Generate proper empty value for XML/JSON 2016-10-16 21:49:10 -07:00
Steve Pulec
2e33e2be90 Merge pull request #735 from rocky4570/dryrun-ec2
Add dry_run to a number of EC2 services
2016-10-16 19:14:57 -04:00
Steve Pulec
5dbb22265c Merge pull request #732 from JackDanger/jack/implement-kms-encryption
Implementing KMS encrypt/decrypt
2016-10-16 19:12:43 -04:00
rocky4570fft
95e9ce2d42 fixup merge issue with test_elastic_ip_addresses.py 2016-10-16 00:37:14 +10:00
rocky4570fft
d6f76cbb43 Add dry_run to a number of EC2 services 2016-10-16 00:34:52 +10:00
rocky4570fft
015c92ac44 Add dry_run to a number of EC2 services 2016-10-15 23:08:44 +10:00
Jack Danger Canty
ea24376131 Implementing KMS encrypt/decrypt
This adds support for testing the /encrypt and /decrypt endpoints
of Amazon KMS
2016-10-14 01:04:14 -07:00
Taro Sato
7cd404808b Better EMR coverage and boto3 request/response handling
This revision includes:

- A handler for requests for which content-type is JSON (from boto3).

- A decorator (generate_boto3_response) to convert XML responses to
  JSON (for boto3). This way, existing response templates for boto can
  be shared for generating boto3 response.

- Utility class/functions to use botocore's service specification data
  (accessible under botocore.data) for type casting, from query
  parameters to Python objects and XML to JSON.

- Updates to response handlers/models to cover more EMR end points and
  mockable parameters
2016-10-13 16:48:07 -07:00
Steve Pulec
27f1bece9b Fix assigning public ip to instances. Closes #729. 2016-10-12 22:02:13 -04:00
Rene Martin
bd9e7deb95 Merge branch 'master' of https://github.com/spulec/moto 2016-10-10 07:47:11 +01:00
Steve Pulec
fef3437db2 Throw error on terminating empty instance list. Closes #697. 2016-10-09 21:20:53 -04:00
Steve Pulec
ddf2f5a754 Fix firehose to work without Redshift config. 2016-10-09 20:24:09 -04:00
Steve Pulec
768a58671a Merge pull request #723 from rocky4570/awslambda-mods
lambderize the moto lambda
2016-10-09 19:13:02 -04:00
Steve Pulec
b3b538bbef Merge pull request #721 from rocky4570/kms-fixes
Add ARN and Alias functionality to KMS
2016-10-09 19:01:26 -04:00
Steve Pulec
81d489ce46 Merge pull request #710 from kryptek/master
Fix Route53 tagging code
2016-10-09 18:58:17 -04:00
Steve Pulec
f7ea66c248 Merge pull request #711 from skygeo/fix_dynamodb2_conditions
fix: dynamodb2 conditions
2016-10-09 18:55:38 -04:00
rocky4570fft
dc98cf6f64 argh 2 days trying to work python3 into working python2 :( 2016-10-10 01:13:52 +10:00
Rene Martin
b06d439a81 Set the right dhcp_options id in the response
If the vpc has a dhcp_options associated with it the response should
include the right association.
2016-10-08 10:34:55 +01:00
rocky4570fft
7c3005e582 attmpt 2 to resolve StringIO not being within Python 3 anymore 2016-10-07 00:14:47 +10:00
rocky4570fft
6c577091da lambderize the moto lambda 2016-10-06 19:52:23 +10:00
rocky4570fft
3a7fec4032 Add ARN and Alias functionality to KMS 2016-10-03 01:33:59 +11:00
Georges Chaudy
6b74487b31 fix: dynamodb2 conditions 2016-09-23 16:14:17 +01:00
Alfred Moreno
40ad92b4bc Add a unit test to make sure multiple tags were actually associated with a resourceId 2016-09-22 18:44:07 -07:00
Steve Pulec
79fe9df6cc Merge pull request #706 from kryptek/add-route53-tagging
Add support and unittests for Route53 tags
2016-09-21 21:32:22 -04:00
Alfred Moreno
9a7556b3af Add support and unittests for Route53 tags 2016-09-20 17:41:23 -07:00
Taro Sato
bdb9d59e46 Update response headers with response_dict from key; add tests 2016-09-20 15:42:21 -07:00
Steve Pulec
ea0b587791 Merge pull request #699 from tootedom/apigateway
added more api gateway coverage
2016-09-16 18:34:27 -04:00
dominictootell
dd85f35f5a don't set cacheClusterSize if cache not enabled 2016-09-14 10:04:51 +01:00
Steve Pulec
fca0d3885b Merge pull request #698 from SpoonMeiser/fix-trailing-slash
Stop stripping the trailing slash off keys listed from s3 buckets
2016-09-13 21:57:03 -04:00
Steve Pulec
59be70d0e4 Merge pull request #693 from swipetospin/master
ALWAYS use utcnow(), never now()
2016-09-13 21:55:40 -04:00
Steve Pulec
4d9a0f7dc6 Merge pull request #692 from imran2140/fix-unicode-s3-key-listing
Fix unicode S3 key listing in Python 2
2016-09-13 21:54:28 -04:00
Steve Pulec
8a92cc2924 Merge pull request #689 from michael-dev2rights/master
Make testing a bit safer binding to 127.0.0.1
2016-09-13 21:53:13 -04:00
Steve Pulec
65047ce102 Merge pull request #687 from skygeo/ecs_tasks
Add support for ECS tasks
2016-09-13 21:51:42 -04:00
dominictootell
1aaafc5f07 added more api gateway coverage
added: get_stages, stage not found exception, update stage configuration, descriptions on deployments, setting stage variables on deployments and stage creating
2016-09-13 12:44:17 +01:00
Oliver Jeeves
b297b1410c Stop stripping the trailing slash off keys listed from s3 buckets
fixes #684
2016-09-13 12:21:22 +01:00
Collin RM Stocks
1b65c45b56 ALWAYS use utcnow(), never now() 2016-09-07 14:40:52 -04:00
imran
478e791c39 Fix unicode S3 key listing in Python 2 2016-09-04 04:31:03 +06:00
Michael De La Rue
9062c654cf Hopefully break build by testing for local only default server 2016-09-01 12:05:34 +01:00