Announce: Puppet 3.4.0-rc1 Available

188 views
Skip to first unread message

Melissa Stone

unread,
Dec 3, 2013, 2:42:51 PM12/3/13
to puppe...@googlegroups.com, puppet...@googlegroups.com
**Release candidate**

Puppet 3.4.0-rc1
------------------------------------------
Release Candidate: Puppet 3.4.0 is not yet released.
  • RC1: December 3, 2013.
At least one more RC is planned. Known issues with RC 1:
  • An existing but empty csr_attributes.yaml file will cause puppet agent to fail with Error: Could not request certificate: undefined method 'delete' for false:FalseClass when attempting to generate a keypair. To avoid this problem, make sure the csr_attributes.yamlfile is either properly filled or completely absent.
3.4.0 is a backward-compatible feature and fix release in the Puppet 3 series. The main foci of this release are:
  • New certificate autosigning behavior, to help quickly and securely add new nodes in elastic environments
  • Fixes for some high-profile bugs and annoyances, including the "anchor pattern" issue and broken Rdoc on Ruby 1.9+
  • Windows improvements, especially for file resources
  • Trusted node data in the compiler


Puppet 3.4.0-rc1 Downloads
------------------------------------------
Source: https://downloads.puppetlabs.com/puppet/puppet-3.4.0-rc1.tar.gz

Available in native package format in the pre-release repositories at:
http://yum.puppetlabs.com and http://apt.puppetlabs.com

For information on how to enable the Puppet Labs pre-release repos, see:
http://docs.puppetlabs.com/guides/puppetlabs_package_repositories.html#enabling-the-prerelease-repos

Gems are available via rubygems at
https://rubygems.org/downloads/puppet-3.4.0-rc1.gem
  or by using `gem install --pre puppet`

Mac packages are available at
https://downloads.puppetlabs.com/mac/puppet-3.4.0-rc1.dmg

Windows packages are available at
https://downloads.puppetlabs.com/windows/puppet-3.4.0-rc1.msi

Please report feedback via the Puppet Labs Redmine site, using an
affected puppet version of 3.4.0-rc1:
https://projects.puppetlabs.com/projects/puppet/



Puppet 3.4.0-rc1 release notes
---------------------------------------------------
New contain Function Removes Need for “Anchor Pattern”

Puppet now includes a contain function to allow classes to contain other classes. It functions similarly to the include function, with the added effect of creating a containment relationship. For more information, see:
(Issue 8040)

Policy-Based Certificate Autosigning

Puppet can now use site-specific logic to decide which certificate signing requests (CSRs) should be autosigned. This feature is based on custom executables, which can examine each CSR as it arrives and use any decision-making criteria you choose.

Prior to 3.4, Puppet would accept a whitelist of nodes whose requests should be autosigned. This wasn’t very flexible, and didn’t allow things like using a preshared key to verify the legitimacy of a node. This is now very possible, and works especially well when combined with the next new feature (custom CSR attributes).

For details, see:
(Issue 7244)

Custom Data in CSRs and Certificates

It is now possible for puppet agent nodes to insert arbitrary data into their certificate signing requests (CSRs). This data can be used as verification for policy-based autosigning (see above), and may have more applications in the future.

Two kinds of custom data are available: “custom attributes,” which are discarded once the certificate is signed, and “certificate extensions,” which persist in the signed certificate.

For details on custom CSR data, see:
(Issue 7243)

Priority Level Can Be Set for Puppet Processes

Puppet’s processes, including puppet agent and puppet apply, can now lower or raise their own priority level using the priority setting. (Note that they can’t raise their priority unless they are running as a privileged user.)

This is especially useful for making sure resource-intensive Puppet runs don’t interfere with a machine’s real duties.

(Issue 21241)

Manifest Documentation (RDoc/Puppetdoc) Works on Ruby 1.9+

Puppet manifests can be documented with RDoc-formatted text in comments above each class or defined type, and you can run puppet doc --outputdir /tmp/rdoc to extract that documentation and generate HTML with it. However, this has never worked when running Puppet under Ruby 1.9 or higher.

As of this release, building documentation sites with puppet doc works under Ruby 1.9 and 2.0.

Note that any existing problems with the puppet doc command still apply — it sometimes skips certain classes with no clear reason, and there are various formatting glitches. We are still investigating more reliable and convenient ways to display Puppet code documentation, and will probably be using Geppetto as a foundation for future efforts.

(Issue 22180)

New $trusted Hash With Trusted Node Data

A node’s certificate name is available to the Puppet compiler in the special $clientcert variable. However, this variable was self-reported by the agent and was never verified by the puppet master, which meant it could contain more or less anything and couldn’t be trusted when deciding whether to insert sensitive information into the catalog.

As of 3.4, you can configure the puppet master to verify each agent node’s certname and make it available to the compiler as $trusted['certname']. To do this, you must set the trusted_node_data setting totrue in the master’s puppet.conf. See the language documentation about special variables for more details.

(Issue 19514)

File Resources Can Opt Out of Source Permissions

Traditionally, if file resources did not have the owner, group, and/or mode permissions explicitly specified and were using a source file, they would set the permissions on the target system to match those of thesource. This could cause weirdness on Windows systems being managed by a Linux puppet master, and wasn’t always desired in all-*nix environments either.

Now, you can opt out of source permissions using the file type’s source_permissions attribute. This can be done per-resource, or globally with a resource default in site.pp.

As part of this, the current default behavior (source_permissions => use) is now deprecated on Windows; the default for Windows is expected to change to ignore in Puppet 4.0.

(Issue 5240, Issue 18931)

Windows Improvements

Puppet’s Windows support continues to get better, with improvements to resource types and packaging.

File Type Improvements
Package Type Improvements
Group Type Improvements
  • You can now add domain users to the local Administrators group. (Issue 17031)
Exec Type Improvements
  • Puppet will now accurately capture exit codes from exec resources on Windows. (Previously, exit codes higher than 255 could get truncated.) (Issue 23124)
Packaging and Installer Improvements

New puppet cert reinventory Command

As part of the fix for issue 693/23074, the Puppet CA no longer rebuilds the certificate inventory for each new certificate.

However, rebuilding the inventory can still be helpful, generally when you have a large inventory file with a high percentage of old revoked certificates. When necessary, it can now be done manually by running puppet cert reinventory when your puppet master is stopped.

(Issue 23074)

RPM Package Provider Now Supports install_options

Package resources using the rpm package provider can now specify command-line flags to pass to the RPM binary. This is generally useful for specifying a --prefix, or for overriding macros like arch.

(Issue 22642)

HTTP API Documentation

Puppet’s HTTP API endpoints now have extensive documentation for the formatting of their requests and the objects they return. For version-specific endpoint documentation, see the HTTP API section of the developer docs.

Msgpack Serialization (Experimental)

Puppet agents and masters can now optionally use Msgpack for all communications. This is an experimental feature and is disabled by default; see the Msgpack experiment page for details about it.

(Issue 22849)

Changes to Experimental Future Parser

Several changes were made to the experimental lambda and iteration support included in the future parser. The documentation has been updated to reflect the changes; see the “Experimental Features” section in the navigation sidebar to the left.
  • Remove alternative lambda syntaxes (Issue 22962)
  • Remove “foreach” function (Issue 22784)
  • Fix mixed naming of map/collect - reduce (Issue 22785)
  • Remove the iterative ‘reject’ function (Issue 22729)
  • Iterative function ‘select’ should be renamed to ‘filter’ (Issue 22792)
  • Future parser lexer does not handle all kinds of interpolated expressions (Issue 22593)
  • Variable names with uppercase letters are not allowed (Issue 22442)

Preparations for Syncing External Facts

Puppet can now pluginsync external facts to agent nodes… but it’s not very useful yet, since Facter can’t yetload those facts. End-to-end support is coming next quarter, in Facter 2.0.

(Issue 9546)

Miscellaneous Improvements
  • Allow profiling on puppet apply. Previously, the profiling features added for Puppet 3.2 were only available to puppet agent; now, puppet apply can log profiling information when run with --profileor profile = true in puppet.conf. (Issue 22581)
  • Mount resources now autorequire parent mounts. (Issue 22665)
  • Class main now appears in containment paths in reports. Previously, it was represented by an empty string, which could be confusing. This is mostly useful for PuppetDB. (Issue 23131)
  • Puppet::Util.execute now offers a way to get the exit status of the command — the object it returns, which was previously a String containing the command’s output, is now a subclass of String with an#exitstatus method that returns the exit status. This can be useful for type and provider developers. (Issue 2538)

Bug Fixes

Fixed Race Condition in Certificate Serial Numbers

As part of improving certificate autosigning for elastic cloud environments, we found a series of bugs involving the certificate inventory — when too many certificates were being signed at once (impossible in manual signing, but easy when testing autosigning at large scales), the CA might assign a serial number to a node, start rebuilding the inventory, then assign the same number to another node (if it came in before the rebuild was finished).

This is now fixed, and the cert inventory is handled more safely. To accomodate the need to occasionally rebuild the inventory, a puppet cert reinventory command was added (see above).

(Issue 693, Issue 23074)

Cached Catalogs Work Again

This was a regression from Puppet 3.0.0, as an unintended consequence of making the ENC authoritative for node environments. In many cases (generally when agents couldn’t reach the puppet master), it broke puppet agent’s ability to use cached catalogs when it failed to retrieve one. The issue is now fixed, and agents will obey the usecacheonfailure setting.

(Issue 22925)

Hiera Bugs
  • Errors from automatic class parameter lookups were not clearly indicating that Hiera was the source of the problem. This was made more informative. (Issue 19955)
  • Automatic class parameter lookups weren’t setting the special calling_module / calling_classvariables. This has been fixed. (Issue 21198)

Misc Bug Fixes

The usual grab bag of clean-ups and fixes. As of 3.4.0, Puppet will:
  • Manage the vardir’s owner and group. This could sometimes cause the puppet master or CA tools to fail, if the ownership of the vardir got messed up.
  • Don’t overaggressively use resource-like class evaluation for ENCs that assign classes with the hash syntax. ENCs can use two methods for assigning classes to nodes, one of which allows class parameters to be specified. If class parameters ARE specified, the class has to be evaluated like a resource to prevent parameter conflicts, but Puppet was being a little overeager and wasn’t checking whether parameters were actually present. (Issue 23096)
  • Make Puppet init scripts report run status correctly even if they aren’t configured to start. If the puppet master init script was configured to never run and a Puppet manifest was also ensuring the service was stopped, this could cause Puppet to try to stop the service every single run. (Issue 23033)
  • Skip module metadata that cannot be parsed. This could cause the puppet master to fail catalog serving if a module with bad metadata was installed. (Issue 22818, Issue 20728, Issue 15856)
  • Use FFI native windows root certs code. This cleaned up some potential puppet agent crashes on Windows by using the Win32 APIs better. (Issue 23183)
  • Guard against duplicate Windows root certs. This could cause unnecessary run failures. (Issue 21817)
  • Make Debian user/group resources report their proper containment path. This was causing Puppet events from Debian to show in Puppet Enterprise’s event inspector as “unclassified.” (Issue 22943)
  • Fix race condition in filebucket. This one was causing unnecessary run failures when multiple nodes were trying to write to a puppet master’s filebucket. (Issue 22918)
  • Force encoding of user comment values to ASCII-8BIT. This could cause run failures under Ruby 1.9 and higher when user resources were present. (Issue 22703)
  • Don’t serialize transient vars in Puppet::Resource. This was causing Puppet to write YAML data that couldn’t be deserialized by other tools. (Issue 4506)
  • Validate the name attribute for package resources to disallow arrays. This was causing inconsistent behavior between dpkg and the other package providers. (Issue 22557)
  • Use the most preferred supported serialization format over HTTP. Puppet had been choosing a format at random whenever there were multiple acceptable formats. (Issue 22891)
  • Set value_collection for boolean params. This was causing boolean resource attributes to display badly in the type reference. https://projects.puppetlabs.com/search?q=22699

All 3.4.0 Changes



