puppet 7.19.0 → 7.21.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (65) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +31 -31
  3. data/lib/puppet/application/lookup.rb +5 -5
  4. data/lib/puppet/defaults.rb +14 -0
  5. data/lib/puppet/indirector/facts/facter.rb +5 -1
  6. data/lib/puppet/info_service/task_information_service.rb +10 -2
  7. data/lib/puppet/module/task.rb +6 -1
  8. data/lib/puppet/transaction/report.rb +18 -1
  9. data/lib/puppet/type/resources.rb +1 -6
  10. data/lib/puppet/type/tidy.rb +3 -2
  11. data/lib/puppet/type/user.rb +1 -3
  12. data/lib/puppet/type.rb +10 -0
  13. data/lib/puppet/version.rb +1 -1
  14. data/man/man5/puppet.conf.5 +18 -2
  15. data/man/man8/puppet-agent.8 +1 -1
  16. data/man/man8/puppet-apply.8 +1 -1
  17. data/man/man8/puppet-catalog.8 +1 -1
  18. data/man/man8/puppet-config.8 +1 -1
  19. data/man/man8/puppet-describe.8 +1 -1
  20. data/man/man8/puppet-device.8 +1 -1
  21. data/man/man8/puppet-doc.8 +1 -1
  22. data/man/man8/puppet-epp.8 +1 -1
  23. data/man/man8/puppet-facts.8 +1 -1
  24. data/man/man8/puppet-filebucket.8 +1 -1
  25. data/man/man8/puppet-generate.8 +1 -1
  26. data/man/man8/puppet-help.8 +1 -1
  27. data/man/man8/puppet-lookup.8 +1 -1
  28. data/man/man8/puppet-module.8 +1 -1
  29. data/man/man8/puppet-node.8 +1 -1
  30. data/man/man8/puppet-parser.8 +1 -1
  31. data/man/man8/puppet-plugin.8 +1 -1
  32. data/man/man8/puppet-report.8 +1 -1
  33. data/man/man8/puppet-resource.8 +1 -1
  34. data/man/man8/puppet-script.8 +1 -1
  35. data/man/man8/puppet-ssl.8 +1 -1
  36. data/man/man8/puppet.8 +2 -2
  37. data/spec/integration/application/agent_spec.rb +99 -0
  38. data/spec/integration/application/lookup_spec.rb +55 -0
  39. data/spec/unit/agent_spec.rb +1 -1
  40. data/spec/unit/confiner_spec.rb +1 -1
  41. data/spec/unit/http/service/compiler_spec.rb +1 -1
  42. data/spec/unit/indirector/facts/facter_spec.rb +10 -0
  43. data/spec/unit/indirector/indirection_spec.rb +1 -1
  44. data/spec/unit/info_service_spec.rb +21 -0
  45. data/spec/unit/module_tool/tar/mini_spec.rb +1 -1
  46. data/spec/unit/network/formats_spec.rb +1 -1
  47. data/spec/unit/provider/ldap_spec.rb +2 -2
  48. data/spec/unit/provider/package/dpkg_spec.rb +3 -3
  49. data/spec/unit/provider/package/pkgutil_spec.rb +4 -4
  50. data/spec/unit/provider/parsedfile_spec.rb +4 -4
  51. data/spec/unit/reports/store_spec.rb +5 -1
  52. data/spec/unit/task_spec.rb +11 -0
  53. data/spec/unit/transaction/event_manager_spec.rb +2 -2
  54. data/spec/unit/transaction/report_spec.rb +38 -1
  55. data/spec/unit/transaction_spec.rb +2 -2
  56. data/spec/unit/type/file_spec.rb +4 -4
  57. data/spec/unit/type/filebucket_spec.rb +3 -3
  58. data/spec/unit/type/resources_spec.rb +14 -0
  59. data/spec/unit/type/tidy_spec.rb +27 -17
  60. data/spec/unit/util/execution_spec.rb +6 -6
  61. data/spec/unit/util/network_device_spec.rb +1 -6
  62. data/spec/unit/util/storage_spec.rb +1 -1
  63. data/spec/unit/x509/cert_provider_spec.rb +1 -1
  64. data/tasks/manpages.rake +5 -0
  65. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d32a66176a5b99914cebe034bf52b7826160d6b766067fce1f5753c37dc01f9e
