forked from jamesflorentino/nanoScrollerJS
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCakefile
34 lines (30 loc) · 1.72 KB
/
Cakefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
fs = require "fs"
{exec} = require "child_process"
closure = require "./build/closure"
task "build", "Build everything and minify", (options) ->
exec "redcarpet README.md > bin/readme.html", () ->
exec "coffee -c --bare --output bin/javascripts/ coffeescripts/", (err, stdout, stderr) ->
throw err if err
console.log stdout + stderr if (stderr? or stdout?)
fs.readFile "bin/javascripts/jquery.nanoscroller.js", "utf-8", (errReading, data) ->
throw errReading if errReading
closure.compile data, (errCompiling, code) ->
throw errCompiling if errCompiling
fs.writeFile "bin/javascripts/jquery.nanoscroller.min.js", code, (errWriting) ->
throw errWriting if errWriting
console.log "Success!"
task "build:tests", "Build tests", (options) ->
exec "coffee -c --bare --output tests/spec/ tests/coffeescripts/", (err, stdout, stderr) ->
throw err if err
console.log stdout + stderr if (stderr? or stdout?)
task "size", "Check how nanoScroller size has changed compared to last Cake build", ->
exec "gzip -c bin/javascripts/jquery.nanoscroller.min.js > bin/javascripts/jquery.nanoscroller.min.js.gz", (err, stdout, stderr) ->
throw err if err
exec "wc -c bin/javascripts/jquery.nanoscroller.js bin/javascripts/jquery.nanoscroller.min.js bin/javascripts/jquery.nanoscroller.min.js.gz | node build/sizer.js", (err, stdout, stderr) ->
throw err if err
console.log(stdout)
exec "rm bin/javascripts/jquery.nanoscroller.min.js.gz", (err, stdout, stderr) ->
throw err if err
task "server", "Run a simple http server in Python for testing", (options) ->
console.log "Running a python server in http://localhost:8100"
exec "python -m SimpleHTTPServer 8100", (o) ->