puppet 2.7.14 → 2.7.16

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of puppet might be problematic. Click here for more details.

Files changed (111) hide show
  1. data/CHANGELOG +85 -0
  2. data/conf/redhat/puppet.spec +31 -4
  3. data/lib/puppet.rb +1 -1
  4. data/lib/puppet/defaults.rb +2 -3
  5. data/lib/puppet/face/module/install.rb +3 -3
  6. data/lib/puppet/face/module/search.rb +3 -3
  7. data/lib/puppet/indirector/face.rb +1 -1
  8. data/lib/puppet/network/http_pool.rb +17 -8
  9. data/lib/puppet/node/environment.rb +1 -3
  10. data/lib/puppet/parser/ast.rb +1 -1
  11. data/lib/puppet/parser/compiler.rb +2 -10
  12. data/lib/puppet/parser/functions/template.rb +2 -1
  13. data/lib/puppet/parser/lexer.rb +2 -2
  14. data/lib/puppet/parser/scope.rb +3 -2
  15. data/lib/puppet/provider/package/gem.rb +3 -1
  16. data/lib/puppet/provider/package/pkg.rb +18 -2
  17. data/lib/puppet/provider/service/gentoo.rb +5 -0
  18. data/lib/puppet/provider/service/init.rb +12 -14
  19. data/lib/puppet/provider/service/redhat.rb +1 -1
  20. data/lib/puppet/provider/service/upstart.rb +257 -7
  21. data/lib/puppet/provider/ssh_authorized_key/parsed.rb +6 -9
  22. data/lib/puppet/reports/http.rb +1 -1
  23. data/lib/puppet/reports/tagmail.rb +1 -1
  24. data/lib/puppet/type/cron.rb +5 -0
  25. data/lib/puppet/type/filebucket.rb +12 -0
  26. data/lib/puppet/util.rb +15 -9
  27. data/lib/puppet/util/colors.rb +94 -64
  28. data/lib/puppet/util/platform.rb +15 -0
  29. data/man/man5/puppet.conf.5 +73 -27
  30. data/man/man8/filebucket.8 +1 -1
  31. data/man/man8/pi.8 +1 -1
  32. data/man/man8/puppet-agent.8 +17 -17
  33. data/man/man8/puppet-apply.8 +8 -3
  34. data/man/man8/puppet-ca.8 +183 -0
  35. data/man/man8/puppet-catalog.8 +17 -10
  36. data/man/man8/puppet-cert.8 +1 -1
  37. data/man/man8/puppet-certificate.8 +27 -11
  38. data/man/man8/puppet-certificate_request.8 +12 -11
  39. data/man/man8/puppet-certificate_revocation_list.8 +11 -10
  40. data/man/man8/puppet-config.8 +1 -1
  41. data/man/man8/puppet-describe.8 +1 -1
  42. data/man/man8/puppet-device.8 +2 -2
  43. data/man/man8/puppet-doc.8 +15 -3
  44. data/man/man8/puppet-facts.8 +18 -8
  45. data/man/man8/puppet-file.8 +13 -22
  46. data/man/man8/puppet-filebucket.8 +1 -1
  47. data/man/man8/puppet-help.8 +1 -1
  48. data/man/man8/puppet-inspect.8 +10 -2
  49. data/man/man8/puppet-instrumentation_data.8 +145 -0
  50. data/man/man8/puppet-instrumentation_listener.8 +222 -0
  51. data/man/man8/puppet-instrumentation_probe.8 +207 -0
  52. data/man/man8/puppet-key.8 +11 -7
  53. data/man/man8/puppet-kick.8 +35 -3
  54. data/man/man8/puppet-man.8 +1 -1
  55. data/man/man8/puppet-master.8 +1 -1
  56. data/man/man8/puppet-module.8 +451 -0
  57. data/man/man8/puppet-node.8 +64 -22
  58. data/man/man8/puppet-parser.8 +1 -1
  59. data/man/man8/puppet-plugin.8 +1 -1
  60. data/man/man8/puppet-queue.8 +1 -1
  61. data/man/man8/puppet-report.8 +12 -8
  62. data/man/man8/puppet-resource.8 +1 -1
  63. data/man/man8/puppet-resource_type.8 +11 -7
  64. data/man/man8/puppet-secret_agent.8 +1 -1
  65. data/man/man8/puppet-status.8 +11 -7
  66. data/man/man8/puppet.8 +1 -1
  67. data/man/man8/puppetca.8 +1 -1
  68. data/man/man8/puppetd.8 +17 -17
  69. data/man/man8/puppetdoc.8 +15 -3
  70. data/man/man8/puppetmasterd.8 +1 -1
  71. data/man/man8/puppetqd.8 +1 -1
  72. data/man/man8/puppetrun.8 +35 -3
  73. data/man/man8/ralsh.8 +1 -1
  74. data/spec/fixtures/unit/provider/package/gem/line-with-1.8.5-warning +14 -0
  75. data/spec/fixtures/unit/provider/package/pkg/{dummy → dummy_solaris10} +0 -0
  76. data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11 +1 -0
  77. data/spec/fixtures/unit/provider/package/pkg/solaris11 +12 -0
  78. data/spec/fixtures/unit/provider/package/pkg/unknown_status +12 -0
  79. data/spec/fixtures/unit/provider/service/gentoo/rc_update_show +30 -0
  80. data/spec/integration/defaults_spec.rb +2 -7
  81. data/spec/integration/network/server/mongrel_spec.rb +16 -10
  82. data/spec/integration/network/server/webrick_spec.rb +16 -9
  83. data/spec/integration/provider/service/init_spec.rb +20 -4
  84. data/spec/integration/provider/ssh_authorized_key_spec.rb +119 -107
  85. data/spec/unit/face/module/install_spec.rb +16 -4
  86. data/spec/unit/network/http/api/v1_spec.rb +8 -0
  87. data/spec/unit/network/http_pool_spec.rb +80 -74
  88. data/spec/unit/node/environment_spec.rb +9 -4
  89. data/spec/unit/parser/ast/leaf_spec.rb +2 -2
  90. data/spec/unit/parser/ast_spec.rb +3 -3
  91. data/spec/unit/parser/compiler_spec.rb +0 -17
  92. data/spec/unit/parser/lexer_spec.rb +45 -2
  93. data/spec/unit/parser/scope_spec.rb +181 -14
  94. data/spec/unit/provider/package/gem_spec.rb +17 -1
  95. data/spec/unit/provider/package/pkg_spec.rb +70 -22
  96. data/spec/unit/provider/service/gentoo_spec.rb +237 -0
  97. data/spec/unit/provider/service/init_spec.rb +2 -2
  98. data/spec/unit/provider/service/redhat_spec.rb +2 -2
  99. data/spec/unit/provider/service/upstart_spec.rb +414 -5
  100. data/spec/unit/provider/ssh_authorized_key/parsed_spec.rb +24 -0
  101. data/spec/unit/reports/tagmail_spec.rb +50 -0
  102. data/spec/unit/type/cron_spec.rb +21 -1
  103. data/spec/unit/type/filebucket_spec.rb +39 -9
  104. data/spec/unit/util/colors_spec.rb +69 -0
  105. data/spec/unit/util/log/destinations_spec.rb +17 -9
  106. data/spec/unit/util/log_spec.rb +2 -1
  107. data/spec/unit/util_spec.rb +11 -0
  108. data/tasks/rake/gem.rake +1 -1
  109. data/tasks/rake/manpages.rake +11 -3
  110. data/test/network/handler/fileserver.rb +7 -1
  111. metadata +22 -10