4
- data.tar.gz: 7a9ff5f1a62cc8bc870582080dc8c1e2f0da676d812fb12e1b5118aa98c2d28e
3
+ metadata.gz: 05573aee733059203260d032efbc259ccea53cf00810ddcd027fd7db36682210
4
+ data.tar.gz: cb8c4ce612faa27a59948c8214cd5a9d161e5a9846c8489d10c35ea026d3490b
5
5
  SHA512:
6
- metadata.gz: c1daf44941ec4709eac26ca70115da61a226f3291127d7dfb460d37df24f6c73ef5fdd100ab1807b2f8f92f7beb798b1b9ab85b3fa8ea07e17c6ff74096eadff
7
- data.tar.gz: 294253daf2d1727384f420bf81365b7717c763abeeaae68ac425c69f54e2aa03be5e6b2410656d0801f0244db699d9b35b00b02267a48ae2d07cb6d1747c9b27
6
+ metadata.gz: 9686f331e6f146dc5b582baf5bc339b3b7638067238808f09617cafda7ee1d9e51b40c59cae54c58bc46f57be132b738fa7bbe96d4c6c46e74d8e9f7758760f2
7
+ data.tar.gz: de237911924f86b2c8fcf22bfac0256032214ad42e91a657de0be0863ca95171795d2c7eb47353c43e8dcd737cee0b34dd602c5271162468ee8789750e26aaab
data/Gemfile.lock CHANGED
@@ -1,9 +1,9 @@
1
1
  GIT
2
2
  remote: https://github.com/puppetlabs/packaging
3
- revision: 5ea5aea92da37b7c7b98cda46b4e8ba225ad307f
3
+ revision: 43e14adf3cc3756bb5a776db9bc245c685c11f71
4
4
  branch: 1.0.x
5
5
  specs:
6
- packaging (0.107.1)
6
+ packaging (0.108.0)
7
7
  apt_stage_artifacts
8
8
  artifactory (~> 3)
9
9
  csv (= 3.1.5)
@@ -15,7 +15,7 @@ GIT
15
15
  PATH
16
16
  remote: .
17
17
  specs:
18
- puppet (7.19.0)
18
+ puppet (7.21.0)
19
19
  CFPropertyList (~> 2.2)
20
20
  concurrent-ruby (~> 1.0)
21
21
  deep_merge (~> 1.0)
@@ -48,13 +48,13 @@ GEM
48
48
  digest-crc (0.6.4)
49
49
  rake (>= 12.0.0, < 14.0.0)
50
50
  docopt (0.6.1)
51
- facter (4.2.11)
51
+ facter (4.2.13)
52
52
  hocon (~> 1.3)
53
53
  thor (>= 1.0.1, < 2.0)
54
- faraday (2.5.2)
54
+ faraday (2.7.1)
55
55
  faraday-net_http (>= 2.0, < 3.1)
56
56
  ruby2_keywords (>= 0.0.4)
57
- faraday-net_http (3.0.0)
57
+ faraday-net_http (3.0.2)
58
58
  fast_gettext (1.1.2)
59
59
  ffi (1.15.5)
60
60
  gettext (3.2.9)
@@ -64,7 +64,7 @@ GEM
64
64
  fast_gettext (~> 1.1.0)
65
65
  gettext (>= 3.0.2, < 3.3.0)
66
66
  locale
67
- google-apis-core (0.7.0)
67
+ google-apis-core (0.9.1)
68
68
  addressable (~> 2.5, >= 2.5.1)
69
69
  googleauth (>= 0.16.2, < 2.a)
70
70
  httpclient (>= 2.8.1, < 3.a)
@@ -73,25 +73,25 @@ GEM
73
73
  retriable (>= 2.0, < 4.a)
74
74
  rexml
75
75
  webrick
