Commit 07f15715 by Rashid Khan

Update loadConfig to allow duplicates

parent ec964a13
...@@ -15,17 +15,20 @@ module.exports = function (grunt) { ...@@ -15,17 +15,20 @@ module.exports = function (grunt) {
// load task definitions // load task definitions
grunt.loadTasks('tasks'); grunt.loadTasks('tasks');
// Utility function to load plugin configurations into an object // Utility function to load plugin settings into config
function loadConfig(path) { function loadConfig(config,path) {
var object = {};
require('glob').sync('*', {cwd: path}).forEach(function(option) { require('glob').sync('*', {cwd: path}).forEach(function(option) {
object[option.replace(/\.js$/,'')] = require(path + option)(config); var key = option.replace(/\.js$/,'');
// If key already exists, extend it. It is your responsibility to avoid naming collisions
config[key] = config[key] || {};
grunt.util._.extend(config[key], require(path + option)(config));
}); });
return object; // technically not required
return config;
} }
// Merge that object with what with whatever we have here // Merge that object with what with whatever we have here
grunt.util._.extend(config, loadConfig('./tasks/options/')); loadConfig(config,'./tasks/options/');
// pass the config to grunt // pass the config to grunt
grunt.initConfig(config); grunt.initConfig(config);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment