Merge pull request #1950 from frenchfrywpepper/cache_parameter_group_name

Expose cache_parameter_group_name in elasticache module
This commit is contained in:
Brian Coca 2015-11-02 18:49:55 -05:00
commit 6e905f0586

View file

@ -43,6 +43,11 @@ options:
- The version number of the cache engine
required: false
default: none
cache_parameter_group_name:
description:
- The name of the cache parameter group to associate with this cache cluster. If this argument is omitted, the default cache parameter group for the specified engine will be used.
required: false
default: none
node_type:
description:
- The compute and memory capacity of the nodes in the cache cluster
@ -152,11 +157,12 @@ class ElastiCacheManager(object):
def __init__(self, module, name, engine, cache_engine_version, node_type,
num_nodes, cache_port, parameter_group, cache_subnet_group,
cache_security_groups, security_group_ids, zone, wait,
hard_modify, region, **aws_connect_kwargs):
hard_modify, region, cache_parameter_group_name=None, **aws_connect_kwargs):
self.module = module
self.name = name
self.engine = engine
self.cache_engine_version = cache_engine_version
self.cache_parameter_group_name = cache_parameter_group_name
self.node_type = node_type
self.num_nodes = num_nodes
self.cache_port = cache_port
@ -217,6 +223,7 @@ class ElastiCacheManager(object):
cache_node_type=self.node_type,
engine=self.engine,
engine_version=self.cache_engine_version,
cache_parameter_group_name=self.cache_parameter_group_name,
cache_security_group_names=self.cache_security_groups,
security_group_ids=self.security_group_ids,
cache_parameter_group_name=self.parameter_group,
@ -298,7 +305,8 @@ class ElastiCacheManager(object):
cache_parameter_group_name=self.parameter_group,
security_group_ids=self.security_group_ids,
apply_immediately=True,
engine_version=self.cache_engine_version)
engine_version=self.cache_engine_version,
cache_parameter_group_name=self.cache_parameter_group_name)
except boto.exception.BotoServerError, e:
self.module.fail_json(msg=e.message)
@ -484,6 +492,7 @@ def main():
name={'required': True},
engine={'required': False, 'default': 'memcached'},
cache_engine_version={'required': False},
cache_parameter_group_name={'required': False},
node_type={'required': False, 'default': 'cache.m1.small'},
num_nodes={'required': False, 'default': None, 'type': 'int'},
parameter_group={'required': False, 'default': None},
@ -512,6 +521,7 @@ def main():
state = module.params['state']
engine = module.params['engine']
cache_engine_version = module.params['cache_engine_version']
cache_parameter_group_name = module.params['cache_parameter_group_name']
node_type = module.params['node_type']
num_nodes = module.params['num_nodes']
cache_port = module.params['cache_port']
@ -538,13 +548,16 @@ def main():
module.fail_json(msg=str("Either region or AWS_REGION or EC2_REGION environment variable or boto config aws_region or ec2_region must be set."))
elasticache_manager = ElastiCacheManager(module, name, engine,
cache_engine_version, node_type,
cache_engine_version,
node_type,
num_nodes, cache_port,
parameter_group,
cache_subnet_group,
cache_security_groups,
security_group_ids, zone, wait,
hard_modify, region, **aws_connect_kwargs)
hard_modify, region,
cache_parameter_group_name=cache_parameter_group_name,
**aws_connect_kwargs)
if state == 'present':
elasticache_manager.ensure_present()