mailcatcher/Rakefile

54 lines
1.3 KiB
Ruby
Raw Normal View History

require 'rubygems'
2011-05-28 02:21:11 -04:00
version_file = File.expand_path __FILE__ + '/../VERSION'
2011-06-23 11:48:19 -04:00
version = File.read(version_file).strip
2011-05-28 02:21:11 -04:00
spec_file = File.expand_path __FILE__ + '/../mailcatcher.gemspec'
spec = Gem::Specification.load spec_file
2011-05-28 02:21:11 -04:00
require 'rdoc/task'
RDoc::Task.new :rdoc => "rdoc",
:clobber_rdoc => "rdoc:clean",
:rerdoc => "rdoc:force" do |rdoc|
rdoc.title = "MailCatcher #{version}"
2011-05-27 00:16:48 -04:00
rdoc.rdoc_dir = 'rdoc'
2011-05-28 02:21:11 -04:00
rdoc.main = 'README.md'
rdoc.rdoc_files.include 'lib/**/*.rb'
end
desc "Compile SASS/SCSS files into SCSS"
task "build:sass" do
Dir["public/stylesheets/**/*.sass"].each do |file|
css_file = file.sub /\.sass$/, ".css"
system "sass", "--no-cache", "--compass", file, css_file
2011-05-28 02:21:11 -04:00
end
end
2011-05-29 00:41:02 -04:00
desc "Compile CoffeeScript files into JavaScript"
task "build:coffee" do
require 'coffee-script'
Dir["public/javascripts/**/*.coffee"].each do |file|
js_file = file.sub /\.coffee$/, ".js"
File.new(js_file, "w").write CoffeeScript.compile File.read file
end
end
2011-10-09 04:50:36 -04:00
multitask "build" => ["build:sass", "build:coffee"]
2011-05-28 02:21:11 -04:00
desc "Package as Gem"
task "package:gem" do
builder = Gem::Builder.new spec
builder.build
end
task "package" => ["build", "package:gem"]
desc "Release Gem to RubyGems"
task "release:gem" do
%x[gem push mailcatcher-#{version}.gem]
end
task "release" => ["package", "release:gem"]
task "default" => "build"