Puppet 3.4.0-rc1 Contributors
---------------------------------------------------
Adrien Thebo, Andrew Parker, Ashley Penney, Branan Purvine-Riley, Clay Caviness, Daniele Sluijters, Dominic Cleal, Don Law, Dustin J. Mitchell, Eric Badger, Eric Williamson, Erica Thatcher, Erik Dalén, Ethan J. Brown, Greg Sutcliffe, Henrik Lindberg, Iristyle, Jason Antman, Jasper Lievisse Adriaanse, John Julien, John-John Tedro, Josh Cooper, Josh Partlow, Joshua Hoblitt, Justin Stoller, Kylo Ginsberg, Lee Lowder, Ludovic LANGE, Matthaus Owens, Matthew Haughton, Matthew Lauber, Melissa Stone, Moses Mendoza, Nick Fagerlund, Nick Lewis, Patrick Carlisle, Paweł Tomulik, Raphaël Pinson, Rob Braden, Rob Reynolds, Sam, Sam Kottler, Tehmasp Chaudhri, Thomas Bartelmess, Thomas Linkin, Zachary Alex Stern, mihau, pocams, renato arruda


Puppet 3.4.0-rc1 Changelog
---------------------------------------------------
Adrien Thebo (27):
      e235446 (maint) Comment clarification, whitespace cleanup.
      7aed168 (maint) Force ASCII string encoding in content fixture
      d1a0972 (maint) Use non-posix specific types in tests
      1afeb90 (#4506) Don't serialize transient vars in Puppet::Resource
      6b70d30 (#22665) mounts should autorequire parent mounts
      02d3624 (maint) Prefer pson over json for logstash_event
      a20ac4e (maint) Use default rspec formatter for Travis CI
      780f08b (maint) Don't default `rake spec` to documentation format
      f293c47 (maint) Remove unused .testseries file
      34cbb7c (doc) Add references to RFCs that deal with CSRs
      1314480 (maint) Document Puppet::SSL::CertificateRequest#generate
      aad83a8 (maint) Ensure that the autosign setting is validated.
      561b67d (#7244) Add autosign_command for programmatic CSR autosigning
      05f0475 (maint) stub $CHILD_STATUS for autosign_command specs
      263824a (#7243) Allow CSRs to accept a set of custom attributes
      7e1f0c0 Define Puppet cert attribute OIDs
      0bf900c (#23200) Add method for checking if one OID contains another
      620c838 (#23200) allow certificate factory to add custom exts
      9034d7f (#23200) Whitelist puppet extension requests
      1d9f91a (maint) Remove misleading comment regarding msExtReq
      1ba393d (#23201) Allow CSRs to return multiple extension requests
      1550026 (#23201) Extract CSR extension_request attr generation
      39b90a4 (#23201) allow custom fields to be added to CSR extReq
      62f3bdb (#23201) don't assign OIDs when looking up extension requests
      5d8364c (#23222) Custom CSR attributes should only contain strings
      1f59b06 Pack extension requests in a single sequence
      4f1496e Handle malformed CSR attributes and extension requests

Andrew Parker (85):
      46c1d56 (Maint) Remove whitespace errors
      6238616 (#21201) Remove thread-safety code
      e15f722 (#21201) Remove test for thread-safety
      bcba48d (#22581) Enable profiling for puppet apply
      847f513 (#22581) Add test for apply profiling
      d083c6b (Maint) Fix link to the REST API docs
      cb2da5d (#22591) Document /env/file_content/*
      1aa39ec (#21198) Allow data bindings w/ hiera to get special vars
      75ab421 (Maint) Translate acceptance test to integration
      2de1e3b (Maint) Remove unused example manifests
      075dce2 (Maint) Update commands to use new forms in hiera examples
      e207cf4 (doc) Mark some of the Provider API public
      d77e0a8 (#22709) Document /<env>/certificate_request/*
      9bd7abc (#22652) Parse query strings in rack w/o rack
      14c5d3f (Maint) Create spec coverage for parser face
      0b43b1d (Maint) Fix indentation
      8862739 (#22593) Combine LBRACE handling into single rule
      7ed5f91 (#19955) Move error handling closer to hiera
      9a5b81b (#19955) Collapse Hiera and DataBindings
      4b8214d (#22557) Validate that a package name is a string
      b88f12d (#19514) Fix up tests that were not providing a valid Node
      4380641 (maint) Fix type and mark as abstract
      d9bdc93 (Maint) Only execute msgpack tests if it is present
      445551c (#22891) Use the most preferred supported format
      6b40f28 (#22910) Deprecate networked access to resource
      a122985 (#22910) Deprecate --host on puppet resource
      b173ac0 (Maint) Check for `encode` when using `encode`
      4e76fea (Maint) Clean up code and tests
      8b0a4ec (#22918) Lock the filebucket for updates
      e10b652 (Maint) Introduce File abstraction
      ece1381 (Maint) Allow File to work on ruby 1.8 and 1.9
      2c72ea8 (Maint) Improve readability
      1df4848 (Maint) Compare filebucket contents with streams
      b818aa0 (Maint) Convert uses of IO.binread to P::FS::File
      f75e3a3 (Maint) Deprecate (Puppet::Util|IO).binread
      cbc96b5 (Maint) Remove unused required lib
      95e9fb6 (Maint) Remove unused task
      2f49ff6 (Maint) Record information about who created the artifact
      16d83ce (Maint) Small cleanup to CA tests.
      b9eaca5 (Maint) Provide a timeout when trying to aquire a file lock
      a49fb07 (#693) Test parallel certificate autosigning
      ff34898 (#693) Remove race conditions in autosigning code
      979ac6f (#693) Remove unused locking code, update timings
      b0a8059 (Maint) Move opening functionality to FileSettings
      d4b2944 (#693) Update spec tests for change impl
      aa5d976 (Maint) Move write and writesub to Setting
      e4b3507 (Maint) Update test to use proper class
      1590f7f (Maint) Use rand that is available on ruby 1.8.7
      0e9ea23 (#693) Format the SSL certificate instead of the wrapper
      07d94f3 (Maint) Unpend tests for certs on windows
      4c71c9e (Maint) Properly mark test as unsuitable for windows
      24187e0 (#693) Update file handling to work on Solaris
      0f070ac (Maint) Reformat and remove debugging message
      91ff6f9 (#23074) Add reinventory command to puppet cert
      6ff0a10 (#23081) Ensure that errors from insync? create proper events
      2306072 (Maint) Reorder and reduce scope of harness
      3dc7fb5 (Maint) Small cleanups
      cabd2f9 (#23074) Do not expect rebuild during cert signing
      968c332 (#23086) Ensure that failed_because events have a name
      8eef34e (#23109) Document PSON
      296aa30 (Maint) Fix broken link to Facts documentation
      2122124 (Maint) Group service documentation
      b219e01 (#23109) Document the MIME type use for PSON
      ea5a8c0 (Maint) Standardize on how we refer to the response format
      1b15a6c (Maint) Update Report docs to be like others
      bc125b9 (Maint) Reference resource_type schema
      67774e7 (Maint) Unify style for refering to schema
      985dd4c (#23109) Clarify what control characters are
      74ba232 (#23109) Fix typo
      c9619e8 (Maint) Fix up errors in json schema
      d34dd55 (#23109) Expand example to include all encoding forms
      ee355ca (#9546) Update test to reflect changed permissions
      c69c5de (#9546) Change check for module installation
      2b69cdd (Doc) Mark the Puppet::Util::Execution public methods
      849e248 (#23138) Document status
      0430388 (Maint) Remove commented out tests
      7bb7066 (#23124) Move ProcessOutput to Puppet::Util::Execution
      b911860 (Maint) Fixup docs for Puppet::Util::Execution
      03ed57b (#23124) Move ProcessOutput to Puppet::Util::Execution
      7716251 (Maint) Fixup docs for Puppet::Util::Execution
      25962a3 (Maint) Introduce partial implementation of an In-Memory file
      cdef0b8 (Maint) Add memory terminii for CR and Key
      6c9dd38 (#23116) Provide pluggable SSL verification
      ed0c64a (Maint) Remove unstable and not useful test
      024e2b8 (Maint) Conform to naming conventions

Ashley Penney (1):
      8214f4b (#22818) Skip metadata that cannot be parsed.

Branan Purvine-Riley (1):
      90171d1 (#23126) Allow facter and hiera gem locations to be SSH git URLs

Clay Caviness (3):
      546c2da 21760/22005 update preflight to delete old lib dir
      713e1d6 Use Dir.glob(), don't require rubygems or rake, use Dir.chdir as a block
      1d64016 use instance_variable_get instead of eval

Daniele Sluijters (1):
      e48902a init: Check if running if not configured to start.

Dominic Cleal (3):
      d28b7d4 (maint) Add specs for parser resource parameters
      b35c5f2 (#23115) Include manifest context in Puppet::DevError
      0ed24bf (#23115) Convert nil resource parameter values to undef

Don Law (1):
      a56f962 (#22617) In Augeas onlyif, compare number strings numerically

Dustin J. Mitchell (6):
      40c67e2 (#22129) force explicit file content to be treated as a bytestring
      5886cae use :if so rspec sees the test even if it's not executed
      eff8fb0 (#22699) set value_collection for boolean params
      0fbcab4 (#21069) refresh the cache of launchd plists on a miss
      2d537dd Better docs for file's recurse parameter
      41d5982 (#22938) test and document symbolic file modes

Eric Badger (2):
      8467328 (#22258) Create new console for each puppet run
      3e75c6e (#3946) Add 'post_resource_eval' method to provider classes

Eric Williamson (1):
      6147f5d (maint) reduce duplication of logdest option handling

Erica Thatcher (1):
      4fc0355 (maint) reduce log level duplication

Erik Dalén (3):
      0b5c747 (maint) Split to_pson_data_hash into generic to_data_hash component
      10876a0 (#22849) Add msgpack serialization format
      d150722 (maint) Stub Confine at old location

Ethan J. Brown (21):
      342a106 (maint) .gitignore add .idea
      ac2bbd3 (#17031) Add SID.octet_string_to_sid_object
      03b6385 (#17031) Add SID.name_to_sid_object
      a438236 (#17031) Parse ADSI usernames -> domain / account
      ab9c2a5 (#17031) group type #insync? #is_to_s #should_to_s
      0994bea (#17031) Puppet::Util::ADSI.sid_uri
      455834e (#17031) Use SIDs to modify ADSI group membership
      b693652 (#19447) Puppet::FileSystem::File#symlink(?)
      c0a77e2 (#19447) Puppet::FileSystem::File#readlink
      4bd6f87 (#19447) Puppet::FileSystem::File#stat / lstat
      780ecb2 (#19447) Puppet::FileSystem::File.exist?
      5cd80b5 (#19447) FileSystem::File#exist? calls self
      0bae4bb (#22938) fix Windows tests for symbolic file modes
      9538266 (#19447) Puppet::FileSystem::File.unlink
      c64fa07 (#19447) Puppet::FileSystem::File Windows symlink
      1320519 (#19447) Windows symlink check process token
      4d27c1b (#19447) check Puppet.features.manages_symlinks?
      5fd4249 (#19447) Rewrite symlink tests for file type
      b578ed4 (#15559) Ensure SYSTEM has full control unless specified otherwise
      5a2d7b8 (#15559) Windows security test fails under SYSTEM
      1f7e28c (Maint) Refactor method names in file_spec

Greg Sutcliffe (1):
      219c382 (#22206) Add option to disable default schedules

Henrik Lindberg (44):
      40c272d (maint) Fix output of ArithmeticExpression label (future parser)
      b6c6605 (#22442) Fix problem with missing issue ILLEGAL_NAME (future parser)
      ef4a673 (#22442) Update the name validation rule to not accept hyphens
      811ff05 (#22442) Add test that capitalized names are flagged as errors.
      0cc816e (maint) Fix failing test.
      5672322 (maint) Add parentheses in function calls
      6747977 (#22498) Stop future parser from interpreting 0 as 00 (octal 0).
      077344e (#21373) Fix future parser transformation of node inheritence.
      92abf5c (#22356) Add api documentation for reports
      e957ab9 (#22356) Add json schemas for the report objects
      6492f41 (#22356) Add json schemas for the event object
      ec07b5c (#22356) Add report API json-schema, validation, and documentation.
      e122817 (#22356) Change POST to PUT, fix Ruby 1.8.7 and windows issue
      207bf73 (#22356) Remove deprecated yaml from the description
      52ed8bd (#22593) Fix interpolation issues in future parser lexer (braces/kw)
      fb5fc8a (maint) Fix wrong filename from being shown in hiera-2 related errors
      9120e73 (#19955) Give better error msg when Hiera databindings fail.
      999c401 (#22784) Remove the foreach functions
      489abe8 (#22784) Update tests that indirectly depended on foreach function.
      680a96d (#22785) Add map function (copy of collect)
      381582b (#22785) Rename and update collect_spec to map_spec and use map
      57d7771 (#22785) Deprecate the collect function (by making it raise an error)
      7389133 (#22729) Remove the reject function.
      ed6916b (#22792) Rename the 'select' function to 'filter'
      a82fa5c (#22792) Add select function that raises error
      4085ff4 (#22792) Rename 'select' to 'filter' in spec tests
      176cc60 (#19514) Add $trusted as hash with trusted node data
      0eabbf6 (#19514) Fix issues in trusted data support when running tests
      a461eff (#22792) Fix typo in filter functions documentation.
      5168912 (#22792) Rename select_spec.rb to filter_spec.rb
      ceeb13b (19514) Fix failing tests for expectations of not setting trusted
      70afd77 (#22180) Make function, type, fact and node appear in rdoc2 output
      bedfecb (#22962) Remove alternative lambda syntaxes from tests
      1b48b11 (#22969) Remove alternative lambda syntax
      6ddf845 (#21874) Fix failing validation.
      4888117 (#23074) Add text to warn that master should be inactive for reinventory.
      39b743e (#23074) Cleanup logic
      8c0c68b (#23074) Remove header in inventory.txt when regenerating
      627986e (#23074) Make cert inventory not rebuild inventory.txt when adding
      d6ac89b (#23074) Refactor cert application's use of cert authority's interface
      22ced3d (#23074) Remove overly stubbed tests
      4622cbe (#19514)(PP-773) Rename hashed_node_data and cliencert for $trusted
      a5caa79 (#19514) Correct error message matching for Ruby 1.8.7
      37d7668 (#23116) Make SSL Validator API more explicit

Iristyle (1):
      010078c (#19447) Add :manages_symlinks to file type

Jason Antman (1):
      694d9a6 (#22660) Revert Fedora 17+ agent service name to "puppet" from "puppetagent".

Jasper Lievisse Adriaanse (2):
      aec489d (#22579) Add service provider for OpenBSD's rc.d
      e62dcc7 (22853) Let OpenBSD use gtar too.

John Julien (17):
      5b2b960 (maint) Fixing build error on windows caused by command with unix path
      aa0fe10 (#4424) Add umask parameter to Exec type
      cb5cd20 (#7911) Fixed exception when using forcelocal param
      69cdea6 (#15494) Make the puppet parser validate exit non zero when file not found
      bac78b2 (maint) Changing rescue of Exception to StandardError
      1a526d0 (#16384) Make puppet parser validate exit more cleanly
      dcfc32a (#9546) Make pluginsync copy external facts to client
      95ca2bd (#9546) Use $vardir/external_facts for storing external facts
      f999c2f (#9546) Load external fact directories into facter config
      1d57689 (#9546) Refactoring external fact source and dest to fact.d
      83b3c7e (#9546) Add spec tests for external fact pluginsync
      03399c5 (#9546) Added external fact plugin sync support to plugin face
      b0dce31 (#9546) Added feature detection support for external facts
      ed281c5 (#9546) Removing PATH_SEPERATOR from pluginfactdest
      3ba25df (#9546) Retrieve module external fact dir from Puppet::Module
      d305e86 (#9546) Update facter specs to support request.environment.modules
      8ce491b (#9546) Fixed a few typos

John-John Tedro (2):
      f960ccb (maint) Remove shebangs from *.rb files in lib
      1683f41 (maint) Remove executable permission from *.rb files in lib

Josh Cooper (36):
      8e5f365 (#21133) Report on installed windows package versions
      df63954 (#21817) Ignore duplicate certs
      29a9502 (#21241) Add a priority setting
      f0c17de (#21241) Set process priority if one is specified
      80bc3fc (#22652) Restore rack parsing of POST body parameters
      d5306d6 (#17031) Prefer the domain component from the resolved SID
      f769b4f (Maint) Whitespace fixup
      60df1d7 (#22910) Use memory storeconfigs backend
      312fcf0 (#22918) Allow paths file to be read and appended to
      9f6d083 (Maint) Exclude `fork` based tests on Windows
      22f5b73 (#21241) Use correct constant for low priority
      d9b2551 (#22925) Fall back to cached catalog if we can't connect to the master
      3f335ca (#19447) Check for symlink permission only if we try to create one
      7485aba (#19447) Fall back to stat if we don't support symlinks
      15be1dc (#19447) Fully qualify access to ruby `File`
      e013c8c (#19447) Rescue when symlink privilege does not exist
      75fea61 (#19447) Skip symlink test if provider doesn't support it
      326b7ac (Maint) Allow acceptance tests to be run on preserved windows hosts
      48b7351 (#18931) Add setting to control how remote metadata is copied
      e799d02 (#23183) Use FFI to manage pointers in RootCerts module
      544ae51 (Maint) Trailing comma doesn't work in ruby 187
      41512f1 (Maint) Be more explicit about when the SYSTEM ACE is overwritten
      245d218 (Maint) Refactor expectations when system granted full access explicitly
      3640298 (Maint) Refactor expectations for at least one inherited system ace
      ea9097a (Maint) Eliminate Windows network lookups
      147f2e9 (#11563) Model Windows security descriptors
      7d83f5e (#11563) Refactor DACL parsing
      b635451 (#11563) Only rewrite the DACL if the mode changes
      67a5aa6 (#11563) Preserve deny ACEs
      38e8681 (#11563) Return INHERIT_ONLY_ACEs
      f86daaa (Maint) Change usages of `and` to `&&`, and `or` to `||`
      1b7f43d (#11563) Cleanup tests
      8f113e1 (#11563) Fix issues when running as SYSTEM
      d89f5a5 (#11563) Implement pending tests for when permissions are insync
      0c69669 (#11563) Output human readable security descriptor
      b7c563d (#11563) Create an explicit ace if the old ace is inherited

Josh Partlow (24):
      7d2fb37 (#22499) Puppet manages owner/group of own vardir
      e11dfd6 (maint) Render modules lists as pson in acceptance tests
      8849a52 (maint) Fix acceptance test_against_preserved_hosts task
      27fe02a (docs) Document additional parameters needed to curl with ssl
      bef5b0d (#22180) Add integration test for puppet doc --mode rdoc
      7f59b3a (#22180) Fix broken rdoc1 features
      cedd593 (#22180) Recapture class comments under Ruby 2.0 RDoc
      799ae81 (#22925) Correct transposed arguments for assert_match
      9cd57e1 (maint) Reorganize data_binding/hiera-spec.rb
      0716e30 (#23096) Explicitly clear hiera terminus between specs.
      17a6d5a (maint) Extract common ssl setup for acceptance tests
      38088e3 (maint) more explicit stdout tests for autosign_command acceptance
      db23021 (maint) Don't stand up master unless resigning.
      44f5efe (#7244) Consolidate autosign setting
      78db477 (#7244) Fix up tests after refactors of the Autosign system
      76badb4 (#7243) Add dns_alt_names with hostname to autosign test
      080242a (#23201) Expose custom extensions in the certificate
      c402b55 (#7244) Add a Tempfile.open that unlinks tempfile early
      8b5f0e3 (maint) Adds vcloud pooling to the win*all beaker node definitions
      b1f1cf9 (#18931) Deprecate instead of remove original windows behavior
      eedb1df (#18931) Clarify deprecation warning for source file perms to windows
      6903afa (maint) Reset hiera in test_helper to avoid order issues in specs
      1f9d3e5 (#18931) File source_permissions setting applies to local files
      94c2e95 (maint) Extract common acceptance setup script for Jenkins

Joshua Hoblitt (1):
      09050ec (#22858) note official ruby 2.0 support in README

Justin Stoller (2):
      a709576 allow configuration of Bundler source
      5d15a4b Use the pooling api by default

Kylo Ginsberg (74):
      0f42e97 (#22110) reorg api docs to api/{docs/schemas}
      00692a8 Revert "Remove tests depending on json-schema"
      3b45699 (#22360) json-schema needs multi_json 1.7.7
      e05e3cc (#22360) don't attempt json schema validation on windows
      5258b08 (#22360) don't include json-schema gem on windows
      567a16f (maint) accomodate the new location for schemas
      83c5959 (#22110) set version=0 in catalog constructor so it's always an integer (not nil)
      20392b2 (maint) temporarily restore json-schema to Gemfile
      6a2851b (#22110) add initial catalog documentation
      231253d (#22110) validate some simple catalogs against json schema
      e080646 (maint) fix typo in comment and clean whitespace
      879cf74 (#22110) remove empty Notes section
      6277844 (#22110) Documentation improvements per GH review
      4d09a81 (#22356) validate json schemas against the json meta-schema
      239e214 (#22110) apply tags regex to catalog tags
      f8f3728 (#22110) remove the catalog constructor set of @version
      7c952b0 (#22522) rename catalog_facts.json -> facts.json
      8f9a597 (#22522) add documentation for facts endpoints
      907b1d6 (#22522) mark the 4 fields in the facts schema as required
      89dda62 (#22522) validate node facts against facts schema
      6110827 (#22522) some formatting fixups
      86c0d5a (#22356) add spec test and vanilla (useless) schema
      3842b17 (#22522) Use :nodename instead of :name in URIs
      f5dbd33 (maint) Move constant outside shared_examples_for to avoid "already initialized" warning
      da7d937 (maint) Move common constant/requires for json-schema to spec_helper.rb
      fd4259b (#22652) Add be_one_of matcher (copped from pcarlisle)
      0a8cb5e (#22652) Tighten up spec for multi-valued params in a POST body
      8354b95 (#22643) Document the file_metadata endpoint.
      06d6725 (maint) Remove constant and requires now provided in spec_helper
      006f308 (maint) Factor a duplicated constant up to spec_helper
      2098c9e (#22643) Fix lists and remove non-ascii characters
      f1dfd8d (maint) Correct spelling in method name
      12065e2 (#22768) Add documentation for certificate_revocation_list endpoint.
      c469b93 (#22643) Fix a typo.
      c33de82 (#22643) Fix sub-bullets.
      11bc172 (#22943) Add a spec test to reproduce the failure
      bfb1707 (#22943) Remove 2 def_delegator's in favor of explicit method invocations.
      ff7e7f5 (#22943) Add catalog to resources only after the catalog is complete.
      12b3eaa (maint) Fix typo in a comment.
      ef12173 (#22943) Refactor/rename Puppet::Resource#to_resource
      4cd31ee (#9546) Update configurer_spec for external facts pluginsync.
      5c329e5 (#9546) Check that :pluginfactdest is a directory before using it
      e69771b (#9546) Correct a typo in a setting desc.
      aa3bdee (#9546) Add windows and non-windows variants of one test.
      99382b5 (#22858) Note that ruby 2.0.0 should be at least p195.
      6ab4fa2 (#9546) Fix spec tests against facter 1.6.
      e376b9d (#23801) Add unit tests for insync? raising StandardError or Exception
      6ea77d1 (maint) Remove large spec test block whose benefits were unclear.
      a7baff1 (maint) Remove an unimplemented test and fix up some comments.
      6b7c56b (#9546) Preserve permissions in 'puppet module build'
      898fb6b (#9546) Preserve execute permissions on 'module install'
      4aae279 (#23131) Remove special casing of Class 'main'
      e9f0b08 (#23131) Add a spec test asserting that main is treated like other classes
      73f8ad2 (#9546) Apply the permissions fix to Solaris as well.
      9dc2f46 (#9546) Fix comment and assert msg to match behavior change.
      a5f15be (#9546) Apply the permissions fix to Windows as well.
      5b7d9d2 (#9546) Factor out the tar command to de-dup solaris vs gnu tar impls
      25dbc1e (#9546) Fix up the solaris gtar spec
      97d41f6 (#23147) Add a spec test to reproduce the issue
      baa69bf (#23147) Make the catalog available to the resource during to_catalog
      9599ae7 (#23147) Add alternate fix for #22943.
      11ef14c (Maint) Make tmp directory more safely
      6622748 (#7244) Make autosign command treat all non-zero returns the same
      72f9fa0 (#7244) Fix test for non-zero-or-1 exit status
      56e8348 (maint) Fix the 'nothing to manage' message.
      4c69e32 (#18931) Make non-root puppet not set group on files.
      7b9448e (#18931) Convert source_permissions from Puppet setting to file param
      883d74d (#18931) Refactor slightly for readability
      025d009 (#18931) Replace 'puppetmaster' with 'puppet master'
      92c4bfd (#18931) Rename source_permissions param values
      f50493a (#18931) Convert the mode to a string for consistency.
      74c8edf (#18931) Extend tests for local
      fcbe527 (#18931) Improve warning messages on windows
      81103c3 (maint) Adds vcloud pooling to the remaining windows beaker node definitions

Lee Lowder (1):
      1aa79f8 (#23177) Specifies default value for package type's ensure attribute

Ludovic LANGE (26):
      d48e761 (#2437) Prepare tests that illustrate the issue
      d40c037 (#2437) Fix the first invocation of the class having bad parameters types
      f0c6418 (#2437) Complete the tests to detect a variety of edge cases
      3a99bd5 (#2437) Escape semicolon (;) when writing Nagios configuration files
      11504d3 (#2437) Fix the parser : comments, semicolon, ...
      4d59005 (#2437) Compile the parser to ruby code
      e1b9d82 (#2437) Comments can start with a pound (#) anywhere on an empty line
      6665b09 (#2437) Prefer StringScanner in lexer (performance)
      82e934c (#2437) Parser now using StringScanner in lexer (performance)
      fd4ffe3 (#2437) Cosmetic changes for the tests
      03c2460 (#2437) Regex compatibility with Ruby 1.8.x
      6f896a0 (#2437) For ruby 1.9, always consider input text as ASCII
      3499e16 (#2437) Fix the odd test failure
      3277aa9 (#2347) Instances of lambda { }.should are better expressed as expect { }.to
      b2907de (#2347) Typo, "when encountering"
      1cb911b (#2437) Renaming the spec test case constants
      2d75d86 (#2437) Use interpolation instead of string concatenation
      1cc3734 (#2437) Convert case statement on boolean to if/else (1/2)
      fb680f5 (#2437) Convert case statement on boolean to if/else (2/2)
      32d159a (#2437) Split logic into methods to lower complexity
      48d0c3e (#2437) Split logic into methods to lower complexity (continued)
      de17612 (#2437) Remove action method
      70ef881 (#2437) remove bloc comments
      bc94bfd (#2437) fix case statements indent
      85b8b64 (#2437) convert to two space tabs
      cd5645f (#2437) Nagios::Base#to_s should be deterministic

Matthaus Owens (3):
      07ded3e (maint) Update debian packaging to reference new rack support location
      62da3fc (maint) Remove ext/rack/README reference from debian/rules
      0f56e36 (maint) Rename expected apache vhost in debian/rules

Matthew Haughton (1):
      b1e5e51 (#21258) Update link to LSB exit code documentation

Matthew Lauber (1):
      f21a2ca (#22642) Added install_options to the RPM provider

Melissa Stone (1):
      de8a14f (packaging) Update PUPPETVERSION to 3.4.0-rc1

Moses Mendoza (2):
      957c191 (21868) Move puppet libary target to /Library/Ruby/Site
      a226ca5 (22329) Only delete puppet files in the preflight

Nick Fagerlund (28):
      8d32487 (maint) Explain a dead variable in puppet/util/docs.rb
      7fdf590 (#22432) Sort defaults/commands/features in provider doc hooks
      00dcee5 (maint) Instead of two indent-stripping methods, let's have one
      c777fcc (maint) Refactor Puppet::Util::Docs.scrub
      622b213 (#22489) Fix mangled setting descriptions in config reference and genconfig output
      bf9ac39 (maint) Adjust wrapping and indent of a bunch of setting descriptions
      6156c7b (maint) Fix sloppy indent in schedule type
      a6f08ba (maint) Fix docs indent breakage in yumrepo type
      b9c6a2e (maint) Reduce object creation in several string concatenations
      56ecbc1 (maint) Prevent possible formatting problems on indirection reference
      2ae853e (maint) Avoid accidental outdenting when appending stuff to doc fragments
      4daef1d Docs: Mention that fqdn_rand accepts strings as seed additions
      a85d6f3 Docs: Explain the usage of fqdn_rand more effectively
      e6b873f (maint) Remove stale files from ext/rack
      9f3db47 Maint: Reformat docs for Augeas type's "changes" attribute
      204dd1e Maint: Reformat indirection reference to use H4s instead of DLs for termini
      3f154db Maint: Change "installation" section of README to be more useful
      1c75ac0 Maint: Make doc string for Windows group provider match 3.4.0 fixes
      ee910a4 Maint: Clarify doc string for contain function
      9a3cefe Maint: Update and clarify docs for the include function
      1e42d32 Maint: Re-word doc string for file type's ensure property
      7ac5ece Maint: Edit and clarify the autosign setting's docs
      df6b060 Maint: Complete and clarify the csr_attributes setting's docs
      a87a663 Maint: Change "inactive" to "stopped" in reinventory action's description
      c29b33d Maint: Adjust formatting of "priority" setting description
      4d7e149 Maint: Copyedit description of source_permissions attribute for clarity
      bb829da Maint: Explain the format and effect of install_options for the RPM provider
      33e8813 Maint: Note that mount points autorequire any parent mounts

Nick Lewis (2):
      7076657 (#23096) Treat ENC classes with empty params as if they had no params
      27a5558 (#23096) Remove redundant hash conversion when handling ENC classes

Patrick Carlisle (22):
      53e55d9 (#8040) Add a function to specify containment
      72d99ae (#8040) Don't allow duplicate contain calls
      c8ce90f (#8040) Test order of application for contained classes
      b1069e1 (#8040) Do not create duplicate edges
      f1e1596 (#8040) Clarify behavior in tests around multiple containment
      d5e7c47 (maint) Rename api_docs to api in yardopts to fix generation
      15d04c8 (#22807) Document certificate_status endpoint
      e08766a (maint) Rename validate_as_json to be specific
      dfd0908 (#22807) Add examples for certificate_status
      8309979 (#22833) Document file_bucket_file REST interface
      9715960 (maint) Serialize timestamp in Puppet::Node::Fact using iso8601
      cb710b5 (#22849) Add to_msgpack on format_support and require where needed
      6f74780 (#22849) Move Confine out of Provider
      0709531 (#22846) Add json schema for node
      bc0e566 (#22846) Document node endpoint
      82d32a5 (Maint) Refactor retrieving the indirection in http handler
      ad3e6df (#22893) Make handler check whether remote requests are allowed
      3c5386e (#22893) Disable remote requests for key termini
      a734dfb (Maint) Remove no-op rescue clause
      2a683fe (#22180) Provide doc --mode rdoc parsing under Ruby 1.9
      61e6ede (#22956) Use a set to store tags
      dddb843 (#22956) Remove temporary TagSet#== implementation

Paweł Tomulik (3):
      9da1cd5 cosmetic changes to package providers
      a71e811 (#22362) Changes in const_defined?() on ruby 1.9 break Puppet::Util::Classgen
      33ab214 (maint) print meaningful debug messages in execpipe

Raphaël Pinson (3):
      8133dd3 (#22703) Force encoding of comment value to ASCII-8BIT
      d6b9b2c (#22703) User comment encoding: Do not munge value in place, use encoding constants
      16cd98c (#22703) User comment encoding: Use encoding constant

Rob Braden (1):
      65a6301 (packaging) Update PUPPETVERSION for 3.3.1-rc2

Rob Reynolds (9):
      732d450 (#23124) Fix: Incorrect Exit Codes from Windows Exec
      5967369 (#23124) Remove 194 exit code from windows/msi package providers
      7b2cc74 (#2538) Puppet::Util::Execution.execute should also return exit status
      4879d1b Revert "(#23124) Merge branch 'ticket/stable/23124-exit_codes_on_windows' into stable"
      026b2f7 (#23124) Fix: Incorrect Exit Codes from Windows Exec
      3ba9923 (#23124) Remove 194 exit code from windows/msi package providers
      d97a2bd (#18931) Pluginsync ignores source permissions by default on Windows
      fa6dca1 (#23236) Deprecate Puppet::Util::SUIDManager.run_and_capture
      d3fbed1 (#18931) Only issue deprecation when owner/group/mode not specified

Sam (1):
      7917df9 (#22992) Correct wrong exit code when testing state.yaml

Sam Kottler (1):
      ff0fc74 (#23085) Ensure old puppet agents get properly stopped when upgrading from 2.6 or early to 2.7 or later

Tehmasp Chaudhri (1):
      4b72b27 Updated the example text of 'puppet module generate puppetlabs-ssh' while personally exploring/learning what functionality 'pup

Thomas Bartelmess (1):
      d7b31a2 (#22458) Always store the path for launchd service provider

Thomas Linkin (7):
      e7470e1 (#22288) Add methods to access all parameters of a type
      74fbd0a (#22288) Add post_compile_hook to Puppet::Parameter
      f264d7c (#22288) Add tests for new methods in `Puppet::Type`
      bfde167 (#22288) Add test coverage for `post_compile_hook`
      a2a4743 (maint) Change post_compile_hook method name
      339f29f (doc) Add YARD tags to Puppet::Parameter#post_compile
      67c3d52 (doc) Add documentation commit example to CONTRIBUTING

Zachary Alex Stern (1):
      e71e1d6 (#22740) create_resources input validation

mihau (1):
      5685380 fixed sendmail

pocams (1):
      b63aef2 8657 Support UNC paths for file objects on Windows

renato arruda (1):
      92b365b (#22662) create a logstash_event logger

--
Melissa Stone
Release Engineer, Puppet Labs

Join us at PuppetConf 2014, September 23-24 in San Francisco

Stuart Cracraft

unread,
Dec 3, 2013, 5:33:44 PM12/3/13
to puppet...@googlegroups.com, puppe...@googlegroups.com
What is the upgrade methodology / documentation to take a 3.2.1 system to 3.4.0-rc1 ?

Matthaus Owens

unread,
Dec 3, 2013, 5:45:23 PM12/3/13
to Puppet Users, puppe...@googlegroups.com
Stuart,
This page has plenty of information about upgrading:
http://docs.puppetlabs.com/guides/upgrading.html
> --
> You received this message because you are subscribed to the Google Groups
> "Puppet Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to puppet-users...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/puppet-users/b4fed3a0-539d-4954-81c8-b74d1b9f0ed5%40googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.



--
Matthaus Owens
Release Manager, Puppet Labs

Stuart Cracraft

unread,
Dec 3, 2013, 5:57:05 PM12/3/13
to puppet...@googlegroups.com

Does the community have any scripts
to share which do in-place backups
of the PM and a new version upgrade?
> You received this message because you are subscribed to a topic in the Google Groups "Puppet Users" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/topic/puppet-users/o_oQHUcOP18/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to puppet-users...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/CACD%3DwAdGNzGqE6%2BiCy8TH2uWxbwswap6F5hNX1w53VmnP8v0%2Bw%40mail.gmail.com.
Reply all
Reply to author
Forward
0 new messages