In all of the tests of `create_db_instance()`, the `AllocatedStorage`
parameter is provided. The [RDS API
reference](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html)
says this parameter is optional; however, when none is provided, moto
returns an obscure error message:
```
self = <botocore.parsers.QueryParser object at 0x113745890>, shape = <Shape(Integer)>, text = 'None'
@_text_content
def _handle_integer(self, shape, text):
> return int(text)
E ValueError: invalid literal for int() with base 10: 'None'
/usr/local/Cellar/pyenv/1.2.13_1/versions/3.7.4/envs/rds_encrypt/lib/python3.7/site-packages/botocore/parsers.py:466: ValueError
```
This PR adds default values that correspond to the current default API
behaviors.
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>