diff --git a/Rakefile b/Rakefile index b6bae187..67a4d9df 100644 --- a/Rakefile +++ b/Rakefile @@ -177,3 +177,23 @@ task :validate do exit! end end + +desc 'Precompile assets' +task :precompile do + require './lib/gollum/views/helpers.rb' + require './lib/gollum/assets.rb' + require 'sprockets' + require 'sprockets-helpers' + require 'sass' + env = Precious::Assets.sprockets + manifest = Sprockets::Manifest.new(env, './public/assets') + Sprockets::Helpers.configure do |config| + config.environment = env + config.prefix = Precious::Assets::ASSET_URL + config.digest = true + config.public_path = './public/assets' + config.manifest = manifest + end + puts "Precompiling assets to #{::File.expand_path('./public/assets')}..." + manifest.compile(Precious::Assets::MANIFEST) +end diff --git a/bin/gollum b/bin/gollum index c2a2cc78..25d328ee 100755 --- a/bin/gollum +++ b/bin/gollum @@ -104,9 +104,6 @@ MSG opts.on("--assets [PATH]", "Set the path to look for static assets. Only used if --static is set to true, or environment is production/staging. Default: ./public/assets") do |path| wiki_options[:static_assets_path] = path end - opts.on("--precompile-assets [PATH]", "Precompile static assets to PATH.") do |path| - options[:precompile] = path || './public/assets' - end opts.on("--css", "Inject custom CSS into each page. The '/custom.css' file is used (must be committed).") do wiki_options[:css] = true end @@ -262,20 +259,6 @@ if options[:irb] puts "Invalid Gollum wiki at #{File.expand_path(gollum_path).inspect}" exit 0 end -elsif options[:precompile] - require 'gollum/app' - env = Precious::Assets.sprockets - manifest = Sprockets::Manifest.new(env, options[:precompile]) - Sprockets::Helpers.configure do |config| - config.environment = env - config.environment.context_class.class_variable_set(:@@base_url, wiki_options[:base_path]) - config.prefix = "#{wiki_options[:base_path]}/#{Precious::Assets::ASSET_URL}" - config.digest = true - config.public_path = options[:precompile] - config.manifest = manifest - end - puts "Precompiling assets to #{::File.expand_path(options[:precompile])}..." - manifest.compile(Precious::Assets::MANIFEST) else require 'gollum/app' Precious::App.set(:gollum_path, gollum_path)