Moto-1781: Create initial stub of rotate_secret and tests.
This commit is contained in:
parent
0b0d16e8ec
commit
69a78ba7c9
@ -36,6 +36,7 @@ class SecretsManagerBackend(BaseBackend):
|
|||||||
self.rotation_enabled = False
|
self.rotation_enabled = False
|
||||||
self.rotation_lambda_arn = ''
|
self.rotation_lambda_arn = ''
|
||||||
self.auto_rotate_after_days = 0
|
self.auto_rotate_after_days = 0
|
||||||
|
self.version_id = ''
|
||||||
|
|
||||||
def reset(self):
|
def reset(self):
|
||||||
region_name = self.region
|
region_name = self.region
|
||||||
@ -105,6 +106,20 @@ class SecretsManagerBackend(BaseBackend):
|
|||||||
|
|
||||||
return response
|
return response
|
||||||
|
|
||||||
|
def rotate_secret(self, secret_id, client_request_token=None,
|
||||||
|
rotation_lambda_arn=None, rotation_rules=None):
|
||||||
|
|
||||||
|
if not self._is_valid_identifier(secret_id):
|
||||||
|
raise ResourceNotFoundException
|
||||||
|
|
||||||
|
response = json.dumps({
|
||||||
|
"ARN": secret_arn(self.region, self.secret_id),
|
||||||
|
"Name": self.name,
|
||||||
|
"VersionId": self.version_id
|
||||||
|
})
|
||||||
|
|
||||||
|
return response
|
||||||
|
|
||||||
def get_random_password(self, password_length,
|
def get_random_password(self, password_length,
|
||||||
exclude_characters, exclude_numbers,
|
exclude_characters, exclude_numbers,
|
||||||
exclude_punctuation, exclude_uppercase,
|
exclude_punctuation, exclude_uppercase,
|
||||||
|
@ -179,3 +179,19 @@ def test_describe_secret_that_does_not_match():
|
|||||||
|
|
||||||
with assert_raises(ClientError):
|
with assert_raises(ClientError):
|
||||||
result = conn.get_secret_value(SecretId='i-dont-match')
|
result = conn.get_secret_value(SecretId='i-dont-match')
|
||||||
|
|
||||||
|
@mock_secretsmanager
|
||||||
|
def test_rotate_secret_that_does_not_exist():
|
||||||
|
conn = boto3.client('secretsmanager', 'us-west-2')
|
||||||
|
|
||||||
|
with assert_raises(ClientError):
|
||||||
|
result = conn.rotate_secret(SecretId='i-dont-exist')
|
||||||
|
|
||||||
|
@mock_secretsmanager
|
||||||
|
def test_rotate_secret_that_does_not_match():
|
||||||
|
conn = boto3.client('secretsmanager', region_name='us-west-2')
|
||||||
|
conn.create_secret(Name='test-secret',
|
||||||
|
SecretString='foosecret')
|
||||||
|
|
||||||
|
with assert_raises(ClientError):
|
||||||
|
result = conn.rotate_secret(SecretId='i-dont-match')
|
||||||
|
Loading…
Reference in New Issue
Block a user