class Hat::Stage
Attributes
configuration[RW]
name[RW]
Public Class Methods
new(name, configuration, list)
click to toggle source
# File lib/hat/stage.rb, line 5 def initialize name, configuration, list self.name = name.to_sym self.configuration = configuration end
Public Instance Methods
define_task(recipes)
click to toggle source
# File lib/hat/stage.rb, line 14 def define_task(recipes) conf = self.configuration name = self.name task = Rake::Task.define_task(name) do invoke 'load:defaults' conf.each do |k, v| set k.to_sym, v end recipes.list.each{|l| load "#{recipes.dir}/recipes/#{l}.rb" } set(:stage, name) load "capistrano/#{fetch(:scm)}.rb" I18n.locale = fetch(:locale, :en) configure_backend end end
set_defaults(defaults)
click to toggle source
# File lib/hat/stage.rb, line 10 def set_defaults(defaults) configuration.merge!(Hash[defaults]) end