0.0.4 • Published 12 years ago
chef-command v0.0.4
Description
This generate both the correct Opscode chef command the corresponding json file to use.
Documentation on Chef-Solo options:
- http://docs.opscode.com/chef_solo.html
- http://docs.opscode.com/ctl_chef_solo.html
- http://docs.opscode.com/config_rb_solo.html
Documentation on Chef-Client options:
API
Constructor
var ChefCommand = require('chef-command');
var chefCmd = new ChefCommand();options:
executable: defaults to chef-solofile_cache_path:dna_json_path:role_path:environment_path:data_bag_path:config_rb_path:log_level:cookbook_path:run_list:extra_json: // extra json to merge in the dna.json
Instance variables
- settings : a hash containing all settings
Instance methods
- addCookbookPath(path) : adds a CookbookPath + returns chainable self
- removeCookbookPath(path) : removes a CookbookPath + returns chainable self
- addRolePath(path) : adds a RolePath + returns chainable self
- removeRolePath(path) : removes a RolePath + returns chainable self
- addDataBagPath(path) : adds a DataBagPath + returns chainable self
- removeDataBagPath(path) : removes a DataBagPath + returns chainable self
- setExecutable(command) : sets the executable command to command
setLogLevel(level) : sets the LogLevel + returns chainable self
var ChefCommand = require('chef-command'); var chefCmd = new ChefCommand(); chefCmd.addCookbookPath('/tmp/cookbooks'); // add a cookbook chefCmd.addCookbookPath('/tmp/site-cookbooks').logLevel('debug); // example of chainable
addRecipe(recipe) : adds recipe to the runlist
- addRole(role) : adds role to the run runlist
- setRunList(array of runlist) : sets the runlist
- setExtraJson(json) : json to merge with dna.json
- removeRole(role): removes the role from the runlist
- removeRecipe(recipe): removes the recipe to the runlist
Getters
- generate() : return hash containing
dna_json: string containing the dna.json to use
config_rb: string containing the config.rb
command: string containing the actual CLI invocation
var ChefCommand = require('chef-command');
var chefCmd = new ChefCommand();
chefCmd.addCookbookPath('/tmp/cookbooks'); // add a cookbook
chefCmd.generate();