83 lines
2.1 KiB
JavaScript
83 lines
2.1 KiB
JavaScript
/* eslint-env node */
|
|
/* eslint-disable object-shorthand */
|
|
|
|
module.exports = function(grunt) {
|
|
|
|
// Find all of the task which start with `grunt-` and load them, rather than explicitly declaring them all
|
|
require('matchdep').filterDev(['grunt-*', '!grunt-cli']).forEach(grunt.loadNpmTasks);
|
|
|
|
grunt.initConfig({
|
|
clean: {
|
|
built: {
|
|
src: [
|
|
'dist/**'
|
|
]
|
|
},
|
|
dependencies: {
|
|
src: [
|
|
'bower_components/**',
|
|
'node_modules/**'
|
|
]
|
|
},
|
|
tmp: {
|
|
src: ['tmp/**']
|
|
}
|
|
},
|
|
|
|
watch: {
|
|
csscomb: {
|
|
files: ['app/styles/**/*.css'],
|
|
tasks: ['shell:csscombfix']
|
|
}
|
|
},
|
|
|
|
shell: {
|
|
'npm-install': {
|
|
command: 'npm install'
|
|
},
|
|
|
|
'bower-install': {
|
|
command: 'bower install'
|
|
},
|
|
|
|
ember: {
|
|
command: function (mode) {
|
|
switch (mode) {
|
|
case 'prod':
|
|
return 'npm run build -- --environment=production --silent';
|
|
case 'dev':
|
|
return 'npm run build';
|
|
case 'watch':
|
|
return 'npm run build -- --watch';
|
|
}
|
|
},
|
|
options: {
|
|
execOptions: {
|
|
stdout: false
|
|
}
|
|
}
|
|
},
|
|
|
|
csscombfix: {
|
|
command: 'csscomb -c app/styles/csscomb.json -v app/styles'
|
|
},
|
|
|
|
csscomblint: {
|
|
command: 'csscomb -c app/styles/csscomb.json -lv app/styles'
|
|
},
|
|
|
|
test: {
|
|
command: 'npm test'
|
|
},
|
|
|
|
options: {
|
|
preferLocal: true
|
|
}
|
|
}
|
|
});
|
|
|
|
grunt.registerTask('init', 'Install the client dependencies',
|
|
['shell:npm-install', 'shell:bower-install']
|
|
);
|
|
};
|