Module: Dk::Task::InstanceMethods
- Defined in:
- lib/dk/task.rb
Instance Method Summary collapse
- #==(other_task) ⇒ Object
- #dk_dsl_ssh_hosts ⇒ Object
- #dk_run ⇒ Object
- #dk_run_callbacks(named) ⇒ Object
- #initialize(runner, params = nil) ⇒ Object
- #run! ⇒ Object
Instance Method Details
#==(other_task) ⇒ Object
56 57 58 |
# File 'lib/dk/task.rb', line 56 def ==(other_task) self.class == other_task.class end |
#dk_dsl_ssh_hosts ⇒ Object
52 53 54 |
# File 'lib/dk/task.rb', line 52 def dk_dsl_ssh_hosts @dk_dsl_ssh_hosts ||= self.instance_eval(&self.class.ssh_hosts) end |
#dk_run ⇒ Object
32 33 34 35 36 37 38 |
# File 'lib/dk/task.rb', line 32 def dk_run self.dk_run_callbacks 'before' @dk_runner.log_task_run(self.class) do catch(:halt){ self.run! } end self.dk_run_callbacks 'after' end |
#dk_run_callbacks(named) ⇒ Object
44 45 46 47 48 49 50 |
# File 'lib/dk/task.rb', line 44 def dk_run_callbacks(named) callbacks = CallbackSet.new callbacks.add_callbacks(@dk_runner.task_callbacks("prepend_#{named}", self.class)) callbacks.add_callbacks(self.class.send("#{named}_callbacks") || []) callbacks.add_callbacks(@dk_runner.task_callbacks(named, self.class)) callbacks.each{ |c| run_task(c.task_class, c.params) } end |
#initialize(runner, params = nil) ⇒ Object
25 26 27 28 29 30 |
# File 'lib/dk/task.rb', line 25 def initialize(runner, params = nil) params ||= {} @dk_runner = runner @dk_params = ParamsHash.new{ |h, k| @dk_runner.params[k] } @dk_params.merge!(params) end |
#run! ⇒ Object
40 41 42 |
# File 'lib/dk/task.rb', line 40 def run! raise NotImplementedError end |