def _add_rds_extension(parameter_pool, option_settings, option_to_remove): region = parameter_pool.get_value(ParameterName.Region) #Generate snippet env_name = parameter_pool.get_value(ParameterName.EnvironmentName) if has_rds_instance(parameter_pool, env_name): spec = None else: spec = TemplateSpecification() snippet = TemplateSnippet() snippet.snippet_name = RdsDefault.SnippetName snippet.source_url = RdsDefault.get_snippet_url(region) snippet.order = RdsDefault.SnippetAddOrder spec.template_snippets = [snippet] #Add/update option settings #TODO: change option_settings to o(1) structure while retain order for output for pname in RdsDefault.OptionMinSet: if parameter_pool.has(pname) and parameter_pool.get_value(pname) is not None: _update_option_setting(option_settings, RdsDefault.Namespace, RdsDefault.OptionNames[pname], parameter_pool.get_value(pname)) _trim_rds_options(option_settings, option_to_remove) return spec
def _remove_rds_extension(parameter_pool, option_settings, option_to_remove): region = parameter_pool.get_value(ParameterName.Region) #Generate snippet spec = TemplateSpecification() snippet = TemplateSnippet() snippet.snippet_name = RdsDefault.SnippetName snippet.source_url = RdsDefault.get_snippet_url(region) snippet.order = RdsDefault.SnippetRemoveOrder spec.template_snippets = [snippet] #Remove option settings for pname in RdsDefault.OptionNames: _remove_option_setting(option_settings, option_to_remove, RdsDefault.Namespace, RdsDefault.OptionNames[pname]) return spec