diff --git a/middleman-cli/bin/middleman b/middleman-cli/bin/middleman index 637e5122..c635d220 100755 --- a/middleman-cli/bin/middleman +++ b/middleman-cli/bin/middleman @@ -47,6 +47,8 @@ end ::Middleman::Logger.singleton(3) ::Middleman::Cli.config = ::Middleman::Application.new do config[:exit_before_ready] = true + config[:watcher_disable] = true + config[:disable_sitemap] = true end.config # Require the Middleman version diff --git a/middleman-cli/lib/middleman-cli/config.rb b/middleman-cli/lib/middleman-cli/config.rb index 902ea216..eaa2c6a6 100644 --- a/middleman-cli/lib/middleman-cli/config.rb +++ b/middleman-cli/lib/middleman-cli/config.rb @@ -23,6 +23,8 @@ module Middleman::Cli ::Middleman::Logger.singleton(2, false) app = ::Middleman::Application.new do + config[:disable_sitemap] = true + config[:watcher_disable] = true config[:exit_before_ready] = true config[:environment] = opts[:environment].to_sym if opts[:environment] end diff --git a/middleman-core/lib/middleman-core/application.rb b/middleman-core/lib/middleman-core/application.rb index 590f42ab..8951449d 100644 --- a/middleman-core/lib/middleman-core/application.rb +++ b/middleman-core/lib/middleman-core/application.rb @@ -96,6 +96,10 @@ module Middleman # @return [String] define_setting :source, 'source', 'Name of the source directory' + # If we should not run the sitemap. + # @return [Boolean] + define_setting :disable_sitemap, false, 'If we should not run the sitemap.' + # If we should exit before ready event. # @return [Boolean] define_setting :exit_before_ready, false, 'If we should exit before ready event.' diff --git a/middleman-core/lib/middleman-core/sitemap/store.rb b/middleman-core/lib/middleman-core/sitemap/store.rb index 2871eae5..47e678ba 100644 --- a/middleman-core/lib/middleman-core/sitemap/store.rb +++ b/middleman-core/lib/middleman-core/sitemap/store.rb @@ -216,6 +216,8 @@ module Middleman # rebuild_resource_list! since the last time it was run. This is # very expensive! def ensure_resource_list_updated! + return if @app.config[:disable_sitemap] + @lock.synchronize do return unless @needs_sitemap_rebuild