Class: CfFactory::CfHelper
- Inherits:
-
Object
- Object
- CfFactory::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
53 54 55 |
# File 'lib/cf_factory/base/cf_helper.rb', line 53 def self.availability_zones(string = "") "{ \"Fn::GetAZs\" : \"#{string}\" }" end |
.az_array_in_region(az_ids = ["b","c"], region = "") ⇒ Object
65 66 67 68 69 70 71 72 |
# File 'lib/cf_factory/base/cf_helper.rb', line 65 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
61 62 63 |
# File 'lib/cf_factory/base/cf_helper.rb', line 61 def self.az_in_region(az_id = "a", region = "") clean(join([ref_current_region(), az_id])) end |
.base64(string) ⇒ Object
40 41 42 43 |
# File 'lib/cf_factory/base/cf_helper.rb', line 40 def self.base64(string) base = "{ \"Fn::Base64\": \"#{string}\" }" return clean(base) end |
.clean(string) ⇒ Object
49 50 51 |
# File 'lib/cf_factory/base/cf_helper.rb', line 49 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
7 8 9 |
# File 'lib/cf_factory/base/cf_helper.rb', line 7 def self.generate_att(resource_name, attribute_name) "{ \"Fn::GetAtt\" : [ \"#{resource_name}\", \"#{attribute_name}\" ] }" end |
.generate_inner_array(cf_array) ⇒ Object
21 22 23 24 25 26 27 28 29 |
# File 'lib/cf_factory/base/cf_helper.rb', line 21 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
31 32 33 34 35 36 37 38 |
# File 'lib/cf_factory/base/cf_helper.rb', line 31 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
3 4 5 |
# File 'lib/cf_factory/base/cf_helper.rb', line 3 def self.generate_ref(cf_object_ref) "{ \"Ref\" : \"#{cf_object_ref}\" }" end |
.generate_ref_array(cf_array) ⇒ Object
11 12 13 14 15 16 17 18 19 |
# File 'lib/cf_factory/base/cf_helper.rb', line 11 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
45 46 47 |
# File 'lib/cf_factory/base/cf_helper.rb', line 45 def self.join(array) "{ \"Fn::Join\" : [ \"\", #{print_array(array)} ]}" end |
.print_array(array) ⇒ Object
74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
# File 'lib/cf_factory/base/cf_helper.rb', line 74 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
57 58 59 |
# File 'lib/cf_factory/base/cf_helper.rb', line 57 def self.ref_current_region() '{ "Ref" : "AWS::Region" }' end |