Skip to content

Instantly share code, notes, and snippets.

@candidosales
Created December 7, 2015 17:52
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save candidosales/ab5bb3d187ad1eb4cb8f to your computer and use it in GitHub Desktop.
Save candidosales/ab5bb3d187ad1eb4cb8f to your computer and use it in GitHub Desktop.
Gruntfile para projetos Java - VRaptor
module.exports = function(grunt) {
// 1. Time how long tasks take
require('time-grunt')(grunt);
// 2. load all grunt tasks matching the `grunt-*` pattern
require('load-grunt-tasks')(grunt);
// 3. All configuration goes here
grunt.initConfig({
path: {
src: '../src/main/webapp/app/', // Path source
dest: '../target/relatorios-qualidade/app/',
},
sass: {
dist: {
options: {
style: 'compressed'
},
files: {
'<%= path.src %>dist/css/admin.min.css': '<%= path.src %>dev/scss/admin.scss',
}
},
dev: {
options: {
style: 'expanded',
lineNumbers: true
},
files: {
'<%= path.src %>dist/css/admin.css': '<%= path.src %>dev/scss/admin.scss',
}
}
},
concat: {
admin: {
src: ['bower_components/jquery/dist/jquery.js',
'bower_components/bootstrap-sass-official/assets/javascripts/bootstrap.js',
'bower_components/angular/angular.js',
'bower_components/angular-animate/angular-animate.js',
'bower_components/angular-bootstrap/ui-bootstrap.js',
'bower_components/angular-bootstrap/ui-bootstrap-tpls.js',
'bower_components/angular-popover-toggle/popover-toggle.js',
'bower_components/angular-ui-router/release/angular-ui-router.js',
'<%= path.src %>dev/js/vendor/highcharts.src.js',
'<%= path.src %>dev/js/vendor/highcharts-exporting.js',
'<%= path.src %>dev/js/vendor/highcharts-offline-exporting.js',
'<%= path.src %>dev/js/vendor/highcharts-export-client.js',
'<%= path.src %>dev/js/vendor/highcharts-ng.js',
'<%= path.src %>dev/js/vendor/highcharts.src.js',
'bower_components/ng-file-upload/ng-file-upload.js',
'bower_components/angular-loading-bar/build/loading-bar.js',
'bower_components/angular-sanitize/angular-sanitize.js',
'<%= path.src %>dev/js/vendor/daterangepicker.js',
'bower_components/angular-daterangepicker/js/angular-daterangepicker.js',
'<%= path.src %>dev/js/admin.js'],
dest: '<%= path.src %>dist/js/admin.js',
},
},
uglify: {
options: {
compress: {
drop_console: true
}
},
dev: {
files: {
'<%= path.src %>dist/js/admin.min.js': ['<%= path.src %>dist/js/admin.js'],
}
}
},
imagemin: {
dynamic: { // Another target
files: [{
expand: true, // Enable dynamic expansion
cwd: '<%= path.src %>dev/img/', // Src matches are relative to this path
src: ['**/*.{png,jpg,gif}'], // Actual patterns to match
dest: '<%= path.src %>dist/img/' // Destination path prefix
}]
}
},
copy: {
css: {
files: [{expand: true, filter: 'isFile', cwd: '<%= path.src %>dist/css/', src:'*.css', dest: '<%= path.dest %>dist/css/'}]
},
js:{
files: [{expand: true, filter: 'isFile', cwd: '<%= path.src %>dist/js/', src:'*.js', dest: '<%= path.dest %>dist/js/'}]
},
img:{
files: [{expand: true, filter: 'isFile', cwd: '<%= path.src %>dist/img/', src:'*.{png,jpg,gif}', dest: '<%= path.dest %>dist/img/'}]
},
main: {
files: [
{expand: true, flatten: true, src: ['bower_components/foundation/js/vendor/modernizr.js'], dest: '<%= path.src %>dist/js/', filter: 'isFile'}
]
},
},
watch: {
options: {
livereload: true,
},
css: {
files: '<%= path.src %>dev/scss/**/*.scss',
tasks: ['sass','copy:css'],
},
img: {
files: '<%= path.src %>dev/img/**/*.{png,jpg,gif}',
tasks: ['imagemin','copy:img'],
},
js: {
files: '<%= path.src %>dev/js/**/*.js',
tasks:['concat','copy:img']
},
},
connect: {
server: {
options: {
port: 8000,
base: './'
}
}
}
});
// 4. Where we tell Grunt what to do when we type "grunt" into the terminal.
grunt.registerTask('default', ['sass:dev']);
grunt.registerTask('dev', ['connect', 'watch']);
grunt.registerTask('prod', ['sass:dev','sass:dist','concat','uglify']);
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment