Class: Chef::Licensing
- Inherits:
-
Object
show all
- Defined in:
- lib/chef/licensing.rb
Defined Under Namespace
Classes: EntitlementError
Class Method Summary
collapse
Class Method Details
.check_software_entitlement! ⇒ Object
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
# File 'lib/chef/licensing.rb', line 31
def check_software_entitlement!
Chef::Log.info "Checking software entitlement..."
if skip_license_validation?
Chef::Log.info "****Skipping software entitlement check..."
return
end
ChefLicensing.check_software_entitlement!
rescue ChefLicensing::SoftwareNotEntitled
Chef::Log.error "License is not entitled to use Chef Infra."
Chef::Application.exit! "License not entitled", 173
rescue ChefLicensing::Error => e
Chef::Log.error e.message
Chef::Application.exit! "Usage error", 1
end
|
.check_software_entitlement_compliance_phase! ⇒ Object
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
# File 'lib/chef/licensing.rb', line 48
def check_software_entitlement_compliance_phase!
Chef::Log.info "Checking software entitlement for compliance phase..."
ChefLicensing::Config.chef_entitlement_id = Chef::LicensingConfig::COMPLIANCE_ENTITLEMENT_ID
ChefLicensing.check_software_entitlement!
rescue ChefLicensing::SoftwareNotEntitled
raise EntitlementError, "License not entitled"
rescue ChefLicensing::Error => e
Chef::Log.error e.message
Chef::Application.exit! "Usage error", 1
ensure
ChefLicensing::Config.chef_entitlement_id = Chef::LicensingConfig::INFRA_ENTITLEMENT_ID
end
|
.fetch_and_persist ⇒ Object
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
# File 'lib/chef/licensing.rb', line 10
def fetch_and_persist
Chef::Log.info "Fetching and persisting license..."
if skip_license_validation?
Chef::Log.info "****Skipping license validation..."
return
end
license_keys = ChefLicensing.fetch_and_persist
rescue ChefLicensing::LicenseKeyFetcher::LicenseKeyNotFetchedError
Chef::Log.error "Chef Infra cannot execute without valid licenses."
Chef::Application.exit! "License not set", 174
rescue ChefLicensing::SoftwareNotEntitled
Chef::Log.error "License is not entitled to use Chef Infra."
Chef::Application.exit! "License not entitled", 173
rescue ChefLicensing::Error => e
Chef::Log.error e.message
Chef::Application.exit! "Usage error", 1
end
|
.license_add ⇒ Object
95
96
97
98
99
100
101
102
103
|
# File 'lib/chef/licensing.rb', line 95
def license_add
ChefLicensing.add_license
rescue ChefLicensing::LicenseKeyFetcher::LicenseKeyAddNotAllowed => e
Chef::Log.error e.message
Chef::Application.exit! "License not set", 174
rescue ChefLicensing::Error => e
Chef::Log.error e.message
Chef::Application.exit! "Usage error", 1
end
|
.license_list ⇒ Object
88
89
90
91
92
93
|
# File 'lib/chef/licensing.rb', line 88
def license_list
ChefLicensing.list_license_keys_info
rescue ChefLicensing::Error => e
Chef::Log.error e.message
Chef::Application.exit! "Usage error", 1
end
|
.licensing_help ⇒ Object
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
|
# File 'lib/chef/licensing.rb', line 63
def licensing_help
"\n Chef Infra has three tiers of licensing:\n\n * Free-Tier\n Users are limited to audit maximum of 10 nodes\n Entitled for personal or non-commercial use\n\n * Trial\n Entitled for unlimited number of nodes\n Entitled for 30 days only\n Entitled for commercial use\n\n * Commercial\n Entitled for purchased number of nodes\n Entitled for period of subscription purchased\n Entitled for commercial use\n\n For more information please visit:\n www.chef.io/licensing/faqs\n\n FOOTER\nend\n"
|