James Turnbull
2010-Jul-10  06:58 UTC
[Puppet Users] ANNOUNCE: Puppet 2.6.0 - Release Candidate 1 available!
Welcome back again to the Puppet release cycle with the long-awaited
eleventy times better 2.6.0rc1 release!
The 2.6.0 release is a major feature release and includes a huge variety
of new features, fixes, updates and enhancements.  These include the
complete cut-over from XMLRPC to the REST API, numerous language
enhancements, a complete rewrite of the events and reporting system, an
internal Ruby DSL, a single binary, a new HTTP report processor, and a
myriad of other enhancements.
As a result of the bucket-load of new features and enhancements we also
need lots of help testing it.  Please run up the release candidate in
your test environment or using VMs and test it as extensively as
possible.
We''ve include release notes below that you can also see at:
http://projects.puppetlabs.com/projects/puppet/wiki/Release_Notes
The release candidate is available for download at:
http://puppetlabs.com/downloads/puppet/puppet-2.6.0rc1.tar.gz
Please note that all final releases of Puppet are signed with the
Puppet Labs key (we''ll sign the production release with the new,
improved Puppet Labs key).
See the Verifying Puppet Download section at
http://projects.puppetlabs.com/projects/puppet/wiki/Downloading_Puppet
Please test this release candidate and report feedback via the
Puppet Labs Redmine site:
http://projects.puppetlabs.com
Please select an affected version of 2.6.0rc1.
RELEASE NOTES
Language
Support for parameterised classes
The 2.6.0 release provides an extension to the existing class syntax to
allow parameters to be passed to classes. This brings classes more in
line with definitions, with the significant difference that definitions
have multiple instances whilst classes remain singletons.
To create a class with parameters you can now specify:
class apache($version) {
... class contents ...
}
Classes with parameters are NOT added using the include function but
rather the resulting class can then be included more like a definition:
node webserver {
    class { apache: version => "1.3.13" }
}
Like definitions, you can also specify default parameter values in your
class like so:
class apache($version="1.3.13",$home="/var/www") {
... class contents ...
}
New relationship syntax
You can now specify relationships directly in the language:
File[/foo] -> Service[bar]
Specifies a normal dependency while:
File[/foo] ~> Service[bar]
Specifies a subscription.
You can also do relationship chaining, specifying multiple relationships
on a single line:
File[/foo] -> Package[baz] -> Service[bar]
Note that while it’s confusing, you don’t have to have all of the arrows
be the same direction:
File[/foo] -> Service[bar] <~ Package[baz]
This can provide some succinctness at the cost of readability.
You can also specify full resources, rather than just resource references:
file { "/foo": ensure => present } -> package { bar: ensure
=> installed }
But wait! There’s more! You can also specify a subscription on either
side of the relationship marker:
yumrepo { foo: .... }
package { bar: provider => yum, ... }
Yumrepo <| |> -> Package <| provider == yum |>
This, finally, provides easy many to many relationships in Puppet, but
it also opens the door to massive dependency cycles. This last feature
is a very powerful stick, and you can considerably hurt yourself with it.
Run Stages
Run Stages are a way for you to provide coarse-grained ordering in your
manifests without having to specify relationships to every resource you
want in a given order. It’s most useful for setup work that needs to be
done before the vast majority of your catalog even works – things like
configuring yum repositories so your package installs work.
Run Stages are currently (intentionally) a bit limited – you can only
put entire classes into a run stage, you can’t put individual resources
there.
There’s a main stage that resources all exist in by default; if you
don’t use run stages, everything’s in this, but it doesn’t matter to
you. You can define new stages via the new stage resource type:
stage { pre: before => Stage[main] }
Here we’ve used the before metaparameter but you could also use after,
require, etc to establish the necessary relationships between stages.
Now you just specify that your class belongs in your new run stage:
class yum { ... }
class redhat {
  ...
  class { yum: stage => pre }
}
This will make sure that all of the resources in the yum are applied
before the main stage is applied.
Note that we’re using the new parameterized classes here – this is
necessary because of the class-level limitations of Run Stages. These
limitations are present because of the complication of trying to
untangle resource dependencies across stage boundaries if we allowed
arbitrary resources to specify stages.
On a related note, if you specify a stage for a given class, you should
specify as few as possible explicit relationships to or from that class.
Otherwise you risk a greater chance of dependency cycles.
This can all be visualized relatively easily using the —graph option to
puppetd and opening the graphs in OmniGraffle or GraphViz.
Specifying the ordering of Run Stages also works much better when
specified using the new relationship syntax, too:
stage { [pre, post]: }
Stage[pre] -> Stage[main] -> Stage[post]
This way it’s very easy to see at a glance exactly how the stages are
ordered.
Support for hashes in the DSL
This brings a new container syntax to the Puppet DSL: hashes.
Hashes are defined like Ruby Hashes:
{ key1 => val1, ... }
The Hash keys are strings but hash values can be any possible right
values admitted in Puppet DSL (i.e. a function call or a variable)
Currently it is possible:
* to assign hashes to a variable
$myhash = { key1 => "myval", key2 => $b }
* to access hash members (recursively) from a variable containing a hash
(works for array too):
$myhash = { key => { subkey => "b" }}
notice($myhash[key][subkey]]
* to use hash member access as resource title
* to use hash in default definition parameter or resource parameter if
the type supports it (known for the moment).
It is not possible to string interpolate an hash access. If it proves to
be an issue it can be added or worked around with a string concatenation
operator easily.
It is not possible to use an hash as a resource title. This might be
possible once we support compound resource title.
Support for an elsif syntax
Allows use of an elsif construct:
  if $server == ''mongrel'' {
      include mongrel
  } elsif $server == ''nginx'' {
      include nginx
  } else {
      include thin
  }
