86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
|
# File 'lib/fum/commands/launch.rb', line 86
def set_version(stage_decl, env_opt, options)
version_label = stage_decl.version_label
return nil if version_label.nil?
if version_label.is_a?(String)
env_opt[:version_label] = version_label
puts "Using verison label #{version_label}"
elsif version_label.is_a?(Hash) && version_label.has_key?(:from_stage)
from_stage = version_label[:from_stage]
from_stage_decl = stage(@application.main_decl, from_stage)
analyzer = StageAnalyzer.new(from_stage_decl)
analyzer.analyze(options)
active = analyzer.active
die "Cannot determine version to launch. No active environment for stage '#{from_stage}' specified." if active.nil?
env_opt[:version_label] = active.version_label
puts "Using version #{active.version_label} from stage #{from_stage}."
else
"Unknown version label #{version_label.inspect}"
end
end
|