Re: [Puppet Users] Late-binding provider dependencies

2011-03-25 Thread Denmat
Hi,

2.6 provides stages that will enable you to do what you want. Not sure what 
you'd do in .25 to achieve anything similar or if you can.

Cheers,
 


On 26/03/2011, at 3:54, Phil Calvin  wrote:

> In a few places (both on the Wiki[1] and the mailing list[2]), I've
> seen references to late-binding for provider dependencies. For
> instance, the vcsrepo provider needs git, but git may not be installed
> until Puppet has started to apply the configuration. In Puppet 0.25,
> the entire run fails because there's no provider available for
> vcsrepo, so git never gets installed.
> 
> The mailing list exchange suggests that there's a bug open for this. I
> searched, but was not able to find it. Can anyone link me to this bug?
> 
> Thank you,
> Phil Calvin
> 
> [1] 
> http://projects.puppetlabs.com/projects/1/wiki/Development_Provider_Development#Suitability
> [2]
> http://groups.google.com/group/puppet-users/browse_thread/thread/56f41d58592617f3/21fe395cb30b0d9b?lnk=gst&q=commands+provider#21fe395cb30b0d9b
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Puppet Users" group.
> To post to this group, send email to puppet-users@googlegroups.com.
> To unsubscribe from this group, send email to 
> puppet-users+unsubscr...@googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/puppet-users?hl=en.
> 

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.



Re: [Puppet Users] Performing text substitution on templates/source files?

2011-03-25 Thread Denmat
Hi,

You can think of using augeas but you'll need to create your own 'lens'.

Never made one myself so not sure of the effort involved.

Cheers,

On 26/03/2011, at 2:58, Nate Carlson  wrote:

> Hi!
> 
> I have a situation where we want to take files from our upstream software 
> vendor, replace Maven-style variables with real data (from variables set 
> based on the environment within Puppet), and then deploy the changed file to 
> the puppet client.
> 
> Here's an example upstream configuration:
> 
> -- begin sql.properties --
> sql.store.driver=@jdbc.driver@
> sql.store.url=@jdbc.url@
> sql.store.user=@jdbc.user@
> sql.store.password=@jdbc.password@
> sql.store.dbProperties=@jdbc.properties@
> -- end sql.properties --
> 
> I know that I could change this to erb-style variables and use the 'template' 
> function to do the text changes, with something like..
> 
> -- begin sql.erb --
> sql.store.driver=%<= jdbc.driver %>
> sql.store.url=%<= jdbc.url %>
> sql.store.user=%<= jdbc.user %>
> sql.store.password=%<= jdbc.password %>
> sql.store.dbProperties=%<= jdbc.properties %>
> -- end sql.erb --
> 
> ..but I'd really prefer to keep the files in the same format that they are 
> upstream, so I don't have to modify the files each time a new upstream 
> version is released.
> 
> Is there any way to do this besides deploying the file as-is and using the 
> "simple text pattern" changes described at http://npc.me/haWrvF? I know that 
> would work, but it seems like a kludge...  ;)
> 
> Thanks!
> 
> -Nate
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Puppet Users" group.
> To post to this group, send email to puppet-users@googlegroups.com.
> To unsubscribe from this group, send email to 
> puppet-users+unsubscr...@googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/puppet-users?hl=en.
> 

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.



Re: [Puppet Users] puppet certificate request error

2011-03-25 Thread Denmat
Hi,

Verify that the server name you are using is correct (is it 'puppet' or 
'puppetmaster'?). Use the --waitforcert option when first signing.

Verify that puppetmaster is running on the server. Verify that you can access 
port 8140 on the server from the client.

Cheers,

On 25/03/2011, at 22:30, CHEBRIAN  wrote:

