Class: CfHelper
- Inherits:
-
Object
- Object
- CfHelper
- Defined in:
- lib/cf_factory/base/cf_helper.rb
Class Method Summary collapse
- .availability_zones(string = "") ⇒ Object
- .az_array_in_region(az_ids = ["b","c"], region = "") ⇒ Object
- .az_in_region(az_id = "a", region = "") ⇒ Object
- .base64(string) ⇒ Object
- .clean(string) ⇒ Object
- .generate_att(resource_name, attribute_name) ⇒ Object
- .generate_inner_array(cf_array) ⇒ Object
- .generate_inner_list(cf_array) ⇒ Object
- .generate_ref(cf_object_ref) ⇒ Object
- .generate_ref_array(cf_array) ⇒ Object
- .join(array) ⇒ Object
- .print_array(array) ⇒ Object
- .ref_current_region ⇒ Object
Class Method Details
.availability_zones(string = "") ⇒ Object
52 53 54 |
# File 'lib/cf_factory/base/cf_helper.rb', line 52 def self.availability_zones(string = "") "{ \"Fn::GetAZs\" : \"#{string}\" }" end |
.az_array_in_region(az_ids = ["b","c"], region = "") ⇒ Object
64 65 66 67 68 69 70 71 |
# File 'lib/cf_factory/base/cf_helper.rb', line 64 def self.az_array_in_region(az_ids = ["b","c"], region = "") result = "[" az_ids.each() {|az_id| result += CfHelper.az_in_region(az_id)+", " } result = result.chomp(" ").chomp(",") result += "]" end |
.az_in_region(az_id = "a", region = "") ⇒ Object
60 61 62 |
# File 'lib/cf_factory/base/cf_helper.rb', line 60 def self.az_in_region(az_id = "a", region = "") clean(join([ref_current_region(), az_id])) end |
.base64(string) ⇒ Object
39 40 41 42 |
# File 'lib/cf_factory/base/cf_helper.rb', line 39 def self.base64(string) base = "{ \"Fn::Base64\": \"#{string}\" }" return clean(base) end |
.clean(string) ⇒ Object
48 49 50 |
# File 'lib/cf_factory/base/cf_helper.rb', line 48 def self.clean(string) string.gsub(/\"{/,"{").gsub(/\"}/,"}").gsub(/}\"/,"}").gsub(/\"\[/,"[").gsub(/\"\]/,"]")#.gsub(/\\/,"") #TODO: the last gsub invalidated line-breaks end |
.generate_att(resource_name, attribute_name) ⇒ Object
6 7 8 |
# File 'lib/cf_factory/base/cf_helper.rb', line 6 def self.generate_att(resource_name, attribute_name) "{ \"Fn::GetAtt\" : [ \"#{resource_name}\", \"#{attribute_name}\" ] }" end |
.generate_inner_array(cf_array) ⇒ Object
20 21 22 23 24 25 26 27 28 |
# File 'lib/cf_factory/base/cf_helper.rb', line 20 def self.generate_inner_array(cf_array) result = "[" cf_array.each() {|cf| result += "#{cf.generate()}," } result = result.chomp(",") result += "]" result end |
.generate_inner_list(cf_array) ⇒ Object
30 31 32 33 34 35 36 37 |
# File 'lib/cf_factory/base/cf_helper.rb', line 30 def self.generate_inner_list(cf_array) result = "" cf_array.each() {|cf| result += "#{cf.generate},\n" } result = result.chomp("\n").chomp(",") result end |
.generate_ref(cf_object_ref) ⇒ Object
2 3 4 |
# File 'lib/cf_factory/base/cf_helper.rb', line 2 def self.generate_ref(cf_object_ref) "{ \"Ref\" : \"#{cf_object_ref}\" }" end |
.generate_ref_array(cf_array) ⇒ Object
10 11 12 13 14 15 16 17 18 |
# File 'lib/cf_factory/base/cf_helper.rb', line 10 def self.generate_ref_array(cf_array) result = "[" cf_array.each() {|cf| result += "#{cf.generate_ref}," } result = result.chomp(",") result += "]" result end |
.join(array) ⇒ Object
44 45 46 |
# File 'lib/cf_factory/base/cf_helper.rb', line 44 def self.join(array) "{ \"Fn::Join\" : [ \"\", #{print_array(array)} ]}" end |
.print_array(array) ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 |
# File 'lib/cf_factory/base/cf_helper.rb', line 73 def self.print_array(array) inner = "" array.each() {|element| if element == "\n" inner += "\"\\n\" ," else inner += "\"#{element}\" ," end } inner.chomp!(",") result = "[ #{inner} ]" #result = array.inspect #puts "rsult before CLEAN = #{result}" res = clean(result) #puts "rsult after CLEAN = #{res}" res end |
.ref_current_region ⇒ Object
56 57 58 |
# File 'lib/cf_factory/base/cf_helper.rb', line 56 def self.ref_current_region() '{ "Ref" : "AWS::Region" }' end |