Skip to content

Commit

Permalink
add --server/client options to grunt dev (#8241)
Browse files Browse the repository at this point in the history
refs #8235

- adds `grunt dev --server` which will start the express server and restart on server changes but will not rebuild or watch any client files (if client files are missing or out of date you can run `grunt build` first)
- adds `grunt dev --client` which will only start the client server and rebuilding/livereload - useful if you are experiencing issues with one or the other crashing because you can run server/client in separate tabs
  • Loading branch information
kevinansfield authored and ErisDS committed Mar 30, 2017
1 parent c9e0c25 commit 5710e2f
Showing 1 changed file with 13 additions and 8 deletions.
21 changes: 13 additions & 8 deletions Gruntfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -61,9 +61,7 @@ var overrides = require('./core/server/overrides'),
livereload: {
files: [
'content/themes/casper/assets/css/*.css',
'content/themes/casper/assets/js/*.js',
'core/built/assets/*.js',
'core/client/dist/index.html'
'content/themes/casper/assets/js/*.js'
],
options: {
livereload: true
Expand Down Expand Up @@ -219,10 +217,10 @@ var overrides = require('./core/server/overrides'),
bgShell: {
client: {
cmd: 'grunt subgrunt:watch',
bg: true,
bg: grunt.option('client') ? false : true,
stdout: function (chunk) {
// hide certain output to prevent confusion
var filter = [
// hide certain output to prevent confusion when running alongside server
var filter = grunt.option('client') ? false : [
/> ghost-admin/,
/^Livereload/,
/^Serving on/
Expand Down Expand Up @@ -683,8 +681,15 @@ var overrides = require('./core/server/overrides'),
// frontend code changes.
//
// Note that the current implementation of watch only works with casper, not other themes.
grunt.registerTask('dev', 'Dev Mode; watch files and restart server on changes',
['bgShell:client', 'express:dev', 'watch']);
grunt.registerTask('dev', 'Dev Mode; watch files and restart server on changes', function () {
if (grunt.option('client')) {
grunt.task.run(['bgShell:client']);
} else if (grunt.option('server')) {
grunt.task.run(['express:dev', 'watch']);
} else {
grunt.task.run(['bgShell:client', 'express:dev', 'watch']);
}
});

// ### Release
// Run `grunt release` to create a Ghost release zip file.
Expand Down

0 comments on commit 5710e2f

Please sign in to comment.