76
- google-apis-iamcredentials_v1 (0.13.0)
77
- google-apis-core (>= 0.7, < 2.a)
78
- google-apis-storage_v1 (0.17.0)
79
- google-apis-core (>= 0.7, < 2.a)
76
+ google-apis-iamcredentials_v1 (0.16.0)
77
+ google-apis-core (>= 0.9.1, < 2.a)
78
+ google-apis-storage_v1 (0.19.0)
79
+ google-apis-core (>= 0.9.0, < 2.a)
80
80
  google-cloud-core (1.6.0)
81
81
  google-cloud-env (~> 1.0)
82
82
  google-cloud-errors (~> 1.0)
83
83
  google-cloud-env (1.6.0)
84
84
  faraday (>= 0.17.3, < 3.0)
85
- google-cloud-errors (1.2.0)
86
- google-cloud-storage (1.39.0)
85
+ google-cloud-errors (1.3.0)
86
+ google-cloud-storage (1.44.0)
87
87
  addressable (~> 2.8)
88
88
  digest-crc (~> 0.4)
89
89
  google-apis-iamcredentials_v1 (~> 0.1)
90
- google-apis-storage_v1 (~> 0.17.0)
90
+ google-apis-storage_v1 (~> 0.19.0)
91
91
  google-cloud-core (~> 1.6)
92
92
  googleauth (>= 0.16.2, < 2.a)
93
93
  mini_mime (~> 1.0)
94
- googleauth (1.2.0)
94
+ googleauth (1.3.0)
95
95
  faraday (>= 0.17.3, < 3.a)
96
96
  jwt (>= 1.4, < 3.0)
97
97
  memoist (~> 0.16)
@@ -112,11 +112,11 @@ GEM
112
112
  jwt (2.5.0)
113
113
  locale (2.1.3)
114
114
  memoist (0.16.2)
115
- memory_profiler (1.0.0)
115
+ memory_profiler (1.0.1)
116
116
  method_source (1.0.0)
117
117
  mini_mime (1.1.2)
118
118
  minitar (0.9)
119
- msgpack (1.5.6)
119
+ msgpack (1.6.0)
120
120
  multi_json (1.15.0)
121
121
  mustache (1.1.1)
122
122
  optimist (3.0.1)
@@ -128,7 +128,7 @@ GEM
128
128
  pry (0.14.1)
129
129
  coderay (~> 1.1)
130
130
  method_source (~> 1.0)
131
- public_suffix (5.0.0)
131
+ public_suffix (5.0.1)
132
132
  puppet-resource_api (1.8.14)
133
133
  hocon (>= 1.0)
134
134
  puppetserver-ca (2.3.6)
@@ -137,7 +137,7 @@ GEM
137
137
  rainbow (2.2.2)
138
138
  rake
139
139
  rake (13.0.6)
140
- rdiscount (2.2.0.2)
140
+ rdiscount (2.2.7)
141
141
  rdoc (6.3.3)
142
142
  release-metrics (1.1.0)
143
143
  csv
@@ -152,22 +152,22 @@ GEM
152
152
  hpricot (>= 0.8.2)
153
153
  mustache (>= 0.7.0)
154
154
  rdiscount (>= 1.5.8)
155
- rspec (3.11.0)
156
- rspec-core (~> 3.11.0)
157
- rspec-expectations (~> 3.11.0)
158
- rspec-mocks (~> 3.11.0)
159
- rspec-core (3.11.0)
160
- rspec-support (~> 3.11.0)
161
- rspec-expectations (3.11.1)
155
+ rspec (3.12.0)
156
+ rspec-core (~> 3.12.0)
157
+ rspec-expectations (~> 3.12.0)
158
+ rspec-mocks (~> 3.12.0)
159
+ rspec-core (3.12.0)
160
+ rspec-support (~> 3.12.0)
161
+ rspec-expectations (3.12.0)
162
162
  diff-lcs (>= 1.2.0, < 2.0)
163
- rspec-support (~> 3.11.0)
163
+ rspec-support (~> 3.12.0)
164
164
  rspec-its (1.3.0)
