Sha256: fdc8cb678aa5d7ebcecf1111b8ab32f07d4808923166a5d39e31c85572b48a28

Contents?: true

Size: 1.55 KB

Versions: 2

Compression:

Stored size: 1.55 KB

Contents

# ===========================================================================
# Project:   Abbot - SproutCore Build Tools
# Copyright: ©2009 Apple Inc.
#            portions copyright @2006-2009 Sprout Systems, Inc.
#            and contributors
# ===========================================================================

module SC
  
  class Tools
    
    desc "server", "Starts the development server"
    method_options  :daemonize  => false,
                    :pid        => :optional,
                    :port       => :optional,
                    :host       => :optional,
                    :irb        => false,
                    :filesystem => false
    def server
      prepare_mode!('debug') # set mode again, using debug as default
      
      SC.env.build_prefix   = options.buildroot if options.buildroot
      SC.env.staging_prefix = options.stageroot if options.stageroot
      
      # get project and start service.
      project = requires_project!
      
      # start shell if passed
      if options.irb
        require 'irb'
        require 'irb/completion'
        if File.exists? ".irbrc"
          ENV['IRBRC'] = ".irbrc"
        end
        
        SC.project = project
        SC.logger << "SproutCore v#{SC::VERSION} Interactive Shell\n"
        SC.logger << "SC.project = #{project.project_root}\n"
        ARGV.clear # do not pass onto IRB
        IRB.start
      else
        SC.logger << "SproutCore v#{SC::VERSION} Development Server\n"
        SC::Rack::Service.start(options.merge(:project => project))
      end
    end
    
  end
end

Version data entries

2 entries across 2 versions & 2 rubygems

Version Path
sproutit-sproutcore-1.0.20090721145285 lib/sproutcore/tools/server.rb
sproutcore-1.0.1003 lib/sproutcore/tools/server.rb