data/lib/puppet/util.rb CHANGED
@@ -9,6 +9,7 @@ require 'sync'
9
9
  require 'monitor'
10
10
  require 'tempfile'
11
11
  require 'pathname'
12
+ require 'puppet/util/platform'
12
13
 
13
14
  module Puppet
14
15
  # A command failed to execute.
@@ -170,16 +171,21 @@ module Util
170
171
  return bin if FileTest.file? bin and FileTest.executable? bin
171
172
  else
172
173
  ENV['PATH'].split(File::PATH_SEPARATOR).each do |dir|
173
- dest = File.expand_path(File.join(dir, bin))
174
- if Puppet.features.microsoft_windows? && File.extname(dest).empty?
175
- exts = ENV['PATHEXT']
176
- exts = exts ? exts.split(File::PATH_SEPARATOR) : %w[.COM .EXE .BAT .CMD]
177
- exts.each do |ext|
178
- destext = File.expand_path(dest + ext)
179
- return destext if FileTest.file? destext and FileTest.executable? destext
174
+ begin
175
+ dest = File.expand_path(File.join(dir, bin))
176
+ if Puppet.features.microsoft_windows? && File.extname(dest).empty?
177
+ exts = ENV['PATHEXT']
178
+ exts = exts ? exts.split(File::PATH_SEPARATOR) : %w[.COM .EXE .BAT .CMD]
179
+ exts.each do |ext|
180
+ destext = File.expand_path(dest + ext)
181
+ return destext if FileTest.file? destext and FileTest.executable? destext
182
+ end
180
183
  end
184
+ return dest if FileTest.file? dest and FileTest.executable? dest
185
+ rescue ArgumentError => e
186
+ raise unless e.to_s =~ /doesn't exist|can't find user/
187
+ # ...otherwise, we just skip the non-existent entry, and do nothing.
181
188
  end
182
- return dest if FileTest.file? dest and FileTest.executable? dest
183
189
  end
184
190
  end
185
191
  nil
@@ -206,7 +212,7 @@ module Util
206
212
  # would use Puppet.features.microsoft_windows?, but this method needs to
207
213
  # be called during the initialization of features so it can't depend on
208
214
  # that.
209
- platform ||= File::ALT_SEPARATOR ? :windows : :posix
215
+ platform ||= Puppet::Util::Platform.windows? ? :windows : :posix
210
216
 
211
217
  !! (path =~ regexes[platform])
212
218
  end
@@ -1,83 +1,113 @@
1
+ require 'puppet/util/platform'
2
+
1
3
  module Puppet::Util::Colors
