class Webtask::RakeApplication
Public Class Methods
build_task_endpoints(application)
click to toggle source
# File lib/webtask/rake_application.rb, line 11 def build_task_endpoints(application) tasks.each do |task| application.post "/#{task.name}" do argument_list = task.arg_names.map do |arg_name| params[:args][arg_name] end stream_id = Digest::SHA1.hexdigest(rand.to_s) application.settings.output_streams[stream_id] = task.shell_command(args: argument_list) haml :result, format: :html5, locals: { task: task, stream_id: stream_id } end end end
tasks()
click to toggle source
# File lib/webtask/rake_application.rb, line 7 def tasks @tasks ||= rake_app.tasks.map { |task| TaskWrapper.new(task) } end
Private Class Methods
rake_app()
click to toggle source
# File lib/webtask/rake_application.rb, line 29 def rake_app return @rake_app if @rake_app @rake_app = Rake.application @rake_app.options.rakelib = [ "rakelib" ] @rake_app.load_rakefile return @rake_app end