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.