Re: [Puppet Users] ANNOUNCE: Puppet 2.7.0 Released

Frederik Wagner
Wed, 22 Jun 2011 17:34:15 -0000

Hi Martin,

On Wed, Jun 22, 2011 at 4:52 PM, Martin Willemsma <mwillemsma@gmail.com>
wrote:
> My Puppet dashboard shows errors on nodes that want to upgrade from
> 2.6.7 to 2.7.0.
>
(snip)
>
> warning         Skipping because of failed dependencies
>        /Stage[main]/Puppet/File[puppet.conf]
>        /etc/puppet/production/modules/puppet/manifests/init.pp         36
>        2011-06-22 14:55 CEST
> warning         Skipping because of failed dependencies
>        /Stage[main]/Puppet::Centos/Service[puppet]
>        /etc/puppet/production/modules/puppet/manifests/centos.pp       29
>        2011-06-22 14:55 CEST
>
> When I check the local machine the gem was installed, but the service
> is not restarted so 2.7.0 is not being used.

If I get it right, your dependent service is not restarting, since the
"upgrade resource" fails? For me it worked just installing the gem
2.7.0 next to 2.6.8 (through the package provider).

How would you have the package provider installing/updateing the
puppet gem trigger the puppet service, without killing the just
running (daemonized/scheduled) puppet process?

It works in two runs:
1. install/upgrade the gem, triggering the service restart (which
happens, so the new puppet version is running, but the current run got
killed).
2. the next scheduled run, runs normally with the new version.

But is there a way not to have the running process killed and produce
a failed run?

BTW: How do I uninstall the old gem? (there is  no ensure =>
"^2.6.8"
or similar)

Bye
Fredeirk

