Module: ChefProvisioner::Bootstrap

Extended by:
Bootstrap
Included in:
Bootstrap
Defined in:
lib/chef-provisioner/bootstrap.rb

Overview

Help render the bootstrap script

Constant Summary collapse

BOOTSTRAP_TEMPLATE =
File.read(File.expand_path('../templates/bootstrap.erb', __FILE__)).freeze

Instance Method Summary collapse

Instance Method Details

#generate(node_name: '', chef_version: '12.4.1', environment: nil, server: '', first_boot: {}, reinstall: false, audit: false, force: false, retries: 1, profile: false, chef_cmd: nil) ⇒ Object



12
13
14
15
16
17
18
19
20
# File 'lib/chef-provisioner/bootstrap.rb', line 12

def generate(node_name: '', chef_version: '12.4.1', environment: nil, server: '', first_boot: {}, reinstall: false, audit: false, force: false, retries: 1, profile: false, chef_cmd: nil)
  node_name = node_name.strip
  server = ChefAPI.endpoint if server.empty?
  run_list = first_boot[:run_list] if first_boot[:run_list] # FIXME - symbolize keys instead of the dup here
  run_list = first_boot['run_list'] if first_boot['run_list']
  first_boot.merge!( fqdn: node_name, chef_client: {config: {chef_server_url: server}} )
  client_pem = get_client_key(node_name, environment, run_list, force, retries)
  render(node_name: node_name, client_pem: client_pem, chef_version: chef_version, environment: environment, server: server, first_boot: first_boot, reinstall: reinstall, audit: audit, chef_cmd: chef_cmd, profile: profile)
end