Sha256: df2720b3380fa41266b5a357829d81bafd977f52fdecb0b5f48b0d4a2597b330

Contents?: true

Size: 1.28 KB

Versions: 18

Compression:

Stored size: 1.28 KB

Contents

module Rails
  module Command
    class RunnerCommand < Base # :nodoc:
      class_option :environment, aliases: "-e", type: :string,
        default: Rails::Command.environment.dup,
        desc: "The environment for the runner to operate under (test/development/production)"

      no_commands do
        def help
          super
          puts self.class.desc
        end
      end

      def self.banner(*)
        "#{super} [<'Some.ruby(code)'> | <filename.rb>]"
      end

      def perform(code_or_file = nil, *command_argv)
        unless code_or_file
          help
          exit 1
        end

        ENV["RAILS_ENV"] = options[:environment]

        require_application_and_environment!
        Rails.application.load_runner

        ARGV.replace(command_argv)

        if File.exist?(code_or_file)
          $0 = code_or_file
          Kernel.load code_or_file
        else
          begin
            eval(code_or_file, binding, __FILE__, __LINE__)
          rescue SyntaxError, NameError => error
            $stderr.puts "Please specify a valid ruby command or the path of a script to run."
            $stderr.puts "Run '#{self.class.executable} -h' for help."
            $stderr.puts
            $stderr.puts error
            exit 1
          end
        end
      end
    end
  end
end

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
railties-5.1.7 lib/rails/commands/runner/runner_command.rb
railties-5.1.7.rc1 lib/rails/commands/runner/runner_command.rb
railties-5.1.6.2 lib/rails/commands/runner/runner_command.rb
railties-5.1.6.1 lib/rails/commands/runner/runner_command.rb
railties-5.1.6 lib/rails/commands/runner/runner_command.rb
railties-5.1.5 lib/rails/commands/runner/runner_command.rb
railties-5.1.5.rc1 lib/rails/commands/runner/runner_command.rb
railties-5.1.4 lib/rails/commands/runner/runner_command.rb
railties-5.1.4.rc1 lib/rails/commands/runner/runner_command.rb
railties-5.1.3 lib/rails/commands/runner/runner_command.rb
railties-5.1.3.rc3 lib/rails/commands/runner/runner_command.rb
railties-5.1.3.rc2 lib/rails/commands/runner/runner_command.rb
railties-5.1.3.rc1 lib/rails/commands/runner/runner_command.rb
railties-5.1.2 lib/rails/commands/runner/runner_command.rb
railties-5.1.2.rc1 lib/rails/commands/runner/runner_command.rb
railties-5.1.1 lib/rails/commands/runner/runner_command.rb
railties-5.1.0 lib/rails/commands/runner/runner_command.rb
railties-5.1.0.rc2 lib/rails/commands/runner/runner_command.rb