On Mon, Aug 3, 2009 at 6:52 PM, James Turnbull<ja...@lovedthanlost.net> wrote: > > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > This is the rc1 release of Puppet 0.25.0. > > It is available at: > > http://reductivelabs.com/downloads/puppet/puppet-0.25.0rc1.tar.gz
And there's a Mac pkg up here: https://sites.google.com/a/explanatorygap.net/puppet/Home/puppet_0.25.0-rc1.pkg.tar.bz2 This should cleanly upgrade from puppet 0.24.x to puppet 0.25.0-rc1. Please test. > > This is not production ready code (almost though!) - it is a release > candidate for testing. > > The release candidate is fully feature complete. The proposed Windows > support did not make it into 0.25.0 due to time constraints. > > Please test and report issues with the release > candidate. We aim to get the full release out before the end of the month. > > Please log any issues found during testing at: > > http://projects.reductivelabs.com/projects/puppet/issues/new > > Please select the Affected Version as 0.25.0rc1. > > Please email any other specific questions, comments or feedback to > the puppet-user list. > > What's Changed? > - --------------- > > There are substantial changes in Puppet 0.25.0 and more changes to > come in the future. Most of the changes in 0.25.0 are internal > refactoring rather than behavioural. The 0.25.0 release should be > fully backwards compatible behaviourally with the 0.24.x branch. > > This means a 0.25.0 master will be able to manage 0.24.x clients. > You will need, however, to upgrade both your master and your clients > to take advantage of all the new features and the substantial gains > in performance offered by 0.25.0. > > The principal change is the introduction of Indirected REST to > replace XML-RPC as the underlying Puppet communications mechanism. > This is a staged change with some functions migrated in this release > and some in the next release. In the first stage of the Indirected > REST implementation the following functions have been migrated: > > - - Certificates > - - Catalogue > - - Reports > - - Files > > In 0.26.0 (the next release) the following remaining functions will > be migrated: > > - - Filebucket > - - Resource handler > - - Runner handler > - - Status handler > > The new REST implementation also comes with authorisation > configuration in a similar style to the namespaceauth used for > XML-RPC. This new authorisation is managed through the auth.conf > file (there is an example file in the conf directory of the > tarball). This does not yet fully replace the namespaceauth.conf > file but will when the remaining handlers are migrated to REST. It > works in a similar way to the namespaceauth.conf file and the > example file contains additional documentation. > > As a result of the introduction of REST and other changes you should > see substantial performance improvements in this release. These > particularly include improvements in: > > - - File serving > - - The performance of large graphs with lots of edges > - - Stored configuration (see also Puppet Queuing below) > > Other new features include (this is not a complete list - please see > the Roadmap for all tickets closed in this release): > > New Language Features > - --------------------- > > Regular expression matching is now possible in node definitions. > > node /web|db/ { > include blah > } > > node /^(foo|bar)\.example\.com$/ { > include blah > } > > Puppet now also allows regular expressions in if statements with the use > of the =~ (match) and !~ (not match) operators. > > if $uname =~ /Linux|Debian/ { > ... > } > > Also available are ephemeral variables ($0 to $9) in the current scope > which contain regex captures: > > if $uname =~ /(Linux|Debian)/ { > notice("this is a $1 system") > } > > Similar functionality is available in case and selector statements: > > $var = "foobar" > case $var { > "foo": { > notify { "got a foo": } > } > /(.*)bar$/: { > notify{ "hey we got a $1": } > } > } > > $val = $test ? { > /^match.*$/ => "matched", > default => "default" > } > > New functions > - ------------- > > There are three new functions: > > require - Similar to the include function but creates a dependency > on the required class in the current class. This means the required > class will be loaded before the current class is processed. > > split - allows you to split strings and arrays > > versioncmp - allows you to compare versions > > Command Line Compile & Apply > - ---------------------------- > > Puppet now has the capability to compile a catalogue and output it > in JSON from the Puppet master. You can do this via the --compile > command line option. > > # puppetmasterd --compile nodename > > Corresponding with this feature is the ability to apply a JSON > configuration from the puppet binary using the --apply option. > > # puppet --apply cataloguefile > > Or you can use - to read the JSON in from standard input. Puppet > will then compile and apply the configuration. > > Thin Stored Configuration > - ------------------------- > > 0.25.0 also introduces the concept of "thin" stored configurations. > This is a version of stored configuration that only stores the > facts and exported resources in the database. This will perform > better than full stored configuration but because not all resources > are available this may not suit all purposes. > > Thin stored configurations are initiated by setting the > thin_storeconfigs option on the Puppet master or on the > puppetmasterd command line using --thin_storedconfigs. > > Puppet Queuing > - --------------- > > There is a new binary called puppetqd that supports queuing for > stored configurations. You can read about how it works and how to > implement it at: > > http://reductivelabs.com/trac/puppet/wiki/UsingStoredConfiguration > > Further documentation is in the README.queuing file in the tarball. > > Application Controller > - ---------------------- > All the logic has been moved out of the binary commands and added to > an Application Controller. You can see the controller code at > lib/puppet/application.rb and the logic for each application at > lib/puppet/application/binaryname.rb. > > Binary Location Move > - -------------------- > To bring Puppet more in line with general packaging standards the > puppetd, puppetca, puppetrun, puppetmasterd, and puppetqd binaries > now reside in the sbin directory rather than the bin directory when > installed from the source package. > > Other features > - -------------- > > You can find a full list of the tickets closed thus far for version > 0.25.0 is at: > > http://projects.reductivelabs.com/versions/show/3 > > Regards > > James Turnbull > > - -- > Author of: > * Pro Linux Systems 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) > > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.9 (MingW32) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org > > iEYEARECAAYFAkp3lFAACgkQ9hTGvAxC30A8EgCg092yK/YjzcYXsiLjU2nwk84D > okwAoI2sKqrOrHgjIi0hdK2EYjXlhykk > =ZD0W > -----END PGP SIGNATURE----- > > > > -- Nigel Kersten nig...@google.com System Administrator Google, Inc. --~--~---------~--~----~------------~-------~--~----~ 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+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en -~----------~----~----~----~------~----~------~--~---