diff --git a/Gulpfile.js b/Gulpfile.js index 424ff81..29162f8 100644 --- a/Gulpfile.js +++ b/Gulpfile.js @@ -15,10 +15,17 @@ var defaults = require('./config/butler.defaults.js'); // Add local config on top; this file should not define an empty defaults var. try { - var defaults = require('../../conf/butler.defaults.js'); + var overrides = require('../../conf/butler.defaults.js'); + defaults = extend(defaults, overrides); } catch (e) {} +// Helper function to merge to js objects. +function extend(obj, src) { + Object.keys(src).forEach(function(key) { obj[key] = src[key]; }); + return obj; +} + // Just run linters gulp.task('lint', function() { console.log('Running linters...'); diff --git a/config/butler.config.sh b/config/butler.config.sh index 2a9a642..a19ca5d 100644 --- a/config/butler.config.sh +++ b/config/butler.config.sh @@ -2,11 +2,12 @@ if [ ! -e ../../conf/butler.defaults.js ]; then echo "// Project-specific Butler configuration." > ../../conf/butler.defaults.js + echo "var overrides = {};" >> ../../conf/butler.defaults.js echo "" >> ../../conf/butler.defaults.js echo "Please provide the repository link for this project. Eg: https://github.com/palantirnet/butler.git" read project_repo - echo "defaults.repo = \"$project_repo\";" >> ../../conf/butler.defaults.js + echo "overrides.repo = \"$project_repo\";" >> ../../conf/butler.defaults.js fi; echo "Thanks for using Butler!"