Grunt.js task to override config options in certain environments or situations.
Grunt Task to override other configuration options.
This plugin requires Grunt
If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:
npm install grunt-reconfigure --save-dev
Run this task with the
grunt reconfigure command.
This task is designed to be run as part of a chain (ex.
grunt reconfigure:dev coffee jade)
This task looks for a key in the
options object in any Grunt task config called
reconfigureOverrides. Within that object should be any number of arbitrarily named keys corresponding to the "environment" you wish those options to take effect in. For example, if you have a Jade config that looks like this:
jade:index:options:reconfigureOverrides:dev:pretty: truedist:pretty: falsefiles:"public/index.html": "src/jade/index.jade"
Then running Grunt with
grunt reconfigure:dev jade will compile your Jade templates with
pretty: true. Any options set outside of the override object will be treated normally.
- Create a feature branch
- Write your code
- Write tests (please)
- Open a pull requests and I'll merge it back in (and add you to the contributors)!
- Fix traversal not finding all nested fields
- Option objects are now merged (using
_.extend()) instead of replaced
- Improve test output
- Better tests
- Better code flow and comments
- Fix cleanup not always running, leaving some
reconfigureOverridesdangling which were causing tasks to fail.
- Initial release
Copyright (c) 2013 Joshua Lindsey. See LICENSE for details.