2
- BLACK = {:console => "\e[0;30m", :html => "color: #FFA0A0" }
3
- RED = {:console => "\e[0;31m", :html => "color: #FFA0A0" }
4
- GREEN = {:console => "\e[0;32m", :html => "color: #00CD00" }
5
- YELLOW = {:console => "\e[0;33m", :html => "color: #FFFF60" }
6
- BLUE = {:console => "\e[0;34m", :html => "color: #80A0FF" }
7
- PURPLE = {:console => "\e[0;35m", :html => "color: #FFA500" }
8
- CYAN = {:console => "\e[0;36m", :html => "color: #40FFFF" }
9
- WHITE = {:console => "\e[0;37m", :html => "color: #FFFFFF" }
10
- HBLACK = {:console => "\e[1;30m", :html => "color: #FFA0A0" }
11
- HRED = {:console => "\e[1;31m", :html => "color: #FFA0A0" }
12
- HGREEN = {:console => "\e[1;32m", :html => "color: #00CD00" }
13
- HYELLOW = {:console => "\e[1;33m", :html => "color: #FFFF60" }
14
- HBLUE = {:console => "\e[1;34m", :html => "color: #80A0FF" }
15
- HPURPLE = {:console => "\e[1;35m", :html => "color: #FFA500" }
16
- HCYAN = {:console => "\e[1;36m", :html => "color: #40FFFF" }
17
- HWHITE = {:console => "\e[1;37m", :html => "color: #FFFFFF" }
18
- BG_RED = {:console => "\e[0;41m", :html => "background: #FFA0A0"}
19
- BG_GREEN = {:console => "\e[0;42m", :html => "background: #00CD00"}
20
- BG_YELLOW = {:console => "\e[0;43m", :html => "background: #FFFF60"}
21
- BG_BLUE = {:console => "\e[0;44m", :html => "background: #80A0FF"}
22
- BG_PURPLE = {:console => "\e[0;45m", :html => "background: #FFA500"}
23
- BG_CYAN = {:console => "\e[0;46m", :html => "background: #40FFFF"}
24
- BG_WHITE = {:console => "\e[0;47m", :html => "background: #FFFFFF"}
25
- BG_HRED = {:console => "\e[1;41m", :html => "background: #FFA0A0"}
26
- BG_HGREEN = {:console => "\e[1;42m", :html => "background: #00CD00"}
27
- BG_HYELLOW = {:console => "\e[1;43m", :html => "background: #FFFF60"}
28
- BG_HBLUE = {:console => "\e[1;44m", :html => "background: #80A0FF"}
29
- BG_HPURPLE = {:console => "\e[1;45m", :html => "background: #FFA500"}
30
- BG_HCYAN = {:console => "\e[1;46m", :html => "background: #40FFFF"}
31
- BG_HWHITE = {:console => "\e[1;47m", :html => "background: #FFFFFF"}
32
- RESET = {:console => "\e[0m", :html => "" }
4
+ BLACK = {:console => "\e[0;30m", :html => "color: #FFA0A0" }
5
+ RED = {:console => "\e[0;31m", :html => "color: #FFA0A0" }
6
+ GREEN = {:console => "\e[0;32m", :html => "color: #00CD00" }
7
+ YELLOW = {:console => "\e[0;33m", :html => "color: #FFFF60" }
8
+ BLUE = {:console => "\e[0;34m", :html => "color: #80A0FF" }
9
+ MAGENTA = {:console => "\e[0;35m", :html => "color: #FFA500" }
10
+ CYAN = {:console => "\e[0;36m", :html => "color: #40FFFF" }
11
+ WHITE = {:console => "\e[0;37m", :html => "color: #FFFFFF" }
12
+ HBLACK = {:console => "\e[1;30m", :html => "color: #FFA0A0" }
13
+ HRED = {:console => "\e[1;31m", :html => "color: #FFA0A0" }
14
+ HGREEN = {:console => "\e[1;32m", :html => "color: #00CD00" }
15
+ HYELLOW = {:console => "\e[1;33m", :html => "color: #FFFF60" }
16
+ HBLUE = {:console => "\e[1;34m", :html => "color: #80A0FF" }
17
+ HMAGENTA = {:console => "\e[1;35m", :html => "color: #FFA500" }
18
+ HCYAN = {:console => "\e[1;36m", :html => "color: #40FFFF" }
19
+ HWHITE = {:console => "\e[1;37m", :html => "color: #FFFFFF" }
20
+ BG_RED = {:console => "\e[0;41m", :html => "background: #FFA0A0"}
21
+ BG_GREEN = {:console => "\e[0;42m", :html => "background: #00CD00"}
22
+ BG_YELLOW = {:console => "\e[0;43m", :html => "background: #FFFF60"}
23
+ BG_BLUE = {:console => "\e[0;44m", :html => "background: #80A0FF"}
24
+ BG_MAGENTA = {:console => "\e[0;45m", :html => "background: #FFA500"}
25
+ BG_CYAN = {:console => "\e[0;46m", :html => "background: #40FFFF"}
26
+ BG_WHITE = {:console => "\e[0;47m", :html => "background: #FFFFFF"}
27
+ BG_HRED = {:console => "\e[1;41m", :html => "background: #FFA0A0"}
28
+ BG_HGREEN = {:console => "\e[1;42m", :html => "background: #00CD00"}
29
+ BG_HYELLOW = {:console => "\e[1;43m", :html => "background: #FFFF60"}
30
+ BG_HBLUE = {:console => "\e[1;44m", :html => "background: #80A0FF"}
31
+ BG_HMAGENTA = {:console => "\e[1;45m", :html => "background: #FFA500"}
32
+ BG_HCYAN = {:console => "\e[1;46m", :html => "background: #40FFFF"}
33
+ BG_HWHITE = {:console => "\e[1;47m", :html => "background: #FFFFFF"}
34
+ RESET = {:console => "\e[0m", :html => "" }
33
35
 