>
> I have a cron job setup that reloads the deamon process once a week,
> but would like to use 2.7.0 right after upgrade.
>
>
> ---
> Martin
>
>
> 2011/6/22 Frederik Wagner <fnerdwq@googlemail.com>
>>
>> Hi,
>>
>> thanks for the new version, I was looking forward to it since
>> puppetcamp A''dam...
>>
>> Just a minor issue: Installation from the gem gives a rdoc error (on
>> Ubunu/RHEL with ruby 1.8.7):
>> ----------------------------
>> # gem install puppet -v 2.7.0
>> Successfully installed puppet-2.7.0
>> 1 gem installed
>> Installing ri documentation for puppet-2.7.0...
>>
>>
>> RDoc failure in lib/puppet/interface/option.rb at or around line 6
column 40
>>
>> Before reporting this, could you check that the file
>> you''re documenting compiles cleanly--RDoc is not a
>> full Ruby parser, and gets confused easily if fed
>> invalid programs.
>>
>> The internal error was:
>>
>> ERROR:  While generating documentation for puppet-2.7.0
>> ... MESSAGE:   Name or symbol expected (got
>> #<RubyToken::TkDSTRING:0x7f734a34b6a0>)
>> ... RDOC args: --ri --op /usr/lib/ruby/gems/1.8/doc/puppet-2.7.0/ri
>> --title Puppet - Configuration Management --main README --line-numbers
>> --quiet lib --title puppet-2.7.0 Documentation
>> (continuing with the rest of the installation)
>> Installing RDoc documentation for puppet-2.7.0...
>>
>>
>> RDoc failure in lib/puppet/interface/option.rb at or around line 6
column 40
>>
>> Before reporting this, could you check that the file
>> you''re documenting compiles cleanly--RDoc is not a
>> full Ruby parser, and gets confused easily if fed
>> invalid programs.
>>
>> The internal error was:
>>
>> ERROR:  While generating documentation for puppet-2.7.0
>> ... MESSAGE:   Name or symbol expected (got
>> #<RubyToken::TkDSTRING:0x7f734a928500>)
>> ... RDOC args: --op /usr/lib/ruby/gems/1.8/doc/puppet-2.7.0/rdoc
>> --title Puppet - Configuration Management --main README --line-numbers
>> --quiet lib --title puppet-2.7.0 Documentation
>> (continuing with the rest of the installation)
>>
>> -----------------------------------
>>
>> Thanks!
>> Frederik
>>
>> On Tue, Jun 21, 2011 at 8:33 PM, Michael Stahnke
<stahnma@puppetlabs.com> wrote:
>> > It''s here!  Puppet 2.7.0.
>> >
>> > This release is available for download at:
>> > http://puppetlabs.com/downloads/puppet/puppet-2.7.0.tar.gz
>> >
>> > It''s available as a gem from rubygems.org.
>> >
>> > See the Verifying Puppet Download section at:
>> >
http://projects.puppetlabs.com/projects/puppet/wiki/Downloading_Puppet
>> >
>> > Please report feedback via the Puppet Labs Redmine site, using an
>> > affected version of 2.7.0
>> > http://projects.puppetlabs.com/projects/puppet/
>> >
>> > Full Release Notes are available:
>> > https://projects.puppetlabs.com/projects/puppet/wiki/Release_Notes
>> >
>> > To see the Full CHANGELOG:
>> > https://raw.github.com/puppetlabs/puppet/2.7.0/CHANGELOG
>> >
>> >
>> >
>> > Puppet 2.7.0 is out! This is a major feature release, and
there''s a
>> > lot of new stuff.  Here''s the high-level version:
>> >
>> > Apache License
>> > -----------
>> >
>> > Puppet is now released under the Apache 2.0 license. More info is
>> > available
[here](http://docs.puppetlabs.com/guides/faq#change-to-apache-license).
>> >
>> > Ruby 1.9 Support
>> > --------
>> >
>> > There are some known issues with the 2.7.0 release, but YES: we
are
>> > now supporting Ruby 1.9.2 and higher, and will be aggressively
fixing
>> > bugs under Ruby 1.9!
>> >
>> > Deterministic Catalog Application
>> > -----------
>> >
>> > Previously, Puppet didn''t guarantee that it would apply
unrelated
>> > resources in any particular order. This meant that if you forgot
to
>> > specify some important `before` or `require` relationship, a
single
>> > catalog might work fine on eight nodes and then fail mysteriously
on
>> > the ninth and tenth. This could be frustrating! Now it''s
gone: Puppet
>> > will make sure that the same catalog will always be applied in the
>> > same order on every machine, and it''ll either succeed
reliably or fail
>> > reliably. (This change will also be appearing in the final 2.6.x
>> > releases.)
>> >
>> > Manage Network Devices
>> > ------------
>> >
>> > Puppet has new types for managing network hardware, and a new
`puppet
>> > device` subcommand for applying these configurations. These are in
>> > their early stages and can currently only handle Cisco hardware,
but
>> > they''re the start of a big leap forward in
Puppet''s ability to manage
>> > your entire infrastructure.
>> >
>> > Man Pages
>> > --------
>> >
>> > We''ve spiffed up our man pages, in both regular and
on-the-fly
>> > flavors! Try `man puppet-agent` or `puppet man catalog`, and party
>> > like it''s 1971. (We recommend running `gem install ronn`
before using
>> > the `puppet man` subcommand.)
>> >
>> > New Subcommands and the Faces API
>> > ---------
>> >
>> > We''ve added a powerful new API for creating new Puppet
subcommands,
>> > and we''ve used it to expose most of Puppet''s
internal subsystems. One
>> > of our devs has written a series of blog posts about it
>> > ([one][faceswhat], [two][facesmore], [three][facesthree]), and
there''s
>> > more documentation on the way, but this opens the door to whole
new
>> > ways of running Puppet and exploiting its data.
>> >
>> > To get a look at the new subcommands, just run `puppet help`; if
>> > you''re interested in tweaking Puppet under the hood, take
a look at
>> > `lib/puppet/face/secret_agent.rb` to see how easy it is to
>> > re-implement the puppet agent application. We''ve also
implemented a
>> > new help interface: just run `puppet help <subcommand>
[<action>]` for
>> > short, to-the-point command-line help with the Faces subcommands.
>> >
>> > [facesthree]:
http://www.puppetlabs.com/blog/about-faces-until-we-go-in-the-right-direction/
>> > [faceswhat]:
http://www.puppetlabs.com/blog/puppet-faces-what-the-heck-are-faces/
>> > [facesmore]:
http://www.puppetlabs.com/blog/faces-actions-options-and-facades-oh-my/
>> >
>> > Deprecations
>> > ----------
>> >
>> > We''re starting the hourglass on a few older features:
>> >
>> > * **''puppet'' as a synonym for ''puppet
apply''** --- Starting today,
>> > running `puppet my-manifest.pp` will issue a warning; you should
start
>> > using `puppet apply` directly instead. Support for implicit
invocation
>> > of puppet apply will be dropped in Puppet 2.8.
>> > * **Dynamic scope** --- We''ve started issuing warnings
when variables
>> > or resource defaults are found via dynamic lookup.
[There''s more info
>> > and explanation in a guide on the docs
>> > site](http://docs.puppetlabs.com/guides/scope_and_puppet.html),
but
>> > the short version is that you should start referencing variables
with
>> > their qualified names instead of counting on dynamic scope. We
hope to
>> > drop support for dynamic scope in Puppet 2.8.
>> > * **No more `--parseonly` option** --- This one''s already
gone,
>> > because we used Faces to build a drop-in replacement: use `puppet
>> > parser validate [<manifest>] [<manifest> ...]`
instead.
>> >
>> > Notice Changed Manifests on the First Try
>> > -------
>> >
>> > During the 2.6.x series, puppet agent would sometimes require two
runs
>> > to receive new configurations when puppet master was running under
>> > Passenger. This persistent bug has been dealt with. (This change
will
>> > also be appearing in the final 2.6.x releases.)
>> >
>> > Static Compiler
>> > ---------
>> >
>> > We''ve introduced `static_compiler`, a new
`catalog_terminus` which can
>> > be configured in puppet.conf on your puppet master. There are some
>> > known issues that keep it from being used as-is --- you have to
>> > manually sync the agent''s filebucket to that of the
master, and the
>> > compiler''s behavior around recursion hasn''t been
rigorously tested.
>> > But this new approach has the potential to drastically speed up
>> > file-heavy Puppet runs and eliminate some race conditions.
>> >
>> > Improved APIs
>> > ----------
>> >
>> > You can now [manage and sign certificates via Puppet''s
REST
>> >
API](http://docs.puppetlabs.com/guides/rest_api.html#certificate-status),
>> > which means that in the near future you''ll be able to
check off
>> > signing requests for new nodes right from Puppet Dashboard. (And
>> > someone can now easily write an iPhone or Android app to fetch and
>> > handle CSRs, hint hint. :) )
>> >
>> > And more
>> > --------
>> >
>> > For more detail, see [our full release
>> >
notes](http://projects.puppetlabs.com/projects/puppet/wiki/Release_Notes/).
>> >
>> > --
>> > 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.
>>
>
> --
> 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