Class: Ufo::DSL::Helper
- Inherits:
-
Object
show all
- Includes:
- Util
- Defined in:
- lib/ufo/dsl/helper.rb
Overview
provides some helperally context variables
Instance Method Summary
collapse
Methods included from Util
#default_cluster, #default_params, #display_params, #execute, #pretty_time, #settings
Instance Method Details
#current_region ⇒ Object
61
62
63
64
|
# File 'lib/ufo/dsl/helper.rb', line 61
def current_region
return 'us-east-1' if ENV['TEST']
@current_region ||= `aws configure get region`.strip rescue 'us-east-1'
end
|
#dockerfile_port ⇒ Object
15
16
17
18
19
20
|
# File 'lib/ufo/dsl/helper.rb', line 15
def dockerfile_port
dockerfile_path = "#{Ufo.root}/Dockerfile"
if File.exist?(dockerfile_path)
parse_for_dockerfile_port(dockerfile_path)
end
end
|
#env_file(path) ⇒ Object
51
52
53
54
55
56
57
58
59
|
# File 'lib/ufo/dsl/helper.rb', line 51
def env_file(path)
full_path = "#{Ufo.root}/#{path}"
unless File.exist?(full_path)
puts "The #{full_path} env file could not be found. Are you sure it exists?"
exit 1
end
text = IO.read(full_path)
env_vars(text)
end
|
#env_vars(text) ⇒ Object
29
30
31
32
33
34
35
36
37
38
39
|
# File 'lib/ufo/dsl/helper.rb', line 29
def env_vars(text)
lines = filtered_lines(text)
lines.map do |line|
key,*value = line.strip.split("=").map {|x| x.strip}
value = value.join('=')
{
name: key,
value: value,
}
end
end
|
#filtered_lines(text) ⇒ Object
41
42
43
44
45
46
47
48
49
|
# File 'lib/ufo/dsl/helper.rb', line 41
def filtered_lines(text)
lines = text.split("\n")
lines.map! { |l| l.sub(/#.*/,'').strip }
lines = lines.reject { |l| l =~ /(^|\s)#/i }
lines = lines.reject { |l| l.strip.empty? }
end
|
#full_image_name ⇒ Object
#parse_for_dockerfile_port(dockerfile_path) ⇒ Object
66
67
68
69
70
71
72
73
74
|
# File 'lib/ufo/dsl/helper.rb', line 66
def parse_for_dockerfile_port(dockerfile_path)
lines = IO.read(dockerfile_path).split("\n")
expose_line = lines.find { |l| l =~ /^EXPOSE / }
if expose_line
md = expose_line.match(/EXPOSE (\d+)/)
port = md[1] if md
end
port.to_i if port
end
|