165
165
  rspec-core (>= 3.0.0)
166
166
  rspec-expectations (>= 3.0.0)
167
- rspec-mocks (3.11.1)
167
+ rspec-mocks (3.12.0)
168
168
  diff-lcs (>= 1.2.0, < 2.0)
169
- rspec-support (~> 3.11.0)
170
- rspec-support (3.11.1)
169
+ rspec-support (~> 3.12.0)
170
+ rspec-support (3.12.0)
171
171
  rubocop (0.49.1)
172
172
  parallel (~> 1.10)
173
173
  parser (>= 2.3.3.1, < 3.0)
@@ -235,4 +235,4 @@ DEPENDENCIES
235
235
  yard
236
236
 
237
237
  BUNDLED WITH
238
- 2.3.10
238
+ 2.3.22
@@ -376,9 +376,9 @@ Copyright (c) 2015 Puppet Inc., LLC Licensed under the Apache 2.0 License
376
376
  facts = retrieve_node_facts(node, given_facts)
377
377
  ni = Puppet::Node.indirection
378
378
  tc = ni.terminus_class
379
- if options[:compile] && !Puppet.settings.set_by_cli?('environment')
379
+ if options[:compile]
380
380
  if tc == :plain
381
- node = ni.find(node, facts: facts)
381
+ node = ni.find(node, facts: facts, environment: Puppet[:environment])
382
382
  else
383
383
  begin
384
384
  service = Puppet.runtime[:http]
@@ -390,11 +390,11 @@ Copyright (c) 2015 Puppet Inc., LLC Licensed under the Apache 2.0 License
390
390
  Puppet::SSL::Oids.register_puppet_oids
391
391
  trusted = Puppet::Context::TrustedInformation.remote(true, facts.values['certname'] || node, Puppet::SSL::Certificate.from_instance(cert))
392
392
  Puppet.override(trusted_information: trusted) do
393
- node = ni.find(node, facts: facts)
393
+ node = ni.find(node, facts: facts, environment: Puppet[:environment])
394
394
  end
395
395
  rescue
396
396
  Puppet.warning _("CA is not available, the operation will continue without using trusted facts.")
397
- node = ni.find(node, facts: facts)
397
+ node = ni.find(node, facts: facts, environment: Puppet[:environment])
398
398
  end
399
399
  end
400
400
  else
@@ -405,7 +405,7 @@ Copyright (c) 2015 Puppet Inc., LLC Licensed under the Apache 2.0 License
405
405
  else
406
406
  node.add_extra_facts(given_facts) if given_facts
407
407
  end
408
-
408
+ node.environment = Puppet[:environment] if Puppet.settings.set_by_cli?(:environment)
409
409
  Puppet[:code] = 'undef' unless options[:compile]
410
410
  compiler = Puppet::Parser::Compiler.new(node)
411
411
  if options[:node]
@@ -1450,6 +1450,12 @@ EOT
1450
1450
 
1451
1451
  To turn off reports entirely, set this to `none`",
1452
1452
  },
1453
+ :exclude_unchanged_resources => {
1454
+ :default => false,
1455
+ :type => :boolean,
1456
+ :desc => 'When set to true, resources that have had no changes after catalog application
1457
+ will not have corresponding unchanged resource status updates listed in the report.'
1458
+ },
1453
1459
  :reportdir => {
1454
1460
  :default => "$vardir/reports",
1455
1461
  :type => :directory,
@@ -1712,6 +1718,14 @@ EOT
1712
1718
  new configurations, where you want to fix the broken configuration
1713
1719
  rather than reverting to a known-good one.",
1714
1720
  },
