89 lines
2.5 KiB
Ruby
89 lines
2.5 KiB
Ruby
require 'rubygems'
|
|
require 'lib/middleman'
|
|
require 'rake'
|
|
require 'cucumber/rake/task'
|
|
|
|
begin
|
|
require 'jeweler'
|
|
Jeweler::Tasks.new do |gem|
|
|
gem.name = "middleman"
|
|
gem.summary = %Q{A static site generator utilizing Haml, Sass and providing YUI compression and cache busting}
|
|
gem.email = "tdreyno@gmail.com"
|
|
gem.homepage = "http://wiki.github.com/tdreyno/middleman"
|
|
gem.authors = ["Thomas Reynolds"]
|
|
gem.rubyforge_project = "middleman"
|
|
gem.executables = %w(mm-init mm-build mm-server)
|
|
gem.add_dependency("thin")
|
|
gem.add_dependency("shotgun")
|
|
gem.add_dependency("templater")
|
|
gem.add_dependency("sprockets")
|
|
gem.add_dependency("sinatra")
|
|
gem.add_dependency("sinatra-content-for")
|
|
gem.add_dependency("rack-test")
|
|
gem.add_dependency("yui-compressor")
|
|
gem.add_dependency("smusher")
|
|
gem.add_dependency("haml", ">=2.1.0")
|
|
gem.add_dependency("compass")
|
|
gem.add_development_dependency("rspec")
|
|
gem.add_development_dependency("sdoc")
|
|
gem.add_development_dependency("cucumber")
|
|
|
|
# Ignore vendored files
|
|
gem.files = gem.files.exclude("vendor/*")
|
|
end
|
|
|
|
Jeweler::GemcutterTasks.new
|
|
rescue LoadError
|
|
puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler"
|
|
end
|
|
|
|
require 'spec/rake/spectask'
|
|
Spec::Rake::SpecTask.new(:spec) do |spec|
|
|
spec.libs << 'lib' << 'spec'
|
|
spec.spec_files = FileList['spec/**/*_spec.rb']
|
|
end
|
|
|
|
Spec::Rake::SpecTask.new(:rcov) do |spec|
|
|
spec.libs << 'lib' << 'spec'
|
|
spec.pattern = 'spec/**/*_spec.rb'
|
|
spec.rcov = true
|
|
end
|
|
|
|
task :spec => :check_dependencies
|
|
|
|
task :default => :spec
|
|
|
|
unless ENV["RUN_CODE_RUN"]
|
|
require 'rake/rdoctask'
|
|
require 'sdoc'
|
|
|
|
Rake::RDocTask.new do |rdoc|
|
|
if File.exist?('VERSION')
|
|
version = File.read('VERSION')
|
|
else
|
|
version = ""
|
|
end
|
|
|
|
# rdoc.template = 'direct'
|
|
|
|
rdoc.rdoc_dir = 'rdoc'
|
|
rdoc.title = "middleman #{version}"
|
|
rdoc.rdoc_files.include('README*')
|
|
rdoc.rdoc_files.include('lib/**/*.rb')
|
|
rdoc.rdoc_files.exclude('lib/middleman/features/sprockets+ruby19.rb')
|
|
rdoc.rdoc_files.exclude('lib/middleman/templater+dynamic_renderer.rb')
|
|
end
|
|
|
|
desc "Build and publish documentation using GitHub Pages."
|
|
task :pages do
|
|
if !`git status`.include?('nothing to commit')
|
|
abort "dirty index - not publishing!"
|
|
end
|
|
|
|
Rake::Task[:rerdoc].invoke
|
|
`git checkout gh-pages`
|
|
`ls -1 | grep -v rdoc | xargs rm -rf; mv rdoc/* .; rm -rf rdoc`
|
|
`git commit -a -m "update docs"; git push origin gh-pages`
|
|
`git checkout master`
|
|
end
|
|
end |