class EbDeployer::Environment
Attributes
component_under_deploy[W]
creation_opts[RW]
inactive_settings[W]
name[R]
resource_stacks[W]
settings[W]
strategy_name[RW]
Public Class Methods
new(app, name, stack_name, eb_driver) { |self| ... }
click to toggle source
# File lib/eb_deployer/environment.rb, line 10 def initialize(app, name, stack_name, eb_driver, &block) @app = app @name = name @stack_name = stack_name @eb_driver = eb_driver @creation_opts = {} @settings = [] @inactive_settings = [] @strategy_name = :blue_green @components = nil yield(self) if block_given? unless @components @components = [DefaultComponent.new(self, @creation_opts, @strategy_name, @eb_driver)] end end
Public Instance Methods
app_name()
click to toggle source
# File lib/eb_deployer/environment.rb, line 26 def app_name @app.name end
components=(components_attrs)
click to toggle source
# File lib/eb_deployer/environment.rb, line 37 def components=(components_attrs) return unless components_attrs @components = components_attrs.map do |attrs| attrs = symbolize_keys(attrs) Component.new(attrs.delete(:name), self, attrs, @eb_driver) end end
deploy(version_label)
click to toggle source
# File lib/eb_deployer/environment.rb, line 30 def deploy(version_label) resource_settings = @resource_stacks.provision(@stack_name) components_to_deploy.each do |component| component.deploy(version_label, @settings + resource_settings, @inactive_settings) end end
Private Instance Methods
component_named(name)
click to toggle source
# File lib/eb_deployer/environment.rb, line 56 def component_named(name) @components.detect { |c| c.name == name } end
components_to_deploy()
click to toggle source
# File lib/eb_deployer/environment.rb, line 46 def components_to_deploy if @component_under_deploy component = component_named(@component_under_deploy) raise "'#{@component_under_deploy}' is not in the configuration. Available components are #{@components.map(&:name) }" unless component [component] else @components end end