Sha256: 9e464254499a70c02959647c65e823343d3272a38d684e21f6d08d39326812b0

Contents?: true

Size: 528 Bytes

Versions: 1

Compression:

Stored size: 528 Bytes

Contents

require 'scripted/commands/shell'
require 'scripted/commands/ruby'

module Scripted
  module Commands
    class Rake

      attr_reader :command

      def initialize(command)
        @command = command
      end

      def execute!(log = STDOUT)
        task = Rake::Task[command]
      rescue NameError
        # not running from within Rake, so falling back shelling out
        Shell.new("rake #{command} --trace").execute!(log)
      else
        Ruby.new(lambda { task.invoke }).execute!(log)
      end

    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
scripted-0.0.1 lib/scripted/commands/rake.rb