Commit Graph

935 Commits

Author SHA1 Message Date
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