> Dear ALL.
> 
> I am trying to generate the ca for my puppet client .
> 
> But it showing the following error
> 
> puppetd --server puppet --test --debug --no-daemonize
> 
> warning: peer certificate won't be verified in this SSL session
> err: Could not request certificate: Error 400 on SERVER: undefined
> method `info' for nil:NilClass
> Exiting; failed to retrieve certificate and waitforcert is disabled
> 
> puppetmaster
> 
> FQDN checks is fine for puppetmaster and client .  pinging perfectly.
> 
> Please guide me to fix this problem .
> 
> Regards
> CheBrian
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Puppet Users" group.
> To post to this group, send email to puppet-users@googlegroups.com.
> To unsubscribe from this group, send email to 
> puppet-users+unsubscr...@googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/puppet-users?hl=en.
> 

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.



[Puppet Users] Re: ANNOUNCE: Puppet 2.6.7 final!

2011-03-25 Thread Ian Ward Comfort
On 24 Mar 2011, at 7:11 PM, Todd Zullinger wrote:
> Please note that 2.6.6 is in Fedora and EPEL testing repositories.  I don't 
> plan to update puppet there until 2.6.6 is pushed to the stable updates repos 
> in a few weeks.  Any help testing the 2.6.6 packages is most welcome.  Once 
> that update is stable, we'll be better able to more closely track the 2.6.x 
> updates in the official repos.

For what it's worth, we finally took the 2.6.x plunge with the 2.6.6 packages 
in EPEL testing, and have had no problems with the upgrade. So consider this a 
+1 for promotion to stable.

-- 
Ian Ward Comfort 
Systems Team Lead, Academic Computing Services, Stanford University

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.



[Puppet Users] augeas match != bug

2011-03-25 Thread hai wu
This bug at http://projects.puppetlabs.com/issues/5211 is showing as
'Closed', but I am still hitting it with Puppet 2.6.7-1 on RHEL6 (ruby
1.8.7).

For /etc/security/limits.conf, got some error using almost the same code as
here:
http://projects.puppetlabs.com/projects/puppet/wiki/Puppet_Augeas?version=7
The only change is: onlyif  => "match $path_exact size != 0" rather than:
onlyif  => "match $path_exact size == 0".

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.



[Puppet Users] Late-binding provider dependencies

2011-03-25 Thread Phil Calvin
In a few places (both on the Wiki[1] and the mailing list[2]), I've
seen references to late-binding for provider dependencies. For
instance, the vcsrepo provider needs git, but git may not be installed
until Puppet has started to apply the configuration. In Puppet 0.25,
the entire run fails because there's no provider available for
vcsrepo, so git never gets installed.

The mailing list exchange suggests that there's a bug open for this. I
searched, but was not able to find it. Can anyone link me to this bug?

Thank you,
Phil Calvin

[1] 
http://projects.puppetlabs.com/projects/1/wiki/Development_Provider_Development#Suitability
[2]
http://groups.google.com/group/puppet-users/browse_thread/thread/56f41d58592617f3/21fe395cb30b0d9b?lnk=gst&q=commands+provider#21fe395cb30b0d9b

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.



[Puppet Users] Simple class help

2011-03-25 Thread tigreton
I have this in my /manifests/site.pp
Do i need to send you more files? I don't think so...
class sudo {
file { "/tmp/prueba.txt":
owner => root,
group => root,
mode => 440,
ensure => present,
content => "esto es una prueba",
source => "puppet://groening.dibujos.local/files/etc/
prueba.txt"
}
}
node default {
include sudo
}


I only want for test is that i can create a file named prueba.txt in
tmp. I saw some more examples, but they are obsoletes.
For example, i added source too... And friends said me that i must use
the content => "something" too...
How do i create a simple file? Thanks. Jorge.

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.



[Puppet Users] Performing text substitution on templates/source files?

2011-03-25 Thread Nate Carlson
Hi!

I have a situation where we want to take files from our upstream
software vendor, replace Maven-style
variables with real data (from variables set based on the environment
within Puppet), and then deploy the
changed file to the puppet client.

Here's an example upstream configuration:

-- begin sql.properties --
sql.store.driver=@jdbc.driver@
sql.store.url=@jdbc.url@
sql.store.user=@jdbc.user@
sql.store.password=@jdbc.password@
sql.store.dbProperties=@jdbc.properties@
-- end sql.properties --

I know that I could change this to erb-style variables and use the
'template' function to do the text
changes, with something like..

-- begin sql.erb --
sql.store.driver=%<= jdbc.driver %>
sql.store.url=%<= jdbc.url %>
sql.store.user=%<= jdbc.user %>
sql.store.password=%<= jdbc.password %>
sql.store.dbProperties=%<= jdbc.properties %>
-- end sql.erb --

..but I'd really prefer to keep the files in the same format that they
are upstream, so I don't have to
modify the files each time a new upstream version is released.

Is there any way to do this besides deploying the file as-is and using
the "simple text pattern" changes
described at http://npc.me/haWrvF? I know that would work, but it
seems like a kludge...  ;)

Thanks!

-Nate

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.



[Puppet Users] Performing text substitution on templates/source files?

2011-03-25 Thread Nate Carlson

Hi!

I have a situation where we want to take files from our upstream software 
vendor, replace Maven-style variables with real data (from variables set 
based on the environment within Puppet), and then deploy the changed file 
to the puppet client.


Here's an example upstream configuration:

-- begin sql.properties --
sql.store.driver=@jdbc.driver@
sql.store.url=@jdbc.url@
sql.store.user=@jdbc.user@
sql.store.password=@jdbc.password@
sql.store.dbProperties=@jdbc.properties@
-- end sql.properties --

I know that I could change this to erb-style variables and use the 
'template' function to do the text changes, with something like..


-- begin sql.erb --
sql.store.driver=%<= jdbc.driver %>
sql.store.url=%<= jdbc.url %>
sql.store.user=%<= jdbc.user %>
sql.store.password=%<= jdbc.password %>
sql.store.dbProperties=%<= jdbc.properties %>
-- end sql.erb --

..but I'd really prefer to keep the files in the same format that they are 
upstream, so I don't have to modify the files each time a new upstream 
version is released.


Is there any way to do this besides deploying the file as-is and using the 
"simple text pattern" changes described at http://npc.me/haWrvF? I know 
that would work, but it seems like a kludge...  ;)


Thanks!

-Nate

--
You received this message because you are subscribed to the Google Groups "Puppet 
Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.



Re: [Puppet Users] General Question about passenger and puppet

2011-03-25 Thread Charles Johnson
Yes. If you configure apache and passenger correctly they manage it for you.

~Charles~

On Fri, Mar 25, 2011 at 10:57 AM, rjl  wrote:

> Does puppetd or puppetmasterd need to be running on the puppetmaster
> if I have configured puppet to use passenger?
>
> Thanks in advance...
>
> --
> You received this message because you are subscribed to the Google Groups
> "Puppet Users" group.
> To post to this group, send email to puppet-users@googlegroups.com.
> To unsubscribe from this group, send email to
> puppet-users+unsubscr...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/puppet-users?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.



[Puppet Users] General Question about passenger and puppet

2011-03-25 Thread rjl
Does puppetd or puppetmasterd need to be running on the puppetmaster
if I have configured puppet to use passenger?

Thanks in advance...

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.



[Puppet Users] Re: run stages in puppet 2.6

2011-03-25 Thread jcbollinger


On Mar 24, 5:36 pm, Tim Dunphy  wrote:
> Which is confusing because I was under the impression that under 2.6
> the class / stage relationship basically takes the place of 'include
> foo' where foo is a class you want to use.

That is a somewhat mistaken impression, but I can see how you might
get it.  Puppet 2.6 introduces parameterized classes, and with them,
an alternative syntax for including classes and declaring their
parameters ( class { : [parameters] } ).   Puppet leverages that
syntax for assigning classes to run stages, by automatically giving
all classes a "stage" metaparameter.  It is therefore true that
assigning a class to a run stage does include that class, but (and
this is your mistake) doing so is not semantically equivalent to
"include foo", because the parameterized class inclusion mechanism is
not a strict replacement for the "include" statement.

In particular, a significant limitation of parameterized classes is
that you can only include each one once for each node.  Your node
'chromews21.acadaca.net' includes class "centos" twice, once inherited
from basenode, and once explicitly itself.  That would be OK if you
used the "include" statement to perform both inclusions, but it is
*not* ok if you use the parameterized class syntax, regardless of
which parameters you set and which values you assign to them.  As far
as I know, however, you cannot assign a run stage without using the
parameterized class syntax.

Nan already described the possible solutions.  I'm just trying to give
you a better understanding of the problem.


Cheers,

John


-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.



Re: [Puppet Users] run stages in puppet 2.6

2011-03-25 Thread Gary Larizza
Hi Tim,

I wrote an article on RunStages here about a week or so ago -->
http://glarizza.posterous.com/using-run-stages-with-puppet  Maybe it will
help you out a bit with the syntax itself, and then you can build from
there?

I hope it helps!

On Thu, Mar 24, 2011 at 6:36 PM, Tim Dunphy  wrote:

> hello guys,
>
>  I am trying to incorporate run stages into my puppet setup. I've been
> working with this for a few days and I haven't quite got the hang of
> it yet...
>
>
>  When I attempt my puppet run this is the error I see:
>
> 
>
> [root@chromews21 ~]# puppetd -t
> err: Could not retrieve catalog from remote server: Error 400 on
> SERVER: Duplicate definition: Class[Centos] is already defined; cannot
> redefine at /etc/puppet/manifests/nodes.pp:28 on node
> chromews21.example.net
> warning: Not using cache on failed catalog
> err: Could not retrieve catalog; skipping run
>
>
>
> Which is confusing because I was under the impression that under 2.6
> the class / stage relationship basically takes the place of 'include
> foo' where foo is a class you want to use.
>
> --
>
>  Just to step you through my logic, I define my stages in site.pp (so
> that they will be applied everywhere):
>
> import "template"
> import "nodes"
> import "classes/*"
> import "groups/*"
> import "users/*"
> import "os/*"
>
>  # site.pp
>   file { "/etc/sudoers":
>   owner => root, group => root, mode => 440
>   }
>
> filebucket { main: server => puppet }
> File { backup => main }
>
>  stage {"os": before => Stage["main"]}
>  stage {"repos": before => Stage["main"]}
>  stage {"last": require  => Stage["main"]}
>
>
> --
>
>  This is the relationship I setup in template.pp
>
>
> 
>
>  node basenode {
>
>case $operatingsystem {
>centos: { include centos }
>ubuntu: { include ubuntu }
>default: { include centos }
>}
>include baseapps, sshd
>
> }
>
> node default inherits basenode {}
>
> node webserver inherits basenode {
>  ## <-- I used to define 'include apache' here
> }
>
> node dbserver inherits basenode {
> include mysql
> }
>
> node mailserver inherits basenode {
> include postfix
> }
>
>
> -
>
> And then this is how I define my client that I am working with:
>
>
> -
>
>
> node 'chromews21.acadaca.net' inherits webserver {  ## <-- instead
> what I attempt to do is setup the stage relationships here
>   class {"centos": stage => os}
>   class {"yumrepos": stage => repos}
>   class {"baseapps": stage => main}
>   class {"basefiles": stage => main}
>   class {"apache": stage => last}
> }
>
>
>
>
> ---
>
>
>
> So obviously I am not trying to redefine the centos class. I am merely
> trying to setup a precedence in terms of how the software is
> installed.
>
>
> Thanks in advance for your help!
>
> --
> GPG me!!
>
> gpg --keyserver pool.sks-keyservers.net --recv-keys F186197B
>
> --
> You received this message because you are subscribed to the Google Groups
> "Puppet Users" group.
> To post to this group, send email to puppet-users@googlegroups.com.
> To unsubscribe from this group, send email to
> puppet-users+unsubscr...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/puppet-users?hl=en.
>
>


-- 
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+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.



[Puppet Users] puppet certificate request error

2011-03-25 Thread CHEBRIAN
Dear ALL.

I am trying to generate the ca for my puppet client .

But it showing the following error

puppetd --server puppet --test --debug --no-daemonize

warning: peer certificate won't be verified in this SSL session
err: Could not request certificate: Error 400 on SERVER: undefined
method `info' for nil:NilClass
Exiting; failed to retrieve certificate and waitforcert is disabled