Case and Selectors now support undef
The case and selector statements now support the undef syntax (see #2818).
Pure Ruby Manifests
Puppet now supports pure Ruby manifests as equivalent to Puppet’s custom
language. That is, you can now have Ruby programs along side your Puppet
manifests. As is our custom, it’s a limited first version, but it covers
most of the specification functionality of the current language. For
instance, here’s a simple ssh class:
hostclass :ssh do
  package "ssh", :ensure => :present
  file "/etc/ssh/sshd_config", :source =>
"puppet:///ssh/sshd_config",
:require => "Package[ssh]"
  service :sshd, :ensure => :running, :require =>
"File[/etc/ssh/sshd_config]"
end
Similar to the ‘hostclass’ construct here, you can specify defined
resource types:
define "apache::vhost", :ip, :docroot, :modperl => false do
  file "/etc/apache2/sites-enabled/#{@name}.conf", :content =>
template("apache/vhost.erb")
end
As you can see from this code, the parameters for the resources become
instance variables inside of the defined resource types (and classes,
now that we support parameterized classes).
We can do nodes, too:
node “mynode” do
  include “apache”
end
Ruby has become a first-class citizen alongside the existing external
DSL. That means anywhere you can put a manifest, you should be able to
put Ruby code and have it behave equivalently. So, the ‘ssh’ class above
could be put into ‘$modules/ssh/manifests/init.rb’, the apache vhost
type should be placed in ‘$modules/apache/manifests/vhost.rb’, and the
node should probably be in your ‘site.pp’ file.
You can also apply Ruby manifests directly with puppet:
puppet -e mystuff.rb
Note that the Ruby support does not yet cover all of the functionality
in Puppet’s language. For instance, there is not yet support for
overrides or defaults, nor for resource collections. Virtual and
exported resources are done using a separate method:
virtual file("/my/file", :content => "something")
All of the standard functions are also pulled into Ruby and should work
fine — e.g., ‘include’, ‘template’, and ‘require’.
Stored Configuration
Support is now added for using Oracle databases as a back-end for your
stored configuration.
Facts
There are three new facts available in manifests:
$clientcert – the name of the client certificate
$module_name – the name of the current module (see #1545)
$caller_module_name – the name of the calling module (see #1545)
In addition all puppet.conf configuration items are now available as
facts in your manifests. These can be accessed using the structure:
$settings::setting_name
Where setting_name is the name of the configuration option you’d like to
retrieve.
Types and Providers
A new provider for pkg has been added to support Solaris and OpenSolaris
(pkgadd).
A new package provider has been added to support AIX package management.
The augeas type has added the ‘incl’ and ‘lens’ parameters. These
parameters allow loading a file anywhere on the filesystem; using them
also greatly speeds up processing the resource.
Binaries and Configuration
Single Binary
Puppet is now available as a single binary with sub-arguments for the
functions previously provided by the seperate binaries (the existing
binaries remain for backwards compatibility). This includes renaming
several Puppet functions to better fit an overall model.
List of binary changes
puppetmasterd –> puppet master
puppetd –> puppet agent
puppet –> puppet apply
puppetca –> puppet cert
ralsh –> puppet resource
puppetrun –> puppet kick
puppetqd –> puppet queue
filebucket –> puppet filebucket
puppetdoc –> puppet doc
pi –> puppet describe
This also results in a change in the puppet.conf configuration file.
The sections, previously things like [puppetd], now should be renamed to
match the new binary names.  So [puppetd] becomes [agent].  You will be
prompted to do this when you start Puppet with a log message for each
section that needs to be renamed.  This is merely a warning - existing
configuration file will work unchanged.
New options
A new option is available, ca_name, to specify the name to use for the
Certificate Authority certificate. It defaults to the value of the
certname option (see http://projects.reductivelabs.com/issues/1507).
A new option, dbconnections, is now available that specifies a limit for
the number of database connections made to remote databases (postgreSQL,
MySQL).
A new option, dbport, is now available that specifies the database port
for remote database connections.
Binary changes
The puppetd (or puppet agent) binary now supports the
--detailed-exitcodes option available in the puppet binary.
Certificates cleaned with puppetca (or puppet cert) are now also revoked.
The puppetca (puppet cert) and puppetd (puppet agent) binaries now have
support for certificate fingerprinting and support for specifying digest
algorithms. To display the fingerprint of a client certificate use:
$ puppetd --fingerprint
or
$ puppet agent --fingerprint
To specify a particular digest algorithm use --digest DIGESTNAME.
To fingerprint a certificate with puppetca use:
$ puppetca --fingerprint host.example.com
or
$ puppet cert --fingerprint host.example.com
Also supported is the --digest option.
The puppetdoc binary now documents inheritance between nodes, shows
classes added via the require function and resources added via the
realize function.
Functions
The regsubst function now takes arrays as input (see #2491).
Reports
There is a new report type called http. If you specify:
reports = http
Then the new report processor will make a HTTP POST of the report in
YAML format to a specified URL. By default this URL is the report import
URL for a local Puppet Dashboard installation. You can override this
with the new reporturl setting.
reports = http
reporturl = http://yoururl/post/
CHANGELOG
3180b9d  Code smell: Two space indentation
5432259  Code smell: Avoid needless decorations
8f15707  Code smell: Don''t restate results directly after assignment
c3e2353  Code smell: Use &&= for dependent initialization
42a5390  Code smell: Use ||= for conditional initialization
a07bbe2  Code smell: Omit needless checks on defined
07b15bf  Code smell: Avoid unneeded blocks
8d1fbe4  Code smell: Avoid explicit returns
889158a  Code smell: Booleans are first class values.
81e283b  Code smell: Line modifiers are preferred to one-line blocks.
e8cf063  Code smell: Use string interpolation
eefccf2  Code smell: English names for special globals rather than
line-noise
184132e  Code smell: Use {} for % notation delimiters wherever practical
9ee56f2  Code smell: Inconsistent indentation and related formatting issues
051bd98  Code smell: Miscellaneous oddity removal
77f8599  Code smell: Win32 --> MS_windows
3fbc1d5  Updated GPG rake signing task for new Puppet Labs key
94fa5d5  [#4182] show_diff was broken for streamed file contents
7009704  Fix for #4117 "Storing newly-audited value" messages
9cf9788  Manifests with variables were broken when read from STDIN to
puppet apply
835f73c  Use the name in the search path for looking for metadata
5bab997  maint:rename resource_type to define in internal dsl
654b564  [#4198] Require ''fileutils'' everywhere FileUtils is
used
a07af2b  [#4196] Move the docs into the source directory structure
3c00591  Fix for #4178 - generalize autoloading to include .rb
cea2e5b  [#3582] Remove assumption that Puppet.settings would return
values of a consistent type
c58e420  [#4180] Support legacy module structure
b4593f2  Update RDoc parser to reflect change of custom plugin and fact
locations
dda165a  Fixed #4180 - Updated old module structure to match correct default
1715f3a  [#2730] mount ensure present shouldn''t unmount
a282cc3  Fixed subscribe example
2353115  Fix for environments in startup script. - Dropped the forced
--manifest switch in the   sus
e startup script to allow for environments   to re-define this.
Otherwise, environments will   not w
ork as puppet override configuration with   command line arguments.
cfca62b  Redmine: 2474 - Fix for mount fstype documentation
3ff38df  Fix for #4137 -- Oracle needs text for strings > 255
62dbae5  Fix for #2807 Puppet settings available as variables
a5fc364  [#4161] RDoc fails to parse some of our ruby syntax
b7e2580  [#3169] Adds more debugging to SSL cert verification
70af43f  Fix for #4167 -- overriding file permissions in conf file
2c88884  [#4114] Fixes test failures caused by previous 4114 fixes
4a6428b  saving work for my unit tests. The redhat one still fails...
1e0d922  [4123] - allows self.instances to correctly report state of
services.
8d3ced5  created init provider method self.get_services which accepts an
array of filenames to exclu
de when processing defpath.
cdd4382  [#4114] Fix failures in the unit tests
e419293  [#4114] Added queueing to the log
4b00c6a  [#4110] Wrap Type#retrieve calls for backwards compatibility
5f8a242  Fix for #4120 No namevar running puppet doc -r type
6ac36eb  [#2370] Allow OpenBSD to add packages with versions and flavors
45a9f37  [#4108] Changed missing Application constant error
a0ea74b  [#4149] Don''t create two Resource::TypeCollections
7978be5  [#3906] Fixed missing constant Puppet::Rails when using
storeconfigs
fb6f2aa  [#4136] Specs should listen on localhost
6d4be90  [#3961] Part two: --destroy should also be local
0598f35  Fix for #4148 (2.6 is greater than 0.25.x)
5971898  Fix for #4142 stray use of JSON instead of PSON
74e5bdc  [#3172] Fix the arguments to Application::Kick.new, which I had
broken
4f06e9e  Maint: Explicitly put test sqlite files in a temp directory
84a9412  maint: fix stub failure in report_spec.rb
1f48d68  maint: fix stub failures in report_spec.rb
bee843a  maint: fix stubbing in package_spec.rb
528b915  maint: fix stubs in transaction_spec.rb
37277a5  maint: fix stubbing in catalog_spec.rb
ea55e83  Maint: Improve the speed of setting settings.
7c7f6da  maint: file_spec heisenbugs
d6d726b  Heisenbug: settings as catalog trying to create directories
e579aab  maint: spec_helper should reset settings directories on *every*
test
298a764  maint: Remove a heisentest that wasn''t testing what it claimed
b389392  maint: spec_helper should only get loaded once
3304068  maint: :mutable_defaults to improve spec consistency
08b49c6  [#4090] Fix the run_mode for certs and put tests on the
applications to assert their run_mo
de
e318db6  [#4059] fix the specs to correctly mock the
Puppet::Resource.new call signature
ab3d27c  [#4059] Minor errors preventing ralsh from running
59bf5e4  [#2713] Enable ELSIF
ebd0311  [#3172] puppet kick can take hostnames as bare arguments
697508d  [#4108] Missing constants fail deliberately and with a message
2639a56  [#4092] Changed notify message to defined instead of changed
223157d  Fix for #4091 -- require loop in executables
174e02a  [#4090] Change how RunMode instances are created so that an
object for each RunMode is only
 created once instead of every time it''s called
62e3b61  [#4090] Fix last few tests and renames of mode to run_mode
2a25883  [#4090] Git rid of the idea that run_mode is a configurable
option with defaults
75e0662  [#4090] Rename mode (:master, :agent, :user) to run_mode
3cd48d8  [#4089] Replace internal usage of :check with :audit
e848d41  [#3961] puppet cert --generate implies ca_location = :local
255628e  [#3961] Rename cert''s @mode to @cert_mode to reduce confusion
b2bd05d  maint:  Confine a test that depends on sqlite
fdc8c35  [#3994-part 3] rename spec tests from *_spec_spec to *_spec.rb
9a94ee2  Fix for test ordering sporadic failure
9ceb454  [#3994-part 2] rename integration tests to *_spec.rb
06dffc1  maint: A test specified that a file wasn''t writeable, but was
writeable when run as root, w
hich caused the test to fail.  Changing the test so that a directory is
in place of the writeable fi
le so not even root can write to it.
2baf74e  maint: Fixes some noisy specs
0aae5a7  maint: Fixing tests that fail when run as root
0fa10a6  Cleaning up various warnings in specs
2ab123f  Removing obsolete nodescope concept
153d7cd  Fix #3665 - part 2, node inheritance fixes
dd4fa66  Fix failing tests in spec/unit/resources/type.rb
770a8ea  Fix #3665 - main class shouldn''t be a subscope of itself
76953d8  maint: Fixes broken order-dependent Tidy specs
9afc67a  Fix for pre 1.8.7 compatibility in namvar patch
d62a391  Breaking require-loop
b4af238  Fix for #3985 typo causing warning
9169ef0  Fix: puppet apply trying to use XMLRPC constant
af41beb  Remove an old test that had been unintentionally reintroduced
by a mistake in a conflict re
solution
6a8e6fe  Tweak an old test due to new error handling.
5f53bfa  Restore error handling for valuee817ad1  Fix tests broken by
level-violation fix
e5478d4  Simplify the newattr method by removing a level violation
4ef40b8  maint: Rework testing of Reports http processor to be self
contained
edfcbf9  [#3139] Fixed a problem with the value method for parameters
61e978b  [#3139] Fixed a broken integration spec in type tidy
cf9bcad  maint: Fixing test to reflect that host environment assignment
now takes an object instead
of a string
c70c96b  Fix some tests broken by changing the call to newattr
a72fb14  Fixing oversensitive test
15004f3  maint: Fix failing test that needed more methods stubbed
60932e1  Fixed require warning documentation
6fcb87d  Fixed mcx documentation error
15ae389  Documentation fixes
f95169b  [#4006] Fix test failures caused by reverting ticket 2890
b5572ae  Bug 3731. Applied Fix suggested by Doug Warner to always
flatten out the array
117e6b6  maint: Have ''rake spec'' output in color
a7e4fe8  [#3810] Do not create a reports settings block
db44a32  Tweak for fix for #1175 to fix test failures
3bd6f11  maint: Fixing a test typo s/stub/stubs/
ebc3e78  maint: Fixing a failing spec by stubbing a method on a stubbed
object that should have been
 stubbed.
3b4d33c  remove tests for removed code
c8089f1  [#2646] Fixes the change to onetime made in b96cd6c
4bf6950  [#3139] Make newattr idempotent
51b70c0  [#3994] rename the specs to have _spec.rb at the end
9958c80  [#4064]  Modify the Rails spec to use the block form of confine
af8bd77  [#4064]  Modify confine to also allow a message and a block
containing the test.
182c003  Fixing #3988 - adding support for watchr
3a44f0e  Fix #3932 - Add --charset to puppetdoc for RDoc mode
fb5c1d7  Fix #3907 - Hash couldn''t be initialized with an empty hash
9592dd8  Fix #3871 - Add the ''in'' operator
3696d95  [#3865] External subcommands
0fc41ae  [#3802] Replace rug with zypper
dc1a977  [#3766] Remove YAML fixups
e0e6b64  Provides #3723. Add ability for execs to have several attempts
at a successful execution an
d fix minor bug with logoutput and returns as an array..
c8ca19a  [#3674] Make sure that failing to load a feature isn''t fatal
2a73b5d  [#3674] Part 2: Autoloader load method should propagate failures
7952af5  [#3674] Autoloader should propagate failures
f35c59f  Fix #3667 - Fix class namespace
938fbe9  Removing obsolete nodescope concept
49cf2f2  Fixing #3651 failing to pop comment stack for some constructs
0dd4201  Fixing #3072 - Resource generation is recursive
b96cd6c  Fixes #2646. Move onetime option from the agent to global
defaults so we can specify it in
the config file.
0a21e1b  [#2522] authorized keys owner is verified
738802e  Fixing #2337 - Adding ''freeze_main'' setting
50a626d  Fixing #1545 - Adding ''caller_module_name'' variable
5d1934b  Fixing #1545 - module_name is now a variable
bba45f1  [#4055] Confine CouchDB-related specs to the couchdb feature
1c5b67d  [#4055] Refactor of abstract Couch terminus, more specs
432db25  [#4055] Add CouchDB terminus for facts
35636e9  [#3921] Fix typo "fact_terminus" ->
"facts_terminus"
45ca669  Targeted fix for #3851
c00285c  [#3810] Add http reports processor and `reporturl` setting
1d49def  [#3804] Fixed one failing spec for RackREST
1e89bff  Fixes #3514 - CR/LF line ending in puppet.conf cause silent failure
e6709da  [#3409] fix test failures from ldap environment patch
a7884b4  [#3409] environment is not checked when nodes are in ldap
c75b219  Fixes #3395 - CR+LF line endings in manifests cause syntax error
8b127b1  [#3388] Setting host_aliases from [] to [] no longer results in
any changes
be7112a  Fixing #3139 - all properties can now be audited
986298b  Working #3139 - Adding Settings.clear Spec#after
32f6a9d  Working #3139 - Removing Property#checkable
58cf8d9  Working #3139 - Catalogs default to host_config
8f3e8bb  Working #3139 - ResourceHarness does caching
d6407f4  Working #3139 - removing obsolete checking in Storage
0b95a85  Working #3139 - scheduling moved to resource harness
4627b8f  Improving fix for #1175; tightening thread safety
ccc869e  Part 2 of fix for #1175 (functions in environments)
7c6b883  [#1621] Composite keys for resources
2396eba  Use the ''root'' feature rather than directly checking
the uid
8128311  fix tests to reflect methods moved from type/file/owner to
provider/file/posix
28702a4  variable name error in refactor
19c70b5  Remove over-eager error branch in a complicated If
09881cf  Confine out a lib that puppet was failing to load on non-win32
d72fd9d  Confine out tests that fail on unix
d1b86ec  Behavior change for //UNC_Paths broke an old test
ba506c1  Resolving conflicts with jes5199:ticket/master/2935-settings-mode
f15a324  Fix Exec type
86bd838  Move syslog into a feature
fc92408  Adapt Util::Storage specs and avoid trying to lock on directories
58100ed  Relax path qualification check on FileServing::Fileset
1c016a1  Implement quoting on the exec commands and repair specs
6a92894  Avoid trying to symlink() on windows
47c9dd1  Implement "forking" for Windows
c59d864  Avoid non-win32 signals on win32 runtime
bbba9f9  Avoid trying to set uid/gid on windows
a90bcb0  Start extracting the owner managment for files into providers
b51be28  Expand file type to be able to handle Win32 and UNC paths
17a9ad1  Updated version to 2.6.0
a2e809b  Fixed RSpec deprecation notice in lexer tests
f054d5b  Make specs work on win32
54c4538  Delete tempfiles on win32
97c043f  Fix path handling
f80b4c7  Print stacktraces if requested
1d98e67  Adapt defaults to Win32 environment
ea9bb49  More win32? feature def
1645d8e  Define posix and win32 features
b3aa3ec  Improve error message
d67f60f  Fix ProviderDpkg specs to avoid any real executions
e119b04  Avoid setting the timeout before we know which timeout we
should set.
d40e6d4  Bug: tidy specs need FileBucket::Dipper
a6b52bb  Avoid trying to lock on non-files
533ef68  Removing obsolete FCollection stub from Functions
bc90df6  Functions are added to a module instead of Scope
17e40e7  Slightly restructuring "Functions" file
9d0a38e  [#3921] Add facts_terminus setting to Puppet settings
2874729  [#3921] Remove unnecessary require ''puppet/resource''
58a3d27  Fix for #3949 and related
b755f7f  Fixed #3912 - Added client certificate name as an internal fact
called "clientcert"
b5f14c6  {#3866] Rename the method metaclass to singleton_class to avoid
the deprecation warnings fr
om Rails ActiveSupport
2b5bd49  Fixing #3822 - checksums will be loaded from filebuckets
94390de  foo
3b7aac5  For #3822 - Reducing checksum code duplication
ca7b166  Fixed unsupported perlstyle regex and few other minor bugs
85f2565  Signed-off-by: Ross West <westr@connection.ca>
a4eb5d5  Signed-off-by: Ross West <westr@connection.ca>
970fd87  Fixing #3791 - client environment is used
cce63d8  Bug #3748 LDAP group membership
4ba3dc2  Fixing #2655 - Adding default parameter values to resources
20a74bc  Refactoring tests - replacing stubs with instances
b5db33b  Fix for 3664: interpolating qualified variables.
9ddee72  Fix #3664 - qualified variable parsing in string interpolation
a32381e  Feature #2935 remove misleading comment
5937af4  Feature #2935 Unify the codepaths for setting settings
b7d387e  Feature #2935 Puppet[:mode] and Puppet[:name] are read-only
342298c  Bug: Broken codepath in util/settings
6d5566a  Feature #2935 settings are in Mode sections instead of
executable names
9536723  Feature #2935: method extract require_application
c338fef  Feature #2935: Test for if we''re "puppet cert"
cbb2802  Code cleanup: remove "self." from setdefaults
37a5530  Feature #2935 Modes: root? predicate
ac7efc8  Feature #2935 Puppet::Mode#master?
5665e39  Feature #2276 Single Executable: Update docstrings
fc29049  feature #2276 Single Executable: use new names for settings
sections
631552c  Feature #2935: Applications should declare modes
8f4d644  Feature #2935: lazify require graph for applications
6b26a7c  Feature #2935: Puppet::Mode
b65d1af  Feature #2276 Single Executable: usage message
76304f8  feature #2276 Single Executable: move CommandLine methods
e9627a0  Fixing #2658 - adding backward compatibility for 0.24
61a719f  Adding #2658 - Adding support for run stages
d13f8ac  Fixing #3671 - --compile Catalogs are pretty-printed
89e8745  Fixing #2655 - Adding default parameter values to resources
edcf429  Refactoring tests - replacing stubs with instances
3dfb762  Fixing Catalog conversion
0d4fd60  Fixing #1903 - metaparam inheritance is much faster
047ebfe  Fixing Parser::Resource param validation
2fae0bd  Fixes #1999 - Allows the ''apt'' provider to downgrade
packages.
b10d35d  Fixes #3745 Catch unhandled exception in ssh_authorized_key
provider
584961a  Fixed #3721 - Removed -u option from crontab on HP-UX
a15a70c  Fixing tests broken by conceptual merge conflicts
5988f76  Fixes #3663 - It should be possible to list signed hosts only
2c153b1  Fixing #448 - relationships have their own syntax
052f98f  Fix #3408 - enable puppetd http compression
3eaf69c  Fix for conflict between fileserving streams and none-checksums
2cf7222  Fix #3373 - Client side file streaming
ee5d7f1  Add master side file content streaming
63c122f  Fixing tests broken by Luke''s CRL flag patch.
91e6022  Fixes incorrect line in partial CRL fix
379bda0  WIP - trying to fix #3460
3947574  Updated Template documentation link
5fd6e54  Change the main spec to an apply spec
009629f  Feature #2276 Single Executable: usage message
5b64d3b  feature #2276 Single Executable: optparser should get
CommandLine#args instead of ARGV
5683fd9  Feature #2276 Single Executable: Pass a commandline object to
the application
d038a1d  Refactor #3706 Reify eigenclasses of Applications
7656ba7  feature #2276 Single Executable: CommandLine can be instantiated
63e2e56  feature #2276 Single Executable: subcommand method
b6e2ce6  feature #2276 Single Executable: help info
b073722  feature #2276 Single Executable: help for apply
bfad735  feature #2276 Single Executable: rdoc paths on ubuntu
7103378  feature #2276 Single Executable: legacy settings
54c1cc5  feature #2276 Single Executable: "puppet describe"
c79b228  feature #2276 Single Executable: "puppet kick"
6bdda8c  feature #2276 Single Executable: "puppet cert"
f9783fc  feature #2276 Single Executable: "puppet master"
1d8bd0d  Fix #3552 single executable should display usage
722a27f  Fixes #3702: the ''log'' report now sends the host name
as the
log source again.
ddd40bb  Fix for #3690 failing to calculate error codes
d61a69a  Fixing #3668 - fixed autoloading classes from modules
f66095d  Fix #3656 JSON serialization of dependencies
f0a0084  Fixes #3582 - Adds dbport configuration option for specifying
database port
8b99367  Adding indirector support to Resource Types
748aed9  Fix #3552 single executable should display usage
eafde5c  Added support for flat packages in the pkgdmg package provider.
Added a test in: ./spec/uni
t/provider/package/pkgdmg.rb
c9e3d75  Fix: the rcvar name is not necessarily the same as the service
name. (More and more I get t
he feeling that FreeBSD''s rc system is totally unsuitable for Puppet.
What about porting Upstart or
SMF to FreeBSD ... ?)
861c177  Added proper status command
5f72eb9  Re-included old BSD service provider, made new one default for
FreeBSD
c3cd24b  Rewrote FreeBSD service provider
1250f80  Fixed documentation issues exposed in #3772
211782f  Updated CHANGELOG for 0.25.5rc3
7c59acf  Renamed all references to Reductive Labs to Puppet Labs
e82f5de  Fix for #3107 Changing users on AIX
44f1465  Fixing #2864 Added support for AIX System Resource Controller
(SRC) - service start stop
02ed8db  Fixes #2836. Add hold support to dpkg provider
0f2d3ce  Fixes #1223 Add Zypper support for SuSE machines
a166d50  Fix for #3399 zone type should handle exclusive IP stacks
af521fa  Adding #3518 - basic dot format support
9b2b0ec  Fix #3551 rake spec fails to run integration specs
6a66d5e  Update Red Hat spec file for 0.25.5
46c72bb  Updated CHANGELOG for 0.25.5rc2
ee0cc07  Fixing #3533 - Removing all transaction cleanup
11189fb  Fix for #2910 -- Tidy/matches is too tricky to use
913b63c  Bug #3451: Don''t leak the terminus class setting from
Puppet::Resource::Catalog''s spec
a228399  Fix to the fix for #3295
ae52005  Write ssh_authorized_keys as user
8c5e80e  Fixing bad test
088c801  Fix for #3558 -- source file reading speedup
cd06b87  Fix for #3556 Plussignment value melding
2de7da4  Fixed #3655  - Puppet doesn''t find installed packages with
portage provider
d20d5de  Fixed #3672 - Error message on duplicate fileserver mounts
incorrect
6ae6821  conf/redhat: Add notifempty to logrotate config
7fc66d5  Fixed stored configuration documentation
14456b4  Fixes #3653 - Changed default factpath value to better reflect
plugins in modules
f3e466b  Partial fix to #2837 - changed warning message to debug
686239f  Fix #3555 - fix state of purged lists
6f8a1e9  Updated Rake tasks to no longer load puppet.rb
83a8c68  Fix #3540 - name methods correctly
3d395e8  Fixes #3295 - generate() now sets the working directory to the
directory containing the spe
cified command.
0f077c7  Added YARD task
b49c60b  Update man pages and partial doc fix to #3491
115f37d  Fixed #3532 - Typo in lib/puppet/ssl/host.rb
784dd26  Updated version and CHANGELOG to 0.25.5rc1
4a6474c  Modify SuSE spec file for 0.25.x and correct shebang lines for
puppetd/puppetmasterd
385506f  Fixes #3460 - Makes Puppet FHS compliant by moving /var/puppet
to /var/lib/puppet
b494427  Fix for #3101 (bug in MRI 1.8.7)
966b269  Fixes #3419. OS X 10.6 Ruby doesn''t set supplementary groups
49be54e  Revert the guts of #2890
e69b7db  Fail gracefully on packages that don''t have the HOMEPAGE
variable set (e.g. dev-lang/php).
83ac6b8  Fixed #3443 - Typo in mount type
dfe5c3a  Fixes #3135 - darwin doesn''t support ''mount -o
remount''
2a60e1e  Adding :catalog_terminus setting
626945b  fixing obsolete comment in puppetd
9fbb69f  Adding support for only using cached catalogs
7e1e76e  Refactoring Configurer to enable the next feature
b28e21a  Fixed changelog Rake task
e93eab8  Fix #3155 - prevent error when using two matching regex in cascade
b883272  Fixed puppetlast typo
67bf142  Fixed README contents to reflect Puppet Labs and docs and wiki
changes
e35e142  Fixed link typo
d40e24c  Fixed #3384 - Updated broken link
da00f68  Making a Puppet::Module test more resilient
9792915  Fixing yumrepo type to use ''flush''
9ee4c2d  Only trying to retrieve passwords on OS X when root
8c31ebe  Removing obsolete tests
aee9c29  Fixing a warning in the aix package provider
232ad8f  Removing tests for code that was removed in the REST refactor
94fddbc  Fixing and porting Transaction Report tests
13d141a  Fixing Property#change_to_s in rare case failures
66858ef  Fix test in parser.rb due to API change
0f254be  Fixing Hash functionality with non-constant keys
41aeba4  Removing vistigial method in ASTHash
1821187  Porting/removing group test/unit tests
03532e0  Porting a simple set of tests from test/unit
006e6af  Removing obsolete test
1a6e08f  Fixing Transaction integration test
410b71c  Removing invalid File integration test
effa719  Cleaning up content/source code
456447c  Protecting spec_helper chmod from failure
fa64774  Redeleting puppetmasterd integration test
797f412  Making SshAuthorizedKeys tests less brittle
622bb70  Markus''s patch concerning string interpolation
23adec5  Fix tests that use or stub find_by_checksum, which I just
changed the signature of.
4ac8e2c  The pure-ruby YAML lib doesn''t accept parameters
e31fe8c  Fix a failure in new FileBucket where it was impossible to read
from a bucket with a non-de
fault path.
3797c7a  Update YAML dir test to match behavior
83d8bda  Fix heisenbug in spec/unit/provider/mount/parsed.rb
dde69c3  Remove test for old RDoc work-around
c5ce824  Fixing various broken Resource::Type tests
6cd6c47  Renaming and fixing puppetrun tests.
a27013a  Fixing calls to "class_scope" in Scope tests
84d6892  Fixing all ''require'' function tests
b643413  Removing any mentions of :casesensitive setting
fe140a2  Migrating "puppet" executable integration test
edef647  Fixing ''puppet'' to directly run manifests
fff8d04  Fixing syntax warning
7c25317  Moving puppet back to bin
a4d1ba0  Puppet::Parser::AST::Leaf#evaluate_match "insensitive"
renamed
to "sensitive"
404bdfa  Repair validate_checksum codepath, even though it is disabled.
e895494  Puppet::Parser::Resource.new parameters have changed
94651df  Add stub to Puppet::Parser::Collector test to prevent runaway
stub failures
40c1fb0  Resolving conflicts with ???
1059370  Fixing a typo from a regex
3eeebf5  Fixing change printing for content/ensure
47c3ca1  Converted File[checksum] to a parameter not property
44cba9c  Adding "checksum?" helper method to Checksums module
d05d25c  Refactoring File[source] tests somewhat
aab2374  Resolving conflicts with luke:tickets/testing/2954
86cf226  Adding virtual and exported resource support to the DSL
9d5ba41  Cleaning up ResourceAPI tests
9060766  s/DSL::ResourceHelper/DSL::ResourceAPI/g
6d2a10b  Adding simplistic pure ruby interface
e515513  Adding environment support to parser resources
30f49bb  Resolving conflicts with ???
b7015d7  Moving the string interpolation parsing to the parser/lexer
07cfdd0  Resolving conflicts with jesse:feature/master/3394
ad148d6  Resolving conflicts with luke:tickets/master/2759
922cf1a  Resolving conflicts with ???
0d70468  Finishing renaming :params to :parameters internally
ad93d0e  Forcing parent evaluation in resource types
6e4db82  Fixing type/title resource resolution
aa659f2  Converging the Resource classes further
5401a7c  Adding strictness checking to resources
9c867e6  Fixing most of the broken tests in test/
274d1c5  Adding tmpfile cleanup to tests
7089446  Removing Resource::Reference classes
4871c90  Adding support for class parameters
4709e9b  Removing :paramcheck and :typecheck settings
744295d  Allowing Environment.new to take an environment
4f907c6  TypeCollection now supports namespace arrays
2fa0a48  Adding parameter validation to Puppet::Resource
aff5992  Fixing failing Environment unit tests
61636e4  Tuning file load order
7a99a1d  Removing obsolete Settings comments and require
af9a920  Adding an environment helper
c8e89cc  Changing the interface of Puppet::Resource
b7ea180  Partially fixing #2954 - Adding class parameters
cbe2c49  Fixing test structure
4bff506  Indirector/FileBucketFile warnings
0917248  REST: Fix a state leak causing test failures
8f9fc30  REST FileBucket: REST barfs on relative paths
23ccefe  REST: hide Request object
d8e1b27  Feature #3394 REST runner, execution
1603f73  Feature #3394 REST Runner, preparation
16658a0  Feature #3383 Part 2: Remove RAL XMLRPC
eda649b  Feature #3383 RAL over REST
09b1412  Fix tests on #3347
e5a7800  Feature #3347 REST-ified FileBucket
f838389  Fix a failing test in #3115
9acd0b2  Feature #3115 REST-ified status()
b581c23  Fix #3229 - use original value in case/selector regex matching
490a03d  Cleaning up a test.
576accd  Removing unused Checksum::File terminus
58920a0  Converting File terminus to use formats.
37fd6ae  Fixing datadir defaults to match new standards
bf3359e  Adding client and server data dirs
b41d535  Adding filename extension support to formats.
7504f1e  Resolving conflicts with ???
d0389f4  Renaming Parser::ResourceType to Resource::Type
67ef78d  Removing Interpreter class
b82b4ef  All non-transient parser references are gone
644ad7e  Fixing callers to Parser to only pass environment
9f8e0c0  Using the RTC helper to find the known resource types
1705366  Always warning if autoloading a file fails
7bef2e0  Adding helper module for finding known resource types
804105d  Moving Rails initialization to Compiler terminus
26b272b  Parser now uses Environment resource type collection
cb16908  Adding ''known_resource_types'' to Environment
201889b  Renaming LoadedCode to ResourceTypeCollection
2c2b3c2  Storing per-environment LoadedCode instances
6bf1953  Removing old, never-used DSL code
df2d392  Adding support for parsing ruby files
b938edf  Fixing test structure
847233f  Adding []/[]= support to Parser::Resource
6e04fba  Fix for #3366 - --tags '''' treated as boolean
''true''
33b565a  Fix for #3424 and tests to prove it.
4820a1b  Fix for #2604 Pure Ruby yaml generation
1c5b3d7  Fixes #3113 - When importing a manifest puppet needs to chill
e6a720b  Fix for #3412 install.rb should not put "." first in the
tmp_dirs
b1b3bcf  Resolving conflicts with testing
ba2a3af  Fix 2239 (step five): introduce new
Puppet::Transaction#stop_processing? flag and associate
d check thereof within the resource evaluation code.  This should allow
for the transaction to bail
out of its processing if it finds that a stop has been requested, based
on the state of Puppet::Appl
ication.stop_requested?.
9cb6841  Fix 2239 (step four): Refactored Puppet::Daemon''s stop/restart
methods to set status flags
appropriately in Puppet::Application, and removed call to now-deprecated
@agent.configure_delayed_re
start.  This should get the restart and stop behavior for daemons and
their agents working nicely wi
th the new global process status interface of Puppet::Application.
82f852a  Fix 2239 (step three): Refactored Puppet::Agent to base
starting/restarting behaviors and p
redicates on new run-status interface of Puppet::Application.
edbe9b6  Fix 2239 (step two): introduce
Puppet::Application.controlled_run method to provide simple
status-restricted execution of a passed in block; this can replace the
process status checks and pro
perly handle delayed restart behavior for Puppet::Agent.
2cf647c  Fix 2239 (step one): introduce global settings represeting
application run state with metho
ds for setting the state and appropriately-named predicates for querying
state, all in the Puppet::A
pplication class itself.  To be used by Puppet::Daemon and Puppet::Agent
and Puppet::Transaction for
 better response to TERM, INT, HUP.
ce944a5  Fix unit tests in file/target.rb
481ddb8  Name change of event in ral/type/exec.rb
1ebc91e  Use a helper function to evaluate a resource since the API has
changed
bfb1fa5  Allow skipped resources to process events
a18b05d  Actually invoke the allow_changes? method in ResourceHarness
bf2f088  Generated resources'' events are actually bound to the resource
that generated them.
50ed75b  Remove test that tests internal class structures which have
changed.
1779079  Remove stale set_trigger
9154aca  Since the types stored in resource''s @parameters have changed,
we need to also change inclu
de? method to be more robust.
2a2ab75  Fix test failures due to name changes of event symbols
0a72a98  Remove rollback test, since rollback was removed.
010907b  Mark resource/status as failed if they are associated with a
failing event.
17bccb0  Restore noop non-behaviours
8465cd0  Resolving conflicts with reinh:feature/master/single_executable
0f768ed  Removing now-obsolete user tests
7627441  Fixing most failing test/ tests.
9d9b20f  Fixing Configurer interface to transaction report
eb0a4b5  Fixing fingerprint tests to work with new log validation
f4ef039  Changing REST report integration test to use new interface
fdefb64  Fixing "require" function to use new class interface
266bc08  Removing now-obsolete "retrieve" method on package type
67a75db  Fixing broken selinux tests
2777e1f  Fixing feature validation when passed one item
5aa26d0  Changing method profile for other event queueing
ec7ea27  Refactoring event queueing for performance
68ce086  Changing the method profile of EventManager#queue_event
9919b14  Moving Metric management to the reports
a9fc134  Removing mention of @changes in Transaction
a18769d  Cleaning up the report tests a bit
386b3e5  Fixing #2759 - reports now have complete change info
fbd5b0a  ResourceHarness now doesn''t check params with no
''should''
3f6c948  Changing Transaction to use the new ResourceHarness
6051599  Fixing log message when changes fail
149d5ef  Fixing some compatibility and old tests
c30494f  Renaming some methods in Transaction::Change
8d5f052  Adding Transaction::ResourceHarness class
6651aa4  Adding first version of Resource::Status class
4bb35a7  Fixing File type indentation
796d882  Removing last event collection transaction code
e838bcc  Solidifying the RAL/Event integration.
977595b  Refactoring the Change/Event/Property interface
5776fe4  Cleaning up the Log initialization code.
2292b76  Refactoring the RAL interface to logging
d93d80a  Using Logging module in main Puppet module
c6dd180  Adding tests for "Logging" module
242209d  Correcting comments and making report timestamp internal
a4b77f6  Failing in app/puppet if facts are not found
f925475  Fixing file content logs
73f57f2  removing extraneous comment
4be8601  Adding Transaction events to Transaction reports
2aa579b  Removing a redundant method in Report
5a8b460  Removing unused code and adding a couple of tests
9a78bee  Adding tests for the ''report'' log destination
f2ed655  Extracting event management into a separate class
329527f  Changing SimpleGraph.matching_edges to expect one event
f8d7c44  Moving event creation to the resource
ee9cff9  Reorganizing Property class to match current style
4212f1c  Cleaning up Event creation
8280987  Adding "type" instance method to enhance Demeterness
ad90900  Random code cleanup
32d34e9  Moving Ensure property into separate file
3c86666  Moving Parameter utility classes into separate files
2cbd9e8  Switching transactions to callback-based events
6a450c5  removing never-used code
379ac8f  Moving log destination code into separate files
b2d1728  fixed a couple of typos
7ab29c4  Unit tests for path changes
a8245d8  Handle path elements with ticks and spaces
98581ad  Fix builtins glob in single executable
b4b07f5  Fix failing specs
e7bc19a  Rename puppet application spec to main
c014c29  Renaming the old puppet executable
deff92d  Find both bin and sbin usage docs, fail gracefully
3c8d012  Fix application name in bin/ralsh
be0ecf8  Initial puppet single executable
7a32777  Renaming applications, mostly removing ''puppet''
b19a044  Some tests were leaking state when the test failed
5b2802c  Typo in method call in test.
6a148e2  Supressing warnings (not really failures) in test/unit
06deee7  Fix test using wrong Puppet util filesetting group
74f5167  Mock user in SUIDManager tests
000d37a  Removing resources generate tests
11379c0  Removing old test for service/debian provider
2b8125c  Replace test/unit file write test with spec
164f1ce  Allow adding single key to hashes
fd427a5  Raise an error when appending not a hash to a hash
75c32f9  Fix #2389 - Enhance Puppet DSL with Hashes
9122ac5  Fix #2929 - Allow checksum to be "none"
73c8d0d  Fix #3186 - require function set relationship only on the last
class
c5a4de2  Fixing #3185 Rakefile is loading puppet.rb twice
c694c4d  Fix #3150 - require function doesn''t like ::class syntax
075f3c8  Added time module to tagmail report
dfb8082  Fixed the return types were valid, and removed the copy paste
error with the exception logi
c
6e16ea1  Resolving conflicts with ???
bca7e2c  Add AIX package management support (installp&nim)
b2c9455  Fixing #3148 Settings#without_noop when run with no noop setting
8bafc37  Move scope parenting & class_scope from Compiler to Scope
7403c6e  [#3392] Better Rakefile, remove puppetmasterd spec
de94f68  Fixing tests in pkg provider
4b55fb0  bug #3407 Part 2
f891ba2  Fixing #3407 Failing tests in spec/unit/node/environment.rb
af9c19a  Bug #3406 augeas spec fails if there is not a default provider
718a87a  Bug #3402 Stub returning invalid type for :noop
88d6cd5  Bug #3401 Spec failed due to missing manditory setting in mock
d9920bc  Bug #3400 Bad mocks causing failing tests
c6f02f2  Fix #3167 Duplicate constant warnings in dpkg.rb
70c71c5  Fixed Rails database tests
46f9d00  Fix #3117 - cert fingerprinting uses a method not available in
ruby <= 1.8.6
04842ef  Fixed test error message.
fcce222  First shot at the OpenSolaris pkg(5) provider
3e9677f  Feature #2839 - fingerprint certificate
91c44b4  Fix a few puppetd specs tests
d77c9ac  Revert "Feature #2839 - fingerprint certificate"
58a81ba  Fixing #1054 - transaction reports are always sent
282b4b3  Removing some unneeded validation code from Transaction.new
66a3e6a  Removing unused configurer code
2044550  Fix #2894 - exclude .pp files under modules files directories
d31ff7e  Adapt to method name change since 8971d8
a9fb82b  Feature #2839 - fingerprint certificate
a967b93  Feature #2395 - revoke when cleaning a certificate with puppetca
e26e831  Updated test series
53869e9  Fix #2818 - scope variable assigned with undef are not
"undef"
4226e01  Fix for #2959 (calling exit status on a nil report)
8971d8b  Fixing #2596 - Node, Class, Definition are not AST
39d4a93  Adding a context method to the Errors module
22c642d  Extracting language doc support into a module
adc211a  Adding module metadata
bf40f4f  Upgrading rspec for tests to 1.2.9
61d1911  Fix 2841 - Puppetdoc/RDoc parses realize function
e63d23e  Added tickets/master/2596 to the testing branch
41da962  Feature 2827 Option to disable managing internal files
c9f40be  Fixed #2568 - Add database option ''dbconnections''
2d137e2  Fixing #1507 - Adding a :ca_name setting
089ac3e  Fixing #2617 - using the searched-for REST name
28e1bc6  Always using the CA_name constant instead of "ca"
2d4b795  Fix #1934 - detailed-exitcodes for puppetd
0f61816  Fix #2649 Allow ssl dir creation in --noop mode
53be6f8  Fix #2796 - Fix puppetdoc rdoc selector parsing
391786f  Fix #2795 - puppetdoc rdoc reports a better error message
b832d81  Fix #2784 - puppetdoc/rdoc didn''t parse mono-instruction class
content
b1deb89  Covers the RDoc Puppet Parser with specs
ced5a78  Fix #2376 - Display class/node inheritance in puppetdoc
8d9fbbd  Fix #2703 - add ''require'' to puppetdoc
41b7c3c  Adding an example yaml node script
66a44dd  type augeas: add ''incl'' and ''lens''
parameters
c61335f  Patch to address feature #2571 to add Oracle support to Puppet
Regards
James Turnbull
-- Author of: * Pro Linux System Administration
(http://tinyurl.com/linuxadmin) * Pulling Strings with Puppet
(http://tinyurl.com/pupbook) * Pro Nagios 2.0
(http://tinyurl.com/pronagios) * Hardening Linux
(http://tinyurl.com/hardeninglinux)
-- Puppet Labs - http://www.puppetlabs.com C: 503-734-8571
-- 
You received this message because you are subscribed to the Google Groups
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to
puppet-users+unsubscribe@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/puppet-users?hl=en.
James Turnbull
2010-Jul-10  07:11 UTC
[Puppet Users] Re: ANNOUNCE: Puppet 2.6.0 - Release Candidate 1 available!
James Turnbull wrote:> Welcome back again to the Puppet release cycle with the long-awaited > eleventy times better 2.6.0rc1 release! > > The 2.6.0 release is a major feature release and includes a huge variety > of new features, fixes, updates and enhancements. These include the > complete cut-over from XMLRPC to the REST API, numerous language > enhancements, a complete rewrite of the events and reporting system, an > internal Ruby DSL, a single binary, a new HTTP report processor, and a > myriad of other enhancements. >Oh and because I always miss something ... basic Windows support! Regards James Turnbull -- Puppet Labs - http://www.puppetlabs.com C: 503-734-8571 -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Ryan Dooley
2010-Jul-10  07:58 UTC
Re: [Puppet Users] ANNOUNCE: Puppet 2.6.0 - Release Candidate 1 available!
Awesome :) On 7/9/2010 11:58 PM, James Turnbull wrote:> Welcome back again to the Puppet release cycle with the long-awaited > eleventy times better 2.6.0rc1 release! > > The 2.6.0 release is a major feature release and includes a huge variety > of new features, fixes, updates and enhancements. These include the > complete cut-over from XMLRPC to the REST API, numerous language > enhancements, a complete rewrite of the events and reporting system, an > internal Ruby DSL, a single binary, a new HTTP report processor, and a > myriad of other enhancements. > > As a result of the bucket-load of new features and enhancements we also > need lots of help testing it. Please run up the release candidate in > your test environment or using VMs and test it as extensively as > possible. > > We''ve include release notes below that you can also see at: > > http://projects.puppetlabs.com/projects/puppet/wiki/Release_Notes > > The release candidate is available for download at: > > http://puppetlabs.com/downloads/puppet/puppet-2.6.0rc1.tar.gz > > Please note that all final releases of Puppet are signed with the > Puppet Labs key (we''ll sign the production release with the new, > improved Puppet Labs key). > > See the Verifying Puppet Download section at > http://projects.puppetlabs.com/projects/puppet/wiki/Downloading_Puppet > > Please test this release candidate and report feedback via the > Puppet Labs Redmine site: > > http://projects.puppetlabs.com > > Please select an affected version of 2.6.0rc1. > > RELEASE NOTES > > Language > > Support for parameterised classes > > The 2.6.0 release provides an extension to the existing class syntax to > allow parameters to be passed to classes. This brings classes more in > line with definitions, with the significant difference that definitions > have multiple instances whilst classes remain singletons. > > To create a class with parameters you can now specify: > > class apache($version) { > ... class contents ... > } > > Classes with parameters are NOT added using the include function but > rather the resulting class can then be included more like a definition: > > node webserver { > class { apache: version => "1.3.13" } > } > > Like definitions, you can also specify default parameter values in your > class like so: > > class apache($version="1.3.13",$home="/var/www") { > ... class contents ... > } > > New relationship syntax > > You can now specify relationships directly in the language: > > File[/foo] -> Service[bar] > > Specifies a normal dependency while: > > File[/foo] ~> Service[bar] > > Specifies a subscription. > > You can also do relationship chaining, specifying multiple relationships > on a single line: > > File[/foo] -> Package[baz] -> Service[bar] > > Note that while it’s confusing, you don’t have to have all of the arrows > be the same direction: > > File[/foo] -> Service[bar] <~ Package[baz] > > This can provide some succinctness at the cost of readability. > > You can also specify full resources, rather than just resource references: > > file { "/foo": ensure => present } -> package { bar: ensure => installed } > > But wait! There’s more! You can also specify a subscription on either > side of the relationship marker: > > yumrepo { foo: .... } > package { bar: provider => yum, ... } > Yumrepo <| |> -> Package <| provider == yum |> > > This, finally, provides easy many to many relationships in Puppet, but > it also opens the door to massive dependency cycles. This last feature > is a very powerful stick, and you can considerably hurt yourself with it. > > Run Stages > > Run Stages are a way for you to provide coarse-grained ordering in your > manifests without having to specify relationships to every resource you > want in a given order. It’s most useful for setup work that needs to be > done before the vast majority of your catalog even works – things like > configuring yum repositories so your package installs work. > > Run Stages are currently (intentionally) a bit limited – you can only > put entire classes into a run stage, you can’t put individual resources > there. > > There’s a main stage that resources all exist in by default; if you > don’t use run stages, everything’s in this, but it doesn’t matter to > you. You can define new stages via the new stage resource type: > > stage { pre: before => Stage[main] } > > Here we’ve used the before metaparameter but you could also use after, > require, etc to establish the necessary relationships between stages. > > Now you just specify that your class belongs in your new run stage: > > class yum { ... } > class redhat { > ... > class { yum: stage => pre } > } > > This will make sure that all of the resources in the yum are applied > before the main stage is applied. > > Note that we’re using the new parameterized classes here – this is > necessary because of the class-level limitations of Run Stages. These > limitations are present because of the complication of trying to > untangle resource dependencies across stage boundaries if we allowed > arbitrary resources to specify stages. > > On a related note, if you specify a stage for a given class, you should > specify as few as possible explicit relationships to or from that class. > Otherwise you risk a greater chance of dependency cycles. > > This can all be visualized relatively easily using the —graph option to > puppetd and opening the graphs in OmniGraffle or GraphViz. > > Specifying the ordering of Run Stages also works much better when > specified using the new relationship syntax, too: > > stage { [pre, post]: } > Stage[pre] -> Stage[main] -> Stage[post] > > This way it’s very easy to see at a glance exactly how the stages are > ordered. > > Support for hashes in the DSL > > This brings a new container syntax to the Puppet DSL: hashes. > > Hashes are defined like Ruby Hashes: > > { key1 => val1, ... } > > The Hash keys are strings but hash values can be any possible right > values admitted in Puppet DSL (i.e. a function call or a variable) > > Currently it is possible: > > * to assign hashes to a variable > $myhash = { key1 => "myval", key2 => $b } > > * to access hash members (recursively) from a variable containing a hash > (works for array too): > > $myhash = { key => { subkey => "b" }} > notice($myhash[key][subkey]] > > * to use hash member access as resource title > > * to use hash in default definition parameter or resource parameter if > the type supports it (known for the moment). > > It is not possible to string interpolate an hash access. If it proves to > be an issue it can be added or worked around with a string concatenation > operator easily. > > It is not possible to use an hash as a resource title. This might be > possible once we support compound resource title. > > Support for an elsif syntax > > Allows use of an elsif construct: > > if $server == ''mongrel'' { > include mongrel > } elsif $server == ''nginx'' { > include nginx > } else { > include thin > } > > Case and Selectors now support undef > > The case and selector statements now support the undef syntax (see #2818). > > Pure Ruby Manifests > > Puppet now supports pure Ruby manifests as equivalent to Puppet’s custom > language. That is, you can now have Ruby programs along side your Puppet > manifests. As is our custom, it’s a limited first version, but it covers > most of the specification functionality of the current language. For > instance, here’s a simple ssh class: > > hostclass :ssh do > package "ssh", :ensure => :present > file "/etc/ssh/sshd_config", :source => "puppet:///ssh/sshd_config", > :require => "Package[ssh]" > service :sshd, :ensure => :running, :require => > "File[/etc/ssh/sshd_config]" > end > > Similar to the ‘hostclass’ construct here, you can specify defined > resource types: > > define "apache::vhost", :ip, :docroot, :modperl => false do > file "/etc/apache2/sites-enabled/#{@name}.conf", :content => > template("apache/vhost.erb") > end > > As you can see from this code, the parameters for the resources become > instance variables inside of the defined resource types (and classes, > now that we support parameterized classes). > > We can do nodes, too: > > node “mynode” do > include “apache” > end > > Ruby has become a first-class citizen alongside the existing external > DSL. That means anywhere you can put a manifest, you should be able to > put Ruby code and have it behave equivalently. So, the ‘ssh’ class above > could be put into ‘$modules/ssh/manifests/init.rb’, the apache vhost > type should be placed in ‘$modules/apache/manifests/vhost.rb’, and the > node should probably be in your ‘site.pp’ file. > > You can also apply Ruby manifests directly with puppet: > > puppet -e mystuff.rb > > Note that the Ruby support does not yet cover all of the functionality > in Puppet’s language. For instance, there is not yet support for > overrides or defaults, nor for resource collections. Virtual and > exported resources are done using a separate method: > > virtual file("/my/file", :content => "something") > > All of the standard functions are also pulled into Ruby and should work > fine — e.g., ‘include’, ‘template’, and ‘require’. > > Stored Configuration > > Support is now added for using Oracle databases as a back-end for your > stored configuration. > > Facts > > There are three new facts available in manifests: > > $clientcert – the name of the client certificate > $module_name – the name of the current module (see #1545) > $caller_module_name – the name of the calling module (see #1545) > > In addition all puppet.conf configuration items are now available as > facts in your manifests. These can be accessed using the structure: > > $settings::setting_name > > Where setting_name is the name of the configuration option you’d like to > retrieve. > > Types and Providers > > A new provider for pkg has been added to support Solaris and OpenSolaris > (pkgadd). > > A new package provider has been added to support AIX package management. > > The augeas type has added the ‘incl’ and ‘lens’ parameters. These > parameters allow loading a file anywhere on the filesystem; using them > also greatly speeds up processing the resource. > > Binaries and Configuration > > Single Binary > > Puppet is now available as a single binary with sub-arguments for the > functions previously provided by the seperate binaries (the existing > binaries remain for backwards compatibility). This includes renaming > several Puppet functions to better fit an overall model. > > List of binary changes > > puppetmasterd –> puppet master > puppetd –> puppet agent > puppet –> puppet apply > puppetca –> puppet cert > ralsh –> puppet resource > puppetrun –> puppet kick > puppetqd –> puppet queue > filebucket –> puppet filebucket > puppetdoc –> puppet doc > pi –> puppet describe > > This also results in a change in the puppet.conf configuration file. > The sections, previously things like [puppetd], now should be renamed to > match the new binary names. So [puppetd] becomes [agent]. You will be > prompted to do this when you start Puppet with a log message for each > section that needs to be renamed. This is merely a warning - existing > configuration file will work unchanged. > > New options > > A new option is available, ca_name, to specify the name to use for the > Certificate Authority certificate. It defaults to the value of the > certname option (see http://projects.reductivelabs.com/issues/1507). > > A new option, dbconnections, is now available that specifies a limit for > the number of database connections made to remote databases (postgreSQL, > MySQL). > > A new option, dbport, is now available that specifies the database port > for remote database connections. > > Binary changes > > The puppetd (or puppet agent) binary now supports the > --detailed-exitcodes option available in the puppet binary. > > Certificates cleaned with puppetca (or puppet cert) are now also revoked. > > The puppetca (puppet cert) and puppetd (puppet agent) binaries now have > support for certificate fingerprinting and support for specifying digest > algorithms. To display the fingerprint of a client certificate use: > > $ puppetd --fingerprint > > or > > $ puppet agent --fingerprint > > To specify a particular digest algorithm use --digest DIGESTNAME. > > To fingerprint a certificate with puppetca use: > > $ puppetca --fingerprint host.example.com > > or > > $ puppet cert --fingerprint host.example.com > > Also supported is the --digest option. > > The puppetdoc binary now documents inheritance between nodes, shows > classes added via the require function and resources added via the > realize function. > > Functions > > The regsubst function now takes arrays as input (see #2491). > > Reports > > There is a new report type called http. If you specify: > > reports = http > > Then the new report processor will make a HTTP POST of the report in > YAML format to a specified URL. By default this URL is the report import > URL for a local Puppet Dashboard installation. You can override this > with the new reporturl setting. > > reports = http > reporturl = http://yoururl/post/ > > CHANGELOG > > 3180b9d Code smell: Two space indentation > 5432259 Code smell: Avoid needless decorations > 8f15707 Code smell: Don''t restate results directly after assignment > c3e2353 Code smell: Use &&= for dependent initialization > 42a5390 Code smell: Use ||= for conditional initialization > a07bbe2 Code smell: Omit needless checks on defined > 07b15bf Code smell: Avoid unneeded blocks > 8d1fbe4 Code smell: Avoid explicit returns > 889158a Code smell: Booleans are first class values. > 81e283b Code smell: Line modifiers are preferred to one-line blocks. > e8cf063 Code smell: Use string interpolation > eefccf2 Code smell: English names for special globals rather than > line-noise > 184132e Code smell: Use {} for % notation delimiters wherever practical > 9ee56f2 Code smell: Inconsistent indentation and related formatting issues > 051bd98 Code smell: Miscellaneous oddity removal > 77f8599 Code smell: Win32 --> MS_windows > 3fbc1d5 Updated GPG rake signing task for new Puppet Labs key > 94fa5d5 [#4182] show_diff was broken for streamed file contents > 7009704 Fix for #4117 "Storing newly-audited value" messages > 9cf9788 Manifests with variables were broken when read from STDIN to > puppet apply > 835f73c Use the name in the search path for looking for metadata > 5bab997 maint:rename resource_type to define in internal dsl > 654b564 [#4198] Require ''fileutils'' everywhere FileUtils is used > a07af2b [#4196] Move the docs into the source directory structure > 3c00591 Fix for #4178 - generalize autoloading to include .rb > cea2e5b [#3582] Remove assumption that Puppet.settings would return > values of a consistent type > c58e420 [#4180] Support legacy module structure > b4593f2 Update RDoc parser to reflect change of custom plugin and fact > locations > dda165a Fixed #4180 - Updated old module structure to match correct default > 1715f3a [#2730] mount ensure present shouldn''t unmount > a282cc3 Fixed subscribe example > 2353115 Fix for environments in startup script. - Dropped the forced > --manifest switch in the sus > e startup script to allow for environments to re-define this. > Otherwise, environments will not w > ork as puppet override configuration with command line arguments. > cfca62b Redmine: 2474 - Fix for mount fstype documentation > 3ff38df Fix for #4137 -- Oracle needs text for strings > 255 > 62dbae5 Fix for #2807 Puppet settings available as variables > a5fc364 [#4161] RDoc fails to parse some of our ruby syntax > b7e2580 [#3169] Adds more debugging to SSL cert verification > 70af43f Fix for #4167 -- overriding file permissions in conf file > 2c88884 [#4114] Fixes test failures caused by previous 4114 fixes > 4a6428b saving work for my unit tests. The redhat one still fails... > 1e0d922 [4123] - allows self.instances to correctly report state of > services. > 8d3ced5 created init provider method self.get_services which accepts an > array of filenames to exclu > de when processing defpath. > cdd4382 [#4114] Fix failures in the unit tests > e419293 [#4114] Added queueing to the log > 4b00c6a [#4110] Wrap Type#retrieve calls for backwards compatibility > 5f8a242 Fix for #4120 No namevar running puppet doc -r type > 6ac36eb [#2370] Allow OpenBSD to add packages with versions and flavors > 45a9f37 [#4108] Changed missing Application constant error > a0ea74b [#4149] Don''t create two Resource::TypeCollections > 7978be5 [#3906] Fixed missing constant Puppet::Rails when using > storeconfigs > fb6f2aa [#4136] Specs should listen on localhost > 6d4be90 [#3961] Part two: --destroy should also be local > 0598f35 Fix for #4148 (2.6 is greater than 0.25.x) > 5971898 Fix for #4142 stray use of JSON instead of PSON > 74e5bdc [#3172] Fix the arguments to Application::Kick.new, which I had > broken > 4f06e9e Maint: Explicitly put test sqlite files in a temp directory > 84a9412 maint: fix stub failure in report_spec.rb > 1f48d68 maint: fix stub failures in report_spec.rb > bee843a maint: fix stubbing in package_spec.rb > 528b915 maint: fix stubs in transaction_spec.rb > 37277a5 maint: fix stubbing in catalog_spec.rb > ea55e83 Maint: Improve the speed of setting settings. > 7c7f6da maint: file_spec heisenbugs > d6d726b Heisenbug: settings as catalog trying to create directories > e579aab maint: spec_helper should reset settings directories on *every* > test > 298a764 maint: Remove a heisentest that wasn''t testing what it claimed > b389392 maint: spec_helper should only get loaded once > 3304068 maint: :mutable_defaults to improve spec consistency > 08b49c6 [#4090] Fix the run_mode for certs and put tests on the > applications to assert their run_mo > de > e318db6 [#4059] fix the specs to correctly mock the > Puppet::Resource.new call signature > ab3d27c [#4059] Minor errors preventing ralsh from running > 59bf5e4 [#2713] Enable ELSIF > ebd0311 [#3172] puppet kick can take hostnames as bare arguments > 697508d [#4108] Missing constants fail deliberately and with a message > 2639a56 [#4092] Changed notify message to defined instead of changed > 223157d Fix for #4091 -- require loop in executables > 174e02a [#4090] Change how RunMode instances are created so that an > object for each RunMode is only > created once instead of every time it''s called > 62e3b61 [#4090] Fix last few tests and renames of mode to run_mode > 2a25883 [#4090] Git rid of the idea that run_mode is a configurable > option with defaults > 75e0662 [#4090] Rename mode (:master, :agent, :user) to run_mode > 3cd48d8 [#4089] Replace internal usage of :check with :audit > e848d41 [#3961] puppet cert --generate implies ca_location = :local > 255628e [#3961] Rename cert''s @mode to @cert_mode to reduce confusion > b2bd05d maint: Confine a test that depends on sqlite > fdc8c35 [#3994-part 3] rename spec tests from *_spec_spec to *_spec.rb > 9a94ee2 Fix for test ordering sporadic failure > 9ceb454 [#3994-part 2] rename integration tests to *_spec.rb > 06dffc1 maint: A test specified that a file wasn''t writeable, but was > writeable when run as root, w > hich caused the test to fail. Changing the test so that a directory is > in place of the writeable fi > le so not even root can write to it. > 2baf74e maint: Fixes some noisy specs > 0aae5a7 maint: Fixing tests that fail when run as root > 0fa10a6 Cleaning up various warnings in specs > 2ab123f Removing obsolete nodescope concept > 153d7cd Fix #3665 - part 2, node inheritance fixes > dd4fa66 Fix failing tests in spec/unit/resources/type.rb > 770a8ea Fix #3665 - main class shouldn''t be a subscope of itself > 76953d8 maint: Fixes broken order-dependent Tidy specs > 9afc67a Fix for pre 1.8.7 compatibility in namvar patch > d62a391 Breaking require-loop > b4af238 Fix for #3985 typo causing warning > 9169ef0 Fix: puppet apply trying to use XMLRPC constant > af41beb Remove an old test that had been unintentionally reintroduced > by a mistake in a conflict re > solution > 6a8e6fe Tweak an old test due to new error handling. > 5f53bfa Restore error handling for value> e817ad1 Fix tests broken by level-violation fix > e5478d4 Simplify the newattr method by removing a level violation > 4ef40b8 maint: Rework testing of Reports http processor to be self > contained > edfcbf9 [#3139] Fixed a problem with the value method for parameters > 61e978b [#3139] Fixed a broken integration spec in type tidy > cf9bcad maint: Fixing test to reflect that host environment assignment > now takes an object instead > of a string > c70c96b Fix some tests broken by changing the call to newattr > a72fb14 Fixing oversensitive test > 15004f3 maint: Fix failing test that needed more methods stubbed > 60932e1 Fixed require warning documentation > 6fcb87d Fixed mcx documentation error > 15ae389 Documentation fixes > f95169b [#4006] Fix test failures caused by reverting ticket 2890 > b5572ae Bug 3731. Applied Fix suggested by Doug Warner to always > flatten out the array > 117e6b6 maint: Have ''rake spec'' output in color > a7e4fe8 [#3810] Do not create a reports settings block > db44a32 Tweak for fix for #1175 to fix test failures > 3bd6f11 maint: Fixing a test typo s/stub/stubs/ > ebc3e78 maint: Fixing a failing spec by stubbing a method on a stubbed > object that should have been > stubbed. > 3b4d33c remove tests for removed code > c8089f1 [#2646] Fixes the change to onetime made in b96cd6c > 4bf6950 [#3139] Make newattr idempotent > 51b70c0 [#3994] rename the specs to have _spec.rb at the end > 9958c80 [#4064] Modify the Rails spec to use the block form of confine > af8bd77 [#4064] Modify confine to also allow a message and a block > containing the test. > 182c003 Fixing #3988 - adding support for watchr > 3a44f0e Fix #3932 - Add --charset to puppetdoc for RDoc mode > fb5c1d7 Fix #3907 - Hash couldn''t be initialized with an empty hash > 9592dd8 Fix #3871 - Add the ''in'' operator > 3696d95 [#3865] External subcommands > 0fc41ae [#3802] Replace rug with zypper > dc1a977 [#3766] Remove YAML fixups > e0e6b64 Provides #3723. Add ability for execs to have several attempts > at a successful execution an > d fix minor bug with logoutput and returns as an array.. > c8ca19a [#3674] Make sure that failing to load a feature isn''t fatal > 2a73b5d [#3674] Part 2: Autoloader load method should propagate failures > 7952af5 [#3674] Autoloader should propagate failures > f35c59f Fix #3667 - Fix class namespace > 938fbe9 Removing obsolete nodescope concept > 49cf2f2 Fixing #3651 failing to pop comment stack for some constructs > 0dd4201 Fixing #3072 - Resource generation is recursive > b96cd6c Fixes #2646. Move onetime option from the agent to global > defaults so we can specify it in > the config file. > 0a21e1b [#2522] authorized keys owner is verified > 738802e Fixing #2337 - Adding ''freeze_main'' setting > 50a626d Fixing #1545 - Adding ''caller_module_name'' variable > 5d1934b Fixing #1545 - module_name is now a variable > bba45f1 [#4055] Confine CouchDB-related specs to the couchdb feature > 1c5b67d [#4055] Refactor of abstract Couch terminus, more specs > 432db25 [#4055] Add CouchDB terminus for facts > 35636e9 [#3921] Fix typo "fact_terminus" -> "facts_terminus" > 45ca669 Targeted fix for #3851 > c00285c [#3810] Add http reports processor and `reporturl` setting > 1d49def [#3804] Fixed one failing spec for RackREST > 1e89bff Fixes #3514 - CR/LF line ending in puppet.conf cause silent failure > e6709da [#3409] fix test failures from ldap environment patch > a7884b4 [#3409] environment is not checked when nodes are in ldap > c75b219 Fixes #3395 - CR+LF line endings in manifests cause syntax error > 8b127b1 [#3388] Setting host_aliases from [] to [] no longer results in > any changes > be7112a Fixing #3139 - all properties can now be audited > 986298b Working #3139 - Adding Settings.clear Spec#after > 32f6a9d Working #3139 - Removing Property#checkable > 58cf8d9 Working #3139 - Catalogs default to host_config > 8f3e8bb Working #3139 - ResourceHarness does caching > d6407f4 Working #3139 - removing obsolete checking in Storage > 0b95a85 Working #3139 - scheduling moved to resource harness > 4627b8f Improving fix for #1175; tightening thread safety > ccc869e Part 2 of fix for #1175 (functions in environments) > 7c6b883 [#1621] Composite keys for resources > 2396eba Use the ''root'' feature rather than directly checking the uid > 8128311 fix tests to reflect methods moved from type/file/owner to > provider/file/posix > 28702a4 variable name error in refactor > 19c70b5 Remove over-eager error branch in a complicated If > 09881cf Confine out a lib that puppet was failing to load on non-win32 > d72fd9d Confine out tests that fail on unix > d1b86ec Behavior change for //UNC_Paths broke an old test > ba506c1 Resolving conflicts with jes5199:ticket/master/2935-settings-mode > f15a324 Fix Exec type > 86bd838 Move syslog into a feature > fc92408 Adapt Util::Storage specs and avoid trying to lock on directories > 58100ed Relax path qualification check on FileServing::Fileset > 1c016a1 Implement quoting on the exec commands and repair specs > 6a92894 Avoid trying to symlink() on windows > 47c9dd1 Implement "forking" for Windows > c59d864 Avoid non-win32 signals on win32 runtime > bbba9f9 Avoid trying to set uid/gid on windows > a90bcb0 Start extracting the owner managment for files into providers > b51be28 Expand file type to be able to handle Win32 and UNC paths > 17a9ad1 Updated version to 2.6.0 > a2e809b Fixed RSpec deprecation notice in lexer tests > f054d5b Make specs work on win32 > 54c4538 Delete tempfiles on win32 > 97c043f Fix path handling > f80b4c7 Print stacktraces if requested > 1d98e67 Adapt defaults to Win32 environment > ea9bb49 More win32? feature def > 1645d8e Define posix and win32 features > b3aa3ec Improve error message > d67f60f Fix ProviderDpkg specs to avoid any real executions > e119b04 Avoid setting the timeout before we know which timeout we > should set. > d40e6d4 Bug: tidy specs need FileBucket::Dipper > a6b52bb Avoid trying to lock on non-files > 533ef68 Removing obsolete FCollection stub from Functions > bc90df6 Functions are added to a module instead of Scope > 17e40e7 Slightly restructuring "Functions" file > 9d0a38e [#3921] Add facts_terminus setting to Puppet settings > 2874729 [#3921] Remove unnecessary require ''puppet/resource'' > 58a3d27 Fix for #3949 and related > b755f7f Fixed #3912 - Added client certificate name as an internal fact > called "clientcert" > b5f14c6 {#3866] Rename the method metaclass to singleton_class to avoid > the deprecation warnings fr > om Rails ActiveSupport > 2b5bd49 Fixing #3822 - checksums will be loaded from filebuckets > 94390de foo > 3b7aac5 For #3822 - Reducing checksum code duplication > ca7b166 Fixed unsupported perlstyle regex and few other minor bugs > 85f2565 Signed-off-by: Ross West <westr@connection.ca> > a4eb5d5 Signed-off-by: Ross West <westr@connection.ca> > 970fd87 Fixing #3791 - client environment is used > cce63d8 Bug #3748 LDAP group membership > 4ba3dc2 Fixing #2655 - Adding default parameter values to resources > 20a74bc Refactoring tests - replacing stubs with instances > b5db33b Fix for 3664: interpolating qualified variables. > 9ddee72 Fix #3664 - qualified variable parsing in string interpolation > a32381e Feature #2935 remove misleading comment > 5937af4 Feature #2935 Unify the codepaths for setting settings > b7d387e Feature #2935 Puppet[:mode] and Puppet[:name] are read-only > 342298c Bug: Broken codepath in util/settings > 6d5566a Feature #2935 settings are in Mode sections instead of > executable names > 9536723 Feature #2935: method extract require_application > c338fef Feature #2935: Test for if we''re "puppet cert" > cbb2802 Code cleanup: remove "self." from setdefaults > 37a5530 Feature #2935 Modes: root? predicate > ac7efc8 Feature #2935 Puppet::Mode#master? > 5665e39 Feature #2276 Single Executable: Update docstrings > fc29049 feature #2276 Single Executable: use new names for settings > sections > 631552c Feature #2935: Applications should declare modes > 8f4d644 Feature #2935: lazify require graph for applications > 6b26a7c Feature #2935: Puppet::Mode > b65d1af Feature #2276 Single Executable: usage message > 76304f8 feature #2276 Single Executable: move CommandLine methods > e9627a0 Fixing #2658 - adding backward compatibility for 0.24 > 61a719f Adding #2658 - Adding support for run stages > d13f8ac Fixing #3671 - --compile Catalogs are pretty-printed > 89e8745 Fixing #2655 - Adding default parameter values to resources > edcf429 Refactoring tests - replacing stubs with instances > 3dfb762 Fixing Catalog conversion > 0d4fd60 Fixing #1903 - metaparam inheritance is much faster > 047ebfe Fixing Parser::Resource param validation > 2fae0bd Fixes #1999 - Allows the ''apt'' provider to downgrade packages. > b10d35d Fixes #3745 Catch unhandled exception in ssh_authorized_key > provider > 584961a Fixed #3721 - Removed -u option from crontab on HP-UX > a15a70c Fixing tests broken by conceptual merge conflicts > 5988f76 Fixes #3663 - It should be possible to list signed hosts only > 2c153b1 Fixing #448 - relationships have their own syntax > 052f98f Fix #3408 - enable puppetd http compression > 3eaf69c Fix for conflict between fileserving streams and none-checksums > 2cf7222 Fix #3373 - Client side file streaming > ee5d7f1 Add master side file content streaming > 63c122f Fixing tests broken by Luke''s CRL flag patch. > 91e6022 Fixes incorrect line in partial CRL fix > 379bda0 WIP - trying to fix #3460 > 3947574 Updated Template documentation link > 5fd6e54 Change the main spec to an apply spec > 009629f Feature #2276 Single Executable: usage message > 5b64d3b feature #2276 Single Executable: optparser should get > CommandLine#args instead of ARGV > 5683fd9 Feature #2276 Single Executable: Pass a commandline object to > the application > d038a1d Refactor #3706 Reify eigenclasses of Applications > 7656ba7 feature #2276 Single Executable: CommandLine can be instantiated > 63e2e56 feature #2276 Single Executable: subcommand method > b6e2ce6 feature #2276 Single Executable: help info > b073722 feature #2276 Single Executable: help for apply > bfad735 feature #2276 Single Executable: rdoc paths on ubuntu > 7103378 feature #2276 Single Executable: legacy settings > 54c1cc5 feature #2276 Single Executable: "puppet describe" > c79b228 feature #2276 Single Executable: "puppet kick" > 6bdda8c feature #2276 Single Executable: "puppet cert" > f9783fc feature #2276 Single Executable: "puppet master" > 1d8bd0d Fix #3552 single executable should display usage > 722a27f Fixes #3702: the ''log'' report now sends the host name as the > log source again. > ddd40bb Fix for #3690 failing to calculate error codes > d61a69a Fixing #3668 - fixed autoloading classes from modules > f66095d Fix #3656 JSON serialization of dependencies > f0a0084 Fixes #3582 - Adds dbport configuration option for specifying > database port > 8b99367 Adding indirector support to Resource Types > 748aed9 Fix #3552 single executable should display usage > eafde5c Added support for flat packages in the pkgdmg package provider. > Added a test in: ./spec/uni > t/provider/package/pkgdmg.rb > c9e3d75 Fix: the rcvar name is not necessarily the same as the service > name. (More and more I get t > he feeling that FreeBSD''s rc system is totally unsuitable for Puppet. > What about porting Upstart or > SMF to FreeBSD ... ?) > 861c177 Added proper status command > 5f72eb9 Re-included old BSD service provider, made new one default for > FreeBSD > c3cd24b Rewrote FreeBSD service provider > 1250f80 Fixed documentation issues exposed in #3772 > 211782f Updated CHANGELOG for 0.25.5rc3 > 7c59acf Renamed all references to Reductive Labs to Puppet Labs > e82f5de Fix for #3107 Changing users on AIX > 44f1465 Fixing #2864 Added support for AIX System Resource Controller > (SRC) - service start stop > 02ed8db Fixes #2836. Add hold support to dpkg provider > 0f2d3ce Fixes #1223 Add Zypper support for SuSE machines > a166d50 Fix for #3399 zone type should handle exclusive IP stacks > af521fa Adding #3518 - basic dot format support > 9b2b0ec Fix #3551 rake spec fails to run integration specs > 6a66d5e Update Red Hat spec file for 0.25.5 > 46c72bb Updated CHANGELOG for 0.25.5rc2 > ee0cc07 Fixing #3533 - Removing all transaction cleanup > 11189fb Fix for #2910 -- Tidy/matches is too tricky to use > 913b63c Bug #3451: Don''t leak the terminus class setting from > Puppet::Resource::Catalog''s spec > a228399 Fix to the fix for #3295 > ae52005 Write ssh_authorized_keys as user > 8c5e80e Fixing bad test > 088c801 Fix for #3558 -- source file reading speedup > cd06b87 Fix for #3556 Plussignment value melding > 2de7da4 Fixed #3655 - Puppet doesn''t find installed packages with > portage provider > d20d5de Fixed #3672 - Error message on duplicate fileserver mounts > incorrect > 6ae6821 conf/redhat: Add notifempty to logrotate config > 7fc66d5 Fixed stored configuration documentation > 14456b4 Fixes #3653 - Changed default factpath value to better reflect > plugins in modules > f3e466b Partial fix to #2837 - changed warning message to debug > 686239f Fix #3555 - fix state of purged lists > 6f8a1e9 Updated Rake tasks to no longer load puppet.rb > 83a8c68 Fix #3540 - name methods correctly > 3d395e8 Fixes #3295 - generate() now sets the working directory to the > directory containing the spe > cified command. > 0f077c7 Added YARD task > b49c60b Update man pages and partial doc fix to #3491 > 115f37d Fixed #3532 - Typo in lib/puppet/ssl/host.rb > 784dd26 Updated version and CHANGELOG to 0.25.5rc1 > 4a6474c Modify SuSE spec file for 0.25.x and correct shebang lines for > puppetd/puppetmasterd > 385506f Fixes #3460 - Makes Puppet FHS compliant by moving /var/puppet > to /var/lib/puppet > b494427 Fix for #3101 (bug in MRI 1.8.7) > 966b269 Fixes #3419. OS X 10.6 Ruby doesn''t set supplementary groups > 49be54e Revert the guts of #2890 > e69b7db Fail gracefully on packages that don''t have the HOMEPAGE > variable set (e.g. dev-lang/php). > 83ac6b8 Fixed #3443 - Typo in mount type > dfe5c3a Fixes #3135 - darwin doesn''t support ''mount -o remount'' > 2a60e1e Adding :catalog_terminus setting > 626945b fixing obsolete comment in puppetd > 9fbb69f Adding support for only using cached catalogs > 7e1e76e Refactoring Configurer to enable the next feature > b28e21a Fixed changelog Rake task > e93eab8 Fix #3155 - prevent error when using two matching regex in cascade > b883272 Fixed puppetlast typo > 67bf142 Fixed README contents to reflect Puppet Labs and docs and wiki > changes > e35e142 Fixed link typo > d40e24c Fixed #3384 - Updated broken link > da00f68 Making a Puppet::Module test more resilient > 9792915 Fixing yumrepo type to use ''flush'' > 9ee4c2d Only trying to retrieve passwords on OS X when root > 8c31ebe Removing obsolete tests > aee9c29 Fixing a warning in the aix package provider > 232ad8f Removing tests for code that was removed in the REST refactor > 94fddbc Fixing and porting Transaction Report tests > 13d141a Fixing Property#change_to_s in rare case failures > 66858ef Fix test in parser.rb due to API change > 0f254be Fixing Hash functionality with non-constant keys > 41aeba4 Removing vistigial method in ASTHash > 1821187 Porting/removing group test/unit tests > 03532e0 Porting a simple set of tests from test/unit > 006e6af Removing obsolete test > 1a6e08f Fixing Transaction integration test > 410b71c Removing invalid File integration test > effa719 Cleaning up content/source code > 456447c Protecting spec_helper chmod from failure > fa64774 Redeleting puppetmasterd integration test > 797f412 Making SshAuthorizedKeys tests less brittle > 622bb70 Markus''s patch concerning string interpolation > 23adec5 Fix tests that use or stub find_by_checksum, which I just > changed the signature of. > 4ac8e2c The pure-ruby YAML lib doesn''t accept parameters > e31fe8c Fix a failure in new FileBucket where it was impossible to read > from a bucket with a non-de > fault path. > 3797c7a Update YAML dir test to match behavior > 83d8bda Fix heisenbug in spec/unit/provider/mount/parsed.rb > dde69c3 Remove test for old RDoc work-around > c5ce824 Fixing various broken Resource::Type tests > 6cd6c47 Renaming and fixing puppetrun tests. > a27013a Fixing calls to "class_scope" in Scope tests > 84d6892 Fixing all ''require'' function tests > b643413 Removing any mentions of :casesensitive setting > fe140a2 Migrating "puppet" executable integration test > edef647 Fixing ''puppet'' to directly run manifests > fff8d04 Fixing syntax warning > 7c25317 Moving puppet back to bin > a4d1ba0 Puppet::Parser::AST::Leaf#evaluate_match "insensitive" renamed > to "sensitive" > 404bdfa Repair validate_checksum codepath, even though it is disabled. > e895494 Puppet::Parser::Resource.new parameters have changed > 94651df Add stub to Puppet::Parser::Collector test to prevent runaway > stub failures > 40c1fb0 Resolving conflicts with ??? > 1059370 Fixing a typo from a regex > 3eeebf5 Fixing change printing for content/ensure > 47c3ca1 Converted File[checksum] to a parameter not property > 44cba9c Adding "checksum?" helper method to Checksums module > d05d25c Refactoring File[source] tests somewhat > aab2374 Resolving conflicts with luke:tickets/testing/2954 > 86cf226 Adding virtual and exported resource support to the DSL > 9d5ba41 Cleaning up ResourceAPI tests > 9060766 s/DSL::ResourceHelper/DSL::ResourceAPI/g > 6d2a10b Adding simplistic pure ruby interface > e515513 Adding environment support to parser resources > 30f49bb Resolving conflicts with ??? > b7015d7 Moving the string interpolation parsing to the parser/lexer > 07cfdd0 Resolving conflicts with jesse:feature/master/3394 > ad148d6 Resolving conflicts with luke:tickets/master/2759 > 922cf1a Resolving conflicts with ??? > 0d70468 Finishing renaming :params to :parameters internally > ad93d0e Forcing parent evaluation in resource types > 6e4db82 Fixing type/title resource resolution > aa659f2 Converging the Resource classes further > 5401a7c Adding strictness checking to resources > 9c867e6 Fixing most of the broken tests in test/ > 274d1c5 Adding tmpfile cleanup to tests > 7089446 Removing Resource::Reference classes > 4871c90 Adding support for class parameters > 4709e9b Removing :paramcheck and :typecheck settings > 744295d Allowing Environment.new to take an environment > 4f907c6 TypeCollection now supports namespace arrays > 2fa0a48 Adding parameter validation to Puppet::Resource > aff5992 Fixing failing Environment unit tests > 61636e4 Tuning file load order > 7a99a1d Removing obsolete Settings comments and require > af9a920 Adding an environment helper > c8e89cc Changing the interface of Puppet::Resource > b7ea180 Partially fixing #2954 - Adding class parameters > cbe2c49 Fixing test structure > 4bff506 Indirector/FileBucketFile warnings > 0917248 REST: Fix a state leak causing test failures > 8f9fc30 REST FileBucket: REST barfs on relative paths > 23ccefe REST: hide Request object > d8e1b27 Feature #3394 REST runner, execution > 1603f73 Feature #3394 REST Runner, preparation > 16658a0 Feature #3383 Part 2: Remove RAL XMLRPC > eda649b Feature #3383 RAL over REST > 09b1412 Fix tests on #3347 > e5a7800 Feature #3347 REST-ified FileBucket > f838389 Fix a failing test in #3115 > 9acd0b2 Feature #3115 REST-ified status() > b581c23 Fix #3229 - use original value in case/selector regex matching > 490a03d Cleaning up a test. > 576accd Removing unused Checksum::File terminus > 58920a0 Converting File terminus to use formats. > 37fd6ae Fixing datadir defaults to match new standards > bf3359e Adding client and server data dirs > b41d535 Adding filename extension support to formats. > 7504f1e Resolving conflicts with ??? > d0389f4 Renaming Parser::ResourceType to Resource::Type > 67ef78d Removing Interpreter class > b82b4ef All non-transient parser references are gone > 644ad7e Fixing callers to Parser to only pass environment > 9f8e0c0 Using the RTC helper to find the known resource types > 1705366 Always warning if autoloading a file fails > 7bef2e0 Adding helper module for finding known resource types > 804105d Moving Rails initialization to Compiler terminus > 26b272b Parser now uses Environment resource type collection > cb16908 Adding ''known_resource_types'' to Environment > 201889b Renaming LoadedCode to ResourceTypeCollection > 2c2b3c2 Storing per-environment LoadedCode instances > 6bf1953 Removing old, never-used DSL code > df2d392 Adding support for parsing ruby files > b938edf Fixing test structure > 847233f Adding []/[]= support to Parser::Resource > 6e04fba Fix for #3366 - --tags '''' treated as boolean ''true'' > 33b565a Fix for #3424 and tests to prove it. > 4820a1b Fix for #2604 Pure Ruby yaml generation > 1c5b3d7 Fixes #3113 - When importing a manifest puppet needs to chill > e6a720b Fix for #3412 install.rb should not put "." first in the tmp_dirs > b1b3bcf Resolving conflicts with testing > ba2a3af Fix 2239 (step five): introduce new > Puppet::Transaction#stop_processing? flag and associate > d check thereof within the resource evaluation code. This should allow > for the transaction to bail > out of its processing if it finds that a stop has been requested, based > on the state of Puppet::Appl > ication.stop_requested?. > 9cb6841 Fix 2239 (step four): Refactored Puppet::Daemon''s stop/restart > methods to set status flags > appropriately in Puppet::Application, and removed call to now-deprecated > @agent.configure_delayed_re > start. This should get the restart and stop behavior for daemons and > their agents working nicely wi > th the new global process status interface of Puppet::Application. > 82f852a Fix 2239 (step three): Refactored Puppet::Agent to base > starting/restarting behaviors and p > redicates on new run-status interface of Puppet::Application. > edbe9b6 Fix 2239 (step two): introduce > Puppet::Application.controlled_run method to provide simple > status-restricted execution of a passed in block; this can replace the > process status checks and pro > perly handle delayed restart behavior for Puppet::Agent. > 2cf647c Fix 2239 (step one): introduce global settings represeting > application run state with metho > ds for setting the state and appropriately-named predicates for querying > state, all in the Puppet::A > pplication class itself. To be used by Puppet::Daemon and Puppet::Agent > and Puppet::Transaction for > better response to TERM, INT, HUP. > ce944a5 Fix unit tests in file/target.rb > 481ddb8 Name change of event in ral/type/exec.rb > 1ebc91e Use a helper function to evaluate a resource since the API has > changed > bfb1fa5 Allow skipped resources to process events > a18b05d Actually invoke the allow_changes? method in ResourceHarness > bf2f088 Generated resources'' events are actually bound to the resource > that generated them. > 50ed75b Remove test that tests internal class structures which have > changed. > 1779079 Remove stale set_trigger > 9154aca Since the types stored in resource''s @parameters have changed, > we need to also change inclu > de? method to be more robust. > 2a2ab75 Fix test failures due to name changes of event symbols > 0a72a98 Remove rollback test, since rollback was removed. > 010907b Mark resource/status as failed if they are associated with a > failing event. > 17bccb0 Restore noop non-behaviours > 8465cd0 Resolving conflicts with reinh:feature/master/single_executable > 0f768ed Removing now-obsolete user tests > 7627441 Fixing most failing test/ tests. > 9d9b20f Fixing Configurer interface to transaction report > eb0a4b5 Fixing fingerprint tests to work with new log validation > f4ef039 Changing REST report integration test to use new interface > fdefb64 Fixing "require" function to use new class interface > 266bc08 Removing now-obsolete "retrieve" method on package type > 67a75db Fixing broken selinux tests > 2777e1f Fixing feature validation when passed one item > 5aa26d0 Changing method profile for other event queueing > ec7ea27 Refactoring event queueing for performance > 68ce086 Changing the method profile of EventManager#queue_event > 9919b14 Moving Metric management to the reports > a9fc134 Removing mention of @changes in Transaction > a18769d Cleaning up the report tests a bit > 386b3e5 Fixing #2759 - reports now have complete change info > fbd5b0a ResourceHarness now doesn''t check params with no ''should'' > 3f6c948 Changing Transaction to use the new ResourceHarness > 6051599 Fixing log message when changes fail > 149d5ef Fixing some compatibility and old tests > c30494f Renaming some methods in Transaction::Change > 8d5f052 Adding Transaction::ResourceHarness class > 6651aa4 Adding first version of Resource::Status class > 4bb35a7 Fixing File type indentation > 796d882 Removing last event collection transaction code > e838bcc Solidifying the RAL/Event integration. > 977595b Refactoring the Change/Event/Property interface > 5776fe4 Cleaning up the Log initialization code. > 2292b76 Refactoring the RAL interface to logging > d93d80a Using Logging module in main Puppet module > c6dd180 Adding tests for "Logging" module > 242209d Correcting comments and making report timestamp internal > a4b77f6 Failing in app/puppet if facts are not found > f925475 Fixing file content logs > 73f57f2 removing extraneous comment > 4be8601 Adding Transaction events to Transaction reports > 2aa579b Removing a redundant method in Report > 5a8b460 Removing unused code and adding a couple of tests > 9a78bee Adding tests for the ''report'' log destination > f2ed655 Extracting event management into a separate class > 329527f Changing SimpleGraph.matching_edges to expect one event > f8d7c44 Moving event creation to the resource > ee9cff9 Reorganizing Property class to match current style > 4212f1c Cleaning up Event creation > 8280987 Adding "type" instance method to enhance Demeterness > ad90900 Random code cleanup > 32d34e9 Moving Ensure property into separate file > 3c86666 Moving Parameter utility classes into separate files > 2cbd9e8 Switching transactions to callback-based events > 6a450c5 removing never-used code > 379ac8f Moving log destination code into separate files > b2d1728 fixed a couple of typos > 7ab29c4 Unit tests for path changes > a8245d8 Handle path elements with ticks and spaces > 98581ad Fix builtins glob in single executable > b4b07f5 Fix failing specs > e7bc19a Rename puppet application spec to main > c014c29 Renaming the old puppet executable > deff92d Find both bin and sbin usage docs, fail gracefully > 3c8d012 Fix application name in bin/ralsh > be0ecf8 Initial puppet single executable > 7a32777 Renaming applications, mostly removing ''puppet'' > b19a044 Some tests were leaking state when the test failed > 5b2802c Typo in method call in test. > 6a148e2 Supressing warnings (not really failures) in test/unit > 06deee7 Fix test using wrong Puppet util filesetting group > 74f5167 Mock user in SUIDManager tests > 000d37a Removing resources generate tests > 11379c0 Removing old test for service/debian provider > 2b8125c Replace test/unit file write test with spec > 164f1ce Allow adding single key to hashes > fd427a5 Raise an error when appending not a hash to a hash > 75c32f9 Fix #2389 - Enhance Puppet DSL with Hashes > 9122ac5 Fix #2929 - Allow checksum to be "none" > 73c8d0d Fix #3186 - require function set relationship only on the last > class > c5a4de2 Fixing #3185 Rakefile is loading puppet.rb twice > c694c4d Fix #3150 - require function doesn''t like ::class syntax > 075f3c8 Added time module to tagmail report > dfb8082 Fixed the return types were valid, and removed the copy paste > error with the exception logi > c > 6e16ea1 Resolving conflicts with ??? > bca7e2c Add AIX package management support (installp&nim) > b2c9455 Fixing #3148 Settings#without_noop when run with no noop setting > 8bafc37 Move scope parenting & class_scope from Compiler to Scope > 7403c6e [#3392] Better Rakefile, remove puppetmasterd spec > de94f68 Fixing tests in pkg provider > 4b55fb0 bug #3407 Part 2 > f891ba2 Fixing #3407 Failing tests in spec/unit/node/environment.rb > af9c19a Bug #3406 augeas spec fails if there is not a default provider > 718a87a Bug #3402 Stub returning invalid type for :noop > 88d6cd5 Bug #3401 Spec failed due to missing manditory setting in mock > d9920bc Bug #3400 Bad mocks causing failing tests > c6f02f2 Fix #3167 Duplicate constant warnings in dpkg.rb > 70c71c5 Fixed Rails database tests > 46f9d00 Fix #3117 - cert fingerprinting uses a method not available in > ruby <= 1.8.6 > 04842ef Fixed test error message. > fcce222 First shot at the OpenSolaris pkg(5) provider > 3e9677f Feature #2839 - fingerprint certificate > 91c44b4 Fix a few puppetd specs tests > d77c9ac Revert "Feature #2839 - fingerprint certificate" > 58a81ba Fixing #1054 - transaction reports are always sent > 282b4b3 Removing some unneeded validation code from Transaction.new > 66a3e6a Removing unused configurer code > 2044550 Fix #2894 - exclude .pp files under modules files directories > d31ff7e Adapt to method name change since 8971d8 > a9fb82b Feature #2839 - fingerprint certificate > a967b93 Feature #2395 - revoke when cleaning a certificate with puppetca > e26e831 Updated test series > 53869e9 Fix #2818 - scope variable assigned with undef are not "undef" > 4226e01 Fix for #2959 (calling exit status on a nil report) > 8971d8b Fixing #2596 - Node, Class, Definition are not AST > 39d4a93 Adding a context method to the Errors module > 22c642d Extracting language doc support into a module > adc211a Adding module metadata > bf40f4f Upgrading rspec for tests to 1.2.9 > 61d1911 Fix 2841 - Puppetdoc/RDoc parses realize function > e63d23e Added tickets/master/2596 to the testing branch > 41da962 Feature 2827 Option to disable managing internal files > c9f40be Fixed #2568 - Add database option ''dbconnections'' > 2d137e2 Fixing #1507 - Adding a :ca_name setting > 089ac3e Fixing #2617 - using the searched-for REST name > 28e1bc6 Always using the CA_name constant instead of "ca" > 2d4b795 Fix #1934 - detailed-exitcodes for puppetd > 0f61816 Fix #2649 Allow ssl dir creation in --noop mode > 53be6f8 Fix #2796 - Fix puppetdoc rdoc selector parsing > 391786f Fix #2795 - puppetdoc rdoc reports a better error message > b832d81 Fix #2784 - puppetdoc/rdoc didn''t parse mono-instruction class > content > b1deb89 Covers the RDoc Puppet Parser with specs > ced5a78 Fix #2376 - Display class/node inheritance in puppetdoc > 8d9fbbd Fix #2703 - add ''require'' to puppetdoc > 41b7c3c Adding an example yaml node script > 66a44dd type augeas: add ''incl'' and ''lens'' parameters > c61335f Patch to address feature #2571 to add Oracle support to Puppet > > Regards > > James Turnbull > > -- Author of: * Pro Linux System Administration > (http://tinyurl.com/linuxadmin) * Pulling Strings with Puppet > (http://tinyurl.com/pupbook) * Pro Nagios 2.0 > (http://tinyurl.com/pronagios) * Hardening Linux > (http://tinyurl.com/hardeninglinux) > > -- Puppet Labs - http://www.puppetlabs.com C: 503-734-8571 >-- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Mike Pountney
2010-Jul-10  08:43 UTC
Re: [Puppet Users] ANNOUNCE: Puppet 2.6.0 - Release Candidate 1 available!
+1 to that! I''m particularly interested in using hashes and stages. Any knowledge of known gotchas going from 0.25 manifests would be appreciated, if available :) On 10 Jul 2010, at 08:58, Ryan Dooley <ryan.dooley@gmail.com> wrote:> Awesome :) > > On 7/9/2010 11:58 PM, James Turnbull wrote: >> Welcome back again to the Puppet release cycle with the long-awaited >> eleventy times better 2.6.0rc1 release! >> >> The 2.6.0 release is a major feature release and includes a huge variety >> of new features, fixes, updates and enhancements. These include the >> complete cut-over from XMLRPC to the REST API, numerous language >> enhancements, a complete rewrite of the events and reporting system, an >> internal Ruby DSL, a single binary, a new HTTP report processor, and a >> myriad of other enhancements. >> >> As a result of the bucket-load of new features and enhancements we also >> need lots of help testing it. Please run up the release candidate in >> your test environment or using VMs and test it as extensively as >> possible. >> >> We''ve include release notes below that you can also see at: >> >> http://projects.puppetlabs.com/projects/puppet/wiki/Release_Notes >> >> The release candidate is available for download at: >> >> http://puppetlabs.com/downloads/puppet/puppet-2.6.0rc1.tar.gz >> >> Please note that all final releases of Puppet are signed with the >> Puppet Labs key (we''ll sign the production release with the new, >> improved Puppet Labs key). >> >> See the Verifying Puppet Download section at >> http://projects.puppetlabs.com/projects/puppet/wiki/Downloading_Puppet >> >> Please test this release candidate and report feedback via the >> Puppet Labs Redmine site: >> >> http://projects.puppetlabs.com >> >> Please select an affected version of 2.6.0rc1. >> >> RELEASE NOTES >> >> Language >> >> Support for parameterised classes >> >> The 2.6.0 release provides an extension to the existing class syntax to >> allow parameters to be passed to classes. This brings classes more in >> line with definitions, with the significant difference that definitions >> have multiple instances whilst classes remain singletons. >> >> To create a class with parameters you can now specify: >> >> class apache($version) { >> ... class contents ... >> } >> >> Classes with parameters are NOT added using the include function but >> rather the resulting class can then be included more like a definition: >> >> node webserver { >> class { apache: version => "1.3.13" } >> } >> >> Like definitions, you can also specify default parameter values in your >> class like so: >> >> class apache($version="1.3.13",$home="/var/www") { >> ... class contents ... >> } >> >> New relationship syntax >> >> You can now specify relationships directly in the language: >> >> File[/foo] -> Service[bar] >> >> Specifies a normal dependency while: >> >> File[/foo] ~> Service[bar] >> >> Specifies a subscription. >> >> You can also do relationship chaining, specifying multiple relationships >> on a single line: >> >> File[/foo] -> Package[baz] -> Service[bar] >> >> Note that while it’s confusing, you don’t have to have all of the arrows >> be the same direction: >> >> File[/foo] -> Service[bar] <~ Package[baz] >> >> This can provide some succinctness at the cost of readability. >> >> You can also specify full resources, rather than just resource references: >> >> file { "/foo": ensure => present } -> package { bar: ensure => installed } >> >> But wait! There’s more! You can also specify a subscription on either >> side of the relationship marker: >> >> yumrepo { foo: .... } >> package { bar: provider => yum, ... } >> Yumrepo <| |> -> Package <| provider == yum |> >> >> This, finally, provides easy many to many relationships in Puppet, but >> it also opens the door to massive dependency cycles. This last feature >> is a very powerful stick, and you can considerably hurt yourself with it. >> >> Run Stages >> >> Run Stages are a way for you to provide coarse-grained ordering in your >> manifests without having to specify relationships to every resource you >> want in a given order. It’s most useful for setup work that needs to be >> done before the vast majority of your catalog even works – things like >> configuring yum repositories so your package installs work. >> >> Run Stages are currently (intentionally) a bit limited – you can only >> put entire classes into a run stage, you can’t put individual resources >> there. >> >> There’s a main stage that resources all exist in by default; if you >> don’t use run stages, everything’s in this, but it doesn’t matter to >> you. You can define new stages via the new stage resource type: >> >> stage { pre: before => Stage[main] } >> >> Here we’ve used the before metaparameter but you could also use after, >> require, etc to establish the necessary relationships between stages. >> >> Now you just specify that your class belongs in your new run stage: >> >> class yum { ... } >> class redhat { >> ... >> class { yum: stage => pre } >> } >> >> This will make sure that all of the resources in the yum are applied >> before the main stage is applied. >> >> Note that we’re using the new parameterized classes here – this is >> necessary because of the class-level limitations of Run Stages. These >> limitations are present because of the complication of trying to >> untangle resource dependencies across stage boundaries if we allowed >> arbitrary resources to specify stages. >> >> On a related note, if you specify a stage for a given class, you should >> specify as few as possible explicit relationships to or from that class. >> Otherwise you risk a greater chance of dependency cycles. >> >> This can all be visualized relatively easily using the —graph option to >> puppetd and opening the graphs in OmniGraffle or GraphViz. >> >> Specifying the ordering of Run Stages also works much better when >> specified using the new relationship syntax, too: >> >> stage { [pre, post]: } >> Stage[pre] -> Stage[main] -> Stage[post] >> >> This way it’s very easy to see at a glance exactly how the stages are >> ordered. >> >> Support for hashes in the DSL >> >> This brings a new container syntax to the Puppet DSL: hashes. >> >> Hashes are defined like Ruby Hashes: >> >> { key1 => val1, ... } >> >> The Hash keys are strings but hash values can be any possible right >> values admitted in Puppet DSL (i.e. a function call or a variable) >> >> Currently it is possible: >> >> * to assign hashes to a variable >> $myhash = { key1 => "myval", key2 => $b } >> >> * to access hash members (recursively) from a variable containing a hash >> (works for array too): >> >> $myhash = { key => { subkey => "b" }} >> notice($myhash[key][subkey]] >> >> * to use hash member access as resource title >> >> * to use hash in default definition parameter or resource parameter if >> the type supports it (known for the moment). >> >> It is not possible to string interpolate an hash access. If it proves to >> be an issue it can be added or worked around with a string concatenation >> operator easily. >> >> It is not possible to use an hash as a resource title. This might be >> possible once we support compound resource title. >> >> Support for an elsif syntax >> >> Allows use of an elsif construct: >> >> if $server == ''mongrel'' { >> include mongrel >> } elsif $server == ''nginx'' { >> include nginx >> } else { >> include thin >> } >> >> Case and Selectors now support undef >> >> The case and selector statements now support the undef syntax (see #2818). >> >> Pure Ruby Manifests >> >> Puppet now supports pure Ruby manifests as equivalent to Puppet’s custom >> language. That is, you can now have Ruby programs along side your Puppet >> manifests. As is our custom, it’s a limited first version, but it covers >> most of the specification functionality of the current language. For >> instance, here’s a simple ssh class: >> >> hostclass :ssh do >> package "ssh", :ensure => :present >> file "/etc/ssh/sshd_config", :source => "puppet:///ssh/sshd_config", >> :require => "Package[ssh]" >> service :sshd, :ensure => :running, :require => >> "File[/etc/ssh/sshd_config]" >> end >> >> Similar to the ‘hostclass’ construct here, you can specify defined >> resource types: >> >> define "apache::vhost", :ip, :docroot, :modperl => false do >> file "/etc/apache2/sites-enabled/#{@name}.conf", :content => >> template("apache/vhost.erb") >> end >> >> As you can see from this code, the parameters for the resources become >> instance variables inside of the defined resource types (and classes, >> now that we support parameterized classes). >> >> We can do nodes, too: >> >> node “mynode” do >> include “apache” >> end >> >> Ruby has become a first-class citizen alongside the existing external >> DSL. That means anywhere you can put a manifest, you should be able to >> put Ruby code and have it behave equivalently. So, the ‘ssh’ class above >> could be put into ‘$modules/ssh/manifests/init.rb’, the apache vhost >> type should be placed in ‘$modules/apache/manifests/vhost.rb’, and the >> node should probably be in your ‘site.pp’ file. >> >> You can also apply Ruby manifests directly with puppet: >> >> puppet -e mystuff.rb >> >> Note that the Ruby support does not yet cover all of the functionality >> in Puppet’s language. For instance, there is not yet support for >> overrides or defaults, nor for resource collections. Virtual and >> exported resources are done using a separate method: >> >> virtual file("/my/file", :content => "something") >> >> All of the standard functions are also pulled into Ruby and should work >> fine — e.g., ‘include’, ‘template’, and ‘require’. >> >> Stored Configuration >> >> Support is now added for using Oracle databases as a back-end for your >> stored configuration. >> >> Facts >> >> There are three new facts available in manifests: >> >> $clientcert – the name of the client certificate >> $module_name – the name of the current module (see #1545) >> $caller_module_name – the name of the calling module (see #1545) >> >> In addition all puppet.conf configuration items are now available as >> facts in your manifests. These can be accessed using the structure: >> >> $settings::setting_name >> >> Where setting_name is the name of the configuration option you’d like to >> retrieve. >> >> Types and Providers >> >> A new provider for pkg has been added to support Solaris and OpenSolaris >> (pkgadd). >> >> A new package provider has been added to support AIX package management. >> >> The augeas type has added the ‘incl’ and ‘lens’ parameters. These >> parameters allow loading a file anywhere on the filesystem; using them >> also greatly speeds up processing the resource. >> >> Binaries and Configuration >> >> Single Binary >> >> Puppet is now available as a single binary with sub-arguments for the >> functions previously provided by the seperate binaries (the existing >> binaries remain for backwards compatibility). This includes renaming >> several Puppet functions to better fit an overall model. >> >> List of binary changes >> >> puppetmasterd –> puppet master >> puppetd –> puppet agent >> puppet –> puppet apply >> puppetca –> puppet cert >> ralsh –> puppet resource >> puppetrun –> puppet kick >> puppetqd –> puppet queue >> filebucket –> puppet filebucket >> puppetdoc –> puppet doc >> pi –> puppet describe >> >> This also results in a change in the puppet.conf configuration file. >> The sections, previously things like [puppetd], now should be renamed to >> match the new binary names. So [puppetd] becomes [agent]. You will be >> prompted to do this when you start Puppet with a log message for each >> section that needs to be renamed. This is merely a warning - existing >> configuration file will work unchanged. >> >> New options >> >> A new option is available, ca_name, to specify the name to use for the >> Certificate Authority certificate. It defaults to the value of the >> certname option (see http://projects.reductivelabs.com/issues/1507). >> >> A new option, dbconnections, is now available that specifies a limit for >> the number of database connections made to remote databases (postgreSQL, >> MySQL). >> >> A new option, dbport, is now available that specifies the database port >> for remote database connections. >> >> Binary changes >> >> The puppetd (or puppet agent) binary now supports the >> --detailed-exitcodes option available in the puppet binary. >> >> Certificates cleaned with puppetca (or puppet cert) are now also revoked. >> >> The puppetca (puppet cert) and puppetd (puppet agent) binaries now have >> support for certificate fingerprinting and support for specifying digest >> algorithms. To display the fingerprint of a client certificate use: >> >> $ puppetd --fingerprint >> >> or >> >> $ puppet agent --fingerprint >> >> To specify a particular digest algorithm use --digest DIGESTNAME. >> >> To fingerprint a certificate with puppetca use: >> >> $ puppetca --fingerprint host.example.com >> >> or >> >> $ puppet cert --fingerprint host.example.com >> >> Also supported is the --digest option. >> >> The puppetdoc binary now documents inheritance between nodes, shows >> classes added via the require function and resources added via the >> realize function. >> >> Functions >> >> The regsubst function now takes arrays as input (see #2491). >> >> Reports >> >> There is a new report type called http. If you specify: >> >> reports = http >> >> Then the new report processor will make a HTTP POST of the report in >> YAML format to a specified URL. By default this URL is the report import >> URL for a local Puppet Dashboard installation. You can override this >> with the new reporturl setting. >> >> reports = http >> reporturl = http://yoururl/post/ >> >> CHANGELOG >> >> 3180b9d Code smell: Two space indentation >> 5432259 Code smell: Avoid needless decorations >> 8f15707 Code smell: Don''t restate results directly after assignment >> c3e2353 Code smell: Use &&= for dependent initialization >> 42a5390 Code smell: Use ||= for conditional initialization >> a07bbe2 Code smell: Omit needless checks on defined >> 07b15bf Code smell: Avoid unneeded blocks >> 8d1fbe4 Code smell: Avoid explicit returns >> 889158a Code smell: Booleans are first class values. >> 81e283b Code smell: Line modifiers are preferred to one-line blocks. >> e8cf063 Code smell: Use string interpolation >> eefccf2 Code smell: English names for special globals rather than >> line-noise >> 184132e Code smell: Use {} for % notation delimiters wherever practical >> 9ee56f2 Code smell: Inconsistent indentation and related formatting issues >> 051bd98 Code smell: Miscellaneous oddity removal >> 77f8599 Code smell: Win32 --> MS_windows >> 3fbc1d5 Updated GPG rake signing task for new Puppet Labs key >> 94fa5d5 [#4182] show_diff was broken for streamed file contents >> 7009704 Fix for #4117 "Storing newly-audited value" messages >> 9cf9788 Manifests with variables were broken when read from STDIN to >> puppet apply >> 835f73c Use the name in the search path for looking for metadata >> 5bab997 maint:rename resource_type to define in internal dsl >> 654b564 [#4198] Require ''fileutils'' everywhere FileUtils is used >> a07af2b [#4196] Move the docs into the source directory structure >> 3c00591 Fix for #4178 - generalize autoloading to include .rb >> cea2e5b [#3582] Remove assumption that Puppet.settings would return >> values of a consistent type >> c58e420 [#4180] Support legacy module structure >> b4593f2 Update RDoc parser to reflect change of custom plugin and fact >> locations >> dda165a Fixed #4180 - Updated old module structure to match correct default >> 1715f3a [#2730] mount ensure present shouldn''t unmount >> a282cc3 Fixed subscribe example >> 2353115 Fix for environments in startup script. - Dropped the forced >> --manifest switch in the sus >> e startup script to allow for environments to re-define this. >> Otherwise, environments will not w >> ork as puppet override configuration with command line arguments. >> cfca62b Redmine: 2474 - Fix for mount fstype documentation >> 3ff38df Fix for #4137 -- Oracle needs text for strings > 255 >> 62dbae5 Fix for #2807 Puppet settings available as variables >> a5fc364 [#4161] RDoc fails to parse some of our ruby syntax >> b7e2580 [#3169] Adds more debugging to SSL cert verification >> 70af43f Fix for #4167 -- overriding file permissions in conf file >> 2c88884 [#4114] Fixes test failures caused by previous 4114 fixes >> 4a6428b saving work for my unit tests. The redhat one still fails... >> 1e0d922 [4123] - allows self.instances to correctly report state of >> services. >> 8d3ced5 created init provider method self.get_services which accepts an >> array of filenames to exclu >> de when processing defpath. >> cdd4382 [#4114] Fix failures in the unit tests >> e419293 [#4114] Added queueing to the log >> 4b00c6a [#4110] Wrap Type#retrieve calls for backwards compatibility >> 5f8a242 Fix for #4120 No namevar running puppet doc -r type >> 6ac36eb [#2370] Allow OpenBSD to add packages with versions and flavors >> 45a9f37 [#4108] Changed missing Application constant error >> a0ea74b [#4149] Don''t create two Resource::TypeCollections >> 7978be5 [#3906] Fixed missing constant Puppet::Rails when using >> storeconfigs >> fb6f2aa [#4136] Specs should listen on localhost >> 6d4be90 [#3961] Part two: --destroy should also be local >> 0598f35 Fix for #4148 (2.6 is greater than 0.25.x) >> 5971898 Fix for #4142 stray use of JSON instead of PSON >> 74e5bdc [#3172] Fix the arguments to Application::Kick.new, which I had >> broken >> 4f06e9e Maint: Explicitly put test sqlite files in a temp directory >> 84a9412 maint: fix stub failure in report_spec.rb >> 1f48d68 maint: fix stub failures in report_spec.rb >> bee843a maint: fix stubbing in package_spec.rb >> 528b915 maint: fix stubs in transaction_spec.rb >> 37277a5 maint: fix stubbing in catalog_spec.rb >> ea55e83 Maint: Improve the speed of setting settings. >> 7c7f6da maint: file_spec heisenbugs >> d6d726b Heisenbug: settings as catalog trying to create directories >> e579aab maint: spec_helper should reset settings directories on *every* >> test >> 298a764 maint: Remove a heisentest that wasn''t testing what it claimed >> b389392 maint: spec_helper should only get loaded once >> 3304068 maint: :mutable_defaults to improve spec consistency >> 08b49c6 [#4090] Fix the run_mode for certs and put tests on the >> applications to assert their run_mo >> de >> e318db6 [#4059] fix the specs to correctly mock the >> Puppet::Resource.new call signature >> ab3d27c [#4059] Minor errors preventing ralsh from running >> 59bf5e4 [#2713] Enable ELSIF >> ebd0311 [#3172] puppet kick can take hostnames as bare arguments >> 697508d [#4108] Missing constants fail deliberately and with a message >> 2639a56 [#4092] Changed notify message to defined instead of changed >> 223157d Fix for #4091 -- require loop in executables >> 174e02a [#4090] Change how RunMode instances are created so that an >> object for each RunMode is only >> created once instead of every time it''s called >> 62e3b61 [#4090] Fix last few tests and renames of mode to run_mode >> 2a25883 [#4090] Git rid of the idea that run_mode is a configurable >> option with defaults >> 75e0662 [#4090] Rename mode (:master, :agent, :user) to run_mode >> 3cd48d8 [#4089] Replace internal usage of :check with :audit >> e848d41 [#3961] puppet cert --generate implies ca_location = :local >> 255628e [#3961] Rename cert''s @mode to @cert_mode to reduce confusion >> b2bd05d maint: Confine a test that depends on sqlite >> fdc8c35 [#3994-part 3] rename spec tests from *_spec_spec to *_spec.rb >> 9a94ee2 Fix for test ordering sporadic failure >> 9ceb454 [#3994-part 2] rename integration tests to *_spec.rb >> 06dffc1 maint: A test specified that a file wasn''t writeable, but was >> writeable when run as root, w >> hich caused the test to fail. Changing the test so that a directory is >> in place of the writeable fi >> le so not even root can write to it. >> 2baf74e maint: Fixes some noisy specs >> 0aae5a7 maint: Fixing tests that fail when run as root >> 0fa10a6 Cleaning up various warnings in specs >> 2ab123f Removing obsolete nodescope concept >> 153d7cd Fix #3665 - part 2, node inheritance fixes >> dd4fa66 Fix failing tests in spec/unit/resources/type.rb >> 770a8ea Fix #3665 - main class shouldn''t be a subscope of itself >> 76953d8 maint: Fixes broken order-dependent Tidy specs >> 9afc67a Fix for pre 1.8.7 compatibility in namvar patch >> d62a391 Breaking require-loop >> b4af238 Fix for #3985 typo causing warning >> 9169ef0 Fix: puppet apply trying to use XMLRPC constant >> af41beb Remove an old test that had been unintentionally reintroduced >> by a mistake in a conflict re >> solution >> 6a8e6fe Tweak an old test due to new error handling. >> 5f53bfa Restore error handling for value>> e817ad1 Fix tests broken by level-violation fix >> e5478d4 Simplify the newattr method by removing a level violation >> 4ef40b8 maint: Rework testing of Reports http processor to be self >> contained >> edfcbf9 [#3139] Fixed a problem with the value method for parameters >> 61e978b [#3139] Fixed a broken integration spec in type tidy >> cf9bcad maint: Fixing test to reflect that host environment assignment >> now takes an object instead >> of a string >> c70c96b Fix some tests broken by changing the call to newattr >> a72fb14 Fixing oversensitive test >> 15004f3 maint: Fix failing test that needed more methods stubbed >> 60932e1 Fixed require warning documentation >> 6fcb87d Fixed mcx documentation error >> 15ae389 Documentation fixes >> f95169b [#4006] Fix test failures caused by reverting ticket 2890 >> b5572ae Bug 3731. Applied Fix suggested by Doug Warner to always >> flatten out the array >> 117e6b6 maint: Have ''rake spec'' output in color >> a7e4fe8 [#3810] Do not create a reports settings block >> db44a32 Tweak for fix for #1175 to fix test failures >> 3bd6f11 maint: Fixing a test typo s/stub/stubs/ >> ebc3e78 maint: Fixing a failing spec by stubbing a method on a stubbed >> object that should have been >> stubbed. >> 3b4d33c remove tests for removed code >> c8089f1 [#2646] Fixes the change to onetime made in b96cd6c >> 4bf6950 [#3139] Make newattr idempotent >> 51b70c0 [#3994] rename the specs to have _spec.rb at the end >> 9958c80 [#4064] Modify the Rails spec to use the block form of confine >> af8bd77 [#4064] Modify confine to also allow a message and a block >> containing the test. >> 182c003 Fixing #3988 - adding support for watchr >> 3a44f0e Fix #3932 - Add --charset to puppetdoc for RDoc mode >> fb5c1d7 Fix #3907 - Hash couldn''t be initialized with an empty hash >> 9592dd8 Fix #3871 - Add the ''in'' operator >> 3696d95 [#3865] External subcommands >> 0fc41ae [#3802] Replace rug with zypper >> dc1a977 [#3766] Remove YAML fixups >> e0e6b64 Provides #3723. Add ability for execs to have several attempts >> at a successful execution an >> d fix minor bug with logoutput and returns as an array.. >> c8ca19a [#3674] Make sure that failing to load a feature isn''t fatal >> 2a73b5d [#3674] Part 2: Autoloader load method should propagate failures >> 7952af5 [#3674] Autoloader should propagate failures >> f35c59f Fix #3667 - Fix class namespace >> 938fbe9 Removing obsolete nodescope concept >> 49cf2f2 Fixing #3651 failing to pop comment stack for some constructs >> 0dd4201 Fixing #3072 - Resource generation is recursive >> b96cd6c Fixes #2646. Move onetime option from the agent to global >> defaults so we can specify it in >> the config file. >> 0a21e1b [#2522] authorized keys owner is verified >> 738802e Fixing #2337 - Adding ''freeze_main'' setting >> 50a626d Fixing #1545 - Adding ''caller_module_name'' variable >> 5d1934b Fixing #1545 - module_name is now a variable >> bba45f1 [#4055] Confine CouchDB-related specs to the couchdb feature >> 1c5b67d [#4055] Refactor of abstract Couch terminus, more specs >> 432db25 [#4055] Add CouchDB terminus for facts >> 35636e9 [#3921] Fix typo "fact_terminus" -> "facts_terminus" >> 45ca669 Targeted fix for #3851 >> c00285c [#3810] Add http reports processor and `reporturl` setting >> 1d49def [#3804] Fixed one failing spec for RackREST >> 1e89bff Fixes #3514 - CR/LF line ending in puppet.conf cause silent failure >> e6709da [#3409] fix test failures from ldap environment patch >> a7884b4 [#3409] environment is not checked when nodes are in ldap >> c75b219 Fixes #3395 - CR+LF line endings in manifests cause syntax error >> 8b127b1 [#3388] Setting host_aliases from [] to [] no longer results in >> any changes >> be7112a Fixing #3139 - all properties can now be audited >> 986298b Working #3139 - Adding Settings.clear Spec#after >> 32f6a9d Working #3139 - Removing Property#checkable >> 58cf8d9 Working #3139 - Catalogs default to host_config >> 8f3e8bb Working #3139 - ResourceHarness does caching >> d6407f4 Working #3139 - removing obsolete checking in Storage >> 0b95a85 Working #3139 - scheduling moved to resource harness >> 4627b8f Improving fix for #1175; tightening thread safety >> ccc869e Part 2 of fix for #1175 (functions in environments) >> 7c6b883 [#1621] Composite keys for resources >> 2396eba Use the ''root'' feature rather than directly checking the uid >> 8128311 fix tests to reflect methods moved from type/file/owner to >> provider/file/posix >> 28702a4 variable name error in refactor >> 19c70b5 Remove over-eager error branch in a complicated If >> 09881cf Confine out a lib that puppet was failing to load on non-win32 >> d72fd9d Confine out tests that fail on unix >> d1b86ec Behavior change for //UNC_Paths broke an old test >> ba506c1 Resolving conflicts with jes5199:ticket/master/2935-settings-mode >> f15a324 Fix Exec type >> 86bd838 Move syslog into a feature >> fc92408 Adapt Util::Storage specs and avoid trying to lock on directories >> 58100ed Relax path qualification check on FileServing::Fileset >> 1c016a1 Implement quoting on the exec commands and repair specs >> 6a92894 Avoid trying to symlink() on windows >> 47c9dd1 Implement "forking" for Windows >> c59d864 Avoid non-win32 signals on win32 runtime >> bbba9f9 Avoid trying to set uid/gid on windows >> a90bcb0 Start extracting the owner managment for files into providers >> b51be28 Expand file type to be able to handle Win32 and UNC paths >> 17a9ad1 Updated version to 2.6.0 >> a2e809b Fixed RSpec deprecation notice in lexer tests >> f054d5b Make specs work on win32 >> 54c4538 Delete tempfiles on win32 >> 97c043f Fix path handling >> f80b4c7 Print stacktraces if requested >> 1d98e67 Adapt defaults to Win32 environment >> ea9bb49 More win32? feature def >> 1645d8e Define posix and win32 features >> b3aa3ec Improve error message >> d67f60f Fix ProviderDpkg specs to avoid any real executions >> e119b04 Avoid setting the timeout before we know which timeout we >> should set. >> d40e6d4 Bug: tidy specs need FileBucket::Dipper >> a6b52bb Avoid trying to lock on non-files >> 533ef68 Removing obsolete FCollection stub from Functions >> bc90df6 Functions are added to a module instead of Scope >> 17e40e7 Slightly restructuring "Functions" file >> 9d0a38e [#3921] Add facts_terminus setting to Puppet settings >> 2874729 [#3921] Remove unnecessary require ''puppet/resource'' >> 58a3d27 Fix for #3949 and related >> b755f7f Fixed #3912 - Added client certificate name as an internal fact >> called "clientcert" >> b5f14c6 {#3866] Rename the method metaclass to singleton_class to avoid >> the deprecation warnings fr >> om Rails ActiveSupport >> 2b5bd49 Fixing #3822 - checksums will be loaded from filebuckets >> 94390de foo >> 3b7aac5 For #3822 - Reducing checksum code duplication >> ca7b166 Fixed unsupported perlstyle regex and few other minor bugs >> 85f2565 Signed-off-by: Ross West <westr@connection.ca> >> a4eb5d5 Signed-off-by: Ross West <westr@connection.ca> >> 970fd87 Fixing #3791 - client environment is used >> cce63d8 Bug #3748 LDAP group membership >> 4ba3dc2 Fixing #2655 - Adding default parameter values to resources >> 20a74bc Refactoring tests - replacing stubs with instances >> b5db33b Fix for 3664: interpolating qualified variables. >> 9ddee72 Fix #3664 - qualified variable parsing in string interpolation >> a32381e Feature #2935 remove misleading comment >> 5937af4 Feature #2935 Unify the codepaths for setting settings >> b7d387e Feature #2935 Puppet[:mode] and Puppet[:name] are read-only >> 342298c Bug: Broken codepath in util/settings >> 6d5566a Feature #2935 settings are in Mode sections instead of >> executable names >> 9536723 Feature #2935: method extract require_application >> c338fef Feature #2935: Test for if we''re "puppet cert" >> cbb2802 Code cleanup: remove "self." from setdefaults >> 37a5530 Feature #2935 Modes: root? predicate >> ac7efc8 Feature #2935 Puppet::Mode#master? >> 5665e39 Feature #2276 Single Executable: Update docstrings >> fc29049 feature #2276 Single Executable: use new names for settings >> sections >> 631552c Feature #2935: Applications should declare modes >> 8f4d644 Feature #2935: lazify require graph for applications >> 6b26a7c Feature #2935: Puppet::Mode >> b65d1af Feature #2276 Single Executable: usage message >> 76304f8 feature #2276 Single Executable: move CommandLine methods >> e9627a0 Fixing #2658 - adding backward compatibility for 0.24 >> 61a719f Adding #2658 - Adding support for run stages >> d13f8ac Fixing #3671 - --compile Catalogs are pretty-printed >> 89e8745 Fixing #2655 - Adding default parameter values to resources >> edcf429 Refactoring tests - replacing stubs with instances >> 3dfb762 Fixing Catalog conversion >> 0d4fd60 Fixing #1903 - metaparam inheritance is much faster >> 047ebfe Fixing Parser::Resource param validation >> 2fae0bd Fixes #1999 - Allows the ''apt'' provider to downgrade packages. >> b10d35d Fixes #3745 Catch unhandled exception in ssh_authorized_key >> provider >> 584961a Fixed #3721 - Removed -u option from crontab on HP-UX >> a15a70c Fixing tests broken by conceptual merge conflicts >> 5988f76 Fixes #3663 - It should be possible to list signed hosts only >> 2c153b1 Fixing #448 - relationships have their own syntax >> 052f98f Fix #3408 - enable puppetd http compression >> 3eaf69c Fix for conflict between fileserving streams and none-checksums >> 2cf7222 Fix #3373 - Client side file streaming >> ee5d7f1 Add master side file content streaming >> 63c122f Fixing tests broken by Luke''s CRL flag patch. >> 91e6022 Fixes incorrect line in partial CRL fix >> 379bda0 WIP - trying to fix #3460 >> 3947574 Updated Template documentation link >> 5fd6e54 Change the main spec to an apply spec >> 009629f Feature #2276 Single Executable: usage message >> 5b64d3b feature #2276 Single Executable: optparser should get >> CommandLine#args instead of ARGV >> 5683fd9 Feature #2276 Single Executable: Pass a commandline object to >> the application >> d038a1d Refactor #3706 Reify eigenclasses of Applications >> 7656ba7 feature #2276 Single Executable: CommandLine can be instantiated >> 63e2e56 feature #2276 Single Executable: subcommand method >> b6e2ce6 feature #2276 Single Executable: help info >> b073722 feature #2276 Single Executable: help for apply >> bfad735 feature #2276 Single Executable: rdoc paths on ubuntu >> 7103378 feature #2276 Single Executable: legacy settings >> 54c1cc5 feature #2276 Single Executable: "puppet describe" >> c79b228 feature #2276 Single Executable: "puppet kick" >> 6bdda8c feature #2276 Single Executable: "puppet cert" >> f9783fc feature #2276 Single Executable: "puppet master" >> 1d8bd0d Fix #3552 single executable should display usage >> 722a27f Fixes #3702: the ''log'' report now sends the host name as the >> log source again. >> ddd40bb Fix for #3690 failing to calculate error codes >> d61a69a Fixing #3668 - fixed autoloading classes from modules >> f66095d Fix #3656 JSON serialization of dependencies >> f0a0084 Fixes #3582 - Adds dbport configuration option for specifying >> database port >> 8b99367 Adding indirector support to Resource Types >> 748aed9 Fix #3552 single executable should display usage >> eafde5c Added support for flat packages in the pkgdmg package provider. >> Added a test in: ./spec/uni >> t/provider/package/pkgdmg.rb >> c9e3d75 Fix: the rcvar name is not necessarily the same as the service >> name. (More and more I get t >> he feeling that FreeBSD''s rc system is totally unsuitable for Puppet. >> What about porting Upstart or >> SMF to FreeBSD ... ?) >> 861c177 Added proper status command >> 5f72eb9 Re-included old BSD service provider, made new one default for >> FreeBSD >> c3cd24b Rewrote FreeBSD service provider >> 1250f80 Fixed documentation issues exposed in #3772 >> 211782f Updated CHANGELOG for 0.25.5rc3 >> 7c59acf Renamed all references to Reductive Labs to Puppet Labs >> e82f5de Fix for #3107 Changing users on AIX >> 44f1465 Fixing #2864 Added support for AIX System Resource Controller >> (SRC) - service start stop >> 02ed8db Fixes #2836. Add hold support to dpkg provider >> 0f2d3ce Fixes #1223 Add Zypper support for SuSE machines >> a166d50 Fix for #3399 zone type should handle exclusive IP stacks >> af521fa Adding #3518 - basic dot format support >> 9b2b0ec Fix #3551 rake spec fails to run integration specs >> 6a66d5e Update Red Hat spec file for 0.25.5 >> 46c72bb Updated CHANGELOG for 0.25.5rc2 >> ee0cc07 Fixing #3533 - Removing all transaction cleanup >> 11189fb Fix for #2910 -- Tidy/matches is too tricky to use >> 913b63c Bug #3451: Don''t leak the terminus class setting from >> Puppet::Resource::Catalog''s spec >> a228399 Fix to the fix for #3295 >> ae52005 Write ssh_authorized_keys as user >> 8c5e80e Fixing bad test >> 088c801 Fix for #3558 -- source file reading speedup >> cd06b87 Fix for #3556 Plussignment value melding >> 2de7da4 Fixed #3655 - Puppet doesn''t find installed packages with >> portage provider >> d20d5de Fixed #3672 - Error message on duplicate fileserver mounts >> incorrect >> 6ae6821 conf/redhat: Add notifempty to logrotate config >> 7fc66d5 Fixed stored configuration documentation >> 14456b4 Fixes #3653 - Changed default factpath value to better reflect >> plugins in modules >> f3e466b Partial fix to #2837 - changed warning message to debug >> 686239f Fix #3555 - fix state of purged lists >> 6f8a1e9 Updated Rake tasks to no longer load puppet.rb >> 83a8c68 Fix #3540 - name methods correctly >> 3d395e8 Fixes #3295 - generate() now sets the working directory to the >> directory containing the spe >> cified command. >> 0f077c7 Added YARD task >> b49c60b Update man pages and partial doc fix to #3491 >> 115f37d Fixed #3532 - Typo in lib/puppet/ssl/host.rb >> 784dd26 Updated version and CHANGELOG to 0.25.5rc1 >> 4a6474c Modify SuSE spec file for 0.25.x and correct shebang lines for >> puppetd/puppetmasterd >> 385506f Fixes #3460 - Makes Puppet FHS compliant by moving /var/puppet >> to /var/lib/puppet >> b494427 Fix for #3101 (bug in MRI 1.8.7) >> 966b269 Fixes #3419. OS X 10.6 Ruby doesn''t set supplementary groups >> 49be54e Revert the guts of #2890 >> e69b7db Fail gracefully on packages that don''t have the HOMEPAGE >> variable set (e.g. dev-lang/php). >> 83ac6b8 Fixed #3443 - Typo in mount type >> dfe5c3a Fixes #3135 - darwin doesn''t support ''mount -o remount'' >> 2a60e1e Adding :catalog_terminus setting >> 626945b fixing obsolete comment in puppetd >> 9fbb69f Adding support for only using cached catalogs >> 7e1e76e Refactoring Configurer to enable the next feature >> b28e21a Fixed changelog Rake task >> e93eab8 Fix #3155 - prevent error when using two matching regex in cascade >> b883272 Fixed puppetlast typo >> 67bf142 Fixed README contents to reflect Puppet Labs and docs and wiki >> changes >> e35e142 Fixed link typo >> d40e24c Fixed #3384 - Updated broken link >> da00f68 Making a Puppet::Module test more resilient >> 9792915 Fixing yumrepo type to use ''flush'' >> 9ee4c2d Only trying to retrieve passwords on OS X when root >> 8c31ebe Removing obsolete tests >> aee9c29 Fixing a warning in the aix package provider >> 232ad8f Removing tests for code that was removed in the REST refactor >> 94fddbc Fixing and porting Transaction Report tests >> 13d141a Fixing Property#change_to_s in rare case failures >> 66858ef Fix test in parser.rb due to API change >> 0f254be Fixing Hash functionality with non-constant keys >> 41aeba4 Removing vistigial method in ASTHash >> 1821187 Porting/removing group test/unit tests >> 03532e0 Porting a simple set of tests from test/unit >> 006e6af Removing obsolete test >> 1a6e08f Fixing Transaction integration test >> 410b71c Removing invalid File integration test >> effa719 Cleaning up content/source code >> 456447c Protecting spec_helper chmod from failure >> fa64774 Redeleting puppetmasterd integration test >> 797f412 Making SshAuthorizedKeys tests less brittle >> 622bb70 Markus''s patch concerning string interpolation >> 23adec5 Fix tests that use or stub find_by_checksum, which I just >> changed the signature of. >> 4ac8e2c The pure-ruby YAML lib doesn''t accept parameters >> e31fe8c Fix a failure in new FileBucket where it was impossible to read >> from a bucket with a non-de >> fault path. >> 3797c7a Update YAML dir test to match behavior >> 83d8bda Fix heisenbug in spec/unit/provider/mount/parsed.rb >> dde69c3 Remove test for old RDoc work-around >> c5ce824 Fixing various broken Resource::Type tests >> 6cd6c47 Renaming and fixing puppetrun tests. >> a27013a Fixing calls to "class_scope" in Scope tests >> 84d6892 Fixing all ''require'' function tests >> b643413 Removing any mentions of :casesensitive setting >> fe140a2 Migrating "puppet" executable integration test >> edef647 Fixing ''puppet'' to directly run manifests >> fff8d04 Fixing syntax warning >> 7c25317 Moving puppet back to bin >> a4d1ba0 Puppet::Parser::AST::Leaf#evaluate_match "insensitive" renamed >> to "sensitive" >> 404bdfa Repair validate_checksum codepath, even though it is disabled. >> e895494 Puppet::Parser::Resource.new parameters have changed >> 94651df Add stub to Puppet::Parser::Collector test to prevent runaway >> stub failures >> 40c1fb0 Resolving conflicts with ??? >> 1059370 Fixing a typo from a regex >> 3eeebf5 Fixing change printing for content/ensure >> 47c3ca1 Converted File[checksum] to a parameter not property >> 44cba9c Adding "checksum?" helper method to Checksums module >> d05d25c Refactoring File[source] tests somewhat >> aab2374 Resolving conflicts with luke:tickets/testing/2954 >> 86cf226 Adding virtual and exported resource support to the DSL >> 9d5ba41 Cleaning up ResourceAPI tests >> 9060766 s/DSL::ResourceHelper/DSL::ResourceAPI/g >> 6d2a10b Adding simplistic pure ruby interface >> e515513 Adding environment support to parser resources >> 30f49bb Resolving conflicts with ??? >> b7015d7 Moving the string interpolation parsing to the parser/lexer >> 07cfdd0 Resolving conflicts with jesse:feature/master/3394 >> ad148d6 Resolving conflicts with luke:tickets/master/2759 >> 922cf1a Resolving conflicts with ??? >> 0d70468 Finishing renaming :params to :parameters internally >> ad93d0e Forcing parent evaluation in resource types >> 6e4db82 Fixing type/title resource resolution >> aa659f2 Converging the Resource classes further >> 5401a7c Adding strictness checking to resources >> 9c867e6 Fixing most of the broken tests in test/ >> 274d1c5 Adding tmpfile cleanup to tests >> 7089446 Removing Resource::Reference classes >> 4871c90 Adding support for class parameters >> 4709e9b Removing :paramcheck and :typecheck settings >> 744295d Allowing Environment.new to take an environment >> 4f907c6 TypeCollection now supports namespace arrays >> 2fa0a48 Adding parameter validation to Puppet::Resource >> aff5992 Fixing failing Environment unit tests >> 61636e4 Tuning file load order >> 7a99a1d Removing obsolete Settings comments and require >> af9a920 Adding an environment helper >> c8e89cc Changing the interface of Puppet::Resource >> b7ea180 Partially fixing #2954 - Adding class parameters >> cbe2c49 Fixing test structure >> 4bff506 Indirector/FileBucketFile warnings >> 0917248 REST: Fix a state leak causing test failures >> 8f9fc30 REST FileBucket: REST barfs on relative paths >> 23ccefe REST: hide Request object >> d8e1b27 Feature #3394 REST runner, execution >> 1603f73 Feature #3394 REST Runner, preparation >> 16658a0 Feature #3383 Part 2: Remove RAL XMLRPC >> eda649b Feature #3383 RAL over REST >> 09b1412 Fix tests on #3347 >> e5a7800 Feature #3347 REST-ified FileBucket >> f838389 Fix a failing test in #3115 >> 9acd0b2 Feature #3115 REST-ified status() >> b581c23 Fix #3229 - use original value in case/selector regex matching >> 490a03d Cleaning up a test. >> 576accd Removing unused Checksum::File terminus >> 58920a0 Converting File terminus to use formats. >> 37fd6ae Fixing datadir defaults to match new standards >> bf3359e Adding client and server data dirs >> b41d535 Adding filename extension support to formats. >> 7504f1e Resolving conflicts with ??? >> d0389f4 Renaming Parser::ResourceType to Resource::Type >> 67ef78d Removing Interpreter class >> b82b4ef All non-transient parser references are gone >> 644ad7e Fixing callers to Parser to only pass environment >> 9f8e0c0 Using the RTC helper to find the known resource types >> 1705366 Always warning if autoloading a file fails >> 7bef2e0 Adding helper module for finding known resource types >> 804105d Moving Rails initialization to Compiler terminus >> 26b272b Parser now uses Environment resource type collection >> cb16908 Adding ''known_resource_types'' to Environment >> 201889b Renaming LoadedCode to ResourceTypeCollection >> 2c2b3c2 Storing per-environment LoadedCode instances >> 6bf1953 Removing old, never-used DSL code >> df2d392 Adding support for parsing ruby files >> b938edf Fixing test structure >> 847233f Adding []/[]= support to Parser::Resource >> 6e04fba Fix for #3366 - --tags '''' treated as boolean ''true'' >> 33b565a Fix for #3424 and tests to prove it. >> 4820a1b Fix for #2604 Pure Ruby yaml generation >> 1c5b3d7 Fixes #3113 - When importing a manifest puppet needs to chill >> e6a720b Fix for #3412 install.rb should not put "." first in the tmp_dirs >> b1b3bcf Resolving conflicts with testing >> ba2a3af Fix 2239 (step five): introduce new >> Puppet::Transaction#stop_processing? flag and associate >> d check thereof within the resource evaluation code. This should allow >> for the transaction to bail >> out of its processing if it finds that a stop has been requested, based >> on the state of Puppet::Appl >> ication.stop_requested?. >> 9cb6841 Fix 2239 (step four): Refactored Puppet::Daemon''s stop/restart >> methods to set status flags >> appropriately in Puppet::Application, and removed call to now-deprecated >> @agent.configure_delayed_re >> start. This should get the restart and stop behavior for daemons and >> their agents working nicely wi >> th the new global process status interface of Puppet::Application. >> 82f852a Fix 2239 (step three): Refactored Puppet::Agent to base >> starting/restarting behaviors and p >> redicates on new run-status interface of Puppet::Application. >> edbe9b6 Fix 2239 (step two): introduce >> Puppet::Application.controlled_run method to provide simple >> status-restricted execution of a passed in block; this can replace the >> process status checks and pro >> perly handle delayed restart behavior for Puppet::Agent. >> 2cf647c Fix 2239 (step one): introduce global settings represeting >> application run state with metho >> ds for setting the state and appropriately-named predicates for querying >> state, all in the Puppet::A >> pplication class itself. To be used by Puppet::Daemon and Puppet::Agent >> and Puppet::Transaction for >> better response to TERM, INT, HUP. >> ce944a5 Fix unit tests in file/target.rb >> 481ddb8 Name change of event in ral/type/exec.rb >> 1ebc91e Use a helper function to evaluate a resource since the API has >> changed >> bfb1fa5 Allow skipped resources to process events >> a18b05d Actually invoke the allow_changes? method in ResourceHarness >> bf2f088 Generated resources'' events are actually bound to the resource >> that generated them. >> 50ed75b Remove test that tests internal class structures which have >> changed. >> 1779079 Remove stale set_trigger >> 9154aca Since the types stored in resource''s @parameters have changed, >> we need to also change inclu >> de? method to be more robust. >> 2a2ab75 Fix test failures due to name changes of event symbols >> 0a72a98 Remove rollback test, since rollback was removed. >> 010907b Mark resource/status as failed if they are associated with a >> failing event. >> 17bccb0 Restore noop non-behaviours >> 8465cd0 Resolving conflicts with reinh:feature/master/single_executable >> 0f768ed Removing now-obsolete user tests >> 7627441 Fixing most failing test/ tests. >> 9d9b20f Fixing Configurer interface to transaction report >> eb0a4b5 Fixing fingerprint tests to work with new log validation >> f4ef039 Changing REST report integration test to use new interface >> fdefb64 Fixing "require" function to use new class interface >> 266bc08 Removing now-obsolete "retrieve" method on package type >> 67a75db Fixing broken selinux tests >> 2777e1f Fixing feature validation when passed one item >> 5aa26d0 Changing method profile for other event queueing >> ec7ea27 Refactoring event queueing for performance >> 68ce086 Changing the method profile of EventManager#queue_event >> 9919b14 Moving Metric management to the reports >> a9fc134 Removing mention of @changes in Transaction >> a18769d Cleaning up the report tests a bit >> 386b3e5 Fixing #2759 - reports now have complete change info >> fbd5b0a ResourceHarness now doesn''t check params with no ''should'' >> 3f6c948 Changing Transaction to use the new ResourceHarness >> 6051599 Fixing log message when changes fail >> 149d5ef Fixing some compatibility and old tests >> c30494f Renaming some methods in Transaction::Change >> 8d5f052 Adding Transaction::ResourceHarness class >> 6651aa4 Adding first version of Resource::Status class >> 4bb35a7 Fixing File type indentation >> 796d882 Removing last event collection transaction code >> e838bcc Solidifying the RAL/Event integration. >> 977595b Refactoring the Change/Event/Property interface >> 5776fe4 Cleaning up the Log initialization code. >> 2292b76 Refactoring the RAL interface to logging >> d93d80a Using Logging module in main Puppet module >> c6dd180 Adding tests for "Logging" module >> 242209d Correcting comments and making report timestamp internal >> a4b77f6 Failing in app/puppet if facts are not found >> f925475 Fixing file content logs >> 73f57f2 removing extraneous comment >> 4be8601 Adding Transaction events to Transaction reports >> 2aa579b Removing a redundant method in Report >> 5a8b460 Removing unused code and adding a couple of tests >> 9a78bee Adding tests for the ''report'' log destination >> f2ed655 Extracting event management into a separate class >> 329527f Changing SimpleGraph.matching_edges to expect one event >> f8d7c44 Moving event creation to the resource >> ee9cff9 Reorganizing Property class to match current style >> 4212f1c Cleaning up Event creation >> 8280987 Adding "type" instance method to enhance Demeterness >> ad90900 Random code cleanup >> 32d34e9 Moving Ensure property into separate file >> 3c86666 Moving Parameter utility classes into separate files >> 2cbd9e8 Switching transactions to callback-based events >> 6a450c5 removing never-used code >> 379ac8f Moving log destination code into separate files >> b2d1728 fixed a couple of typos >> 7ab29c4 Unit tests for path changes >> a8245d8 Handle path elements with ticks and spaces >> 98581ad Fix builtins glob in single executable >> b4b07f5 Fix failing specs >> e7bc19a Rename puppet application spec to main >> c014c29 Renaming the old puppet executable >> deff92d Find both bin and sbin usage docs, fail gracefully >> 3c8d012 Fix application name in bin/ralsh >> be0ecf8 Initial puppet single executable >> 7a32777 Renaming applications, mostly removing ''puppet'' >> b19a044 Some tests were leaking state when the test failed >> 5b2802c Typo in method call in test. >> 6a148e2 Supressing warnings (not really failures) in test/unit >> 06deee7 Fix test using wrong Puppet util filesetting group >> 74f5167 Mock user in SUIDManager tests >> 000d37a Removing resources generate tests >> 11379c0 Removing old test for service/debian provider >> 2b8125c Replace test/unit file write test with spec >> 164f1ce Allow adding single key to hashes >> fd427a5 Raise an error when appending not a hash to a hash >> 75c32f9 Fix #2389 - Enhance Puppet DSL with Hashes >> 9122ac5 Fix #2929 - Allow checksum to be "none" >> 73c8d0d Fix #3186 - require function set relationship only on the last >> class >> c5a4de2 Fixing #3185 Rakefile is loading puppet.rb twice >> c694c4d Fix #3150 - require function doesn''t like ::class syntax >> 075f3c8 Added time module to tagmail report >> dfb8082 Fixed the return types were valid, and removed the copy paste >> error with the exception logi >> c >> 6e16ea1 Resolving conflicts with ??? >> bca7e2c Add AIX package management support (installp&nim) >> b2c9455 Fixing #3148 Settings#without_noop when run with no noop setting >> 8bafc37 Move scope parenting & class_scope from Compiler to Scope >> 7403c6e [#3392] Better Rakefile, remove puppetmasterd spec >> de94f68 Fixing tests in pkg provider >> 4b55fb0 bug #3407 Part 2 >> f891ba2 Fixing #3407 Failing tests in spec/unit/node/environment.rb >> af9c19a Bug #3406 augeas spec fails if there is not a default provider >> 718a87a Bug #3402 Stub returning invalid type for :noop >> 88d6cd5 Bug #3401 Spec failed due to missing manditory setting in mock >> d9920bc Bug #3400 Bad mocks causing failing tests >> c6f02f2 Fix #3167 Duplicate constant warnings in dpkg.rb >> 70c71c5 Fixed Rails database tests >> 46f9d00 Fix #3117 - cert fingerprinting uses a method not available in >> ruby <= 1.8.6 >> 04842ef Fixed test error message. >> fcce222 First shot at the OpenSolaris pkg(5) provider >> 3e9677f Feature #2839 - fingerprint certificate >> 91c44b4 Fix a few puppetd specs tests >> d77c9ac Revert "Feature #2839 - fingerprint certificate" >> 58a81ba Fixing #1054 - transaction reports are always sent >> 282b4b3 Removing some unneeded validation code from Transaction.new >> 66a3e6a Removing unused configurer code >> 2044550 Fix #2894 - exclude .pp files under modules files directories >> d31ff7e Adapt to method name change since 8971d8 >> a9fb82b Feature #2839 - fingerprint certificate >> a967b93 Feature #2395 - revoke when cleaning a certificate with puppetca >> e26e831 Updated test series >> 53869e9 Fix #2818 - scope variable assigned with undef are not "undef" >> 4226e01 Fix for #2959 (calling exit status on a nil report) >> 8971d8b Fixing #2596 - Node, Class, Definition are not AST >> 39d4a93 Adding a context method to the Errors module >> 22c642d Extracting language doc support into a module >> adc211a Adding module metadata >> bf40f4f Upgrading rspec for tests to 1.2.9 >> 61d1911 Fix 2841 - Puppetdoc/RDoc parses realize function >> e63d23e Added tickets/master/2596 to the testing branch >> 41da962 Feature 2827 Option to disable managing internal files >> c9f40be Fixed #2568 - Add database option ''dbconnections'' >> 2d137e2 Fixing #1507 - Adding a :ca_name setting >> 089ac3e Fixing #2617 - using the searched-for REST name >> 28e1bc6 Always using the CA_name constant instead of "ca" >> 2d4b795 Fix #1934 - detailed-exitcodes for puppetd >> 0f61816 Fix #2649 Allow ssl dir creation in --noop mode >> 53be6f8 Fix #2796 - Fix puppetdoc rdoc selector parsing >> 391786f Fix #2795 - puppetdoc rdoc reports a better error message >> b832d81 Fix #2784 - puppetdoc/rdoc didn''t parse mono-instruction class >> content >> b1deb89 Covers the RDoc Puppet Parser with specs >> ced5a78 Fix #2376 - Display class/node inheritance in puppetdoc >> 8d9fbbd Fix #2703 - add ''require'' to puppetdoc >> 41b7c3c Adding an example yaml node script >> 66a44dd type augeas: add ''incl'' and ''lens'' parameters >> c61335f Patch to address feature #2571 to add Oracle support to Puppet >> >> Regards >> >> James Turnbull >> >> -- Author of: * Pro Linux System Administration >> (http://tinyurl.com/linuxadmin) * Pulling Strings with Puppet >> (http://tinyurl.com/pupbook) * Pro Nagios 2.0 >> (http://tinyurl.com/pronagios) * Hardening Linux >> (http://tinyurl.com/hardeninglinux) >> >> -- Puppet Labs - http://www.puppetlabs.com C: 503-734-8571 >> > > -- > You received this message because you are subscribed to the Google Groups "Puppet Users" group. > To post to this group, send email to puppet-users@googlegroups.com. > To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. > For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en. >-- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
James Turnbull
2010-Jul-10  09:16 UTC
Re: [Puppet Users] ANNOUNCE: Puppet 2.6.0 - Release Candidate 1 available!
Mike Pountney wrote:> +1 to that! > > I''m particularly interested in using hashes and stages. > > Any knowledge of known gotchas going from 0.25 manifests would be appreciated, if available :)Well the best way to find gotchas is to test the release candidate ... then you''ll know and you can communicate them to others. :) Regards James Turnbull -- Puppet Labs - http://www.puppetlabs.com C: 503-734-8571 -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Gary Larizza
2010-Jul-10  14:29 UTC
Re: [Puppet Users] ANNOUNCE: Puppet 2.6.0 - Release Candidate 1 available!
James, Has the -no-daemonize option been changed? See below: bash-3.2# puppet master -v -d -no-daemonize ambiguous option: -no-daemonize Try ''puppet master --help'' bash-3.2# puppet master --help grep: /Library/Ruby/Site/1.8/puppet/util/command_line/*: No such file or> directoryNo help available for puppet master -Gary On Sat, Jul 10, 2010 at 5:16 AM, James Turnbull <james@puppetlabs.com>wrote:> Mike Pountney wrote: > > +1 to that! > > > > I''m particularly interested in using hashes and stages. > > > > Any knowledge of known gotchas going from 0.25 manifests would be > appreciated, if available :) > > Well the best way to find gotchas is to test the release candidate ... > then you''ll know and you can communicate them to others. :) > > Regards > > James Turnbull > > -- > Puppet Labs - http://www.puppetlabs.com > C: 503-734-8571 > > -- > You received this message because you are subscribed to the Google Groups > "Puppet Users" group. > To post to this group, send email to puppet-users@googlegroups.com. > To unsubscribe from this group, send email to > puppet-users+unsubscribe@googlegroups.com<puppet-users%2Bunsubscribe@googlegroups.com> > . > For more options, visit this group at > http://groups.google.com/group/puppet-users?hl=en. > >-- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Peter Meier
2010-Jul-10  14:39 UTC
Re: [Puppet Users] ANNOUNCE: Puppet 2.6.0 - Release Candidate 1 available!
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1> Has the -no-daemonize option been changed? See below: > > bash-3.2# puppet master -v -d -no-daemonize > > ambiguous option: -no-daemonizewasn''t it --no-daemonize?> Try ''puppet master --help'' > > bash-3.2# puppet master --help > > grep: /Library/Ruby/Site/1.8/puppet/util/command_line/*: No such file or >> directory > > No help available for puppet master- -> projects.puppetlabs.com cheers pete -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkw4hfcACgkQbwltcAfKi3/s1wCgqgtZ+tDus2s7pxuOM4JPZ0ex qEYAnRO29EX3csI4eaoPCCGsIEdXVQG4 =IJp8 -----END PGP SIGNATURE----- -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Gary Larizza
2010-Jul-10  14:42 UTC
Re: [Puppet Users] ANNOUNCE: Puppet 2.6.0 - Release Candidate 1 available!
Dammit. I ALWAYS do that. Thanks! On Sat, Jul 10, 2010 at 10:39 AM, Peter Meier <peter.meier@immerda.ch>wrote:> -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > > Has the -no-daemonize option been changed? See below: > > > > bash-3.2# puppet master -v -d -no-daemonize > > > > ambiguous option: -no-daemonize > > wasn''t it --no-daemonize? > > > Try ''puppet master --help'' > > > > bash-3.2# puppet master --help > > > > grep: /Library/Ruby/Site/1.8/puppet/util/command_line/*: No such file or > >> directory > > > > No help available for puppet master > > - -> projects.puppetlabs.com > > cheers pete > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.10 (GNU/Linux) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ > > iEYEARECAAYFAkw4hfcACgkQbwltcAfKi3/s1wCgqgtZ+tDus2s7pxuOM4JPZ0ex > qEYAnRO29EX3csI4eaoPCCGsIEdXVQG4 > =IJp8 > -----END PGP SIGNATURE----- > > -- > You received this message because you are subscribed to the Google Groups > "Puppet Users" group. > To post to this group, send email to puppet-users@googlegroups.com. > To unsubscribe from this group, send email to > puppet-users+unsubscribe@googlegroups.com<puppet-users%2Bunsubscribe@googlegroups.com> > . > For more options, visit this group at > http://groups.google.com/group/puppet-users?hl=en. > >-- Gary Larizza Director of Technology Huron City Schools http://www.huronhs.com 悟 -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Patrick Mohr
2010-Jul-10  14:54 UTC
Re: [Puppet Users] ANNOUNCE: Puppet 2.6.0 - Release Candidate 1 available!
On Jul 9, 2010, at 11:58 PM, James Turnbull wrote:> Certificates cleaned with puppetca (or puppet cert) are now also revoked.Is there some way to clean a cert (using puppet cert) without revoking it? Something like "puppet cert --clean hostname.domain --no-revoke". File streaming means the client and server don''t load the whole file into RAM to send or receive it? Thanks for all the great work. Puppet has made my life so much easier. -Patrick -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Brice Figureau
2010-Jul-10  14:57 UTC
Re: [Puppet Users] ANNOUNCE: Puppet 2.6.0 - Release Candidate 1 available!
On 10/07/10 10:43, Mike Pountney wrote:> +1 to that! > > I''m particularly interested in using hashes and stages. > > Any knowledge of known gotchas going from 0.25 manifests would be appreciated, if available :)I just tried with my production manifests (on a test env) and found only 3 issues so far: #4205: impossible to manually import twice the same manifest/module (yes, I have stuff I never re-written after the autoloader was fully working back in 0.23.x) http://projects.reductivelabs.com/issues/4205 #4206: import "path/*" is importing twice the same manifests, which by vertue of #4205 fails hard (patch sent to puppet-dev) http://projects.reductivelabs.com/issues/4205 #4207: storeconfigs has a big issue, it wants to store the whole environment (including full catalog) in the environment column of the hosts table (patch sent to puppet-dev). http://projects.reductivelabs.com/issues/4205 Besides those, the puppetmaster part worked fine (I was testing with my modified puppet-test as a client). I didn''t had time to test the client part, nor a 0.25.x client to a 2.6.0 master, so YMMV. -- Brice Figureau My Blog: http://www.masterzen.fr/ -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Peter Meier
2010-Jul-10  14:57 UTC
Re: [Puppet Users] ANNOUNCE: Puppet 2.6.0 - Release Candidate 1 available!
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 07/10/2010 04:54 PM, Patrick Mohr wrote:> On Jul 9, 2010, at 11:58 PM, James Turnbull wrote: > >> Certificates cleaned with puppetca (or puppet cert) are now also >> revoked. > > Is there some way to clean a cert (using puppet cert) without > revoking it? Something like "puppet cert --clean hostname.domain > --no-revoke".afaik, not. But could be a feature request. On the other hand, what''s the use case?> File streaming means the client and server don''t load the whole file > into RAM to send or receive it?exactly. cheers pete -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkw4il0ACgkQbwltcAfKi3+3agCfRHC63H607LD8tn8olws7Xcr2 VCsAnisOI4CJj3JYeq5dAKdgmLI7oTtV =oIyN -----END PGP SIGNATURE----- -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Brice Figureau
2010-Jul-10  14:59 UTC
Re: [Puppet Users] ANNOUNCE: Puppet 2.6.0 - Release Candidate 1 available!
On 10/07/10 16:54, Patrick Mohr wrote:> On Jul 9, 2010, at 11:58 PM, James Turnbull wrote: > >> Certificates cleaned with puppetca (or puppet cert) are now also revoked. > Is there some way to clean a cert (using puppet cert) without revoking it? Something like "puppet cert --clean hostname.domain --no-revoke".No. If that''s an issue, the workaround is to remove the file manually. You can file a feature request for this.> File streaming means the client and server don''t load the whole file into RAM to send or receive it?Correct. You can now serve gigabytes files through puppet without impacting the RAM usage of both the client and the server. -- Brice Figureau My Blog: http://www.masterzen.fr/ -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
James Turnbull
2010-Jul-10  15:10 UTC
Re: [Puppet Users] ANNOUNCE: Puppet 2.6.0 - Release Candidate 1 available!
Patrick Mohr wrote:> On Jul 9, 2010, at 11:58 PM, James Turnbull wrote: > >> Certificates cleaned with puppetca (or puppet cert) are now also revoked. > > Is there some way to clean a cert (using puppet cert) without revoking it? Something like "puppet cert --clean hostname.domain --no-revoke".There isn''t currently - but happy to take a feature request.> > File streaming means the client and server don''t load the whole file into RAM to send or receive it?Yes.> > Thanks for all the great work. Puppet has made my life so much easier.You''re welcome! Regards James Turnbull -- Puppet Labs - http://www.puppetlabs.com C: 503-734-8571 -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Patrick Mohr
2010-Jul-10  17:11 UTC
Re: [Puppet Users] ANNOUNCE: Puppet 2.6.0 - Release Candidate 1 available!
On Jul 10, 2010, at 7:57 AM, Peter Meier wrote:> -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > On 07/10/2010 04:54 PM, Patrick Mohr wrote: >> On Jul 9, 2010, at 11:58 PM, James Turnbull wrote: >> >>> Certificates cleaned with puppetca (or puppet cert) are now also >>> revoked. >> >> Is there some way to clean a cert (using puppet cert) without >> revoking it? Something like "puppet cert --clean hostname.domain >> --no-revoke". > > afaik, not. But could be a feature request. On the other hand, what''s > the use case?This isn''t my usecase so I don''t care, but since you ask... Suppose you have machines that: *) Don''t get any sensitive information through puppet. *) Are re-imaged often using PXE+preseeding or PXE+kickstart *) All the computers have names in the form of "lab-client-*.domainname" Someone said that in this case you can put "puppetca --clean lab-client-*.domainname" as a cron job, and put "lab-client-*.domainname" in autosign.conf. Again, I don''t do this, so don''t do it for me. -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Jesús M. Navarro
2010-Jul-10  19:34 UTC
Re: [Puppet Users] ANNOUNCE: Puppet 2.6.0 - Release Candidate 1 available!
Hi: On Saturday 10 July 2010 19:11:12 Patrick Mohr wrote:> On Jul 10, 2010, at 7:57 AM, Peter Meier wrote: > > -----BEGIN PGP SIGNED MESSAGE----- > > Hash: SHA1 > > > > On 07/10/2010 04:54 PM, Patrick Mohr wrote: > >> On Jul 9, 2010, at 11:58 PM, James Turnbull wrote: > >>> Certificates cleaned with puppetca (or puppet cert) are now also > >>> revoked. > >> > >> Is there some way to clean a cert (using puppet cert) without > >> revoking it? Something like "puppet cert --clean hostname.domain > >> --no-revoke". > > > > afaik, not. But could be a feature request. On the other hand, what''s > > the use case? > > This isn''t my usecase so I don''t care, but since you ask... > > Suppose you have machines that: > *) Don''t get any sensitive information through puppet. > *) Are re-imaged often using PXE+preseeding or PXE+kickstart > *) All the computers have names in the form of "lab-client-*.domainname" > > Someone said that in this case you can put "puppetca --clean > lab-client-*.domainname" as a cron job, and put "lab-client-*.domainname" > in autosign.conf. > > Again, I don''t do this, so don''t do it for me.I don''t see that to be a use case in need of a "no-revoke" option. Once you delete the old machine and re-image it with "PXE+preseeding or PXE+kickstart" it won''t get the old certkey so it''ll need to be resigned anyway: to all practical purposes it''s a new machine, so no benefit on not revoking the old one. Cheers -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Patrick Mohr
2010-Jul-11  01:26 UTC
Re: [Puppet Users] ANNOUNCE: Puppet 2.6.0 - Release Candidate 1 available!
2010/7/10 Jesús M. Navarro <jesus.navarro@andago.com>> Hi: > > On Saturday 10 July 2010 19:11:12 Patrick Mohr wrote: > > On Jul 10, 2010, at 7:57 AM, Peter Meier wrote: > > > -----BEGIN PGP SIGNED MESSAGE----- > > > Hash: SHA1 > > > > > > On 07/10/2010 04:54 PM, Patrick Mohr wrote: > > >> On Jul 9, 2010, at 11:58 PM, James Turnbull wrote: > > >>> Certificates cleaned with puppetca (or puppet cert) are now also > > >>> revoked. > > >> > > >> Is there some way to clean a cert (using puppet cert) without > > >> revoking it? Something like "puppet cert --clean hostname.domain > > >> --no-revoke". > > > > > > afaik, not. But could be a feature request. On the other hand, what''s > > > the use case? > > > > This isn''t my usecase so I don''t care, but since you ask... > > > > Suppose you have machines that: > > *) Don''t get any sensitive information through puppet. > > *) Are re-imaged often using PXE+preseeding or PXE+kickstart > > *) All the computers have names in the form of "lab-client-*.domainname" > > > > Someone said that in this case you can put "puppetca --clean > > lab-client-*.domainname" as a cron job, and put "lab-client-*.domainname" > > in autosign.conf. > > > > Again, I don''t do this, so don''t do it for me. > > I don''t see that to be a use case in need of a "no-revoke" option. Once > you > delete the old machine and re-image it with "PXE+preseeding or > PXE+kickstart" > it won''t get the old certkey so it''ll need to be resigned anyway: to all > practical purposes it''s a new machine, so no benefit on not revoking the > old > one. > >But I was saying clean out all client certs and private keys (for clients in this group) off the server once per hour. Meaning you are running clean while the client exists and has a valid cert/key combo. I guess you would always do the same thing with two "rm" statements in the cron job instead. -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.