module Buildr::Shell
Public Class Methods
define_task(project, name, provider = nil)
click to toggle source
# File lib/buildr/shell.rb, line 37 def define_task(project, name, provider = nil) ShellTask.define_task(name).tap do |t| t.send(:associate_with, project) t.enhance([project.compile]) do |t| # double-enhance to execute the provider last t.enhance { |t| t.run } end t.using provider.to_sym if provider end end
providers()
click to toggle source
# File lib/buildr/shell.rb, line 21 def providers @providers ||= [] end
select_by_lang(lang)
click to toggle source
# File lib/buildr/shell.rb, line 25 def select_by_lang(lang) fail 'Unable to define shell task for nil language' if lang.nil? providers.detect { |e| e.languages.nil? ? false : e.languages.include?(lang.to_sym) } end
Also aliased as: select
select_by_name(name)
click to toggle source
# File lib/buildr/shell.rb, line 32 def select_by_name(name) fail 'Unable to define run task for nil' if name.nil? providers.detect { |e| e.to_sym == name.to_sym } end
Public Instance Methods
shell(&block) → ShellTask
click to toggle source
This method returns the project's shell task. It also accepts a block to be executed when the shell task is invoked.
# File lib/buildr/shell.rb, line 174 def shell(&block) task('shell').tap do |t| t.enhance &block if block end end