adding Tags support
This commit is contained in:
parent
b485122ec6
commit
08d17a7a13
@ -56,7 +56,7 @@ class SecretsManagerBackend(BaseBackend):
|
|||||||
|
|
||||||
return response
|
return response
|
||||||
|
|
||||||
def create_secret(self, name, secret_string, **kwargs):
|
def create_secret(self, name, secret_string, tags, **kwargs):
|
||||||
|
|
||||||
generated_version_id = str(uuid.uuid4())
|
generated_version_id = str(uuid.uuid4())
|
||||||
|
|
||||||
@ -68,7 +68,8 @@ class SecretsManagerBackend(BaseBackend):
|
|||||||
'rotation_enabled': False,
|
'rotation_enabled': False,
|
||||||
'rotation_lambda_arn': '',
|
'rotation_lambda_arn': '',
|
||||||
'auto_rotate_after_days': 0,
|
'auto_rotate_after_days': 0,
|
||||||
'version_id': generated_version_id
|
'version_id': generated_version_id,
|
||||||
|
'tags': tags
|
||||||
}
|
}
|
||||||
|
|
||||||
self.secrets[name] = secret
|
self.secrets[name] = secret
|
||||||
@ -101,12 +102,7 @@ class SecretsManagerBackend(BaseBackend):
|
|||||||
"LastChangedDate": None,
|
"LastChangedDate": None,
|
||||||
"LastAccessedDate": None,
|
"LastAccessedDate": None,
|
||||||
"DeletedDate": None,
|
"DeletedDate": None,
|
||||||
"Tags": [
|
"Tags": secret['tags']
|
||||||
{
|
|
||||||
"Key": "",
|
|
||||||
"Value": ""
|
|
||||||
},
|
|
||||||
]
|
|
||||||
})
|
})
|
||||||
|
|
||||||
return response
|
return response
|
||||||
|
@ -19,9 +19,11 @@ class SecretsManagerResponse(BaseResponse):
|
|||||||
def create_secret(self):
|
def create_secret(self):
|
||||||
name = self._get_param('Name')
|
name = self._get_param('Name')
|
||||||
secret_string = self._get_param('SecretString')
|
secret_string = self._get_param('SecretString')
|
||||||
|
tags = self._get_param('Tags', if_none=[])
|
||||||
return secretsmanager_backends[self.region].create_secret(
|
return secretsmanager_backends[self.region].create_secret(
|
||||||
name=name,
|
name=name,
|
||||||
secret_string=secret_string
|
secret_string=secret_string,
|
||||||
|
tags=tags
|
||||||
)
|
)
|
||||||
|
|
||||||
def get_random_password(self):
|
def get_random_password(self):
|
||||||
|
@ -44,6 +44,23 @@ def test_create_secret():
|
|||||||
secret = conn.get_secret_value(SecretId='test-secret')
|
secret = conn.get_secret_value(SecretId='test-secret')
|
||||||
assert secret['SecretString'] == 'foosecret'
|
assert secret['SecretString'] == 'foosecret'
|
||||||
|
|
||||||
|
@mock_secretsmanager
|
||||||
|
def test_create_secret_with_tags():
|
||||||
|
conn = boto3.client('secretsmanager', region_name='us-east-1')
|
||||||
|
secret_name = 'test-secret-with-tags'
|
||||||
|
|
||||||
|
result = conn.create_secret(
|
||||||
|
Name=secret_name,
|
||||||
|
SecretString="foosecret",
|
||||||
|
Tags=[{"Key": "Foo", "Value": "Bar"}, {"Key": "Mykey", "Value": "Myvalue"}]
|
||||||
|
)
|
||||||
|
assert result['ARN']
|
||||||
|
assert result['Name'] == secret_name
|
||||||
|
secret_value = conn.get_secret_value(SecretId=secret_name)
|
||||||
|
assert secret_value['SecretString'] == 'foosecret'
|
||||||
|
secret_details = conn.describe_secret(SecretId=secret_name)
|
||||||
|
assert secret_details['Tags'] == [{"Key": "Foo", "Value": "Bar"}, {"Key": "Mykey", "Value": "Myvalue"}]
|
||||||
|
|
||||||
@mock_secretsmanager
|
@mock_secretsmanager
|
||||||
def test_get_random_password_default_length():
|
def test_get_random_password_default_length():
|
||||||
conn = boto3.client('secretsmanager', region_name='us-west-2')
|
conn = boto3.client('secretsmanager', region_name='us-west-2')
|
||||||
|
Loading…
Reference in New Issue
Block a user