34
36
  Colormap = {
35
37
  :debug => WHITE,
36
38
  :info => GREEN,
37
39
  :notice => CYAN,
38
40
  :warning => YELLOW,
39
- :err => HPURPLE,
41
+ :err => HMAGENTA,
40
42
  :alert => RED,
41
43
  :emerg => HRED,
42
44
  :crit => HRED,
43
45
 
44
- :black => BLACK,
45
- :red => RED,
46
- :green => GREEN,
47
- :yellow => YELLOW,
48
- :blue => BLUE,
49
- :purple => PURPLE,
50
- :cyan => CYAN,
51
- :white => WHITE,
52
- :hblack => HBLACK,
53
- :hred => HRED,
54
- :hgreen => HGREEN,
55
- :hyellow => HYELLOW,
56
- :hblue => HBLUE,
57
- :hpurple => HPURPLE,
58
- :hcyan => HCYAN,
59
- :hwhite => HWHITE,
60
- :bg_red => BG_RED,
61
- :bg_green => BG_GREEN,
62
- :bg_yellow => BG_YELLOW,
63
- :bg_blue => BG_BLUE,
64
- :bg_purple => BG_PURPLE,
65
- :bg_cyan => BG_CYAN,
66
- :bg_white => BG_WHITE,
67
- :bg_hred => BG_HRED,
68
- :bg_hgreen => BG_HGREEN,
69
- :bg_hyellow => BG_HYELLOW,
70
- :bg_hblue => BG_HBLUE,
71
- :bg_hpurple => BG_HPURPLE,
72
- :bg_hcyan => BG_HCYAN,
73
- :bg_hwhite => BG_HWHITE,
74
- :reset => { :console => "\e[m", :html => "" }
46
+ :black => BLACK,
47
+ :red => RED,
48
+ :green => GREEN,
49
+ :yellow => YELLOW,
50
+ :blue => BLUE,
51
+ :magenta => MAGENTA,
52
+ :cyan => CYAN,
53
+ :white => WHITE,
54
+ :hblack => HBLACK,
55
+ :hred => HRED,
56
+ :hgreen => HGREEN,
57
+ :hyellow => HYELLOW,
58
+ :hblue => HBLUE,
59
+ :hmagenta => HMAGENTA,
60
+ :hcyan => HCYAN,
61
+ :hwhite => HWHITE,
62
+ :bg_red => BG_RED,
63
+ :bg_green => BG_GREEN,
64
+ :bg_yellow => BG_YELLOW,
65
+ :bg_blue => BG_BLUE,
66
+ :bg_magenta => BG_MAGENTA,
67
+ :bg_cyan => BG_CYAN,
68
+ :bg_white => BG_WHITE,
69
+ :bg_hred => BG_HRED,
70
+ :bg_hgreen => BG_HGREEN,
71
+ :bg_hyellow => BG_HYELLOW,
72
+ :bg_hblue => BG_HBLUE,
73
+ :bg_hmagenta => BG_HMAGENTA,
74
+ :bg_hcyan => BG_HCYAN,
75
+ :bg_hwhite => BG_HWHITE,
76
+ :reset => { :console => "\e[m", :html => "" }
75
77
  }
76
78
 
79
+ # We define console_has_color? at load time since it's checking the
80
+ # underlying platform which will not change, and we don't want to perform
81
+ # the check every time we use logging
82
+ if Puppet::Util::Platform.windows?
83
+ # We're on windows, need win32console for color to work
84
+ begin
85
+ require 'rubygems'
86
+ require 'win32console'
87
+ rescue LoadError
88
+ def console_has_color?
89
+ false
90
+ end
91
+ else
92
+ def console_has_color?
93
+ true
94
+ end
95
+ end
96
+ else
97
+ # On a posix system we can just enable it
98
+ def console_has_color?
99
+ true
100
+ end
101
+ end
102
+
77
103
  def colorize(color, str)
78
104
  case Puppet[:color]
79
105
  when true, :ansi, "ansi", "yes"
80
- console_color(color, str)
106
+ if console_has_color?
107
+ console_color(color, str)
108
+ else
109
+ str
110
+ end
81
111
  when :html, "html"
82
112
  html_color(color, str)
83
113
  else
