Sha256: 668f54b2d0c14a85bcff166387ee53190149824bdf13176cfb6166a0b4eaef7b

Contents?: true

Size: 1.39 KB

Versions: 1

Compression:

Stored size: 1.39 KB

Contents

# CLI Module
module Middleman::Cli
  
  # Server thor task
  class Server < Thor
    check_unknown_options!
    
    namespace :server
    
    desc "server [options]", "Start the preview server"
    method_option "environment", 
      :aliases => "-e", 
      :default => ENV['MM_ENV'] || ENV['RACK_ENV'] || 'development', 
      :desc    => "The environment Middleman will run under"
    method_option :host,
      :type => :string,
      :aliases => "-h",
      :default => "0.0.0.0", 
      :desc => "Bind to HOST address"
    method_option "port",
      :aliases => "-p", 
      :default => "4567", 
      :desc    => "The port Middleman will listen on"
    method_option "verbose", 
      :type    => :boolean, 
      :default => false,
      :desc    => 'Print debug messages'
    
    # Start the server
    def server
      if !ENV["MM_ROOT"]
        puts "== Warning: Could not find a Middleman project config.rb"
        puts "== Treating directory as a static site to be served"
        ENV["MM_ROOT"] = Dir.pwd
        ENV["MM_SOURCE"] = ""
      end

      params = {
        :port        => options["port"],
        :host        => options["host"],
        :environment => options["environment"],
        :debug       => options["verbose"]
      }
      
      puts "== The Middleman is loading"
      Middleman::Guard.start(params)
    end
  end
  
  # Map "s" to "server"
  Base.map({ "s" => "server" })
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
middleman-core-3.0.0.alpha.7 lib/middleman-core/cli/server.rb