1721
+ :include_legacy_facts => {
1722
+ :type => :boolean,
1723
+ :default => true,
1724
+ :desc => "Whether to include legacy facts when requesting a catalog. This
1725
+ option can be set to false provided all puppet manifests, hiera.yaml and hiera
1726
+ configuration layers no longer access legacy facts, such as `$osfamily`, and
1727
+ instead access structured facts, such as `$facts['os']['family']`."
1728
+ },
1715
1729
  :fact_name_length_soft_limit => {
1716
1730
  :default => 2560,
1717
1731
  :type => :integer,
@@ -35,8 +35,12 @@ class Puppet::Node::Facts::Facter < Puppet::Indirector::Code
35
35
  result = if request.options[:resolve_options]
36
36
  raise(Puppet::Error, _("puppet facts show requires version 4.0.40 or greater of Facter.")) unless Facter.respond_to?(:resolve)
37
37
  find_with_options(request)
38
- else
38
+ elsif Puppet[:include_legacy_facts]
39
+ # to_hash returns both structured and legacy facts
39
40
  Puppet::Node::Facts.new(request.key, Puppet.runtime[:facter].to_hash)
41
+ else
42
+ # resolve does not return legacy facts unless requested
43
+ Puppet::Node::Facts.new(request.key, Puppet.runtime[:facter].resolve(''))
40
44
  end
41
45
 
42
46
  result.add_local_facts unless request.options[:resolve_options]
@@ -4,11 +4,19 @@ class Puppet::InfoService::TaskInformationService
4
4
  def self.tasks_per_environment(environment_name)
5
5
  # get the actual environment object, raise error if the named env doesn't exist
6
6
  env = Puppet.lookup(:environments).get!(environment_name)
7
+
7
8
  env.modules.map do |mod|
8
9
  mod.tasks.map do |task|
9
- {:module => {:name => task.module.name}, :name => task.name, :metadata => task.metadata}
10
+ # If any task is malformed continue to list other tasks in module
11
+ begin
12
+ task.validate
13
+ {:module => {:name => task.module.name}, :name => task.name, :metadata => task.metadata}
14
+ rescue Puppet::Module::Task::Error => err
15
+ Puppet.log_exception(err, 'Failed to validate task')
16
+ nil
17
+ end
10
18
  end
11
- end.flatten
19
+ end.flatten.compact
12
20
  end
13
21
 
14
22
  def self.task_data(environment_name, module_name, task_name)
@@ -232,7 +232,12 @@ class Puppet::Module
232
232
  end
233
233
 
234
234
  def self.read_metadata(file)
235
- Puppet::Util::Json.load(Puppet::FileSystem.read(file, :encoding => 'utf-8')) if file
235
+ # MultiJSON has a bug that improperly errors when loading an empty string
236
+ # so we handle it here for now. See: PUP-11629
237
+ if file
238
+ content = Puppet::FileSystem.read(file, :encoding => 'utf-8')
239
+ content.empty? ? {} : Puppet::Util::Json.load(content)
240
+ end
236
241
  rescue SystemCallError, IOError => err
237
242
  msg = _("Error reading metadata: %{message}" % {message: err.message})
238
243
  raise InvalidMetadata.new(msg, 'puppet.tasks/unreadable-metadata')
@@ -38,6 +38,7 @@ class Puppet::Transaction::Report
38
38
  include Puppet::Util::PsychSupport
39
39
  extend Puppet::Indirector
40
40
 
41
+ STATES_FOR_EXCLUSION_FROM_REPORT = [:failed, :failed_to_restart, :out_of_sync, :skipped].freeze
41
42
  indirects :report, :terminus_class => :processor
42
43
 
43
44
  # The version of the configuration
@@ -308,6 +309,22 @@ class Puppet::Transaction::Report
308
309
  end
309
310
  end
310
311
 
312
+ def resource_unchanged?(rs)
313
+ STATES_FOR_EXCLUSION_FROM_REPORT.each do |state|
314
+ return false if rs.send(state)
315
+ end
316
+ true
317
+ end
318
+
319
+ def calculate_resource_statuses
320
+ resource_statuses = if Puppet[:exclude_unchanged_resources]
321
+ @resource_statuses.reject { |_key, rs| resource_unchanged?(rs) }
322
+ else
323
+ @resource_statuses
324
+ end
325
+ Hash[resource_statuses.map { |key, rs| [key, rs.nil? ? nil : rs.to_data_hash] }]
326
+ end
327
+
311
328
  def to_data_hash
312
329
  hash = {
313
330
  'host' => @host,
@@ -323,7 +340,7 @@ class Puppet::Transaction::Report
323
340
  'environment' => @environment,
324
341
  'logs' => @logs.map { |log| log.to_data_hash },
325
342
  'metrics' => Hash[@metrics.map { |key, metric| [key, metric.to_data_hash] }],
326
- 'resource_statuses' => Hash[@resource_statuses.map { |key, rs| [key, rs.nil? ? nil : rs.to_data_hash] }],
343
+ 'resource_statuses' => calculate_resource_statuses,
327
344
  'corrective_change' => @corrective_change,
328
345
  }
329
346
 
@@ -120,12 +120,7 @@ Puppet::Type.newtype(:resources) do
120
120
  select { |r| r.class.validproperty?(:ensure) }.
121
121
  select { |r| able_to_ensure_absent?(r) }.
122
122
  each { |resource|
123
- @parameters.each do |name, param|
124
- resource[name] = param.value if param.metaparam?
125
- end
126
-
127
- # Mark that we're purging, so transactions can handle relationships
128
- # correctly
123
+ resource.copy_metaparams(@parameters)
129
124
  resource.purging
130
125
  }
131
126
  end
@@ -247,9 +247,10 @@ Puppet::Type.newtype(:tidy) do
247
247
  :ensure => :absent, :force => true
248
248
  }
