Module: ChefWorkstationInitialize::SelfBootstrap::NoChef::KnifeHelpers

Includes:
ChefRepoHelpers
Included in:
UpdateHelpers
Defined in:
lib/selfbootstrap/nochef/knife.rb

Instance Method Summary collapse

Methods included from ChefRepoHelpers

#create_attribute_file, #create_chef_additionnal_dir, #create_chef_infra_cookbook, #create_cookbook, #create_generator, #create_recipe, #create_template_file, #define_cron_job, #ensure_main_environment, #project_environment_json, #project_role_json, #render_template, #write_Solo_file, #write_kitchen_file, #write_main_environment, #write_main_role, #write_main_role_environment, #write_role_environment

Methods included from KitchenHelpers

#building_kitchen, #generate_kitchen, #generate_machine, #is_kitchen_command?, #kitchen, #kitchen_machine, #kitchen_root

Methods included from ProvisionersHelpers

#chef_zero_provisioner, #provisioners

Methods included from PlatformsHelpers

#default_platforms

Methods included from SuitesHelpers

#default_suites

Methods included from VerifiersHelpers

#inspec_verifier, #verifiers

Methods included from ChefHelpers

#chef, #chef_client, #install_chef_workstation, #is_chef_cli_command?, #is_chef_client_command?, #is_chef_command?, #is_chef_enabled?, #is_chef_installed?, #is_chef_profile_set?, #is_chefworkstation_available?, #is_knife_gem_install?

Methods included from BerksHelpers

#berks, #berks_vendor, #berks_vendor_all_cookbook, #berks_vendor_cookbook, #berks_vendor_init, #delete_all_berkslock, #delete_cookbook_berkslock, #reset_berks_vendor_dir, #self_berks_vendor

Methods included from GitHelpers

#all_cookbooks, #generate_git_submodules, #generate_json_repo, #get_git_path, #get_git_relative_path, #get_git_server, #get_git_submodule, #get_self_git, #git_exec, #git_submodule_init, #repository_list

Methods included from SSHHelpers

#delete_hostkey, #delete_hostkey_ip_or_name, #generate_private_key, #ssh, #ssh_command, #ssh_keygen

Methods included from CommandlineHelpers

#base_command, #get_homedir, #is_mixlib_disabled?, #main_command, #run_options

Methods included from DefaultMethodsHelpers

#analyse_object, #check_install_dir, #debug_worklog, #default_chefzero_portrange, #default_hostname, #default_install_dir, #define_resource_requirements, #error_worklog, #generate_default_install_dir, #generate_directory, #get_out_of_cache_path, #get_out_of_folder, #get_out_of_local_chef_path, #get_path, #is_chef_constant_enabled?, #parent_nil?, #require_implement_method, #search_local_project_folder, #warning_worklog, #worklog, #worklog_counter

Instance Method Details

#get_solo_cmdObject



37
38
39
40
# File 'lib/selfbootstrap/nochef/knife.rb', line 37

def get_solo_cmd
  worklog 'Get solo from knife'
  knife 'config show solo --format json', live: true
end

#is_knife?Boolean



29
30
31
# File 'lib/selfbootstrap/nochef/knife.rb', line 29

def is_knife?
  ::File.basename($PROGRAM_NAME).eql?('knife')
end

#knife(*args, **run_opts) ⇒ Object



33
34
35
# File 'lib/selfbootstrap/nochef/knife.rb', line 33

def knife(*args, **run_opts)
  base_command('knife', *args, **run_opts)
end

#knife_get_node_attribute(nodename, attribute) ⇒ Object



55
56
57
# File 'lib/selfbootstrap/nochef/knife.rb', line 55

def knife_get_node_attribute(nodename, attribute)
  knife "node show #{nodename} -a #{attribute}"
end

#knife_search_self_cmdObject



42
43
44
45
46
47
48
49
# File 'lib/selfbootstrap/nochef/knife.rb', line 42

def knife_search_self_cmd
  knife_options = ['search']
  knife_options << 'node'
  knife_options << "name:#{default_hostname}"
  knife_options << '--format json'
  knife_options << '-z' if is_solo?
  knife knife_options
end

#knife_self_bootstrap_cmdObject



59
60
61
62
# File 'lib/selfbootstrap/nochef/knife.rb', line 59

def knife_self_bootstrap_cmd
  debug_worklog 'boostrapped with chef-server and knife'
  knife "bootstrap #{self_bootstrap_options} --policy-group #{project_name} --policy-name #{project_name} #{default_hostname}"
end

#self_bootstrap_optionsObject



51
52
53
# File 'lib/selfbootstrap/nochef/knife.rb', line 51

def self_bootstrap_options
  "-N #{default_hostname}"
end