From b8c7dab65f3c53ec77591553009afa2bb279c677 Mon Sep 17 00:00:00 2001 From: Tarun Menon Date: Wed, 28 Aug 2024 12:14:48 +1000 Subject: [PATCH 1/4] add custom export names --- redis.cfndsl.rb | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/redis.cfndsl.rb b/redis.cfndsl.rb index 2442a04..567e241 100644 --- a/redis.cfndsl.rb +++ b/redis.cfndsl.rb @@ -1,7 +1,9 @@ CloudFormation do + + export = external_parameters.fetch(:export_name, external_parameters[:component_name]) redis_tags = [] - redis_tags << { Key: 'Name', Value: FnSub("${EnvironmentName}-#{external_parameters[:component_name]}") } + redis_tags << { Key: 'Name', Value: FnSub("${EnvironmentName}-#{export}") } redis_tags << { Key: 'Environment', Value: Ref(:EnvironmentName) } redis_tags << { Key: 'EnvironmentType', Value: Ref(:EnvironmentType) } @@ -10,7 +12,7 @@ EC2_SecurityGroup(:SecurityGroupRedis) { VpcId Ref(:VPCId) - GroupDescription FnSub("${EnvironmentName}-#{external_parameters[:component_name]}") + GroupDescription FnSub("${EnvironmentName}-#{export}") if security_group_rules.any? SecurityGroupIngress generate_security_group_rules(security_group_rules,ip_blocks) @@ -29,11 +31,11 @@ Output(:RedisSecurityGroupId) { Value Ref(:SecurityGroupRedis) - Export FnSub("${EnvironmentName}-#{external_parameters[:component_name]}-RedisSecurityGroup") + Export FnSub("${EnvironmentName}-#{export}-RedisSecurityGroup") } ElastiCache_SubnetGroup(:SubnetGroupRedis) { - Description FnSub("${EnvironmentName}-#{external_parameters[:component_name]}") + Description FnSub("${EnvironmentName}-#{export}") SubnetIds Ref(:Subnets) } @@ -53,7 +55,7 @@ ElastiCache_ParameterGroup(:ParameterGroupRedis) { CacheParameterGroupFamily family - Description FnSub("${EnvironmentName}-#{external_parameters[:component_name]}") + Description FnSub("${EnvironmentName}-#{export}") Properties final_parameters } @@ -73,7 +75,7 @@ ElastiCache_ReplicationGroup(:ReplicationGroupRedis) { - ReplicationGroupDescription FnSub("${EnvironmentName}-#{external_parameters[:component_name]}") + ReplicationGroupDescription FnSub("${EnvironmentName}-#{export}") Engine 'redis' EngineVersion engine_version unless engine_version.nil? @@ -130,12 +132,12 @@ Output(:RedisHostEndpoint) { Value(FnGetAtt(:ReplicationGroupRedis, record_endpoint)) - Export FnSub("${EnvironmentName}-#{external_parameters[:component_name]}-RedisHostEndpoint") + Export FnSub("${EnvironmentName}-#{export}-RedisHostEndpoint") } Output(:RedisReadAddresses) { Value(FnGetAtt(:ReplicationGroupRedis, 'ReadEndPoint.Addresses')) - Export FnSub("${EnvironmentName}-#{external_parameters[:component_name]}-RedisReadAddresses") + Export FnSub("${EnvironmentName}-#{export}-RedisReadAddresses") } unless cluster_enabled end \ No newline at end of file From 6903ce35398440415b7eea7f090c024763af0dbe Mon Sep 17 00:00:00 2001 From: Tarun Menon Date: Thu, 5 Sep 2024 12:04:51 +1000 Subject: [PATCH 2/4] add tags --- redis.cfndsl.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/redis.cfndsl.rb b/redis.cfndsl.rb index 567e241..1cf120d 100644 --- a/redis.cfndsl.rb +++ b/redis.cfndsl.rb @@ -2,7 +2,7 @@ export = external_parameters.fetch(:export_name, external_parameters[:component_name]) - redis_tags = [] + redis_tags = external_parameters.fetch(:tags, []) redis_tags << { Key: 'Name', Value: FnSub("${EnvironmentName}-#{export}") } redis_tags << { Key: 'Environment', Value: Ref(:EnvironmentName) } redis_tags << { Key: 'EnvironmentType', Value: Ref(:EnvironmentType) } From a0e73d97c5641e1cdc92864b56d150dfaa244011 Mon Sep 17 00:00:00 2001 From: Tarun Menon Date: Thu, 5 Sep 2024 12:06:24 +1000 Subject: [PATCH 3/4] fix syntax --- redis.cfndsl.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/redis.cfndsl.rb b/redis.cfndsl.rb index 1cf120d..4e3aa03 100644 --- a/redis.cfndsl.rb +++ b/redis.cfndsl.rb @@ -2,7 +2,7 @@ export = external_parameters.fetch(:export_name, external_parameters[:component_name]) - redis_tags = external_parameters.fetch(:tags, []) + redis_tags = external_parameters.fetch(:tags, {}) redis_tags << { Key: 'Name', Value: FnSub("${EnvironmentName}-#{export}") } redis_tags << { Key: 'Environment', Value: Ref(:EnvironmentName) } redis_tags << { Key: 'EnvironmentType', Value: Ref(:EnvironmentType) } From 6c81e95fd4b98a65b75178fd3465e58f1f1d239e Mon Sep 17 00:00:00 2001 From: Tarun Menon Date: Thu, 5 Sep 2024 12:15:52 +1000 Subject: [PATCH 4/4] fix tagging --- redis.cfndsl.rb | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/redis.cfndsl.rb b/redis.cfndsl.rb index 4e3aa03..a8f864e 100644 --- a/redis.cfndsl.rb +++ b/redis.cfndsl.rb @@ -2,11 +2,16 @@ export = external_parameters.fetch(:export_name, external_parameters[:component_name]) - redis_tags = external_parameters.fetch(:tags, {}) + redis_tags = [] redis_tags << { Key: 'Name', Value: FnSub("${EnvironmentName}-#{export}") } redis_tags << { Key: 'Environment', Value: Ref(:EnvironmentName) } redis_tags << { Key: 'EnvironmentType', Value: Ref(:EnvironmentType) } + tags = external_parameters.fetch(:tags, {}) + tags.each do |key, value| + redis_tags << { Key: FnSub(key), Value: FnSub(value)} + end + ip_blocks = external_parameters.fetch(:ip_blocks, {}) security_group_rules = external_parameters.fetch(:security_group_rules, [])