82 lines
1.8 KiB
Plaintext
82 lines
1.8 KiB
Plaintext
$: << 'lib'
|
|
|
|
require 'rake-pipeline-web-filters'
|
|
require 'rake-pipeline/travis'
|
|
require 'compass'
|
|
|
|
ROOTS ||= [Pathname.new(File.expand_path('.'))]
|
|
|
|
paths = %w(styles scripts images static vendor).inject({}) do |paths, type|
|
|
paths.merge(type.to_sym => ROOTS.map { |root| root.join("assets/#{type}").to_s })
|
|
end
|
|
|
|
Compass.configuration.images_path = paths[:images].first
|
|
Compass.configuration.add_import_path paths[:styles].first
|
|
|
|
Travis::Version.update
|
|
|
|
output 'public/scripts'
|
|
input paths[:scripts] do
|
|
match '**/*.hbs' do
|
|
travis_handlebars
|
|
concat 'app/templates.js'
|
|
end
|
|
|
|
match '**/*.coffee' do
|
|
coffee_script
|
|
end
|
|
|
|
match 'vendor/**/*.js' do
|
|
precedence = %w(jquery.min minispade handlebars ember).map { |name| "vendor/#{name}.js" }
|
|
safe_concat precedence, 'vendor.js'
|
|
end
|
|
|
|
match '**/*.js' do
|
|
copy { |path| ["dev/#{path}", "min/#{path}"] }
|
|
end
|
|
|
|
match %r(^dev/(?!vendor).*\.js$) do
|
|
modules = proc { |input| input.path.gsub(%r((^dev/|app/|lib/|\.js$)), '') }
|
|
minispade(string: true, rewrite_requires: true, module_id_generator: modules)
|
|
end
|
|
|
|
match 'dev/**/*.js' do
|
|
concat ['dev/vendor.js'], 'app.js'
|
|
end
|
|
|
|
match %r(^min/(?!vendor).*\.js$) do
|
|
modules = proc { |input| input.path.gsub(%r((^min/|app/|lib/|\.js$)), '') }
|
|
minispade(string: false, rewrite_requires: true, module_id_generator: modules)
|
|
end
|
|
|
|
match 'min/**/*.js' do
|
|
concat ['min/vendor.js'], 'min/app.js'
|
|
strip_debug
|
|
uglify squeeze: true, max_line_length: 200
|
|
copy 'app.min.js'
|
|
end
|
|
end
|
|
|
|
output 'public/styles'
|
|
input paths[:styles] do
|
|
match '**/*.{scss,sass}' do
|
|
sass
|
|
concat [], 'app.css'
|
|
end
|
|
end
|
|
|
|
output 'public/images'
|
|
input paths[:images] do
|
|
skip %r(^ui/)
|
|
match '**/*' do
|
|
copy
|
|
end
|
|
end
|
|
|
|
output 'public'
|
|
input paths[:static] do
|
|
match '**/*' do
|
|
copy
|
|
end
|
|
end
|