@@ -0,0 +1,15 @@
1
+ module Puppet
2
+ module Util
3
+ module Platform
4
+ def windows?
5
+ # Ruby only sets File::ALT_SEPARATOR on Windows and the Ruby standard
6
+ # library uses that to test what platform it's on. In some places we
7
+ # would use Puppet.features.microsoft_windows?, but this method can be
8
+ # used to determine the behavior of the underlying system without
9
+ # requiring features to be initialized and without side effect.
10
+ !!File::ALT_SEPARATOR
11
+ end
12
+ module_function :windows?
13
+ end
14
+ end
15
+ end
@@ -1,8 +1,8 @@
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" "June 2011" "Puppet Labs, LLC" "Puppet manual"
5
- \fBThis page is autogenerated; any changes will get overwritten\fR \fI(last generated on Wed Jun 08 17:09:41 \-0700 2011)\fR
4
+ .TH "PUPPETCONF" "5" "June 2012" "Puppet Labs, LLC" "Puppet manual"
5
+ \fBThis page is autogenerated; any changes will get overwritten\fR \fI(last generated on Wed Jun 06 13:43:46 \-0700 2012)\fR
6
6
  .
7
7
  .SH "Configuration Settings"
8
8
  .
@@ -73,7 +73,7 @@ The configuration file that defines the rights to the different namespaces and m
73
73
  Whether log files should always flush to disk\.
74
74
  .
75
75
  .IP "\(bu" 4
76
- \fIDefault\fR: false
76
+ \fIDefault\fR: true
77
77
  .
78
78
  .IP "" 0
79
79
  .
@@ -105,7 +105,7 @@ Wether the master should function as a certificate authority\.
105
105
  .IP "" 0
106
106
  .
107
107
  .SS "ca_days"
108
- How long a certificate should be valid\. This parameter is deprecated, use ca_ttl instead
108
+ How long a certificate should be valid, in days\. This setting is deprecated; use \fBca_ttl\fR instead
109
109
  .
110
110
  .SS "ca_md"
111
111
  The type of hash used in certificates\.
@@ -140,7 +140,7 @@ The server to use for certificate authority requests\. It\'s a separate server b
140
140
  .IP "" 0
141
141
  .
142
142
  .SS "ca_ttl"
143
- The default TTL for new certificates; valid values must be an integer, optionally followed by one of the units \'y\' (years of 365 days), \'d\' (days), \'h\' (hours), or \'s\' (seconds)\. The unit defaults to seconds\. If this parameter is set, ca_days is ignored\. Examples are \'3600\' (one hour) and \'1825d\', which is the same as \'5y\' (5 years)
143
+ The default TTL for new certificates; valid values must be an integer, optionally followed by one of the units \'y\' (years of 365 days), \'d\' (days), \'h\' (hours), or \'s\' (seconds)\. The unit defaults to seconds\. If this setting is set, ca_days is ignored\. Examples are \'3600\' (one hour) and \'1825d\', which is the same as \'5y\' (5 years)
144
144
  .
145
145
  .IP "\(bu" 4
146
146
  \fIDefault\fR: 5y
@@ -231,7 +231,7 @@ The certificate directory\.
231
231
  .IP "" 0
232
232
  .
233
233
  .SS "certdnsnames"
234
- The DNS names on the Server certificate as a colon\-separated list\. If it\'s anything other than an empty string, it will be used as an alias in the created certificate\. By default, only the server gets an alias set up, and only for \'puppet\'\.
234
+ The \fBcertdnsnames\fR setting is no longer functional, after CVE\-2011\-3872\. We ignore the value completely\. For your own certificate request you can set \fBdns_alt_names\fR in the configuration and it will apply locally\. There is no configuration option to set DNS alt names, or any other \fBsubjectAltName\fR value, for another nodes certificate\. Alternately you can use the \fB\-\-dns_alt_names\fR command line option to set the labels added while generating your own CSR\.
235
235
  .
236
236
  .SS "certificate_revocation"
237
237
  Whether certificate revocation should be supported by downloading a Certificate Revocation List (CRL) to all clients\. If enabled, CA chaining will almost definitely not work\.
@@ -245,7 +245,7 @@ Whether certificate revocation should be supported by downloading a Certificate
245
245
  The name to use when handling certificates\. Defaults to the fully qualified domain name\.
246
246
  .
247
247
  .IP "\(bu" 4
248
- \fIDefault\fR: magpie\.puppetlabs\.lan
248
+ \fIDefault\fR: wyclef\.puppetlabs\.lan
249
249
  .
250
250
  .IP "" 0
251
251
  .
@@ -285,7 +285,7 @@ The directory in which client\-side YAML data is stored\.
285
285
  Code to parse directly\. This is essentially only used by \fBpuppet\fR, and should only be set if you\'re writing your own Puppet executable
286
286
  .
287
287
  .SS "color"
288
- Whether to use colors when logging to the console\. Valid values are \fBansi\fR (equivalent to \fBtrue\fR), \fBhtml\fR (mostly used during testing with TextMate), and \fBfalse\fR, which produces no color\.
288
+ Whether to use colors when logging to the console\. Valid values are \fBansi\fR (equivalent to \fBtrue\fR), \fBhtml\fR, and \fBfalse\fR, which produces no color\.
289
289
  .