puppetmaster

FQDN checks is fine for puppetmaster and client .  pinging perfectly.

Please guide me to fix this problem .

Regards
CheBrian

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.



[Puppet Users] failed dependancy on augas provider doesn't let me install the dependancy

2011-03-25 Thread Rudy Gevaert

Hello,

I am using augeas to do some configuration.  However our initial 
bootstrap didn't install "libaugeas0","libaugeas-ruby","augeas-tools".


I fixed that by setting in my manifests to install those packages.  My 
puppet runs work as long as I don't use augeas in my manifests.


If I use augeas in my manifests the puppet run stops with:

debug: Puppet::Type::Augeas::ProviderAugeas: false value when expecting true
err: Could not run Puppet configuration client: Could not find a default 
provider for augeas


When my initial run doesn't need augeas the augeas dependencies are 
installed.  If I then need augeas in a following run it works too.


Of course the problem can be fixed by either making sure the augeas 
dependencies are installed before my first run without using puppet.


Are there any ways how I can still fix it with puppet?

Thanks!

Rudy

--
You received this message because you are subscribed to the Google Groups "Puppet 
Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.



Re: [Puppet Users] pupet dashboard taking more than 10 minutes to destroy a node

2011-03-25 Thread Arnau Bria
Hi,

After some prune /all excpet last week)/optimize the destroy action
works great.. 


