chef-command

    0.0.4 • Public • Published

    Description

    This generates both the correct Opscode chef command the corresponding json file to use.

    Documentation on Chef-Solo options:

    Documentation on Chef-Client options:

    API

    Constructor

    var ChefCommand = require('chef-command');
    var chefCmd = new ChefCommand();
    

    options:

    • executable: defaults to chef-solo
    • file_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

    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
    
    • 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
    • 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

    var ChefCommand = require('chef-command');
    var chefCmd = new ChefCommand();
    chefCmd.addCookbookPath('/tmp/cookbooks'); // add a cookbook
    chefCmd.generate();
    
    • 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

    Keywords

    none

    Install

    npm i chef-command

    DownloadsWeekly Downloads

    10

    Version

    0.0.4

    License

    MIT

    Last publish

    Collaborators

    • avatar