balena-cli/gulpfile.coffee

51 lines
1.1 KiB
CoffeeScript
Raw Normal View History

2014-10-31 13:48:53 +00:00
path = require('path')
2014-10-31 13:37:29 +00:00
gulp = require('gulp')
2014-12-30 13:44:03 +00:00
coffee = require('gulp-coffee')
2014-10-31 13:48:53 +00:00
coffeelint = require('gulp-coffeelint')
inlinesource = require('gulp-inline-source')
mocha = require('gulp-mocha')
2014-12-30 17:12:18 +00:00
shell = require('gulp-shell')
packageJSON = require('./package.json')
2014-10-31 13:37:29 +00:00
OPTIONS =
2014-10-31 13:50:50 +00:00
config:
coffeelint: path.join(__dirname, 'coffeelint.json')
files:
coffee: [ 'lib/**/*.coffee', 'gulpfile.coffee' ]
app: 'lib/**/*.coffee'
tests: 'tests/**/*.spec.coffee'
pages: 'lib/auth/pages/*.ejs'
directories:
2014-12-30 13:44:03 +00:00
build: 'build/'
gulp.task 'pages', ->
gulp.src(OPTIONS.files.pages)
.pipe(inlinesource())
.pipe(gulp.dest('build/auth/pages'))
gulp.task 'coffee', [ 'lint' ], ->
2014-12-30 13:44:03 +00:00
gulp.src(OPTIONS.files.app)
2017-03-22 09:46:06 +00:00
.pipe(coffee(bare: true, header: true))
2014-12-30 13:44:03 +00:00
.pipe(gulp.dest(OPTIONS.directories.build))
2014-10-31 13:48:53 +00:00
gulp.task 'lint', ->
2014-10-31 13:50:50 +00:00
gulp.src(OPTIONS.files.coffee)
.pipe(coffeelint({
optFile: OPTIONS.config.coffeelint
}))
.pipe(coffeelint.reporter())
2014-10-31 13:48:53 +00:00
gulp.task 'test', ->
gulp.src(OPTIONS.files.tests, read: false)
.pipe(mocha({
reporter: 'min'
}))
gulp.task 'build', [
'coffee',
'pages'
]
gulp.task 'watch', [ 'build' ], ->
gulp.watch([ OPTIONS.files.coffee ], [ 'build' ])