diff --git a/moto/secretsmanager/responses.py b/moto/secretsmanager/responses.py new file mode 100644 index 00000000..10d67ae6 --- /dev/null +++ b/moto/secretsmanager/responses.py @@ -0,0 +1,17 @@ +from __future__ import unicode_literals + +from moto.core.responses import BaseResponse + +from .models import secretsmanager_backends + + +class SecretsManagerResponse(BaseResponse): + + def get_secret_value(self): + secret_id = self.get_param('SecretId') + version_id = self.get_param('VersionId') + version_stage = self.get_param('VersionStage') + return secretsmanager_backends[self.region].get_secret_value( + secret_id=secret_id, + version_id=version_id, + version_stage=version_stage) diff --git a/moto/secretsmanager/urls.py b/moto/secretsmanager/urls.py new file mode 100644 index 00000000..9e39e726 --- /dev/null +++ b/moto/secretsmanager/urls.py @@ -0,0 +1,10 @@ +from __future__ import unicode_literals +from .responses import SecretsManagerResponse + +url_bases = [ + "https?://secretsmanager.(.+).amazonaws.com", +] + +url_paths = { + '{0}/$': SecretsManagerResponse.dispatch, +} diff --git a/tests/test_secretsmanager/test_secretsmanager.py b/tests/test_secretsmanager/test_secretsmanager.py new file mode 100644 index 00000000..b80e1350 --- /dev/null +++ b/tests/test_secretsmanager/test_secretsmanager.py @@ -0,0 +1,13 @@ +from __future__ import unicode_literals + +import boto3 + +from moto import mock_secretsmanager +import sure # noqa + +@mock_secretsmanager +def test_get_secret_value(): + conn = boto3.client('secretsmanager', 'us-west-2') + + result = conn.get_secret_value(SecretId='java-util-test-password') + assert result['SecretString'] == 'mysecretstring'