summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG12
-rw-r--r--conf/redhat/client.init19
-rw-r--r--conf/redhat/puppet.conf2
-rw-r--r--conf/redhat/rundir-perms.patch26
-rw-r--r--conf/redhat/server.init16
-rw-r--r--examples/modules/sample-module/README.txt2
-rw-r--r--examples/modules/sample-module/lib/puppet/parser/functions/hostname_to_dn.rb2
-rw-r--r--ext/extlookup.rb2
-rw-r--r--ext/regexp_nodes/regexp_nodes.rb2
-rwxr-xr-xinstall.rb2
-rw-r--r--lib/puppet/application/agent.rb21
-rw-r--r--lib/puppet/defaults.rb9
-rw-r--r--lib/puppet/module.rb2
-rw-r--r--lib/puppet/parser/functions/inline_template.rb2
-rw-r--r--lib/puppet/provider/nameservice/directoryservice.rb2
-rw-r--r--lib/puppet/provider/package/pkgdmg.rb2
-rw-r--r--lib/puppet/reference/providers.rb2
-rw-r--r--lib/puppet/resource.rb17
-rwxr-xr-xlib/puppet/util/command_line/filebucket2
-rwxr-xr-xlib/puppet/util/command_line/puppet2
-rwxr-xr-xlib/puppet/util/command_line/puppetd2
-rwxr-xr-xlib/puppet/util/command_line/puppetmasterd2
-rwxr-xr-xlib/puppet/util/command_line/puppetqd2
-rwxr-xr-xlib/puppet/util/command_line/ralsh2
-rw-r--r--lib/puppet/util/run_mode.rb18
-rw-r--r--man/man5/puppet.conf.5225
-rw-r--r--man/man8/filebucket.810
-rw-r--r--man/man8/pi.88
-rw-r--r--man/man8/puppet.875
-rw-r--r--man/man8/puppetca.875
-rw-r--r--man/man8/puppetd.8192
-rw-r--r--man/man8/puppetdoc.820
-rw-r--r--man/man8/puppetmasterd.86
-rw-r--r--man/man8/puppetqd.86
-rw-r--r--man/man8/puppetrun.841
-rw-r--r--man/man8/ralsh.831
-rwxr-xr-xspec/unit/application/agent_spec.rb40
-rwxr-xr-xspec/unit/resource_spec.rb7
-rw-r--r--spec/unit/util/run_mode_spec.rb51
39 files changed, 542 insertions, 417 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 527a949e2..fd315f35f 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,5 +1,17 @@
+2.6.0rc3
+========
+9df87e9 [#4219] Install misses command_line dir, puppet $app --help fails
+0422852 conf/redhat: Consistently pass pidfile option to daemon, killproc, and status
+63bf037 conf/redhat: Update conf/init files for single binary
+f72741f conf/redhat: Rebase rundir-perms patch
+793d7b7 [#4213] -o option for setting onetime now works properly
+2edf7fe [#3656] Serializing arrays of references
+27d5a47 [#4215] Have rundir depend on vardir
+06cc552 Fix for #4220 -- modules not implicitly loading their init files
+
2.6.0rc2
========
+8747479 Updated CHANGELOG for 2.6.0rc2
fa74020 [#4209] catalog.resources should return resources
f5f9a38 Fix for #4210 -- missing require in CA
1c3e844 Minimal fix for #4205 -- incorrect Import loop messages
diff --git a/conf/redhat/client.init b/conf/redhat/client.init
index 0c98383d5..f624d8181 100644
--- a/conf/redhat/client.init
+++ b/conf/redhat/client.init
@@ -15,7 +15,7 @@ export PATH
[ -f /etc/sysconfig/puppet ] && . /etc/sysconfig/puppet
lockfile=${LOCKFILE-/var/lock/subsys/puppet}
-pidfile=${PIDFILE-/var/run/puppet/puppetd.pid}
+pidfile=${PIDFILE-/var/run/puppet/agent.pid}
puppetd=${PUPPETD-/usr/sbin/puppetd}
RETVAL=0
@@ -27,8 +27,12 @@ PUPPET_OPTS=""
[ -n "$PUPPET_LOG" ] && PUPPET_OPTS="${PUPPET_OPTS} --logdest=${PUPPET_LOG}"
[ -n "$PUPPET_PORT" ] && PUPPET_OPTS="${PUPPET_OPTS} --masterport=${PUPPET_PORT}"
-# Determine if we can use the -p option to killproc. RHEL < 5 can't.
-killproc | grep -q -- '-p' 2>/dev/null && killopts="-p $pidfile"
+# Determine if we can use the -p option to daemon, killproc, and status.
+# RHEL < 5 can't.
+if status | grep -q -- '-p' 2>/dev/null; then
+ daemonopts="--pidfile $pidfile"
+ pidopts="-p $pidfile"
+fi
# Figure out if the system just booted. Let's assume
# boot doesn't take longer than 5 minutes
@@ -37,7 +41,7 @@ killproc | grep -q -- '-p' 2>/dev/null && killopts="-p $pidfile"
start() {
echo -n $"Starting puppet: "
- daemon $puppetd ${PUPPET_OPTS} ${PUPPET_EXTRA_OPTS}
+ daemon $daemonopts $puppetd ${PUPPET_OPTS} ${PUPPET_EXTRA_OPTS}
RETVAL=$?
echo
[ $RETVAL = 0 ] && touch ${lockfile}
@@ -46,7 +50,7 @@ start() {
stop() {
echo -n $"Stopping puppet: "
- killproc $killopts $puppetd
+ killproc $pidopts $puppetd
RETVAL=$?
echo
[ $RETVAL = 0 ] && rm -f ${lockfile} ${pidfile}
@@ -54,7 +58,7 @@ stop() {
reload() {
echo -n $"Restarting puppet: "
- killproc $killopts $puppetd -HUP
+ killproc $pidopts $puppetd -HUP
RETVAL=$?
echo
return $RETVAL
@@ -66,8 +70,7 @@ restart() {
}
rh_status() {
- status | grep -q -- '-p' 2>/dev/null && statusopts="-p $pidfile"
- status $statusopts $puppetd
+ status $pidopts $puppetd
RETVAL=$?
return $RETVAL
}
diff --git a/conf/redhat/puppet.conf b/conf/redhat/puppet.conf
index d35593f12..47501a388 100644
--- a/conf/redhat/puppet.conf
+++ b/conf/redhat/puppet.conf
@@ -11,7 +11,7 @@
# The default value is '$confdir/ssl'.
ssldir = $vardir/ssl
-[puppetd]
+[agent]
# The file in which puppetd stores a list of the classes
# associated with the retrieved configuratiion. Can be loaded in
# the separate ``puppet`` executable using the ``--loadclasses``
diff --git a/conf/redhat/rundir-perms.patch b/conf/redhat/rundir-perms.patch
index a4cc94ba0..445b6cf53 100644
--- a/conf/redhat/rundir-perms.patch
+++ b/conf/redhat/rundir-perms.patch
@@ -1,6 +1,6 @@
-From 9c4f335261aa48b6a2b82e91d4d6fcd95f030d09 Mon Sep 17 00:00:00 2001
+From b153b4d234cd015efb52a5db8075350a75506668 Mon Sep 17 00:00:00 2001
From: Jeroen van Meeuwen (Fedora Unity) <kanarip@fedoraunity.org>
-Date: Fri, 4 Sep 2009 09:13:19 -0400
+Date: Sat, 10 Jul 2010 14:44:04 -0400
Subject: [PATCH/puppet] Tighten rundir perms (rhbz #495096)
The loose default permissions are not required for Red Hat systems
@@ -11,18 +11,18 @@ service user/group.
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/lib/puppet/defaults.rb b/lib/puppet/defaults.rb
-index 3a0feec..3132830 100644
+index 0af40f2..71027d6 100644
--- a/lib/puppet/defaults.rb
+++ b/lib/puppet/defaults.rb
-@@ -62,7 +62,7 @@ module Puppet
- },
- :rundir => {
- :default => rundir,
-- :mode => 01777,
-+ :mode => 0755,
- :desc => "Where Puppet PID files are kept."
- },
- :genconfig => [false,
+@@ -26,7 +26,7 @@ module Puppet
+ },
+ :rundir => {
+ :default => Puppet.run_mode.run_dir,
+- :mode => 01777,
++ :mode => 0755,
+ :desc => "Where Puppet PID files are kept."
+ },
+ :genconfig => [false,
--
-1.6.4.2
+1.7.1
diff --git a/conf/redhat/server.init b/conf/redhat/server.init
index 4f4420683..4d3a72c0e 100644
--- a/conf/redhat/server.init
+++ b/conf/redhat/server.init
@@ -13,7 +13,7 @@ PATH=/usr/bin:/sbin:/bin:/usr/sbin
export PATH
lockfile=/var/lock/subsys/puppetmaster
-pidfile=/var/run/puppet/puppetmasterd.pid
+pidfile=/var/run/puppet/master.pid
# Source function library.
. /etc/rc.d/init.d/functions
@@ -33,6 +33,13 @@ fi
PUPPETMASTER_OPTS="${PUPPETMASTER_OPTS} \
${PUPPETMASTER_EXTRA_OPTS}"
+# Determine if we can use the -p option to daemon, killproc, and status.
+# RHEL < 5 can't.
+if status | grep -q -- '-p' 2>/dev/null; then
+ daemonopts="--pidfile $pidfile"
+ pidopts="-p $pidfile"
+fi
+
RETVAL=0
prog=puppetmasterd
@@ -50,7 +57,7 @@ start() {
ret=$?; [ $ret != 0 ] && RETVAL=$ret
done
else
- daemon $PUPPETMASTER $PUPPETMASTER_OPTS
+ daemon $daemonopts $PUPPETMASTER $PUPPETMASTER_OPTS
RETVAL=$?
fi
else
@@ -72,8 +79,7 @@ stop() {
ret=$?; [ $ret != 0 ] && RETVAL=$ret
done
else
- killproc | grep -q -- '-p' 2>/dev/null && killopts="-p $pidfile"
- killproc $killopts $PUPPETMASTER
+ killproc $pidopts $PUPPETMASTER
RETVAL=$?
fi
echo
@@ -99,7 +105,7 @@ rh_status() {
ret=$?; [ $ret != 0 ] && RETVAL=$ret
done
else
- status $PUPPETMASTER
+ status $pidopts $PUPPETMASTER
RETVAL=$?
fi
return $RETVAL
diff --git a/examples/modules/sample-module/README.txt b/examples/modules/sample-module/README.txt
index ee4b8201a..cd35c83a1 100644
--- a/examples/modules/sample-module/README.txt
+++ b/examples/modules/sample-module/README.txt
@@ -13,5 +13,5 @@ Note the consistent naming of files for Puppet::Util::Autoload
Reference Documents:
http://reductivelabs.com/trac/puppet/wiki/ModuleOrganisation
-http://reductivelabs.com/trac/puppet/wiki/WritingYourOwnFunctions
+http://docs.puppetlabs.com/guides/custom_functions.html
http://reductivelabs.com/trac/puppet/wiki/FunctionReference
diff --git a/examples/modules/sample-module/lib/puppet/parser/functions/hostname_to_dn.rb b/examples/modules/sample-module/lib/puppet/parser/functions/hostname_to_dn.rb
index 34ab280fb..fe4e54992 100644
--- a/examples/modules/sample-module/lib/puppet/parser/functions/hostname_to_dn.rb
+++ b/examples/modules/sample-module/lib/puppet/parser/functions/hostname_to_dn.rb
@@ -27,7 +27,7 @@
# Jeff McCune <jeff.mccune@northstarlabs.net>
# 2007-08-14
-# See: http://reductivelabs.com/trac/puppet/wiki/WritingYourOwnFunctions
+# See: http://docs.puppetlabs.com/guides/custom_functions.html
module Puppet::Parser::Functions
newfunction(:hostname_to_dn, :type => :rvalue, :doc => "Given 'foo.bar.com', return 'dc=foo,dc=bar,dc=com'.") do |args|
diff --git a/ext/extlookup.rb b/ext/extlookup.rb
index b72fc1287..d87583ba7 100644
--- a/ext/extlookup.rb
+++ b/ext/extlookup.rb
@@ -74,7 +74,7 @@
# need to edit a load of manifests to do simple things like adjust a desired version number.
#
# For more information on installing and writing your own custom functions see:
-# http://reductivelabs.com/trac/puppet/wiki/WritingYourOwnFunctions
+# http://docs.puppetlabs.com/guides/custom_functions.html
#
# For further help contact Volcane on #puppet
require 'csv'
diff --git a/ext/regexp_nodes/regexp_nodes.rb b/ext/regexp_nodes/regexp_nodes.rb
index e234985ca..871215511 100644
--- a/ext/regexp_nodes/regexp_nodes.rb
+++ b/ext/regexp_nodes/regexp_nodes.rb
@@ -2,7 +2,7 @@
# = Synopsis
# This is an external node classifier script, after
-# http://reductivelabs.com/trac/puppet/wiki/ExternalNodes
+# http://docs.puppetlabs.com/guides/external_nodes.html
#
# = Usage
# regexp_nodes.rb <host>
diff --git a/install.rb b/install.rb
index d35aaa01a..b06ec09fd 100755
--- a/install.rb
+++ b/install.rb
@@ -84,7 +84,7 @@ bins = glob(%w{bin/*})
rdoc = glob(%w{bin/* sbin/* lib/**/*.rb README README-library CHANGELOG TODO Install}).reject { |e| e=~ /\.(bat|cmd)$/ }
ri = glob(%w{bin/*.rb sbin/* lib/**/*.rb}).reject { |e| e=~ /\.(bat|cmd)$/ }
man = glob(%w{man/man[0-9]/*})
-libs = glob(%w{lib/**/*.rb lib/**/*.py})
+libs = glob(%w{lib/**/*.rb lib/**/*.py lib/puppet/util/command_line/*})
tests = glob(%w{test/**/*.rb})
def do_bins(bins, target, strip = 's?bin/')
diff --git a/lib/puppet/application/agent.rb b/lib/puppet/application/agent.rb
index b90bdd484..f0e7f4d8f 100644
--- a/lib/puppet/application/agent.rb
+++ b/lib/puppet/application/agent.rb
@@ -5,7 +5,7 @@ class Puppet::Application::Agent < Puppet::Application
should_parse_config
run_mode :agent
- attr_accessor :explicit_waitforcert, :args, :agent, :daemon, :host
+ attr_accessor :args, :agent, :daemon, :host
def preinit
# Do an initial trap, so that cancels don't get a stack trace.
@@ -15,7 +15,7 @@ class Puppet::Application::Agent < Puppet::Application
end
{
- :waitforcert => 120, # Default to checking for certs every 5 minutes
+ :waitforcert => nil,
:detailed_exitcodes => false,
:verbose => false,
:debug => false,
@@ -32,7 +32,6 @@ class Puppet::Application::Agent < Puppet::Application
options[opt] = val
end
- @explicit_waitforcert = false
@args = {}
require 'puppet/daemon'
@daemon = Puppet::Daemon.new
@@ -62,11 +61,6 @@ class Puppet::Application::Agent < Puppet::Application
options[:client] = false
end
- option("--onetime", "-o") do |arg|
- Puppet[:onetime] = true
- options[:waitforcert] = 0 unless @explicit_waitforcert
- end
-
option("--detailed-exitcodes") do |arg|
options[:detailed_exitcodes] = true
end
@@ -83,7 +77,6 @@ class Puppet::Application::Agent < Puppet::Application
option("--waitforcert WAITFORCERT", "-w") do |arg|
options[:waitforcert] = arg.to_i
- @explicit_waitforcert = true
end
option("--port PORT","-p") do |arg|
@@ -149,7 +142,6 @@ class Puppet::Application::Agent < Puppet::Application
options[:verbose] = true
Puppet[:onetime] = true
options[:detailed_exitcodes] = true
- options[:waitforcert] = 0 unless @explicit_waitforcert
end
# Handle the logging settings.
@@ -196,6 +188,12 @@ class Puppet::Application::Agent < Puppet::Application
@daemon.server = server
end
+ def setup_host
+ @host = Puppet::SSL::Host.new
+ waitforcert = options[:waitforcert] || (Puppet[:onetime] ? 0 : 120)
+ cert = @host.wait_for_cert(waitforcert) unless options[:fingerprint]
+ end
+
def setup
setup_test if options[:test]
@@ -252,8 +250,7 @@ class Puppet::Application::Agent < Puppet::Application
# waitforcert happens.
@daemon.daemonize if Puppet[:daemonize]
- @host = Puppet::SSL::Host.new
- cert = @host.wait_for_cert(options[:waitforcert]) unless options[:fingerprint]
+ setup_host
@objects = []
diff --git a/lib/puppet/defaults.rb b/lib/puppet/defaults.rb
index 0af40f2cb..84e2d93fc 100644
--- a/lib/puppet/defaults.rb
+++ b/lib/puppet/defaults.rb
@@ -54,10 +54,11 @@ module Puppet
"Whether Puppet should manage the owner, group, and mode of files
it uses internally"
],
- :onetime => [false,
- "Run the configuration once, rather than as a long-running
- daemon. This is useful for interactively running puppetd."
- ],
+ :onetime => {:default => false,
+ :desc => "Run the configuration once, rather than as a long-running
+ daemon. This is useful for interactively running puppetd.",
+ :short => 'o'
+ },
:path => {:default => "none",
:desc => "The shell search path. Defaults to whatever is inherited
from the parent process.",
diff --git a/lib/puppet/module.rb b/lib/puppet/module.rb
index 83561449a..8da19c2ce 100644
--- a/lib/puppet/module.rb
+++ b/lib/puppet/module.rb
@@ -124,7 +124,7 @@ class Puppet::Module
# defaulting to 'init.{pp,rb}' for empty modules.
def match_manifests(rest)
pat = File.join(path, MANIFESTS, rest || 'init')
- Dir.
+ [manifest("init.pp"),manifest("init.rb")].compact + Dir.
glob(pat + (File.extname(pat).empty? ? '.{pp,rb}' : '')).
reject { |f| FileTest.directory?(f) }
end
diff --git a/lib/puppet/parser/functions/inline_template.rb b/lib/puppet/parser/functions/inline_template.rb
index 11d980fab..46e000383 100644
--- a/lib/puppet/parser/functions/inline_template.rb
+++ b/lib/puppet/parser/functions/inline_template.rb
@@ -1,6 +1,6 @@
Puppet::Parser::Functions::newfunction(:inline_template, :type => :rvalue, :doc =>
"Evaluate a template string and return its value. See `the templating docs
- </trac/puppet/wiki/PuppetTemplating>`_ for more information. Note that
+ <http://docs.puppetlabs.com/guides/templating.html>`_ for more information. Note that
if multiple template strings are specified, their output is all concatenated
and returned as the output of the function.") do |vals|
require 'erb'
diff --git a/lib/puppet/provider/nameservice/directoryservice.rb b/lib/puppet/provider/nameservice/directoryservice.rb
index 76fc466ac..965a2aa60 100644
--- a/lib/puppet/provider/nameservice/directoryservice.rb
+++ b/lib/puppet/provider/nameservice/directoryservice.rb
@@ -41,7 +41,7 @@ class DirectoryService < Puppet::Provider::NameService
# JJM 2007-07-25: This map is used to map NameService attributes to their
# corresponding DirectoryService attribute names.
- # See: http://images.apple.com/server/docs/Open_Directory_v10.4.pdf
+ # See: http://images.apple.com/server/docs.Open_Directory_v10.4.pdf
# JJM: Note, this is de-coupled from the Puppet::Type, and must
# be actively maintained. There may also be collisions with different
# types (Users, Groups, Mounts, Hosts, etc...)
diff --git a/lib/puppet/provider/package/pkgdmg.rb b/lib/puppet/provider/package/pkgdmg.rb
index 4506fbf9d..39e377d66 100644
--- a/lib/puppet/provider/package/pkgdmg.rb
+++ b/lib/puppet/provider/package/pkgdmg.rb
@@ -29,7 +29,7 @@ require 'puppet/provider/package'
require 'facter/util/plist'
Puppet::Type.type(:package).provide :pkgdmg, :parent => Puppet::Provider::Package do
- desc "Package management based on Apple's Installer.app and DiskUtility.app. This package works by checking the contents of a DMG image for Apple pkg or mpkg files. Any number of pkg or mpkg files may exist in the root directory of the DMG file system. Sub directories are not checked for packages. See `the wiki docs </trac/puppet/wiki/DmgPackages>` for more detail."
+ desc "Package management based on Apple's Installer.app and DiskUtility.app. This package works by checking the contents of a DMG image for Apple pkg or mpkg files. Any number of pkg or mpkg files may exist in the root directory of the DMG file system. Sub directories are not checked for packages. See `the wiki docs <http://projects.puppetlabs.com/projects/puppet/wiki/Package_Management_With_Dmg_Patterns>` for more detail."
confine :operatingsystem => :darwin
defaultfor :operatingsystem => :darwin
diff --git a/lib/puppet/reference/providers.rb b/lib/puppet/reference/providers.rb
index a0f10633b..ef33a559b 100644
--- a/lib/puppet/reference/providers.rb
+++ b/lib/puppet/reference/providers.rb
@@ -95,7 +95,7 @@ providers = Puppet::Util::Reference.newreference :providers, :title => "Provider
ret += h(type.name.to_s + "_", 2)
- ret += ".. _#{type.name}: #{"http://reductivelabs.com/trac/puppet/wiki/TypeReference##{type.name}"}\n\n"
+ ret += ".. _#{type.name}: #{"http://docs.puppetlabs.com/references/stable/type.html##{type.name}"}\n\n"
ret += option("Default provider", default)
ret += doctable(headers, table_data)
diff --git a/lib/puppet/resource.rb b/lib/puppet/resource.rb
index 9894f2f9e..31237e3b1 100644
--- a/lib/puppet/resource.rb
+++ b/lib/puppet/resource.rb
@@ -60,11 +60,8 @@ class Puppet::Resource
# Don't duplicate the title as the namevar
next hash if param == namevar and value == title
- if value.is_a? Puppet::Resource
- hash[param] = value.to_s
- else
- hash[param] = value
- end
+
+ hash[param] = Puppet::Resource.value_to_pson_data(value)
hash
end
@@ -73,6 +70,16 @@ class Puppet::Resource
data
end
+ def self.value_to_pson_data(value)
+ if value.is_a? Array
+ value.map{|v| value_to_pson_data(v) }
+ elsif value.is_a? Puppet::Resource
+ value.to_s
+ else
+ value
+ end
+ end
+
def to_pson(*args)
to_pson_data_hash.to_pson(*args)
end
diff --git a/lib/puppet/util/command_line/filebucket b/lib/puppet/util/command_line/filebucket
index ba9d8cdd9..8302d7b12 100755
--- a/lib/puppet/util/command_line/filebucket
+++ b/lib/puppet/util/command_line/filebucket
@@ -53,7 +53,7 @@
# parameter, so you can specify '--ssldir <directory>' as an argument.
#
# See the configuration file documentation at
-# http://reductivelabs.com/trac/puppet/wiki/ConfigurationReference for
+# http://docs.puppetlabs.com/references/stable/configuration.html for
# the full list of acceptable parameters. A commented list of all
# configuration options can also be generated by running puppet with
# '--genconfig'.
diff --git a/lib/puppet/util/command_line/puppet b/lib/puppet/util/command_line/puppet
index f65ef9007..7b6c0ae7f 100755
--- a/lib/puppet/util/command_line/puppet
+++ b/lib/puppet/util/command_line/puppet
@@ -22,7 +22,7 @@
# parameter, so you can specify '--ssldir <directory>' as an argument.
#
# See the configuration file documentation at
-# http://reductivelabs.com/trac/puppet/wiki/ConfigurationReference for
+# http://docs.puppetlabs.com/references/stable/configuration.html for
# the full list of acceptable parameters. A commented list of all
# configuration options can also be generated by running puppet with
# '--genconfig'.
diff --git a/lib/puppet/util/command_line/puppetd b/lib/puppet/util/command_line/puppetd
index 3af2fdabf..571b15486 100755
--- a/lib/puppet/util/command_line/puppetd
+++ b/lib/puppet/util/command_line/puppetd
@@ -69,7 +69,7 @@
# parameter, so you can specify '--server <servername>' as an argument.
#
# See the configuration file documentation at
-# http://reductivelabs.com/trac/puppet/wiki/ConfigurationReference for
+# http://docs.puppetlabs.com/references/stable/configuration.html for
# the full list of acceptable parameters. A commented list of all
# configuration options can also be generated by running puppet agent with
# '--genconfig'.
diff --git a/lib/puppet/util/command_line/puppetmasterd b/lib/puppet/util/command_line/puppetmasterd
index c58612c0f..74efb3818 100755
--- a/lib/puppet/util/command_line/puppetmasterd
+++ b/lib/puppet/util/command_line/puppetmasterd
@@ -21,7 +21,7 @@
# parameter, so you can specify '--ssldir <directory>' as an argument.
#
# See the configuration file documentation at
-# http://reductivelabs.com/trac/puppet/wiki/ConfigurationReference for
+# http://docs.puppetlabs.com/references/stable/configuration.html for
# the full list of acceptable parameters. A commented list of all
# configuration options can also be generated by running puppetmasterdd with
# '--genconfig'.
diff --git a/lib/puppet/util/command_line/puppetqd b/lib/puppet/util/command_line/puppetqd
index 439db5cb0..48fc952bd 100755
--- a/lib/puppet/util/command_line/puppetqd
+++ b/lib/puppet/util/command_line/puppetqd
@@ -20,7 +20,7 @@
# parameter, so you can specify '--server <servername>' as an argument.
#
# See the configuration file documentation at
-# http://reductivelabs.com/trac/puppet/wiki/ConfigurationReference for
+# http://docs.puppetlabs.com/references/stable/configuration.html for
# the full list of acceptable parameters. A commented list of all
# configuration options can also be generated by running puppetd with
# '--genconfig'.
diff --git a/lib/puppet/util/command_line/ralsh b/lib/puppet/util/command_line/ralsh
index b866eded6..68ad92d84 100755
--- a/lib/puppet/util/command_line/ralsh
+++ b/lib/puppet/util/command_line/ralsh
@@ -34,7 +34,7 @@
# parameter, so you can specify '--ssldir <directory>' as an argument.
#
# See the configuration file documentation at
-# http://reductivelabs.com/trac/puppet/wiki/ConfigurationReference for
+# http://docs.puppetlabs.com/references/stable/configuration.html for
# the full list of acceptable parameters. A commented list of all
# configuration options can also be generated by running puppet with
# '--genconfig'.
diff --git a/lib/puppet/util/run_mode.rb b/lib/puppet/util/run_mode.rb
index eb9c511dc..450cbf1a6 100644
--- a/lib/puppet/util/run_mode.rb
+++ b/lib/puppet/util/run_mode.rb
@@ -40,17 +40,17 @@ module Puppet
end
def run_dir
- which_dir("/var/run/puppet", "~/.puppet/var")
+ "$vardir/run"
end
def logopts
- if name == :master
+ if master?
{
:default => "$vardir/log",
- :mode => 0750,
- :owner => "service",
- :group => "service",
- :desc => "The Puppet log directory."
+ :mode => 0750,
+ :owner => "service",
+ :group => "service",
+ :desc => "The Puppet log directory."
}
else
["$vardir/log", "The Puppet log directory."]
@@ -64,9 +64,9 @@ module Puppet
# there's a comment that suggests that we do that
# and we currently don't.
expand_path case
- when name == :master; global
- when Puppet.features.root?; global
- else user
+ when name == :master; global
+ when Puppet.features.root?; global
+ else user
end
end
diff --git a/man/man5/puppet.conf.5 b/man/man5/puppet.conf.5
index 2a5b1b192..1e4e70457 100644
--- a/man/man5/puppet.conf.5
+++ b/man/man5/puppet.conf.5
@@ -4,7 +4,7 @@ Configuration Reference \-
.\" Man page generated from reStructeredText.
.
.sp
-\fBThis page is autogenerated; any changes will get overwritten\fP \fI(last generated on Sun Apr 11 17:57:48 \-0400 2010)\fP
+\fBThis page is autogenerated; any changes will get overwritten\fP \fI(last generated on Wed Jul 14 14:33:09 \-0700 2010)\fP
.SS Contents
.INDENT 0.0
.IP \(bu 2
@@ -32,7 +32,7 @@ invocation below would set the configuration directory to \fB/private/puppet\fP:
.sp
.nf
.ft C
-$ puppetd \-\-confdir=/private/puppet
+$ puppet agent \-\-confdir=/private/puppet
.ft P
.fi
.sp
@@ -41,9 +41,9 @@ syntax on the command line:
.sp
.nf
.ft C
-$ puppetd \-\-storeconfigs
+$ puppet agent \-\-storeconfigs
-$ puppetd \-\-no\-storeconfigs
+$ puppet agent \-\-no\-storeconfigs
.ft P
.fi
.sp
@@ -61,11 +61,8 @@ executables look for \fBpuppet.conf\fP in their configuration directory
\fB~user/.puppet/puppet.conf\fP as a regular user by default.
.sp
All executables will set any parameters set within the \fBmain\fP section,
-while each executable will also look for a section named for the executable
-and load those parameters. For example, \fBpuppetd\fP will look for a
-section named \fBpuppetd\fP, and \fBpuppetmasterd\fP looks for a section
-named \fBpuppetmasterd\fP. This allows you to use a single configuration file
-to customize the settings for all of your executables.
+and each executable will also use one of the \fBmaster\fP, \fBagent\fP, or
+\fBuser\fP sections.
.SS File Format
.sp
The file follows INI\-style formatting. Here is an example of a very simple
@@ -74,8 +71,8 @@ The file follows INI\-style formatting. Here is an example of a very simple
.nf
.ft C
[main]
- confdir = /private/puppet
- storeconfigs = true
+ confdir = /private/puppet
+ storeconfigs = true
.ft P
.fi
.sp
@@ -88,7 +85,7 @@ so within curly braces on the same line:
.nf
.ft C
[main]
- myfile = /tmp/whatever {owner = root, mode = 644}
+ myfile = /tmp/whatever {owner = root, mode = 644}
.ft P
.fi
.sp
@@ -100,7 +97,7 @@ redirected to a file like so:
.sp
.nf
.ft C
-$ puppetd \-\-genconfig > /etc/puppet/puppet.conf
+$ puppet agent \-\-genconfig > /etc/puppet/puppet.conf
.ft P
.fi
.sp
@@ -115,7 +112,7 @@ likewise be redirected to a file:
.sp
.nf
.ft C
-$ puppetd \-\-genmanifest > /etc/puppet/manifests/site.pp
+$ puppet agent \-\-genmanifest > /etc/puppet/manifests/site.pp
.ft P
.fi
.sp
@@ -124,19 +121,19 @@ and one \fIpuppet\fP user) if it is invoked as \fIroot\fP with the \fI\-\-mkuser
.sp
.nf
.ft C
-$ puppetd \-\-mkusers
+$ puppet agent \-\-mkusers
.ft P
.fi
.SH SIGNALS
.sp
-The \fBpuppetd\fP and \fBpuppetmasterd\fP executables catch some signals for special
+The \fBpuppet agent\fP and \fBpuppet master\fP executables catch some signals for special
handling. Both daemons catch (\fBSIGHUP\fP), which forces the server to restart
tself. Predictably, interrupt and terminate (\fBSIGINT\fP and \fBSIGTERM\fP) will shut
-down the server, whether it be an instance of \fBpuppetd\fP or \fBpuppetmasterd\fP.
+down the server, whether it be an instance of \fBpuppet agent\fP or \fBpuppet master\fP.
.sp
-Sending the \fBSIGUSR1\fP signal to an instance of \fBpuppetd\fP will cause it to
+Sending the \fBSIGUSR1\fP signal to an instance of \fBpuppet agent\fP will cause it to
immediately begin a new configuration transaction with the server. This
-signal has no effect on \fBpuppetmasterd\fP.
+signal has no effect on \fBpuppet master\fP.
.SH CONFIGURATION PARAMETER REFERENCE
.sp
Below is a list of all documented parameters. Not all of them are valid with all
@@ -151,7 +148,7 @@ Whether to use a queueing system to provide asynchronous database integration. R
.UNINDENT
.SS authconfig
.sp
-The configuration file that defines the rights to the different namespaces and methods. This can be used as a coarse\-grained authorization system for both \fBpuppetd\fP and \fBpuppetmasterd\fP.
+The configuration file that defines the rights to the different namespaces and methods. This can be used as a coarse\-grained authorization system for both \fBpuppet agent\fP and \fBpuppet master\fP.
.INDENT 0.0
.IP \(bu 2
.
@@ -203,6 +200,14 @@ The type of hash used in certificates.
.
\fBDefault\fP: md5
.UNINDENT
+.SS ca_name
+.sp
+The name to use the Certificate Authority certificate.
+.INDENT 0.0
+.IP \(bu 2
+.
+\fBDefault\fP: $certname
+.UNINDENT
.SS ca_port
.sp
The port to use for the certificate authority.
@@ -283,14 +288,6 @@ The CA public key.
.
\fBDefault\fP: $cadir/ca_pub.pem
.UNINDENT
-.SS casesensitive
-.sp
-Whether matching in case statements and selectors should be case\-sensitive. Case insensitivity is handled by downcasing all values before comparison.
-.INDENT 0.0
-.IP \(bu 2
-.
-\fBDefault\fP: false
-.UNINDENT
.SS catalog_format
.sp
(Deprecated for \(aqpreferred_serialization_format\(aq) What format to use to dump the catalog. Only supports \(aqmarshal\(aq and \(aqyaml\(aq. Only matters on the client, since it asks the server for a specific format.
@@ -321,6 +318,14 @@ The certificate directory.
.SS certdnsnames
.sp
The DNS names on the Server certificate as a colon\-separated list. If it\(aqs 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 \(aqpuppet\(aq.
+.SS certificate_revocation
+.sp
+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.
+.INDENT 0.0
+.IP \(bu 2
+.
+\fBDefault\fP: true
+.UNINDENT
.SS certname
.sp
The name to use when handling certificates. Defaults to the fully qualified domain name.
@@ -331,12 +336,20 @@ The name to use when handling certificates. Defaults to the fully qualified dom
.UNINDENT
.SS classfile
.sp
-The file in which puppetd stores a list of the classes associated with the retrieved configuration. Can be loaded in the separate \fBpuppet\fP executable using the \fB\-\-loadclasses\fP option.
+The file in which puppet agent stores a list of the classes associated with the retrieved configuration. Can be loaded in the separate \fBpuppet\fP executable using the \fB\-\-loadclasses\fP option.
.INDENT 0.0
.IP \(bu 2
.
\fBDefault\fP: $statedir/classes.txt
.UNINDENT
+.SS client_datadir
+.sp
+The directory in which serialized data is stored on the client.
+.INDENT 0.0
+.IP \(bu 2
+.
+\fBDefault\fP: $vardir/client_data
+.UNINDENT
.SS clientbucketdir
.sp
Where FileBucket files are stored locally.
@@ -366,7 +379,7 @@ Whether to use colors when logging to the console. Valid values are \fBansi\fP (
.UNINDENT
.SS confdir
.sp
-The main Puppet configuration directory. The default for this parameter is calculated based on the user. If the process is runnig as root or the user that \fBpuppetmasterd\fP is supposed to run as, it defaults to a system directory, but if it\(aqs running as any other user, it defaults to being in \fB~\fP.
+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 \fBpuppet master\fP is supposed to run as, it defaults to a system directory, but if it\(aqs running as any other user, it defaults to being in \fB~\fP.
.INDENT 0.0
.IP \(bu 2
.
@@ -374,7 +387,7 @@ The main Puppet configuration directory. The default for this parameter is calc
.UNINDENT
.SS config
.sp
-The configuration file for puppetdoc.
+The configuration file for doc.
.INDENT 0.0
.IP \(bu 2
.
@@ -394,6 +407,14 @@ How long the client should wait for the configuration to be retrieved before con
.
\fBDefault\fP: 120
.UNINDENT
+.SS couchdb_url
+.sp
+The url where the puppet couchdb database will be created
+.INDENT 0.0
+.IP \(bu 2
+.
+\fBDefault\fP: \fI\%http://127.0.0.1:5984/puppet\fP
+.UNINDENT
.SS csrdir
.sp
Where the CA stores certificate requests
@@ -418,11 +439,14 @@ The type of database to use.
.
\fBDefault\fP: sqlite3
.UNINDENT
-
.SS dbconnections
+.sp
The number of database connections. Only used when networked databases are used. Will be ignored if the value is an empty string or is less than 1.
-
-
+.INDENT 0.0
+.IP \(bu 2
+.
+\fBDefault\fP: 0
+.UNINDENT
.SS dblocation
.sp
The database cache for client configurations. Used for querying within the language.
@@ -449,15 +473,18 @@ The name of the database to use.
.UNINDENT
.SS dbpassword
.sp
-The database password for Client caching. Only used when networked databases are used.
+The database password for caching. Only used when networked databases are used.
.INDENT 0.0
.IP \(bu 2
.
\fBDefault\fP: puppet
.UNINDENT
+.SS dbport
+.sp
+The database password for caching. Only used when networked databases are used.
.SS dbserver
.sp
-The database server for Client caching. Only used when networked databases are used.
+The database server for caching. Only used when networked databases are used.
.INDENT 0.0
.IP \(bu 2
.
@@ -468,7 +495,7 @@ The database server for Client caching. Only used when networked databases are u
The database socket location. Only used when networked databases are used. Will be ignored if the value is an empty string.
.SS dbuser
.sp
-The database user for Client caching. Only used when networked databases are used.
+The database user for caching. Only used when networked databases are used.
.INDENT 0.0
.IP \(bu 2
.
@@ -508,7 +535,7 @@ Facts that are dynamic; these facts will be ignored when deciding whether change
.UNINDENT
.SS environment
.sp
-The environment Puppet is running in. For clients (e.g., \fBpuppetd\fP) this determines the environment itself, which is used to find modules and much more. For servers (i.e., \fBpuppetmasterd\fP) this provides the default environment for nodes we know nothing about.
+The environment Puppet is running in. For clients (e.g., \fBpuppet agent\fP) this determines the environment itself, which is used to find modules and much more. For servers (i.e., \fBpuppet master\fP) this provides the default environment for nodes we know nothing about.
.INDENT 0.0
.IP \(bu 2
.
@@ -544,7 +571,15 @@ Where Puppet should look for facts. Multiple directories should be colon\-separ
.INDENT 0.0
.IP \(bu 2
.
-\fBDefault\fP: $vardir/facts/
+\fBDefault\fP: $vardir/lib/facter/${\fI\%File::PATH_SEPARATOR\fP}$vardir/facts
+.UNINDENT
+.SS facts_terminus
+.sp
+Where to get node facts.
+.INDENT 0.0
+.IP \(bu 2
+.
+\fBDefault\fP: facter
.UNINDENT
.SS factsignore
.sp
@@ -586,6 +621,14 @@ The minimum time to wait (in seconds) between checking for updates in configurat
.
\fBDefault\fP: 15
.UNINDENT
+.SS freeze_main
+.sp
+Freezes the \(aqmain\(aq class, disallowing any code to be added to it. This essentially means that you can\(aqt have any code outside of a node, class, or definition other than in the site manifest.
+.INDENT 0.0
+.IP \(bu 2
+.
+\fBDefault\fP: false
+.UNINDENT
.SS genconfig
.sp
Whether to just print a configuration to stdout and exit. Only makes sense when used interactively. Takes into account arguments specified on the CLI.
@@ -620,7 +663,7 @@ Where to store dot\-outputted graphs.
.UNINDENT
.SS group
.sp
-The group puppetmasterd should run as.
+The group puppet master should run as.
.INDENT 0.0
.IP \(bu 2
.
@@ -666,6 +709,14 @@ Where individual hosts store and look for their public key.
.
\fBDefault\fP: $publickeydir/$certname.pem
.UNINDENT
+.SS http_compression
+.sp
+Allow http compression in REST communication with the master. This setting might improve performance for agent \-> master communications over slow WANs. Your puppetmaster needs to support compression (usually by activating some settings in a reverse\-proxy in front of the puppetmaster, which rules out webrick). It is harmless to activate this settings if your master doesn\(aqt support compression, but if it supports it, this setting might reduce performance on high\-speed LANs.
+.INDENT 0.0
+.IP \(bu 2
+.
+\fBDefault\fP: false
+.UNINDENT
.SS http_proxy_host
.sp
The HTTP proxy host to use for outgoing connections. Note: You may need to use a FQDN for the server hostname when using a proxy.
@@ -684,7 +735,7 @@ The HTTP proxy port to use for outgoing connections
.UNINDENT
.SS httplog
.sp
-Where the puppetd web server logs.
+Where the puppet agent web server logs.
.INDENT 0.0
.IP \(bu 2
.
@@ -708,7 +759,7 @@ A parameter that can be used in commit hooks, since it enables you to parse\-che
.UNINDENT
.SS ignoreschedules
.sp
-Boolean; whether puppetd should ignore schedules. This is useful for initial puppetd runs.
+Boolean; whether puppet agent should ignore schedules. This is useful for initial puppet agent runs.
.INDENT 0.0
.IP \(bu 2
.
@@ -743,7 +794,7 @@ The LDAP attributes to use to define Puppet classes. Values should be comma\-se
.UNINDENT
.SS ldapnodes
.sp
-Whether to search for node configurations in LDAP. See \fI\%http://reductivelabs.com/trac/puppet/wiki/LDAPNodes\fP for more information.
+Whether to search for node configurations in LDAP. See \fI\%http://projects.puppetlabs.com/projects/puppet/wiki/LDAP_Nodes\fP for more information.
.INDENT 0.0
.IP \(bu 2
.
@@ -829,7 +880,7 @@ An extra search path for Puppet. This is only useful for those files that Puppe
.UNINDENT
.SS listen
.sp
-Whether puppetd should listen for connections. If this is true, then by default only the \fBrunner\fP server is started, which allows remote authorized and authenticated nodes to connect and trigger \fBpuppetd\fP runs.
+Whether puppet agent should listen for connections. If this is true, then by default only the \fBrunner\fP server is started, which allows remote authorized and authenticated nodes to connect and trigger \fBpuppet agent\fP runs.
.INDENT 0.0
.IP \(bu 2
.
@@ -845,7 +896,7 @@ Where each client stores the CA certificate.
.UNINDENT
.SS localconfig
.sp
-Where puppetd caches the local configuration. An extension indicating the cache format is added automatically.
+Where puppet agent caches the local configuration. An extension indicating the cache format is added automatically.
.INDENT 0.0
.IP \(bu 2
.
@@ -861,7 +912,7 @@ The Puppet log directory.
.UNINDENT
.SS manage_internal_file_permissions
.sp
-Whether Puppet should manage the owner, group, and mode of files it uses internally
+Whether Puppet should manage the owner, group, and mode of files it uses internally
.INDENT 0.0
.IP \(bu 2
.
@@ -869,7 +920,7 @@ Whether Puppet should manage the owner, group, and mode of files it uses intern
.UNINDENT
.SS manifest
.sp
-The entry\-point manifest for puppetmasterd.
+The entry\-point manifest for puppet master.
.INDENT 0.0
.IP \(bu 2
.
@@ -877,7 +928,7 @@ The entry\-point manifest for puppetmasterd.
.UNINDENT
.SS manifestdir
.sp
-Where puppetmasterd looks for its manifests.
+Where puppet master looks for its manifests.
.INDENT 0.0
.IP \(bu 2
.
@@ -885,7 +936,7 @@ Where puppetmasterd looks for its manifests.
.UNINDENT
.SS masterhttplog
.sp
-Where the puppetmasterd web server logs.
+Where the puppet master web server logs.
.INDENT 0.0
.IP \(bu 2
.
@@ -893,7 +944,7 @@ Where the puppetmasterd web server logs.
.UNINDENT
.SS masterlog
.sp
-Where puppetmasterd logs. This is generally not used, since syslog is the default log destination.
+Where puppet master logs. This is generally not used, since syslog is the default log destination.
.INDENT 0.0
.IP \(bu 2
.
@@ -901,7 +952,7 @@ Where puppetmasterd logs. This is generally not used, since syslog is the defau
.UNINDENT
.SS masterport
.sp
-Which port puppetmasterd listens on.
+Which port puppet master listens on.
.INDENT 0.0
.IP \(bu 2
.
@@ -917,12 +968,20 @@ The maximum allowed UID. Some platforms use negative UIDs but then ship with to
.UNINDENT
.SS mkusers
.sp
-Whether to create the necessary user and group that puppetd will run as.
+Whether to create the necessary user and group that puppet agent will run as.
.INDENT 0.0
.IP \(bu 2
.
\fBDefault\fP: false
.UNINDENT
+.SS mode
+.sp
+The effective \(aqrun mode\(aq of the application: master, agent, or user.
+.INDENT 0.0
+.IP \(bu 2
+.
+\fBDefault\fP: master
+.UNINDENT
.SS modulepath
.sp
The search path for modules as a colon\-separated list of directories.
@@ -933,11 +992,11 @@ The search path for modules as a colon\-separated list of directories.
.UNINDENT
.SS name
.sp
-The name of the service, if we are running as one. The default is essentially $0 without the path or \fB.rb\fP.
+The name of the application, if we are running as one. The default is essentially $0 without the path or \fB.rb\fP.
.INDENT 0.0
.IP \(bu 2
.
-\fBDefault\fP: puppetdoc
+\fBDefault\fP: doc
.UNINDENT
.SS node_name
.sp
@@ -957,19 +1016,19 @@ Where to find information about nodes.
.UNINDENT
.SS noop
.sp
-Whether puppetd should be run in noop mode.
+Whether puppet agent should be run in noop mode.
.INDENT 0.0
.IP \(bu 2
.
\fBDefault\fP: false
.UNINDENT
-.SS paramcheck
+.SS onetime
.sp
-Whether to validate parameters during parsing.
+Run the configuration once, rather than as a long\-running daemon. This is useful for interactively running puppetd.
.INDENT 0.0
.IP \(bu 2
.
-\fBDefault\fP: true
+\fBDefault\fP: false
.UNINDENT
.SS parseonly
.sp
@@ -981,7 +1040,7 @@ Just check the syntax of the manifests.
.UNINDENT
.SS passfile
.sp
-Where puppetd stores the password for its private key. Generally unused.
+Where puppet agent stores the password for its private key. Generally unused.
.INDENT 0.0
.IP \(bu 2
.
@@ -1075,7 +1134,7 @@ The public key directory.
.UNINDENT
.SS puppetdlockfile
.sp
-A lock file to temporarily stop puppetd from doing anything.
+A lock file to temporarily stop puppet agent from doing anything.
.INDENT 0.0
.IP \(bu 2
.
@@ -1083,7 +1142,7 @@ A lock file to temporarily stop puppetd from doing anything.
.UNINDENT
.SS puppetdlog
.sp
-The log file for puppetd. This is generally not used.
+The log file for puppet agent. This is generally not used.
.INDENT 0.0
.IP \(bu 2
.
@@ -1091,7 +1150,7 @@ The log file for puppetd. This is generally not used.
.UNINDENT
.SS puppetport
.sp
-Which port puppetd listens on.
+Which port puppet agent listens on.
.INDENT 0.0
.IP \(bu 2
.
@@ -1171,7 +1230,7 @@ The \(aqfrom\(aq email address for the reports.
.UNINDENT
.SS reports
.sp
-The list of reports to generate. All reports are looked for in puppet/reports/<name>.rb, and multiple report names should be comma\-separated (whitespace is okay).
+The list of reports to generate. All reports are looked for in puppet/reports/name.rb, and multiple report names should be comma\-separated (whitespace is okay).
.INDENT 0.0
.IP \(bu 2
.
@@ -1185,6 +1244,14 @@ The list of reports to generate. All reports are looked for in puppet/reports/<
.
\fBDefault\fP: $server
.UNINDENT
+.SS reporturl
+.sp
+The URL used by the http reports processor to send reports
+.INDENT 0.0
+.IP \(bu 2
+.
+\fBDefault\fP: \fI\%http://localhost:3000/reports\fP
+.UNINDENT
.SS req_bits
.sp
The bit length of the certificates.
@@ -1203,7 +1270,7 @@ Where host certificate requests are stored.
.UNINDENT
.SS rest_authconfig
.sp
-The configuration file that defines the rights to the different rest indirections. This can be used as a fine\-grained authorization system for \fBpuppetmasterd\fP.
+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\fP.
.INDENT 0.0
.IP \(bu 2
.
@@ -1235,7 +1302,7 @@ Where Puppet PID files are kept.
.UNINDENT
.SS runinterval
.sp
-How often puppetd applies the client configuration; in seconds.
+How often puppet agent applies the client configuration; in seconds.
.INDENT 0.0
.IP \(bu 2
.
@@ -1259,12 +1326,20 @@ Where the serial number for certificates is stored.
.UNINDENT
.SS server
.sp
-The server to which server puppetd should connect
+The server to which server puppet agent should connect
.INDENT 0.0
.IP \(bu 2
.
\fBDefault\fP: puppet
.UNINDENT
+.SS server_datadir
+.sp
+The directory in which serialized data is stored, usually in a subdirectory.
+.INDENT 0.0
+.IP \(bu 2
+.
+\fBDefault\fP: $vardir/server_data
+.UNINDENT
.SS servertype
.sp
The type of server to use. Currently supported options are webrick and mongrel. If you use mongrel, you will need a proxy in front of the process or processes, since Mongrel cannot speak SSL.
@@ -1315,7 +1390,7 @@ The maximum time to delay before runs. Defaults to being the same as the run in
.UNINDENT
.SS ssl_client_header
.sp
-The header containing an authenticated client\(aqs SSL DN. Only used with Mongrel. This header must be set by the proxy to the authenticated client\(aqs SSL DN (e.g., \fB/CN=puppet.reductivelabs.com\fP). See \fI\%http://reductivelabs.com/puppet/trac/wiki/UsingMongrel\fP for more information.
+The header containing an authenticated client\(aqs SSL DN. Only used with Mongrel. This header must be set by the proxy to the authenticated client\(aqs SSL DN (e.g., \fB/CN=puppet.puppetlabs.com\fP). See \fI\%http://projects.puppetlabs.com/projects/puppet/wiki/Using_Mongrel\fP for more information.
.INDENT 0.0
.IP \(bu 2
.
@@ -1323,7 +1398,7 @@ The header containing an authenticated client\(aqs SSL DN. Only used with Mongr
.UNINDENT
.SS ssl_client_verify_header
.sp
-The header containing the status message of the client verification. Only used with Mongrel. This header must be set by the proxy to \(aqSUCCESS\(aq if the client successfully authenticated, and anything else otherwise. See \fI\%http://reductivelabs.com/puppet/trac/wiki/UsingMongrel\fP for more information.
+The header containing the status message of the client verification. Only used with Mongrel. This header must be set by the proxy to \(aqSUCCESS\(aq if the client successfully authenticated, and anything else otherwise. See \fI\%http://projects.puppetlabs.com/projects/puppet/wiki/Using_Mongrel\fP for more information.
.INDENT 0.0
.IP \(bu 2
.
@@ -1347,7 +1422,7 @@ The directory where Puppet state is stored. Generally, this directory can be re
.UNINDENT
.SS statefile
.sp
-Where puppetd and puppetmasterd store state associated with the running configuration. In the case of puppetmasterd, this file reflects the state discovered through interacting with clients.
+Where puppet agent and puppet master store state associated with the running configuration. In the case of puppet master, this file reflects the state discovered through interacting with clients.
.INDENT 0.0
.IP \(bu 2
.
@@ -1420,14 +1495,6 @@ Whether to print stack traces on some errors
.
\fBDefault\fP: false
.UNINDENT
-.SS typecheck
-.sp
-Whether to validate types during parsing.
-.INDENT 0.0
-.IP \(bu 2
-.
-\fBDefault\fP: true
-.UNINDENT
.SS use_cached_catalog
.sp
Whether to only use the cached catalog rather than compiling a new catalog on every run. Puppet can be run with this enabled by default and then selectively disabled when a recompile is desired.
@@ -1446,7 +1513,7 @@ Whether to use the cached configuration when the remote configuration will not c
.UNINDENT
.SS user
.sp
-The user puppetmasterd should run as.
+The user puppet master should run as.
.INDENT 0.0
.IP \(bu 2
.
@@ -1484,7 +1551,7 @@ Boolean; whether to use the zlib library
.ce 0
.sp
.sp
-\fIThis page autogenerated on Sun Apr 11 17:57:48 \-0400 2010\fP
+\fIThis page autogenerated on Wed Jul 14 14:33:09 \-0700 2010\fP
.\" Generated by docutils manpage writer.
.\"
.
diff --git a/man/man8/filebucket.8 b/man/man8/filebucket.8
index de2dee733..dc2d60e63 100644
--- a/man/man8/filebucket.8
+++ b/man/man8/filebucket.8
@@ -11,7 +11,7 @@ A stand\-alone Puppet filebucket client.
.INDENT 3.5
.INDENT 0.0
.TP
-.B filebucket [\-h|\-\-help] [\-V|\-\-version] [\-d|\-\-debug] [\-v|\-\-verbose]
+.B puppet filebucket [\-h|\-\-help] [\-V|\-\-version] [\-d|\-\-debug] [\-v|\-\-verbose]
.
[\-l|\-\-local] [\-r|\-\-remote]
[\-s|\-\-server <server>] [\-b|\-\-bucket <directory>] <file> <file> ...
@@ -50,9 +50,9 @@ use your local file bucket by specifying +\-\-local+.
.INDENT 0.0
.INDENT 3.5
.sp
-$ filebucket backup /etc/passwd
+$ puppet filebucket backup /etc/passwd
/etc/passwd: 429b225650b912a2ee067b0a4cf1e949
-$ filebucket restore /tmp/passwd 429b225650b912a2ee067b0a4cf1e949
+$ puppet filebucket restore /tmp/passwd 429b225650b912a2ee067b0a4cf1e949
$
.UNINDENT
.UNINDENT
@@ -64,7 +64,7 @@ configuration parameter, so you can specify \(aq\-\-ssldir <directory>\(aq as an
argument.
.sp
See the configuration file documentation at
-\fI\%http://reductivelabs.com/trac/puppet/wiki/ConfigurationReference\fP for the
+\fI\%http://docs.puppetlabs.com/references/stable/configuration.html\fP for the
full list of acceptable parameters. A commented list of all
configuration options can also be generated by running puppet with
\(aq\-\-genconfig\(aq.
@@ -92,7 +92,7 @@ version: Print version information.
.INDENT 0.0
.INDENT 3.5
.sp
-filebucket \-b /tmp/filebucket /my/file
+puppet filebucket \-b /tmp/filebucket /my/file
.UNINDENT
.UNINDENT
.SH AUTHOR
diff --git a/man/man8/pi.8 b/man/man8/pi.8
index 519be2ca9..3e25485fc 100644
--- a/man/man8/pi.8
+++ b/man/man8/pi.8
@@ -11,7 +11,7 @@ detailed help.
.INDENT 0.0
.INDENT 3.5
.sp
-pi [\-h|\-\-help] [\-s|\-\-short] [\-p|\-\-providers] [\-l|\-\-list] [\-m|\-\-meta]
+puppet describe [\-h|\-\-help] [\-s|\-\-short] [\-p|\-\-providers] [\-l|\-\-list] [\-m|\-\-meta]
.UNINDENT
.UNINDENT
.SH DESCRIPTION
@@ -33,9 +33,9 @@ short: List only parameters without detail
.INDENT 0.0
.INDENT 3.5
.sp
-pi \-\-list
-pi file \-\-providers
-pi user \-s \-m
+puppet describe \-\-list
+puppet describe file \-\-providers
+puppet describe user \-s \-m
.UNINDENT
.UNINDENT
.SH AUTHOR
diff --git a/man/man8/puppet.8 b/man/man8/puppet.8
index 02176ce81..7fa2a05c2 100644
--- a/man/man8/puppet.8
+++ b/man/man8/puppet.8
@@ -3,80 +3,9 @@
\-
.\" Man page generated from reStructeredText.
.
-.SH SYNOPSIS
.sp
-Run a stand\-alone +puppet+ manifest.
-.SH USAGE
-.INDENT 0.0
-.INDENT 3.5
-.INDENT 0.0
-.TP
-.B puppet [\-h|\-\-help] [\-V|\-\-version] [\-d|\-\-debug] [\-v|\-\-verbose] [\-e|\-\-execute]
-.
-[\-\-detailed\-exitcodes] [\-l|\-\-logdest <file>] <file>
-.UNINDENT
-.UNINDENT
-.UNINDENT
-.SH DESCRIPTION
-.sp
-This is the standalone puppet execution tool; use it to execute
-individual manifests that you write. If you need to execute site\-wide
-manifests, use +puppetd+ and +puppetmasterd+.
-.SH OPTIONS
-.sp
-Note that any configuration parameter that\(aqs valid in the configuration
-file is also a valid long argument. For example, \(aqssldir\(aq is a valid
-configuration parameter, so you can specify \(aq\-\-ssldir <directory>\(aq as an
-argument.
-.sp
-See the configuration file documentation at
-\fI\%http://reductivelabs.com/trac/puppet/wiki/ConfigurationReference\fP for the
-full list of acceptable parameters. A commented list of all
-configuration options can also be generated by running puppet with
-\(aq\-\-genconfig\(aq.
-.sp
-debug: Enable full debugging.
-.INDENT 0.0
-.TP
-.B detailed\-exitcodes: Provide transaction information via exit codes. If
-.
-this is enabled, an exit code of \(aq2\(aq means there
-were changes, and an exit code of \(aq4\(aq means that
-there were failures during the transaction.
-.UNINDENT
-.sp
-help: Print this help message
-.INDENT 0.0
-.TP
-.B loadclasses: Load any stored classes. +puppetd+ caches configured
-.
-classes (usually at /etc/puppet/classes.txt), and
-setting this option causes all of those classes to
-be set in your +puppet+ manifest.
-.TP
-.B logdest: Where to send messages. Choose between syslog, the
-.
-console, and a log file. Defaults to sending
-messages to the console.
-.UNINDENT
-.sp
-execute: Execute a specific piece of Puppet code
-.sp
-verbose: Print extra information.
-.SH EXAMPLE
-.INDENT 0.0
-.INDENT 3.5
-.sp
-puppet \-l /tmp/manifest.log manifest.pp
-.UNINDENT
-.UNINDENT
-.SH AUTHOR
-.sp
-Luke Kanies
-.SH COPYRIGHT
-.sp
-Copyright (c) 2005 Reductive Labs, LLC Licensed under the GNU Public
-License
+Usage: puppet command <space separated arguments>
+Available commands are: agent, apply, cert, describe, doc, filebucket, kick, master, pi, puppet, puppetca, puppetd, puppetdoc, puppetmasterd, puppetqd, puppetrun, queue, ralsh, resource
.\" Generated by docutils manpage writer.
.\"
.
diff --git a/man/man8/puppetca.8 b/man/man8/puppetca.8
index 92e9de1b1..ec1f5045c 100644
--- a/man/man8/puppetca.8
+++ b/man/man8/puppetca.8
@@ -12,10 +12,11 @@ but mostly meant for signing certificate requests from puppet clients.
.INDENT 3.5
.INDENT 0.0
.TP
-.B puppetca [\-h|\-\-help] [\-V|\-\-version] [\-d|\-\-debug] [\-v|\-\-verbose]
+.B puppet cert [\-h|\-\-help] [\-V|\-\-version] [\-d|\-\-debug] [\-v|\-\-verbose]
.
[\-g|\-\-generate] [\-l|\-\-list] [\-s|\-\-sign] [\-r|\-\-revoke]
-[\-p|\-\-print] [\-c|\-\-clean] [\-\-verify] [host]
+[\-p|\-\-print] [\-c|\-\-clean] [\-\-verify] [\-\-digest DIGEST]
+[\-\-fingerprint] [host]
.UNINDENT
.UNINDENT
.UNINDENT
@@ -35,72 +36,86 @@ argument.
See the configuration file documentation at
\fI\%http://reductivelabs.com/projects/puppet/reference/configref.html\fP for
the full list of acceptable parameters. A commented list of all
-configuration options can also be generated by running puppetca with
+configuration options can also be generated by running puppet cert with
\(aq\-\-genconfig\(aq.
.INDENT 0.0
.TP
-.B all: Operate on all items. Currently only makes sense with
+.B all: Operate on all items. Currently only makes sense with
.
\(aq\-\-sign\(aq, \(aq\-\-clean\(aq, or \(aq\-\-list\(aq.
.TP
-.B clean: Remove all files related to a host from puppetca\(aqs storage.
+.B digest: Set the digest for fingerprinting (defaults to md5). Valid
.
-This is useful when rebuilding hosts, since new certificate
-signing requests will only be honored if puppetca does not
-have a copy of a signed certificate for that host. The
-certificate of the host remains valid. If \(aq\-\-all\(aq is specified
-then all host certificates, both signed and unsigned, will be
-removed.
+values depends on your openssl and openssl ruby extension
+version, but should contain at least md5, sha1, md2,
+sha256.
+.TP
+.B clean: Remove all files related to a host from puppet cert\(aqs
+.
+storage. This is useful when rebuilding hosts, since new
+certificate signing requests will only be honored if puppet
+cert does not have a copy of a signed certificate for that
+host. The certificate of the host remains valid. If \(aq\-\-all\(aq
+is specified then all host certificates, both signed and
+unsigned, will be removed.
.UNINDENT
.sp
-debug: Enable full debugging.
+debug: Enable full debugging.
.INDENT 0.0
.TP
-.B generate: Generate a certificate for a named client. A
+.B generate: Generate a certificate for a named client. A
.
-certificate/keypair will be generated for each client named on
-the command line.
+certificate/keypair will be generated for each client named
+on the command line.
.UNINDENT
.sp
-help: Print this help message
+help: Print this help message
.INDENT 0.0
.TP
-.B list: List outstanding certificate requests. If \(aq\-\-all\(aq is
+.B list: List outstanding certificate requests. If \(aq\-\-all\(aq is
.
specified, signed certificates are also listed, prefixed by
-\(aq+\(aq, and revoked or invalid certificates are prefixed by \(aq\-\(aq
-(the verification outcome is printed in parenthesis).
+\(aq+\(aq, and revoked or invalid certificates are prefixed by
+\(aq\-\(aq (the verification outcome is printed in parenthesis).
.UNINDENT
.sp
-print: Print the full\-text version of a host\(aqs certificate.
+print: Print the full\-text version of a host\(aqs certificate.
.INDENT 0.0
.TP
-.B revoke: Revoke the certificate of a client. The certificate can be
+.B fingerprint: Print the DIGEST (defaults to md5) fingerprint of a host\(aqs
+.
+certificate.
+.TP
+.B revoke: Revoke the certificate of a client. The certificate can be
.
specified either by its serial number, given as a decimal
number or a hexadecimal number prefixed by \(aq0x\(aq, or by its
hostname. The certificate is revoked by adding it to the
Certificate Revocation List given by the \(aqcacrl\(aq config
-parameter. Note that the puppetmasterd needs to be restarted
-after revoking certificates.
+parameter. Note that the puppetmasterd needs to be
+restarted after revoking certificates.
.TP
-.B sign: Sign an outstanding certificate request. Unless \(aq\-\-all\(aq is
+.B sign: Sign an outstanding certificate request. Unless \(aq\-\-all\(aq is
.
specified, hosts must be listed after all flags.
.UNINDENT
.sp
-verbose: Enable verbosity.
-.sp
-version: Print the puppet version number and exit.
+verbose: Enable verbosity.
.sp
-verify: Verify the named certificate against the local CA certificate.
+version: Print the puppet version number and exit.
+.INDENT 0.0
+.TP
+.B verify: Verify the named certificate against the local CA
+.
+certificate.
+.UNINDENT
.SH EXAMPLE
.INDENT 0.0
.INDENT 3.5
.sp
-$ puppetca \-l
+$ puppet cert \-l
culain.madstop.com
-$ puppetca \-s culain.madstop.com
+$ puppet cert \-s culain.madstop.com
.UNINDENT
.UNINDENT
.SH AUTHOR
diff --git a/man/man8/puppetd.8 b/man/man8/puppetd.8
index c2d5cb530..090c3342d 100644
--- a/man/man8/puppetd.8
+++ b/man/man8/puppetd.8
@@ -4,8 +4,8 @@ Synopsis \-
.\" Man page generated from reStructeredText.
.
.sp
-Retrieve the client configuration from the central puppet server and
-apply it to the local host.
+Retrieve the client configuration from the puppet master and apply it to
+the local host.
.sp
Currently must be run out periodically, using cron or something similar.
.SH USAGE
@@ -13,11 +13,13 @@ Currently must be run out periodically, using cron or something similar.
.INDENT 3.5
.INDENT 0.0
.TP
-.B puppetd [\-D|\-\-daemonize|\-\-no\-daemonize] [\-d|\-\-debug] [\-\-disable] [\-\-enable]
+.B puppet agent [\-D|\-\-daemonize|\-\-no\-daemonize] [\-d|\-\-debug]
.
+[\-\-detailed\-exitcodes] [\-\-disable] [\-\-enable]
[\-h|\-\-help] [\-\-fqdn <host name>] [\-l|\-\-logdest syslog|<file>|console]
[\-o|\-\-onetime] [\-\-serve <handler>] [\-t|\-\-test] [\-\-noop]
-[\-V|\-\-version] [\-v|\-\-verbose] [\-w|\-\-waitforcert <seconds>]
+[\-\-digest <digest>] [\-\-fingerprint] [\-V|\-\-version]
+[\-v|\-\-verbose] [\-w|\-\-waitforcert <seconds>]
.UNINDENT
.UNINDENT
.UNINDENT
@@ -36,17 +38,18 @@ Once the client has a signed certificate, it will retrieve its
configuration and apply it.
.SH USAGE NOTES
.sp
-+puppetd+ does its best to find a compromise between interactive use and
-daemon use. Run with no arguments and no configuration, it will go into
-the backgroun, attempt to get a signed certificate, and retrieve and
-apply its configuration every 30 minutes.
++puppet agent+ does its best to find a compromise between interactive
+use and daemon use. Run with no arguments and no configuration, it will
+go into the backgroun, attempt to get a signed certificate, and retrieve
+and apply its configuration every 30 minutes.
.sp
Some flags are meant specifically for interactive use \-\- in particular,
-+test+ and +tags+ are useful. +test+ enables verbose logging, causes the
-daemon to stay in the foreground, exits if the server\(aqs configuration is
-invalid (this happens if, for instance, you\(aqve left a syntax error on
-the server), and exits after running the configuration once (rather than
-hanging around as a long\-running process).
++test+, +tags+ or +fingerprint+ are useful. +test+ enables verbose
+logging, causes the daemon to stay in the foreground, exits if the
+server\(aqs configuration is invalid (this happens if, for instance, you\(aqve
+left a syntax error on the server), and exits after running the
+configuration once (rather than hanging around as a long\-running
+process).
.sp
+tags+ allows you to specify what portions of a configuration you want
to apply. Puppet elements are tagged with all of the class or definition
@@ -58,6 +61,15 @@ manage +ntpd+, you would put all of the new elements into an +ntpd+
class, and call puppet with +\-\-tags ntpd+, which would only apply that
small portion of the configuration during your testing, rather than
applying the whole thing.
+.sp
++fingerprint+ is a one\-time flag. In this mode +puppet agent+ will run
+once and display on the console (and in the log) the current certificate
+(or certificate request) fingerprint. Providing the +\-\-digest+ option
+allows to use a different digest algorithm to generate the fingerprint.
+The main use is to verify that before signing a certificate request on
+the master, the certificate request the master received is the same as
+the one the client sent (to prevent against man\-in\-the\-middle attacks
+when signing certificates).
.SH OPTIONS
.sp
Note that any configuration parameter that\(aqs valid in the configuration
@@ -66,111 +78,141 @@ configuration parameter, so you can specify \(aq\-\-server <servername>\(aq as
an argument.
.sp
See the configuration file documentation at
-\fI\%http://reductivelabs.com/trac/puppet/wiki/ConfigurationReference\fP for the
+\fI\%http://docs.puppetlabs.com/references/stable/configuration.html\fP for the
full list of acceptable parameters. A commented list of all
-configuration options can also be generated by running puppetd with
+configuration options can also be generated by running puppet agent with
\(aq\-\-genconfig\(aq.
+.INDENT 0.0
+.TP
+.B daemonize: Send the process into the background. This is the
+.
+default.
+.UNINDENT
.sp
-daemonize: Send the process into the background. This is the default.
-.sp
-no\-daemonize: Do not send the process into the background.
+no\-daemonize: Do not send the process into the background.
.sp
-debug: Enable full debugging.
+debug: Enable full debugging.
.INDENT 0.0
.TP
-.B disable: Disable working on the local system. This puts a lock file
+.B digest: Change the certificate fingerprinting digest
+.
+algorithm. The default is MD5. Valid values depends
+on the version of OpenSSL installed, but should
+always at least contain MD5, MD2, SHA1 and SHA256.
+.TP
+.B detailed\-exitcodes: Provide transaction information via exit codes. If
+.
+this is enabled, an exit code of \(aq2\(aq means there
+were changes, and an exit code of \(aq4\(aq means that
+there were failures during the transaction. This
+option only makes sense in conjunction with
+\-\-onetime.
+.TP
+.B disable: Disable working on the local system. This puts a
.
-in place, causing +puppetd+ not to work on the system
-until the lock file is removed. This is useful if you are
-testing a configuration and do not want the central
-configuration to override the local state until everything
-is tested and committed.
+lock file in place, causing +puppet agent+ not to
+work on the system until the lock file is removed.
+This is useful if you are testing a configuration
+and do not want the central configuration to
+override the local state until everything is tested
+and committed.
.UNINDENT
.sp
-+puppetd+ uses the same lock file while it is running, so no more than
-one +puppetd+ process is working at a time.
++puppet agent+ uses the same lock file while it is running, so no more
+than one +puppet agent+ process is working at a time.
.sp
-+puppetd+ exits after executing this.
++puppet agent+ exits after executing this.
.INDENT 0.0
.TP
-.B enable: Enable working on the local system. This removes any lock
+.B enable: Enable working on the local system. This removes any
.
-file, causing +puppetd+ to start managing the local system
-again (although it will continue to use its normal
-scheduling, so it might not start for another half hour).
+lock file, causing +puppet agent+ to start managing
+the local system again (although it will continue to
+use its normal scheduling, so it might not start for
+another half hour).
.UNINDENT
.sp
-+puppetd+ exits after executing this.
++puppet agent+ exits after executing this.
.INDENT 0.0
.TP
-.B fqdn: Set the fully\-qualified domain name of the client. This is
+.B fqdn: Set the fully\-qualified domain name of the client.
.
-only used for certificate purposes, but can be used to
-override the discovered hostname. If you need to use this
-flag, it is generally an indication of a setup problem.
+This is only used for certificate purposes, but can
+be used to override the discovered hostname. If you
+need to use this flag, it is generally an indication
+of a setup problem.
.UNINDENT
.sp
-help: Print this help message
+help: Print this help message
.INDENT 0.0
.TP
-.B logdest: Where to send messages. Choose between syslog, the
+.B logdest: Where to send messages. Choose between syslog, the
.
-console, and a log file. Defaults to sending messages to
-syslog, or the console if debugging or verbosity is
-enabled.
+console, and a log file. Defaults to sending
+messages to syslog, or the console if debugging or
+verbosity is enabled.
.TP
-.B no\-client: Do not create a config client. This will cause the daemon
+.B no\-client: Do not create a config client. This will cause the
.
-to run without ever checking for its configuration
-automatically, and only makes sense when used in
-conjunction with \-\-listen.
+daemon to run without ever checking for its
+configuration automatically, and only makes sense
+when used in conjunction with \-\-listen.
.TP
-.B onetime: Run the configuration once. Runs a single daemonized
+.B onetime: Run the configuration once. Runs a single (normally
.
-Puppet run. Useful for interactively running puppetd and
-hence used in conjunction with the \-\-no\-daemonize option.
+daemonized) Puppet run. Useful for interactively
+running puppet agent when used in conjunction with
+the \-\-no\-daemonize option.
.TP
-.B serve: Start another type of server. By default, +puppetd+ will
-.
-start a service handler that allows authenticated and
-authorized remote nodes to trigger the configuration to be
-pulled down and applied. You can specify any handler here
-that does not require configuration, e.g., filebucket, ca,
-or resource. The handlers are in
-+lib/puppet/network/handler+, and the names must match
-exactly, both in the call to +serve+ and in
-+namespaceauth.conf+.
+.B fingerprint: Display the current certificate or certificate
+.
+signing request fingerprint and then exit. Use the
++\-\-digest+ option to change the digest algorithm
+used.
.TP
-.B test: Enable the most common options used for testing. These are
+.B serve: Start another type of server. By default, +puppet
.
-+onetime+, +verbose+, +ignorecache, +no\-daemonize+, and
-+no\-usecacheonfailure+.
+agent+ will start a service handler that allows
+authenticated and authorized remote nodes to trigger
+the configuration to be pulled down and applied. You
+can specify any handler here that does not require
+configuration, e.g., filebucket, ca, or resource.
+The handlers are in +lib/puppet/network/handler+,
+and the names must match exactly, both in the call
+to +serve+ and in +namespaceauth.conf+.
.TP
-.B noop: Use +noop+ mode where the daemon runs in a no\-op or
+.B test: Enable the most common options used for testing.
+.
+These are +onetime+, +verbose+, +ignorecache,
++no\-daemonize+, and +no\-usecacheonfailure+.
+.TP
+.B noop: Use +noop+ mode where the daemon runs in a no\-op or
.
dry\-run mode. This is useful for seeing what changes
-Puppet will make without actually executing the changes.
+Puppet will make without actually executing the
+changes.
.UNINDENT
.sp
-verbose: Turn on verbose reporting.
+verbose: Turn on verbose reporting.
.sp
-version: Print the puppet version number and exit.
+version: Print the puppet version number and exit.
.INDENT 0.0
.TP
-.B waitforcert: This option only matters for daemons that do not yet have
-.
-certificates and it is enabled by default, with a value of
-120 (seconds). This causes +puppetd+ to connect to the
-server every 2 minutes and ask it to sign a certificate
-request. This is useful for the initial setup of a puppet
-client. You can turn off waiting for certificates by
-specifying a time of 0.
+.B waitforcert: This option only matters for daemons that do not yet
+.
+have certificates and it is enabled by default, with
+a value of 120 (seconds). This causes +puppet agent+
+to connect to the server every 2 minutes and ask it
+to sign a certificate request. This is useful for
+the initial setup of a puppet client. You can turn
+off waiting for certificates by specifying a time of
+0.
.UNINDENT
.SH EXAMPLE
.INDENT 0.0
.INDENT 3.5
.sp
-puppetd \-\-server puppet.domain.com
+puppet agent \-\-server puppet.domain.com
.UNINDENT
.UNINDENT
.SH AUTHOR
diff --git a/man/man8/puppetdoc.8 b/man/man8/puppetdoc.8
index 5cf7269f0..281b7385e 100644
--- a/man/man8/puppetdoc.8
+++ b/man/man8/puppetdoc.8
@@ -12,9 +12,9 @@ Reductive Labs use.
.INDENT 3.5
.INDENT 0.0
.TP
-.B puppetdoc [\-a|\-\-all] [\-h|\-\-help] [\-o|\-\-outputdir <rdoc outputdir>] [\-m|\-\-mode <text|pdf|markdown|trac|rdoc>]
+.B puppet doc [\-a|\-\-all] [\-h|\-\-help] [\-o|\-\-outputdir <rdoc outputdir>] [\-m|\-\-mode <text|pdf|markdown|trac|rdoc>]
.
-[\-r|\-\-reference <[type]|configuration|..>] [manifest\-file]
+[\-r|\-\-reference <[type]|configuration|..>] [\-\-charset CHARSET] [manifest\-file]
.UNINDENT
.UNINDENT
.UNINDENT
@@ -32,7 +32,7 @@ directives. The generated documentation directory is doc by default but
can be changed with the \(aqoutputdir\(aq option.
.sp
If the command is started with \(aqmanifest\-file\(aq command\-line arguments,
-puppetdoc generate a single manifest documentation that is output on
+puppet doc generate a single manifest documentation that is output on
stdout.
.SH OPTIONS
.INDENT 0.0
@@ -59,13 +59,17 @@ The default mode is \(aqtext\(aq. In \(aqrdoc\(aq mode you must provide
.TP
.B reference: Build a particular reference. Get a list of references by
.
-running +puppetdoc \-\-list+.
+running +puppet doc \-\-list+.
+.TP
+.B charset: Used only in \(aqrdoc\(aq mode. It sets the charset used in the
+.
+html files produced.
.UNINDENT
.SH EXAMPLE
.INDENT 0.0
.INDENT 3.5
.sp
-$ puppetdoc \-r type > /tmp/type_reference.rst
+$ puppet doc \-r type > /tmp/type_reference.rst
.UNINDENT
.UNINDENT
.sp
@@ -73,7 +77,7 @@ or
.INDENT 0.0
.INDENT 3.5
.sp
-$ puppetdoc \-\-outputdir /tmp/rdoc \-\-mode rdoc /path/to/manifests
+$ puppet doc \-\-outputdir /tmp/rdoc \-\-mode rdoc /path/to/manifests
.UNINDENT
.UNINDENT
.sp
@@ -81,7 +85,7 @@ or
.INDENT 0.0
.INDENT 3.5
.sp
-$ puppetdoc /etc/puppet/manifests/site.pp
+$ puppet doc /etc/puppet/manifests/site.pp
.UNINDENT
.UNINDENT
.sp
@@ -89,7 +93,7 @@ or
.INDENT 0.0
.INDENT 3.5
.sp
-$ puppetdoc \-m markdown \-r configuration
+$ puppet doc \-m markdown \-r configuration
.UNINDENT
.UNINDENT
.SH AUTHOR
diff --git a/man/man8/puppetmasterd.8 b/man/man8/puppetmasterd.8
index 5bfea2ef2..f6fb1e095 100644
--- a/man/man8/puppetmasterd.8
+++ b/man/man8/puppetmasterd.8
@@ -12,7 +12,7 @@ default.
.INDENT 3.5
.INDENT 0.0
.TP
-.B puppetmasterd [\-D|\-\-daemonize|\-\-no\-daemonize] [\-d|\-\-debug] [\-h|\-\-help]
+.B puppet master [\-D|\-\-daemonize|\-\-no\-daemonize] [\-d|\-\-debug] [\-h|\-\-help]
.
[\-l|\-\-logdest <file>|console|syslog] [\-v|\-\-verbose] [\-V|\-\-version]
.UNINDENT
@@ -29,7 +29,7 @@ configuration parameter, so you can specify \(aq\-\-ssldir <directory>\(aq as an
argument.
.sp
See the configuration file documentation at
-\fI\%http://reductivelabs.com/trac/puppet/wiki/ConfigurationReference\fP for the
+\fI\%http://docs.puppetlabs.com/references/stable/configuration.html\fP for the
full list of acceptable parameters. A commented list of all
configuration options can also be generated by running puppetmasterdd
with \(aq\-\-genconfig\(aq.
@@ -57,7 +57,7 @@ version: Print the puppet version number and exit.
.INDENT 0.0
.INDENT 3.5
.sp
-puppetmasterd
+puppet master
.UNINDENT
.UNINDENT
.SH AUTHOR
diff --git a/man/man8/puppetqd.8 b/man/man8/puppetqd.8
index bf08f2bb2..db27c664e 100644
--- a/man/man8/puppetqd.8
+++ b/man/man8/puppetqd.8
@@ -9,7 +9,7 @@ Retrieve serialized records from a queue and process them in order.
.INDENT 0.0
.INDENT 3.5
.sp
-puppetqd [\-d|\-\-debug] [\-v|\-\-verbose]
+puppet queue [\-d|\-\-debug] [\-v|\-\-verbose]
.UNINDENT
.UNINDENT
.SH DESCRIPTION
@@ -24,7 +24,7 @@ configuration parameter, so you can specify \(aq\-\-server <servername>\(aq as
an argument.
.sp
See the configuration file documentation at
-\fI\%http://reductivelabs.com/trac/puppet/wiki/ConfigurationReference\fP for the
+\fI\%http://docs.puppetlabs.com/references/stable/configuration.html\fP for the
full list of acceptable parameters. A commented list of all
configuration options can also be generated by running puppetd with
\(aq\-\-genconfig\(aq.
@@ -40,7 +40,7 @@ version: Print the puppet version number and exit.
.INDENT 0.0
.INDENT 3.5
.sp
-puppetqd
+puppet queue
.UNINDENT
.UNINDENT
.SH AUTHOR
diff --git a/man/man8/puppetrun.8 b/man/man8/puppetrun.8
index 73a4ba3f2..9cbc2bd9b 100644
--- a/man/man8/puppetrun.8
+++ b/man/man8/puppetrun.8
@@ -5,47 +5,48 @@
.
.SH SYNOPSIS
.sp
-Trigger a puppetd run on a set of hosts.
+Trigger a puppet agent run on a set of hosts.
.SH USAGE
.INDENT 0.0
.INDENT 3.5
.INDENT 0.0
.TP
-.B puppetrun [\-a|\-\-all] [\-c|\-\-class <class>] [\-d|\-\-debug] [\-f|\-\-foreground]
+.B puppet kick [\-a|\-\-all] [\-c|\-\-class <class>] [\-d|\-\-debug] [\-f|\-\-foreground]
.
[\-h|\-\-help] [\-\-host <host>] [\-\-no\-fqdn] [\-\-ignoreschedules]
-[\-t|\-\-tag <tag>] [\-\-test] [\-p|\-\-ping]
+[\-t|\-\-tag <tag>] [\-\-test] [\-p|\-\-ping] <host> [<host> [...]]
.UNINDENT
.UNINDENT
.UNINDENT
.SH DESCRIPTION
.sp
-This script can be used to connect to a set of machines running
-+puppetd+ and trigger them to run their configurations. The most common
+This script can be used to connect to a set of machines running +puppet
+agent+ and trigger them to run their configurations. The most common
usage would be to specify a class of hosts and a set of tags, and
-+puppetrun+ would look up in LDAP all of the hosts matching that class,
-then connect to each host and trigger a run of all of the objects with
-the specified tags.
++puppet kick+ would look up in LDAP all of the hosts matching that
+class, then connect to each host and trigger a run of all of the objects
+with the specified tags.
.sp
If you are not storing your host configurations in LDAP, you can specify
hosts manually.
.sp
-You will most likely have to run +puppetrun+ as root to get access to
+You will most likely have to run +puppet kick+ as root to get access to
the SSL certificates.
.sp
-+puppetrun+ reads +puppetmaster+\(aqs configuration file, so that it can
++puppet kick+ reads +puppet master+\(aqs configuration file, so that it can
copy things like LDAP settings.
.SH USAGE NOTES
.sp
-+puppetrun+ is useless unless +puppetd+ is listening. See its
++puppet kick+ is useless unless +puppet agent+ is listening. See its
documentation for more information, but the gist is that you must enable
-+listen+ on the +puppetd+ daemon, either using +\-\-listen+ on the command
-line or adding \(aqlisten: true\(aq in its config file. In addition, you need
-to set the daemons up to specifically allow connections by creating the
-+namespaceauth+ file, normally at \(aq/etc/puppet/namespaceauth.conf\(aq. This
-file specifies who has access to each namespace; if you create the file
-you must add every namespace you want any Puppet daemon to allow \-\- it
-is currently global to all Puppet daemons.
++listen+ on the +puppet agent+ daemon, either using +\-\-listen+ on the
+command line or adding \(aqlisten: true\(aq in its config file. In addition,
+you need to set the daemons up to specifically allow connections by
+creating the +namespaceauth+ file, normally at
+\(aq/etc/puppet/namespaceauth.conf\(aq. This file specifies who has access to
+each namespace; if you create the file you must add every namespace you
+want any Puppet daemon to allow \-\- it is currently global to all Puppet
+daemons.
.sp
An example file looks like this:
.sp
@@ -76,7 +77,7 @@ argument.
See the configuration file documentation at
\fI\%http://reductivelabs.com/projects/puppet/reference/configref.html\fP for
the full list of acceptable parameters. A commented list of all
-configuration options can also be generated by running puppetmasterdd
+configuration options can also be generated by running puppet master
with \(aq\-\-genconfig\(aq.
.INDENT 0.0
.TP
@@ -137,7 +138,7 @@ Do a ICMP echo against the target host. Skip hosts that don\(aqt respond to ping
.INDENT 0.0
.INDENT 3.5
.sp
-sudo puppetrun \-p 10 \-\-host host1 \-\-host host2 \-t remotefile \-t webserver
+sudo puppet kick \-p 10 \-t remotefile \-t webserver host1 host2
.UNINDENT
.UNINDENT
.SH AUTHOR
diff --git a/man/man8/ralsh.8 b/man/man8/ralsh.8
index 98892e0c9..83494bba5 100644
--- a/man/man8/ralsh.8
+++ b/man/man8/ralsh.8
@@ -3,8 +3,6 @@
\-
.\" Man page generated from reStructeredText.
.
-.sp
-vim: softtabstop=4 shiftwidth=4 expandtab
.SH SYNOPSIS
.sp
Use the Puppet RAL to directly interact with the system.
@@ -13,9 +11,10 @@ Use the Puppet RAL to directly interact with the system.
.INDENT 3.5
.INDENT 0.0
.TP
-.B ralsh [\-h|\-\-help] [\-d|\-\-debug] [\-v|\-\-verbose] [\-e|\-\-edit] [\-H|\-\-host <host>]
+.B puppet resource [\-h|\-\-help] [\-d|\-\-debug] [\-v|\-\-verbose] [\-e|\-\-edit]
.
-[\-p|\-\-param <param>] [\-t|\-\-types] type <name>
+[\-H|\-\-host <host>] [\-p|\-\-param <param>] [\-t|\-\-types]
+type <name>
.UNINDENT
.UNINDENT
.UNINDENT
@@ -25,15 +24,15 @@ This command provides simple facilities for converting current system
state into Puppet code, along with some ability to use Puppet to affect
the current state.
.sp
-By default, you must at least provide a type to list, which case ralsh
-will tell you everything it knows about all instances of that type. You
-can optionally specify an instance name, and ralsh will only describe
-that single instance.
+By default, you must at least provide a type to list, which case puppet
+resource will tell you everything it knows about all instances of that
+type. You can optionally specify an instance name, and puppet resource
+will only describe that single instance.
.sp
-You can also add +\-\-edit+ as an argument, and ralsh will write its
-output to a file, open that file in an editor, and then apply the file
-as a Puppet transaction. You can easily use this to use Puppet to make
-simple changes to a system.
+You can also add +\-\-edit+ as an argument, and puppet resource will write
+its output to a file, open that file in an editor, and then apply the
+file as a Puppet transaction. You can easily use this to use Puppet to
+make simple changes to a system.
.SH OPTIONS
.sp
Note that any configuration parameter that\(aqs valid in the configuration
@@ -42,7 +41,7 @@ configuration parameter, so you can specify \(aq\-\-ssldir <directory>\(aq as an
argument.
.sp
See the configuration file documentation at
-\fI\%http://reductivelabs.com/trac/puppet/wiki/ConfigurationReference\fP for the
+\fI\%http://docs.puppetlabs.com/references/stable/configuration.html\fP for the
full list of acceptable parameters. A commented list of all
configuration options can also be generated by running puppet with
\(aq\-\-genconfig\(aq.
@@ -94,12 +93,12 @@ List all available types.
verbose: Print extra information.
.SH EXAMPLE
.sp
-This example uses \fBralsh\fP to return Puppet configuration for the user
-\fBluke\fP:
+This example uses \fBpuppet resource\fP to return Puppet configuration for
+the user \fBluke\fP:
.sp
.nf
.ft C
-$ ralsh user luke
+$ puppet resource user luke
user { \(aqluke\(aq:
home => \(aq/home/luke\(aq,
uid => \(aq100\(aq,
diff --git a/spec/unit/application/agent_spec.rb b/spec/unit/application/agent_spec.rb
index 079e0adb5..54726c185 100755
--- a/spec/unit/application/agent_spec.rb
+++ b/spec/unit/application/agent_spec.rb
@@ -59,12 +59,6 @@ describe Puppet::Application::Agent do
@puppetd.preinit
end
- it "should set waitforcert to 120" do
- @puppetd.preinit
-
- @puppetd.options[:waitforcert].should == 120
- end
-
it "should init client to true" do
@puppetd.preinit
@@ -124,21 +118,22 @@ describe Puppet::Application::Agent do
@puppetd.options[:client].should be_false
end
- it "should set onetime to true with --onetime" do
- @puppetd.handle_onetime(nil)
- Puppet[:onetime].should be_true
+ it "should set waitforcert to 0 with --onetime and if --waitforcert wasn't given" do
+ Puppet[:onetime] = true
+ Puppet::SSL::Host.any_instance.expects(:wait_for_cert).with(0)
+ @puppetd.setup_host
end
- it "should set waitforcert to 0 with --onetime and if --waitforcert wasn't given" do
- @puppetd.explicit_waitforcert = false
- @puppetd.handle_onetime(nil)
- @puppetd.options[:waitforcert].should == 0
+ it "should use supplied waitforcert when --onetime is specified" do
+ Puppet[:onetime] = true
+ @puppetd.handle_waitforcert(60)
+ Puppet::SSL::Host.any_instance.expects(:wait_for_cert).with(60)
+ @puppetd.setup_host
end
- it "should not reset waitforcert with --onetime when --waitforcert is used" do
- @puppetd.explicit_waitforcert = true
- @puppetd.handle_onetime(nil)
- @puppetd.options[:waitforcert].should_not == 0
+ it "should use a default value for waitforcert when --onetime and --waitforcert are not specified" do
+ Puppet::SSL::Host.any_instance.expects(:wait_for_cert).with(120)
+ @puppetd.setup_host
end
it "should set the log destination with --logdest" do
@@ -168,13 +163,6 @@ describe Puppet::Application::Agent do
@puppetd.handle_waitforcert("42")
end
- it "should mark explicit_waitforcert to true with --waitforcert" do
- @puppetd.options.stubs(:[]=)
-
- @puppetd.handle_waitforcert("42")
- @puppetd.explicit_waitforcert.should be_true
- end
-
it "should set args[:Port] with --port" do
@puppetd.handle_port("42")
@puppetd.args[:Port].should == "42"
@@ -226,10 +214,6 @@ describe Puppet::Application::Agent do
@puppetd.options.expects(:[]=).with(:detailed_exitcodes,true)
@puppetd.setup_test
end
- it "should set waitforcert to 0" do
- @puppetd.options.expects(:[]=).with(:waitforcert,0)
- @puppetd.setup_test
- end
end
it "should call setup_logs" do
diff --git a/spec/unit/resource_spec.rb b/spec/unit/resource_spec.rb
index aff3816c2..95f0dd04b 100755
--- a/spec/unit/resource_spec.rb
+++ b/spec/unit/resource_spec.rb
@@ -687,6 +687,13 @@ describe Puppet::Resource do
result = Puppet::Resource.from_pson(PSON.parse(resource.to_pson))
result[:requires].should == "File[/bar]"
end
+
+ it "should serialize multiple relationships as arrays of reference strings" do
+ resource = Puppet::Resource.new("File", "/foo")
+ resource[:requires] = [Puppet::Resource.new("File", "/bar"), Puppet::Resource.new("File", "/baz")]
+ result = Puppet::Resource.from_pson(PSON.parse(resource.to_pson))
+ result[:requires].should == [ "File[/bar]", "File[/baz]" ]
+ end
end
describe "when converting from pson" do
diff --git a/spec/unit/util/run_mode_spec.rb b/spec/unit/util/run_mode_spec.rb
new file mode 100644
index 000000000..d6ab08a10
--- /dev/null
+++ b/spec/unit/util/run_mode_spec.rb
@@ -0,0 +1,51 @@
+#!/usr/bin/env ruby
+
+require File.dirname(__FILE__) + '/../../spec_helper'
+
+describe Puppet::Util::RunMode do
+ before do
+ @run_mode = Puppet::Util::RunMode.new('fake')
+ end
+
+ it "should have confdir /etc/puppet when run as root" do
+ Puppet.features.stubs(:root?).returns(true)
+ @run_mode.conf_dir.should == '/etc/puppet'
+ end
+
+ it "should have confdir ~/.puppet when run as non-root" do
+ Puppet.features.stubs(:root?).returns(false)
+ @run_mode.expects(:expand_path).with("~/.puppet").returns("~/.puppet")
+ @run_mode.conf_dir.should == "~/.puppet"
+ end
+
+ it "should have vardir /var/lib/puppet when run as root" do
+ Puppet.features.stubs(:root?).returns(true)
+ @run_mode.var_dir.should == '/var/lib/puppet'
+ end
+
+ it "should have vardir ~/.puppet/var when run as non-root" do
+ Puppet.features.stubs(:root?).returns(false)
+ @run_mode.expects(:expand_path).with("~/.puppet/var").returns("~/.puppet/var")
+ @run_mode.var_dir.should == "~/.puppet/var"
+ end
+
+ it "should have rundir depend on vardir" do
+ @run_mode.run_dir.should == '$vardir/run'
+ end
+
+ it "should have logopts return an array with $vardir/log if runmode is not master" do
+ @run_mode.expects(:master?).returns false
+ @run_mode.logopts.should == ["$vardir/log", "The Puppet log directory."]
+ end
+
+ it "should have logopts return a hash with $vardir/log and other metadata if runmode is master" do
+ @run_mode.expects(:master?).returns true
+ @run_mode.logopts.should == {
+ :default => "$vardir/log",
+ :mode => 0750,
+ :owner => "service",
+ :group => "service",
+ :desc => "The Puppet log directory.",
+ }
+ end
+end