diff --git a/.grunt/tasks/gherkinlint.js b/.grunt/tasks/gherkinlint.js index cc269a5c47f..658c752928c 100644 --- a/.grunt/tasks/gherkinlint.js +++ b/.grunt/tasks/gherkinlint.js @@ -85,5 +85,8 @@ module.exports = grunt => { }, }); + // Add the 'gherkinlint' task as a startup task. + grunt.moodleEnv.startupTasks.push('gherkinlint'); + return handler; }; diff --git a/.grunt/tasks/javascript.js b/.grunt/tasks/javascript.js index b2d36a57bee..5761f9206fd 100644 --- a/.grunt/tasks/javascript.js +++ b/.grunt/tasks/javascript.js @@ -126,6 +126,9 @@ module.exports = grunt => { }, }); + // Add the 'js' task as a startup task. + grunt.moodleEnv.startupTasks.push('js'); + // On watch, we dynamically modify config to build only affected files. This // method is slightly complicated to deal with multiple changed files at once (copied // from the grunt-contrib-watch readme). diff --git a/.grunt/tasks/startup.js b/.grunt/tasks/startup.js index b532852a235..202a29240ab 100644 --- a/.grunt/tasks/startup.js +++ b/.grunt/tasks/startup.js @@ -34,10 +34,8 @@ module.exports = grunt => { } else if (grunt.moodleEnv.inAMD) { grunt.task.run('amd'); } else { - // Run them all!. - grunt.task.run('css'); - grunt.task.run('js'); - grunt.task.run('gherkinlint'); + // Run all of the requested startup tasks. + grunt.moodleEnv.startupTasks.forEach(taskName => grunt.task.run(taskName)); } }; diff --git a/.grunt/tasks/style.js b/.grunt/tasks/style.js index e468d6d801d..92d4e691add 100644 --- a/.grunt/tasks/style.js +++ b/.grunt/tasks/style.js @@ -29,4 +29,7 @@ module.exports = grunt => { // Load the SASS tasks. require('./sass')(grunt); + + // Add the 'css' task as a startup task. + grunt.moodleEnv.startupTasks.push('css'); }; diff --git a/Gruntfile.js b/Gruntfile.js index 89836af0e4f..fc0f5debded 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -246,6 +246,8 @@ module.exports = function(grunt) { require(path.resolve(`./.grunt/tasks/${name}.js`))(grunt); }; + // Startup tasks. + grunt.moodleEnv.startupTasks = []; // Add Moodle task configuration. addTask('gherkinlint', grunt);