Sha256: 9eb6ff5914792a950a674e267fe5bca805ed41f85d2f5d01d0883a3337542ace

Contents?: true

Size: 1 KB

Versions: 35

Compression:

Stored size: 1 KB

Contents

require 'rbconfig'

module Padrino
  ##
  # This method return the correct location of padrino bin or
  # exec it using Kernel#system with the given args
  #
  # @param [Array] args
  #   command or commands to execute
  #
  # @return [Boolean]
  #
  # @example
  #   Padrino.bin('start', '-e production')
  #
  def self.bin(*args)
    @_padrino_bin ||= [self.ruby_command, File.expand_path("../../../bin/padrino", __FILE__)]
    args.empty? ? @_padrino_bin : system(args.unshift(@_padrino_bin).join(" "))
  end

  ##
  # Return the path to the ruby interpreter taking into account multiple
  # installations and windows extensions.
  #
  # @return [String]
  #   path to ruby bin executable
  #
  def self.ruby_command
    @ruby_command ||= begin
      ruby = File.join(RbConfig::CONFIG['bindir'], RbConfig::CONFIG['ruby_install_name'])
      ruby << RbConfig::CONFIG['EXEEXT']

      # escape string in case path to ruby executable contain spaces.
      ruby.sub!(/.*\s.*/m, '"\&"')
      ruby
    end
  end
end # Padrino

Version data entries

35 entries across 35 versions & 3 rubygems

Version Path
middleman-core-3.2.0 lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/command.rb
middleman-core-3.1.6 lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/command.rb
middleman-core-3.1.5 lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/command.rb
padrino-core-0.11.3 lib/padrino-core/command.rb
middleman-core-3.1.4 lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/command.rb
middleman-core-3.1.3 lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/command.rb
middleman-core-3.1.2 lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/command.rb
middleman-core-3.1.1 lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/command.rb
middleman-core-3.1.0 lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/command.rb
middleman-core-3.1.0.rc.4 lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/command.rb
middleman-core-3.1.0.rc.3 lib/vendored-middleman-deps/padrino-core-0.11.2/lib/padrino-core/command.rb
middleman-core-3.1.0.rc.2 lib/vendored-middleman-deps/padrino-core-0.10.7/lib/padrino-core/command.rb
padrino-core-0.11.2 lib/padrino-core/command.rb
padrino-core-0.11.1 lib/padrino-core/command.rb
padrino-core-0.11.0 lib/padrino-core/command.rb
padrino-core-0.10.7 lib/padrino-core/command.rb
middleman-core-3.0.0.beta.2 lib/middleman-core/vendor/padrino-core-0.10.6/lib/padrino-core/command.rb
padrino-core-0.10.6 lib/padrino-core/command.rb
padrino-core-0.10.6.e lib/padrino-core/command.rb
padrino-core-0.10.6.d lib/padrino-core/command.rb