|
7 | 7 | 'dev' |
8 | 8 | end |
9 | 9 |
|
10 | | -# Determine Deployment Type |
11 | | -default['bonusbits_base']['deployment_type'] = |
12 | | - if node['virtualization']['system'] == 'docker' |
13 | | - # if node['virtualization']['systems']['docker'] == 'guest' |
14 | | - 'docker' |
15 | | - elsif node['virtualization']['system'] == 'lxc' |
16 | | - 'lxc' |
17 | | - elsif node['virtualization']['system'] == 'lxd' |
18 | | - 'lxd' |
19 | | - elsif node['virtualization']['system'] == 'kvm' |
20 | | - 'kvm' |
21 | | - elsif node['virtualization']['system'] == 'vbox' |
22 | | - 'vbox' |
23 | | - elsif BonusBits::Discovery.ec2?(node['fqdn'], node['platform_family']) |
24 | | - 'ec2' |
25 | | - else |
26 | | - 'other' |
27 | | - end |
| 10 | +default['bonusbits_base'].tap do |root| |
| 11 | + # Determine Deployment Type |
| 12 | + root['deployment_type'] = |
| 13 | + if node['virtualization']['system'] == 'docker' |
| 14 | + # if node['virtualization']['systems']['docker'] == 'guest' |
| 15 | + 'docker' |
| 16 | + elsif node['virtualization']['system'] == 'lxc' |
| 17 | + 'lxc' |
| 18 | + elsif node['virtualization']['system'] == 'lxd' |
| 19 | + 'lxd' |
| 20 | + elsif node['virtualization']['system'] == 'kvm' |
| 21 | + 'kvm' |
| 22 | + elsif node['virtualization']['system'] == 'vbox' |
| 23 | + 'vbox' |
| 24 | + elsif BonusBits::Discovery.ec2?(node['fqdn'], node['platform_family']) |
| 25 | + 'ec2' |
| 26 | + else |
| 27 | + 'other' |
| 28 | + end |
28 | 29 |
|
29 | | -# Determine Deployment Location |
30 | | -## Circleci Logic Does not work if spawning Docker |
31 | | -## containers in CircleCi because nested VM. Override in Kitchen Config |
32 | | -default['bonusbits_base']['deployment_location'] = |
33 | | - if ENV['CIRCLECI'] |
34 | | - 'circleci' |
35 | | - elsif BonusBits::Discovery.aws?(node['fqdn'], node['platform_family']) |
36 | | - 'aws' |
37 | | - else |
38 | | - 'local' |
39 | | - end |
| 30 | + # Determine Deployment Location |
| 31 | + ## Circleci Logic Does not work if spawning Docker |
| 32 | + ## containers in CircleCi because nested VM. Override in Kitchen Config |
| 33 | + root['deployment_location'] = |
| 34 | + if ENV['CIRCLECI'] |
| 35 | + 'circleci' |
| 36 | + elsif BonusBits::Discovery.aws?(node['fqdn'], node['platform_family']) |
| 37 | + 'aws' |
| 38 | + else |
| 39 | + 'local' |
| 40 | + end |
40 | 41 |
|
41 | | -# Determine Deployment Method |
42 | | -## Mostly for Conditioning Audit Cookbook (Kitchen Handles the Audit when Used) |
43 | | -## TODO: Added vbox discovery? |
44 | | -deployment_location = node['bonusbits_base']['deployment_location'] |
45 | | -deployment_type = node['bonusbits_base']['deployment_type'] |
46 | | -deployment_location_local = deployment_location == 'local' |
47 | | -deployment_type_docker = deployment_type == 'docker' |
| 42 | + # Determine Deployment Method |
| 43 | + ## Mostly for Conditioning Audit Cookbook (Kitchen Handles the Audit when Used) |
| 44 | + ## TODO: Added vbox discovery? |
| 45 | + deployment_location = node['bonusbits_base']['deployment_location'] |
| 46 | + deployment_type = node['bonusbits_base']['deployment_type'] |
| 47 | + deployment_location_local = deployment_location == 'local' |
| 48 | + deployment_type_docker = deployment_type == 'docker' |
48 | 49 |
|
49 | | -default['bonusbits_base']['deployment_method'] = |
50 | | - if ::File.directory?('/tmp/kitchen') |
51 | | - 'kitchen' |
52 | | - elsif ::File.exist?('/var/lib/cloud/instance/scripts/part-001') |
53 | | - 'cloudformation' |
54 | | - elsif deployment_type_docker && deployment_location_local |
55 | | - 'dockerfile' |
56 | | - elsif deployment_type_docker |
57 | | - 'dockerimage' |
58 | | - else |
59 | | - 'unknown' |
60 | | - end |
| 50 | + root['deployment_method'] = |
| 51 | + if ::File.directory?('/tmp/kitchen') |
| 52 | + 'kitchen' |
| 53 | + elsif ::File.exist?('/var/lib/cloud/instance/scripts/part-001') |
| 54 | + 'cloudformation' |
| 55 | + elsif deployment_type_docker && deployment_location_local |
| 56 | + 'dockerfile' |
| 57 | + elsif deployment_type_docker |
| 58 | + 'dockerimage' |
| 59 | + else |
| 60 | + 'unknown' |
| 61 | + end |
61 | 62 |
|
62 | | -default['bonusbits_base']['local_file_cache'] = Chef::Config[:file_cache_path] |
| 63 | + # File Cache |
| 64 | + root['local_file_cache'] = Chef::Config[:file_cache_path] |
| 65 | + |
| 66 | + # Chef Install Path |
| 67 | + root['chef_path'] = |
| 68 | + if ::File.directory?('/opt/chef') |
| 69 | + '/opt/chef' |
| 70 | + elsif ::File.directory?('/opt/chefdk') |
| 71 | + '/opt/chefdk' |
| 72 | + else |
| 73 | + raise 'ERROR: Chef Install Path Not Found!' |
| 74 | + end |
| 75 | +end |
63 | 76 |
|
64 | 77 | # Debug |
65 | 78 | message_list = [ |
|
68 | 81 | "Detected Environment (#{run_state['detected_environment']})", |
69 | 82 | "Deployment Type (#{node['bonusbits_base']['deployment_type']})", |
70 | 83 | "Deployment Location (#{node['bonusbits_base']['deployment_location']})", |
71 | | - "Deployment Method (#{node['bonusbits_base']['deployment_method']})" |
| 84 | + "Deployment Method (#{node['bonusbits_base']['deployment_method']})", |
| 85 | + "Local File Cache (#{node['bonusbits_base']['local_file_cache']})", |
| 86 | + "Chef Install Path (#{node['bonusbits_base']['chef_path']})" |
72 | 87 | ] |
73 | 88 | message_list.each do |message| |
74 | 89 | Chef::Log.warn(message) |
|
0 commit comments