249
249
 
250
- parameters[:noop] = self[:noop] unless self[:noop].nil?
250
+ new_file = Puppet::Type.type(:file).new(parameters)
251
+ new_file.copy_metaparams(@parameters)
251
252
 
252
- Puppet::Type.type(:file).new(parameters)
253
+ new_file
253
254
  end
254
255
 
255
256
  def retrieve
@@ -811,9 +811,7 @@ module Puppet
811
811
  flatten.each do |res|
812
812
  res[:ensure] = :absent
813
813
  res[:user] = self[:name]
814
- @parameters.each do |name, param|
815
- res[name] = param.value if param.metaparam?
816
- end
814
+ res.copy_metaparams(@parameters)
817
815
  end
818
816
  end
819
817
 
data/lib/puppet/type.rb CHANGED
@@ -356,6 +356,16 @@ class Type
356
356
  param
357
357
  end
358
358
 
359
+ # Copies all of a resource's metaparameters (except `alias`) to a generated child resource
360
+ # @param parameters [Hash] of a resource's parameters
361
+ # @return [Void]
362
+ def copy_metaparams(parameters)
363
+ parameters.each do |name, param|
364
+ self[name] = param.value if param.metaparam? && name != :alias
365
+ end
366
+ nil
367
+ end
368
+
359
369
  # Returns the list of parameters that comprise the composite key / "uniqueness key".
360
370
  # All parameters that return true from #isnamevar? or is named `:name` are included in the returned result.
361
371
  # @see uniqueness_key
@@ -6,7 +6,7 @@
6
6
  # Raketasks and such to set the version based on the output of `git describe`
7
7
 
8
8
  module Puppet
9
- PUPPETVERSION = '7.19.0'
9
+ PUPPETVERSION = '7.21.0'
10
10
 
11
11
  ##
12
12
  # version is a public API method intended to always provide a fast and
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPETCONF" "5" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPETCONF" "5" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  \fBThis page is autogenerated; any changes will get overwritten\fR
6
6
  .
7
7
  .SH "Configuration settings"
@@ -647,6 +647,14 @@ Whether each resource should log when it is being evaluated\. This allows you to
647
647
  .
648
648
  .IP "" 0
649
649
  .
650
+ .SS "exclude_unchanged_resources"
651
+ When set to true, resources that have had no changes after catalog application will not have corresponding unchanged resource status updates listed in the report\.
652
+ .
653
+ .IP "\(bu" 4
654
+ \fIDefault\fR: \fBfalse\fR
655
+ .
656
+ .IP "" 0
657
+ .
650
658
  .SS "external_nodes"
