1
0
Fork 0
mirror of https://github.com/middleman/middleman.git synced 2022-11-09 12:20:27 -05:00
middleman--middleman/middleman-cli/bin/middleman

69 lines
1.9 KiB
Text
Raw Normal View History

#!/usr/bin/env ruby
# frozen_string_literal: true
require 'middleman-core/profiling'
2018-11-08 15:38:26 -05:00
Middleman::Profiling.profiler = Middleman::Profiling::RubyProfProfiler.new if ARGV.include? '--profile'
require 'middleman-core/load_paths'
Middleman.setup_load_paths
2016-05-25 13:54:49 -04:00
require 'dotenv'
::Dotenv.load
require 'middleman-core'
require 'middleman-core/logger'
module Middleman::Cli
class << self
attr_accessor :config
end
def self.import_config(base)
::Middleman::Cli.config.all_settings.each do |setting|
if setting.default.is_a?(String) || setting.default.is_a?(NilClass)
base.class_option setting.key,
type: :string,
desc: setting.description
elsif setting.default.is_a?(TrueClass) || setting.default.is_a?(FalseClass)
base.class_option setting.key,
type: :boolean,
desc: setting.description
end
end
end
end
require 'middleman-cli'
# Change directory to the root
Dir.chdir(ENV['MM_ROOT']) if ENV['MM_ROOT']
2011-12-29 01:52:51 -05:00
2015-01-04 15:23:35 -05:00
# Default command is server
2018-11-08 15:38:26 -05:00
ARGV.unshift('server') if ARGV[0] != 'help' && (ARGV.empty? || ARGV.first.include?('-'))
2015-01-04 15:23:35 -05:00
::Middleman::Logger.singleton(3)
::Middleman::Cli.config = ::Middleman::Application.new do
2016-05-25 13:54:49 -04:00
config[:environment] = (ENV['MM_ENV'] || ENV['RACK_ENV'] || 'development').to_sym
config[:mode] = :config
config[:exit_before_ready] = true
2016-03-17 16:23:36 -04:00
config[:watcher_disable] = true
config[:disable_sitemap] = true
end.config
# Require the Middleman version
require 'middleman-core/version'
# Include the core CLI items
require 'middleman-cli/init'
require 'middleman-cli/extension'
require 'middleman-cli/server'
require 'middleman-cli/build'
require 'middleman-cli/console'
require 'middleman-cli/config'
2019-02-18 13:29:01 -05:00
# Support NO_COLOR: https://no-color.org
ENV['THOR_SHELL'] = 'Basic' if ENV['NO_COLOR']
# Start the CLI
2015-01-04 15:23:35 -05:00
Middleman::Cli::Base.start(ARGV)