290
290
  .IP "\(bu" 4
291
291
  \fIDefault\fR: ansi
@@ -293,7 +293,7 @@ Whether to use colors when logging to the console\. Valid values are \fBansi\fR
293
293
  .IP "" 0
294
294
  .
295
295
  .SS "confdir"
296
- The main Puppet configuration directory\. The default for this parameter is calculated based on the user\. If the process is running as root or the user that Puppet is supposed to run as, it defaults to a system directory, but if it\'s running as any other user, it defaults to being in the user\'s home directory\.
296
+ The main Puppet configuration directory\. The default for this setting is calculated based on the user\. If the process is running as root or the user that Puppet is supposed to run as, it defaults to a system directory, but if it\'s running as any other user, it defaults to being in the user\'s home directory\.
297
297
  .
298
298
  .IP "\(bu" 4
299
299
  \fIDefault\fR: /etc/puppet
@@ -312,7 +312,7 @@ The configuration file for doc\.
312
312
  How to determine the configuration version\. By default, it will be the time that the configuration is parsed, but you can provide a shell script to override how the version is determined\. The output of this script will be added to every log message in the reports, allowing you to correlate changes on your hosts to the source version on the server\.
313
313
  .
314
314
  .SS "configprint"
315
- Print the value of a specific configuration parameter\. If a parameter is provided for this, then the value is printed and puppet exits\. Comma\-separate multiple values\. For a list of all values, specify \'all\'\. This feature is only available in Puppet versions higher than 0\.18\.4\.
315
+ Print the value of a specific configuration setting\. If the name of a setting is provided for this, then the value is printed and puppet exits\. Comma\-separate multiple values\. For a list of all values, specify \'all\'\.
316
316
  .
317
317
  .SS "configtimeout"
318
318
  How long the client should wait for the configuration to be retrieved before considering it a failure\. This can help reduce flapping if too many clients contact the server at one time\.
@@ -339,7 +339,7 @@ Where the CA stores certificate requests
339
339
  .IP "" 0
340
340
  .
341
341
  .SS "daemonize"
342
- Send the process into the background\. This is the default\.
342
+ Whether to send the process into the background\. This defaults to true on POSIX systems, and to false on Windows (where Puppet currently cannot daemonize)\.
343
343
  .
344
344
  .IP "\(bu" 4
345
345
  \fIDefault\fR: true
@@ -428,7 +428,7 @@ The root directory of devices\' $vardir
428
428
  .IP "" 0
429
429
  .
430
430
  .SS "diff"
431
- Which diff command to use when printing differences between files\.
431
+ Which diff command to use when printing differences between files\. This setting has no default value on Windows, as standard \fBdiff\fR is not available, but Puppet can use many third\-party diff tools\.
432
432
  .
433
433
  .IP "\(bu" 4
434
434
  \fIDefault\fR: diff
@@ -436,13 +436,16 @@ Which diff command to use when printing differences between files\.
436
436
  .IP "" 0
437
437
  .
438
438
  .SS "diff_args"
439
- Which arguments to pass to the diff command when printing differences between files\.
439
+ Which arguments to pass to the diff command when printing differences between files\. The command to use can be chosen with the \fBdiff\fR setting\.
440
440
  .
441
441
  .IP "\(bu" 4
442
442
  \fIDefault\fR: \-u
443
443
  .
444
444
  .IP "" 0
445
445
  .
446
+ .SS "dns_alt_names"
447
+ The comma\-separated list of alternative DNS names to use for the local host\. When the node generates a CSR for itself, these are added to the request as the desired \fBsubjectAltName\fR in the certificate: additional DNS labels that the certificate is also valid answering as\. This is generally required if you use a non\-hostname \fBcertname\fR, or if you want to use \fBpuppet kick\fR or \fBpuppet resource \-H\fR and the primary certname does not match the DNS name you use to communicate with the host\. This is unnecessary for agents, unless you intend to use them as a server for \fBpuppet kick\fR or remote \fBpuppet resource\fR management\. It is rarely necessary for servers; it is usually helpful only if you need to have a pool of multiple load balanced masters, or for the same master to respond on two physically separate networks under different names\.
448
+ .
446
449
  .SS "document_all"
447
450
  Document all resources
448
451
  .
@@ -484,7 +487,7 @@ Whether each resource should log when it is being evaluated\. This allows you to
484
487
  .IP "" 0
485
488
  .
486
489
  .SS "external_nodes"
487
- An external command that can produce node information\. The output must be a YAML dump of a hash, and that hash must have one or both of \fBclasses\fR and \fBparameters\fR, where \fBclasses\fR is an array and \fBparameters\fR is a hash\. For unknown nodes, the commands should exit with a non\-zero exit code\. This command makes it straightforward to store your node mapping information in other data sources like databases\.
490
+ An external command that can produce node information\. The command\'s output must be a YAML dump of a hash, and that hash must have a \fBclasses\fR key and/or a \fBparameters\fR key, where \fBclasses\fR is an array or hash and \fBparameters\fR is a hash\. For unknown nodes, the command should exit with a non\-zero exit code\. This command makes it straightforward to store your node mapping information in other data sources like databases\.
488
491
  .