Thanks for the tips, now I have to take a lokk at mysql links.


Cheers,
Arnau

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.



Re: [Puppet Users] err: Could not retrieve catalog from remote server: certificate verify failed

2011-03-25 Thread Felix Frank
On 03/24/2011 04:53 PM, Mike Franon wrote:
> Thanks,
> 
> Do you mean on the puppetmaster?

Hi,

probably not. It's important that the client calls the puppetmaster by
the name that's in the master's certificate. So either user
--server=puppet.mydomain.org or the equivalent in puppet.conf.

If this doesn't help, take a close look at your master's certificates to
determine what you should use for "server" in the client conf.

HTH,
Felix

> 
> 
> On Thu, Mar 24, 2011 at 11:22 AM, Sergey Zhuga  wrote:
>> I was fighting with this issue today. Try to use FQDN in 'server' directive.
>>
>> On 24.03.2011 16:50, Mike Franon wrote:
>>>
>>> So set up new node, ran on the client
>>>
>>> puppetd --server puppetmaster --waitforcert 60 --test
>>>
>>> on the puppetmaster itself I ran
>>>
>>> puppetca --list
>>>
>>> saw the hostname
>>>
>>> and then ran:
>>>
>>> puppetca --sign hostname.domain.com
>>>
>>> and on the puppet node itself I went back and ran puppetd -tv
>>>
>>> and get the following error:
>>>
>>> err: Could not retrieve catalog from remote server: certificate verify
>>> failed
>>> warning: Not using cache on failed catalog
>>> err: Could not retrieve catalog; skipping run
>>>
>>>
>>> If I do a puppetca --list --all on the puppetmaster, the server is
>>> registered with a mac address.
>>>
>>>
>>> Just curious has anyone seen this and how to resolve?
>>>
>>> Thanks
>>>
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Puppet Users" group.
>> To post to this group, send email to puppet-users@googlegroups.com.
>> To unsubscribe from this group, send email to
>> puppet-users+unsubscr...@googlegroups.com.
>> For more options, visit this group at
>> http://groups.google.com/group/puppet-users?hl=en.
>>
>>
> 

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.