Sha256: 0f21527a72de9c5b3a0b3ff2872f6cf8f1759d3078eef285391ef4829ceee334

Contents?: true

Size: 769 Bytes

Versions: 39

Compression:

Stored size: 769 Bytes

Contents

require File.expand_path("../command", __FILE__)

module Decko
  module Commands
    class RakeCommand < Command
      def initialize rake_task, args={}
        @task = rake_task
        opts = {}
        if args.is_a? Array
          Parser.new(rake_task, opts).parse!(args)
        else
          opts = args
        end
        @envs = Array(opts[:envs])
      end

      def run
        command.each do |cmd|
          puts cmd
          puts `#{cmd}`
        end
      end

      def command
        task_cmd = "bundle exec rake #{@task}"
        return [task_cmd] if !@envs || @envs.empty?
        @envs.map do |env|
          "env RAILS_ENV=#{env} #{task_cmd}"
        end
      end
    end
  end
end

require File.expand_path("../rake_command/parser", __FILE__)

Version data entries

39 entries across 39 versions & 1 rubygems

Version Path
decko-0.8.3 lib/decko/commands/rake_command.rb
decko-0.8.2 lib/decko/commands/rake_command.rb
decko-0.8.1 lib/decko/commands/rake_command.rb
decko-0.8.0 lib/decko/commands/rake_command.rb
decko-0.7.0 lib/decko/commands/rake_command.rb
decko-0.7.0.pre lib/decko/commands/rake_command.rb
decko-0.6.8 lib/decko/commands/rake_command.rb
decko-0.6.7 lib/decko/commands/rake_command.rb
decko-0.6.6 lib/decko/commands/rake_command.rb
decko-0.6.5 lib/decko/commands/rake_command.rb
decko-0.6.4 lib/decko/commands/rake_command.rb
decko-0.6.3 lib/decko/commands/rake_command.rb
decko-0.6.2 lib/decko/commands/rake_command.rb
decko-0.6.1 lib/decko/commands/rake_command.rb
decko-0.6.0 lib/decko/commands/rake_command.rb
decko-0.5.3 lib/decko/commands/rake_command.rb
decko-0.5.2 lib/decko/commands/rake_command.rb
decko-0.5.1 lib/decko/commands/rake_command.rb
decko-0.5.0 lib/decko/commands/rake_command.rb
decko-0.4.1 lib/decko/commands/rake_command.rb