489
492
  .IP "\(bu" 4
490
493
  \fIDefault\fR: none
@@ -500,7 +503,7 @@ Where Puppet should store facts that it pulls down from the central server\.
500
503
  .IP "" 0
501
504
  .
502
505
  .SS "factpath"
503
- Where Puppet should look for facts\. Multiple directories should be colon\-separated, like normal PATH variables\.
506
+ Where Puppet should look for facts\. Multiple directories should be separated by the system path separator character\. (The POSIX path separator is \':\', and the Windows path separator is \';\'\.)
504
507
  .
505
508
  .IP "\(bu" 4
506
509
  \fIDefault\fR: $vardir/lib/facter:$vardir/facts
@@ -684,7 +687,7 @@ Ignore cache and always recompile the configuration\. This is useful for testing
684
687
  .IP "" 0
685
688
  .
686
689
  .SS "ignoreimport"
687
- A parameter that can be used in commit hooks, since it enables you to parse\-check a single file rather than requiring that all files exist\.
690
+ If true, allows the parser to continue without requiring all files referenced with \fBimport\fR statements to exist\. This setting was primarily designed for use with commit hooks for parse\-checking\.
688
691
  .
689
692
  .IP "\(bu" 4
690
693
  \fIDefault\fR: false
@@ -727,7 +730,7 @@ Should usually be the same as the facts terminus
727
730
  The bit length of keys\.
728
731
  .
729
732
  .IP "\(bu" 4
730
- \fIDefault\fR: 1024
733
+ \fIDefault\fR: 4096
731
734
  .
732
735
  .IP "" 0
733
736
  .
@@ -948,8 +951,24 @@ Whether to create the necessary user and group that puppet agent will run as\.
948
951
  .
949
952
  .IP "" 0
950
953
  .
954
+ .SS "module_repository"
955
+ The module repository
956
+ .
957
+ .IP "\(bu" 4
958
+ \fIDefault\fR: http://forge\.puppetlabs\.com
959
+ .
960
+ .IP "" 0
961
+ .
962
+ .SS "module_working_dir"
963
+ The directory into which module tool data is stored
964
+ .
965
+ .IP "\(bu" 4
966
+ \fIDefault\fR: $vardir/puppet\-module
967
+ .
968
+ .IP "" 0
969
+ .
951
970
  .SS "modulepath"
952
- The search path for modules as a colon\-separated list of directories\.
971
+ The search path for modules, as a list of directories separated by the system path separator character\. (The POSIX path separator is \':\', and the Windows path separator is \';\'\.)
953
972
  .
954
973
  .IP "\(bu" 4
955
974
  \fIDefault\fR: $confdir/modules:/usr/share/puppet/modules
@@ -972,6 +991,17 @@ How the puppet master determines the client\'s identity and sets the \'hostname\
972
991
  .
973
992
  .IP "" 0
974
993
  .
994
+ .SS "node_name_fact"
995
+ The fact name used to determine the node name used for all requests the agent makes to the master\. WARNING: This setting is mutually exclusive with node_name_value\. Changing this setting also requires changes to the default auth\.conf configuration on the Puppet Master\. Please see http://links\.puppetlabs\.com/node_name_fact for more information\.
996
+ .
997
+ .SS "node_name_value"
998
+ The explicit value used for the node name for all requests the agent makes to the master\. WARNING: This setting is mutually exclusive with node_name_fact\. Changing this setting also requires changes to the default auth\.conf configuration on the Puppet Master\. Please see http://links\.puppetlabs\.com/node_name_value for more information\.
999
+ .
1000
+ .IP "\(bu" 4
1001
+ \fIDefault\fR: $certname
1002
+ .
1003
+ .IP "" 0
1004
+ .
975
1005
  .SS "node_terminus"
976
1006
  Where to find information about nodes\.
977
1007
  .
@@ -1182,7 +1212,7 @@ The directory in which to store reports received from the client\. Each client g
1182
1212
  The \'from\' email address for the reports\.
1183
1213
  .
1184
1214
  .IP "\(bu" 4
1185
- \fIDefault\fR: report@magpie\.puppetlabs\.lan
1215
+ \fIDefault\fR: report@wyclef\.puppetlabs\.lan
1186
1216
  .
1187
1217
  .IP "" 0
1188
1218
  .
@@ -1206,7 +1236,7 @@ The list of reports to generate\. All reports are looked for in \fBpuppet/report
1206
1236
  The URL used by the http reports processor to send reports
1207
1237
  .
1208
1238
  .IP "\(bu" 4
1209
- \fIDefault\fR: http://localhost:3000/reports
1239
+ \fIDefault\fR: http://localhost:3000/reports/upload
1210
1240
  .
1211
1241
  .IP "" 0
1212
1242
  .
@@ -1214,7 +1244,7 @@ The URL used by the http reports processor to send reports
1214
1244
  The bit length of the certificates\.
1215
1245
  .
1216
1246
  .IP "\(bu" 4
1217
- \fIDefault\fR: 2048
1247
+ \fIDefault\fR: 4096
1218
1248
  .
1219
1249
  .IP "" 0
1220
1250
  .
@@ -1226,6 +1256,14 @@ Where host certificate requests are stored\.
1226
1256
  .
1227
1257
  .IP "" 0
1228
1258
  .
1259
+ .SS "resourcefile"
1260
+ The file in which puppet agent stores a list of the resources associated with the retrieved configuration\.
1261
+ .
1262
+ .IP "\(bu" 4
1263
+ \fIDefault\fR: $statedir/resources\.txt
1264
+ .
1265
+ .IP "" 0
1266
+ .
1229
1267
  .SS "rest_authconfig"
1230
1268
  The configuration file that defines the rights to the different rest indirections\. This can be used as a fine\-grained authorization system for \fBpuppet master\fR\.
1231
1269
  .
@@ -1275,7 +1313,7 @@ Where Puppet PID files are kept\.
1275
1313
  .IP "" 0
1276
1314
  .
1277
1315
  .SS "runinterval"
1278
- How often puppet agent applies the client configuration; in seconds\.
1316
+ How often puppet agent applies the client configuration; in seconds\. Note that a runinterval of 0 means "run continuously" rather than "never run\." If you want puppet agent to never run, you should start it with the \fB\-\-no\-client\fR option\.
1279
1317
  .
1280
1318
  .IP "\(bu" 4
1281
1319
  \fIDefault\fR: 1800
@@ -1323,7 +1361,7 @@ The type of server to use\. Currently supported options are webrick and mongrel\
1323
1361
  .IP "" 0
1324
1362
  .
1325
1363
  .SS "show_diff"
1326
- Whether to print a contextual diff when files are being replaced\. The diff is printed on stdout, so this option is meaningless unless you are running Puppet interactively\. This feature currently requires the \fBdiff/lcs\fR Ruby library\.
1364
+ Whether to log and report a contextual diff when files are being replaced\. This causes partial file contents to pass through Puppet\'s normal logging and reporting system, so this setting should be used with caution if you are sending Puppet\'s reports to an insecure destination\. This feature currently requires the \fBdiff/lcs\fR Ruby library\.
1327
1365
  .
1328
1366
  .IP "\(bu" 4
1329
1367
  \fIDefault\fR: false
@@ -1403,13 +1441,21 @@ Where puppet agent and puppet master store state associated with the running con
1403
1441
  .IP "" 0
1404
1442
  .
1405
1443
  .SS "storeconfigs"
1406
- Whether to store each client\'s configuration\. This requires ActiveRecord from Ruby on Rails\.
1444
+ Whether to store each client\'s configuration, including catalogs, facts, and related data\. This also enables the import and export of resources in the Puppet language \- a mechanism for exchange resources between nodes\. By default this uses ActiveRecord and an SQL database to store and query the data; this, in turn, will depend on Rails being available\. You can adjust the backend using the storeconfigs_backend setting\.
1407
1445
  .
1408
1446
  .IP "\(bu" 4
1409
1447
  \fIDefault\fR: false
1410
1448
  .
1411
1449
  .IP "" 0
1412
1450
  .
1451
+ .SS "storeconfigs_backend"
1452
+ Configure the backend terminus used for StoreConfigs\. By default, this uses the ActiveRecord store, which directly talks to the database from within the Puppet Master process\.
1453
+ .
1454
+ .IP "\(bu" 4
1455
+ \fIDefault\fR: active_record
1456
+ .
1457
+ .IP "" 0
1458
+ .
1413
1459
  .SS "strict_hostname_checking"
1414
1460
  Whether to only search for the complete hostname as it is in the certificate when searching for node information in the catalogs\.
1415
1461
  .
@@ -1446,7 +1492,7 @@ The mapping between reporting tags and email addresses\.
1446
1492
  Tags to use to find resources\. If this is set, then only resources tagged with the specified tags will be applied\. Values must be comma\-separated\.
1447
1493
  .
1448
1494
  .SS "templatedir"
1449
- Where Puppet looks for template files\. Can be a list of colon\-seperated directories\.
1495
+ Where Puppet looks for template files\. Can be a list of colon\-separated directories\.
1450
1496
  .
1451
1497
  .IP "\(bu" 4
1452
1498
  \fIDefault\fR: $vardir/templates
@@ -1494,7 +1540,7 @@ The user puppet master should run as\.
1494
1540
  .IP "" 0
1495
1541
  .
1496
1542
  .SS "vardir"
1497
- Where Puppet stores dynamic and growing data\. The default for this parameter is calculated specially, like \fBconfdir\fR_\.
1543
+ Where Puppet stores dynamic and growing data\. The default for this setting is calculated specially, like \fBconfdir\fR_\.
1498
1544
  .
1499
1545
  .IP "\(bu" 4
1500
1546
  \fIDefault\fR: /var/lib/puppet
@@ -1518,4 +1564,4 @@ Boolean; whether to use the zlib library
1518
1564
  .IP "" 0
1519
1565
  .
1520
1566
  .P
1521
- \fIThis page autogenerated on Wed Jun 08 17:09:41 \-0700 2011\fR
1567
+ \fIThis page autogenerated on Wed Jun 06 13:43:46 \-0700 2012\fR