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.
Also more closely mirror AWS by not returning ELB
BackendServerDescriptions that don't have policies.
Signed-off-by: Michael Nussbaum <michael.nussbaum@getbraintree.com>
* 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
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>
* Adding PolicyType to FakeScalingPolicy
* Implement filtering for AutoScalingBackend.describe_policies(...)
* Unit test for describe_policies fuction in autoscaling
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.
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).
* 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