651
659
  The external node classifier (ENC) script to use for node data\. Puppet combines this data with the main manifest to produce node catalogs\.
652
660
  .
@@ -929,7 +937,7 @@ The time to wait for data to be read from an HTTP connection\. If nothing is rea
929
937
  The HTTP User\-Agent string to send when making network requests\.
930
938
  .
931
939
  .IP "\(bu" 4
932
- \fIDefault\fR: \fBPuppet/7\.19\.0 Ruby/2\.7\.5\-p203 (x86_64\-linux)\fR
940
+ \fIDefault\fR: \fBPuppet/7\.21\.0 Ruby/2\.7\.5\-p203 (x86_64\-linux)\fR
933
941
  .
934
942
  .IP "" 0
935
943
  .
@@ -957,6 +965,14 @@ Boolean; whether puppet agent should ignore schedules\. This is useful for initi
957
965
  .
958
966
  .IP "" 0
959
967
  .
968
+ .SS "include_legacy_facts"
969
+ Whether to include legacy facts when requesting a catalog\. This option can be set to false provided all puppet manifests, hiera\.yaml and hiera configuration layers no longer access legacy facts, such as \fB$osfamily\fR, and instead access structured facts, such as \fB$facts[\'os\'][\'family\']\fR\.
970
+ .
971
+ .IP "\(bu" 4
972
+ \fIDefault\fR: \fBtrue\fR
973
+ .
974
+ .IP "" 0
975
+ .
960
976
  .SS "key_type"
961
977
  The type of private key\. Valid values are \fBrsa\fR and \fBec\fR\. Default is \fBrsa\fR\.
962
978
  .
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-AGENT" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-AGENT" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-agent\fR \- The puppet agent daemon
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-APPLY" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-APPLY" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-apply\fR \- Apply Puppet manifests locally
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-CATALOG" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-CATALOG" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-catalog\fR \- Compile, save, view, and convert catalogs\.
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-CONFIG" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-CONFIG" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-config\fR \- Interact with Puppet\'s settings\.
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-DESCRIBE" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-DESCRIBE" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-describe\fR \- Display help about resource types
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-DEVICE" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-DEVICE" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-device\fR \- Manage remote network devices
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-DOC" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-DOC" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-doc\fR \- Generate Puppet references
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-EPP" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-EPP" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-epp\fR \- Interact directly with the EPP template parser/renderer\.
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-FACTS" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-FACTS" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-facts\fR \- Retrieve and store facts\.
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-FILEBUCKET" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-FILEBUCKET" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-filebucket\fR \- Store and retrieve files in a filebucket
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-GENERATE" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-GENERATE" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-generate\fR \- Generates Puppet code from Ruby definitions\.
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-HELP" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-HELP" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-help\fR \- Display Puppet help\.
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-LOOKUP" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-LOOKUP" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-lookup\fR \- Interactive Hiera lookup
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-MODULE" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-MODULE" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-module\fR \- Creates, installs and searches for modules on the Puppet Forge\.
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-NODE" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-NODE" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-node\fR \- View and manage node definitions\.
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-PARSER" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-PARSER" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-parser\fR \- Interact directly with the parser\.
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-PLUGIN" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-PLUGIN" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-plugin\fR \- Interact with the Puppet plugin system\.
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-REPORT" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-REPORT" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-report\fR \- Create, display, and submit reports\.
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-RESOURCE" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-RESOURCE" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-resource\fR \- The resource abstraction layer shell
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-SCRIPT" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-SCRIPT" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-script\fR \- Run a puppet manifests as a script without compiling a catalog
@@ -1,7 +1,7 @@
1
1
  .\" generated with Ronn/v0.7.3
2
2
  .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
3
  .
4
- .TH "PUPPET\-SSL" "8" "September 2022" "Puppet, Inc." "Puppet manual"
4
+ .TH "PUPPET\-SSL" "8" "December 2022" "Puppet, Inc." "Puppet manual"
5
5
  .
6
6
  .SH "NAME"
7
7
  \fBpuppet\-ssl\fR \- Manage SSL keys and certificates for puppet SSL clients