Re: [Puppet Users] networkinterface type proposal

2011-03-01 Thread James Turnbull
Eric Sorenson wrote:
> Hi - I've searched around and haven't found anyone who's implemented a
> type+provider for configuring network interfaces in puppet.  Does anyone
> have such a thing already running that's just not on forge / github? I
> found some prior art (aside from the old 'interface' type which was
> deleted in 0.24) but most people seem to use definitions + templates
> which isn't a good "first class citizen" solution.  
> 
> I and other puppet hackers around my organization worked up a strawman
> proposal that we thought would be a reasonable interface and I figured I
> would float it by the list. Obviously it's a complicated beast but this
> would be great functionality to have in puppet. I'll
> update   https://projects.puppetlabs.com/issues/3153 with the results of
> the discussion here and maybe we can get some traction on it.
> 
>  - Eric Sorenson - N37 17.255 W121 55.738  - http://twitter.com/ahpook  -

Eric

One of our GSOC students started some work on this:

https://github.com/blkperl/puppet-network

James

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



Re: [Puppet Users] Puppet Enterprise

2011-03-01 Thread Luis Miguel Silva
Thank you Nan, i will try that out.

Thanks a lot for taking the time to help me!
Luis

On Tue, Mar 1, 2011 at 9:48 PM, Nan Liu  wrote:
> On Tue, Mar 1, 2011 at 8:28 PM, Luis Miguel Silva
>  wrote:
>> Oh k, i just figured out how does Puppet get the node classes from the
>> dashboard, it does so by using the external node feature (that someone
>> had already talked about in this mailing list)! :o)
>>
>> I'm just having some trouble understanding how do we specify classes
>> via site.pp and how to configure them with individual parameters (via
>> both the dashboard and site.pp).
>
> So the organization of puppet should be: node { class { resource } }.
> Node correspond with your system, class with service roles, and
> resource to discrete resources on your system. Dashboard view is top
> down from the node level.
>
> Classes should be specified in modules using the autoloader
> convention, so if you have a class foo it should be in module foo or
> /etc/puppetlabs/puppet/modules/foo/manifests/init.pp. If this seems a
> bit confusing see:
> http://docs.puppetlabs.com/guides/modules.html
>
> Continuing our example:
>
> class foo ($var="default") {
>   notify { $var: }
> }
>
> Parametrized classes are new in Puppet 2.6. Support for parametrized
> classes via ENC was introduced in 2.6.5. Support for parametrized
> classes in dashboard is on the road map.
>
> Currently here's the way to declare parametrized classes in site.pp:
>
> node node01 {
>  class { foo:
>    var => "hello world!",
>  }
> }
>
> To support parametrized class in dashboard, I write a wrapper class
> (necessary until Dashboard fully supports parametrized classes):
> class foo::wrapper {
>  class { foo:
>     var =>  $::foo_var,
>  }
> }
>
> In this case assign class foo::wrapper to node1 in dashboard and
> configure the parameter foo_var="hello world!".
>
> HTH,
>
> Nan
>
>> Thanks!
>> Luis
>>
>> On Tue, Mar 1, 2011 at 8:12 PM, Luis Miguel Silva
>>  wrote:
>>> Nan,
>>>
>>> I'm really confused here. Thanks to your tips, i was able to download
>>> an extra-module (i tried downloading puppetlabs/apache and
>>> bob-iptables) but i'm not entirely sure how to use them.
>>>
>>> I first tried adding a class called "helloworld" via dashboard and
>>> associated it with one of my nodes (which worked perfectly).
>>> I then tried doing the same thing by creating a
>>> /etc/puppetlabs/puppet/manifests/site.pp file with:
>>> node node01 {
>>>        include helloworld
>>> }
>>>
>>> But that did not seem to work.
>>> I tried restarting pe-puppet on both the client and the server but had
>>> no success...
>>>
>>> So, right now, i'm able to define new classes via the dashboard, but
>>> not via site.pp (and could not find out exactly how does the dashboard
>>> add classes to nodes, i did a grep for the node name in
>>> /etc/puppetlabs/ and could not find anything...).
>>>
>>> Finally, although adding classes to nodes via the dashboard works just
>>> fine, how do i specify the extra arguments?
>>> For instance, looking at the bob/iptables module you pointed out, it
>>> ships with a README.rst that shows a sample config:
>>>  iptables { "001 allow icmp":
>>>    proto => "icmp",
>>>    icmp  => "any",
>>>    jump  => "ACCEPT",
>>>  }
>>>
>>> But where do i specify this in the dashboard? (specific class parameters)?
>>> And how do i configure it in a site.pp ?
>>>
>>> That's the only two questions i have (and i promise not to bother you
>>> anymore)! :o)
>>>
>>> Thanks a lot for your help,
>>> Luis
>>>
>>> On Tue, Mar 1, 2011 at 6:14 PM, Luis Miguel Silva
>>>  wrote:
 Oh, awesome!
 My path env var didnt include that path so i couldnt find it and ended up 
 installing from source!

 Thanks a million,
 Luis Miguel Silva

 On Mar 1, 2011, at 6:11 PM, Nan Liu  wrote:

> You shouldn't need to deploy puppet-module if you installed puppet
> enterprise, it should be part of the installation and the executable
> should be located in /opt/puppet/bin.
>
> Thanks,
>
> Nan
>
> On Tue, Mar 1, 2011 at 6:00 PM, Luis Miguel Silva
>  wrote:
>> Thanks!
>>
>> I tried deploying puppet-module yesterday but had a lot of problems
>> with Ruby dependencies (since Puppet Enterprise ships with its own
>> ruby libs).
>>
>> Thanks,
>> Luis
>>
>> On Tue, Mar 1, 2011 at 4:34 PM, Nan Liu  wrote:
>>> You can use puppet-module to download modules from forge and you just
>>> need to rename the folder to remove the author name afterwards.
>>>
>>> cd /etc/puppetlabs/puppet/modules/
>>> puppet-module install bobsh-iptables
>>> mv bobsh-iptables iptables.
>>>
>>> We don't have a way to make classes in modules show up in dashboard,
>>> that's the feature request I was discussing about. You can scan the
>>> available class using grep -r class *.
>>>
>>> There's a rake task that will allow you to add classes to dashboard,
>>> but it doesn't ha

Re: [Puppet Users] Puppet Enterprise

2011-03-01 Thread Nan Liu
On Tue, Mar 1, 2011 at 8:28 PM, Luis Miguel Silva
 wrote:
> Oh k, i just figured out how does Puppet get the node classes from the
> dashboard, it does so by using the external node feature (that someone
> had already talked about in this mailing list)! :o)
>
> I'm just having some trouble understanding how do we specify classes
> via site.pp and how to configure them with individual parameters (via
> both the dashboard and site.pp).

So the organization of puppet should be: node { class { resource } }.
Node correspond with your system, class with service roles, and
resource to discrete resources on your system. Dashboard view is top
down from the node level.

Classes should be specified in modules using the autoloader
convention, so if you have a class foo it should be in module foo or
/etc/puppetlabs/puppet/modules/foo/manifests/init.pp. If this seems a
bit confusing see:
http://docs.puppetlabs.com/guides/modules.html

Continuing our example:

class foo ($var="default") {
   notify { $var: }
}

Parametrized classes are new in Puppet 2.6. Support for parametrized
classes via ENC was introduced in 2.6.5. Support for parametrized
classes in dashboard is on the road map.

Currently here's the way to declare parametrized classes in site.pp:

node node01 {
  class { foo:
var => "hello world!",
  }
}

To support parametrized class in dashboard, I write a wrapper class
(necessary until Dashboard fully supports parametrized classes):
class foo::wrapper {
  class { foo:
 var =>  $::foo_var,
  }
}

In this case assign class foo::wrapper to node1 in dashboard and
configure the parameter foo_var="hello world!".

HTH,

Nan

> Thanks!
> Luis
>
> On Tue, Mar 1, 2011 at 8:12 PM, Luis Miguel Silva
>  wrote:
>> Nan,
>>
>> I'm really confused here. Thanks to your tips, i was able to download
>> an extra-module (i tried downloading puppetlabs/apache and
>> bob-iptables) but i'm not entirely sure how to use them.
>>
>> I first tried adding a class called "helloworld" via dashboard and
>> associated it with one of my nodes (which worked perfectly).
>> I then tried doing the same thing by creating a
>> /etc/puppetlabs/puppet/manifests/site.pp file with:
>> node node01 {
>>        include helloworld
>> }
>>
>> But that did not seem to work.
>> I tried restarting pe-puppet on both the client and the server but had
>> no success...
>>
>> So, right now, i'm able to define new classes via the dashboard, but
>> not via site.pp (and could not find out exactly how does the dashboard
>> add classes to nodes, i did a grep for the node name in
>> /etc/puppetlabs/ and could not find anything...).
>>
>> Finally, although adding classes to nodes via the dashboard works just
>> fine, how do i specify the extra arguments?
>> For instance, looking at the bob/iptables module you pointed out, it
>> ships with a README.rst that shows a sample config:
>>  iptables { "001 allow icmp":
>>    proto => "icmp",
>>    icmp  => "any",
>>    jump  => "ACCEPT",
>>  }
>>
>> But where do i specify this in the dashboard? (specific class parameters)?
>> And how do i configure it in a site.pp ?
>>
>> That's the only two questions i have (and i promise not to bother you
>> anymore)! :o)
>>
>> Thanks a lot for your help,
>> Luis
>>
>> On Tue, Mar 1, 2011 at 6:14 PM, Luis Miguel Silva
>>  wrote:
>>> Oh, awesome!
>>> My path env var didnt include that path so i couldnt find it and ended up 
>>> installing from source!
>>>
>>> Thanks a million,
>>> Luis Miguel Silva
>>>
>>> On Mar 1, 2011, at 6:11 PM, Nan Liu  wrote:
>>>
 You shouldn't need to deploy puppet-module if you installed puppet
 enterprise, it should be part of the installation and the executable
 should be located in /opt/puppet/bin.

 Thanks,

 Nan

 On Tue, Mar 1, 2011 at 6:00 PM, Luis Miguel Silva
  wrote:
> Thanks!
>
> I tried deploying puppet-module yesterday but had a lot of problems
> with Ruby dependencies (since Puppet Enterprise ships with its own
> ruby libs).
>
> Thanks,
> Luis
>
> On Tue, Mar 1, 2011 at 4:34 PM, Nan Liu  wrote:
>> You can use puppet-module to download modules from forge and you just
>> need to rename the folder to remove the author name afterwards.
>>
>> cd /etc/puppetlabs/puppet/modules/
>> puppet-module install bobsh-iptables
>> mv bobsh-iptables iptables.
>>
>> We don't have a way to make classes in modules show up in dashboard,
>> that's the feature request I was discussing about. You can scan the
>> available class using grep -r class *.
>>
>> There's a rake task that will allow you to add classes to dashboard,
>> but it doesn't have any scanning capabilities.
>>
>> Thanks,
>>
>> Nan
>>
>> On Tue, Mar 1, 2011 at 4:26 PM, Luis Miguel Silva
>>  wrote:
>>> Dear Nan,
>>>
>>> As i mentioned in a previous email, thanks a lot for this info!
>>>
>>> Do you know how can i download extra modules f

[Puppet Users] How to remove a class from a node (using dashboard)

2011-03-01 Thread Luis Miguel Silva
Dear all,

I finally managed to load an extra module (apache) via dashboard but
i'm having trouble removing it?
My expectation was that, once i removed the class from the node
(stopped including it), Puppet would call some sort of deprovisioning
mechanism that would remove the class (so, in my case, when i stopped
including the apache class in my node, puppet would remove apache from
my node).

According to my tests, that did not happen (Apache is still up and running).
What are the best practices to remove a module when we no longer need it?

Thanks,
Luis

-- 
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: best way of handling source installs

2011-03-01 Thread Steven VanDevender
russell.fulton writes:
 > I know this and agree with it in principle.  It is just that at the
 > moment I am extremely hard
 > pressed and really don't have the time to work my way through figuring
 > out how to build rpms
 > from scratch.  The package Daniel pointed out looks very promising in
 > this respect adn I will certainly
 > look at it.
 > 
 > I'll repeat the question from my previous post:  Is there a straight
 > forward way to have a local rpm
 > repository on the puppet server rather than relying on yum and the RHE
 > channels?

You can just source packages from an HTTP server rather than implicitly
from configured package repositories.

package { "foo":
source => "http://my.web.server/packages/foo-1.0-1.i386.rpm";,
ensure => installed,
}

-- 
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] Re: best way of handling source installs

2011-03-01 Thread Todd Zullinger
russell.fulton wrote:
> I'll repeat the question from my previous post:  Is there a straight
> forward way to have a local rpm repository on the puppet server
> rather than relying on yum and the RHE channels?

It's trivial to run createrepo /path/to/rpms to create the yum
metadata.  You can then serve that up via http or even via a file://
URI if you like (and your clients can access it).

Or are you trying to get puppet to act as the repository?  If so, I
don't think there is a sane way to do this.

-- 
ToddOpenPGP -> KeyID: 0xBEAF0CE3 | URL: www.pobox.com/~tmz/pgp
~~
You cannot propel yourself forward by patting yourself on the back.



pgp6qAAyj78x3.pgp
Description: PGP signature


Re: [Puppet Users] Re: best way of handling source installs

2011-03-01 Thread Jeff McCune
On Tue, Mar 1, 2011 at 8:13 PM, russell.fulton  wrote:
>
> I'll repeat the question from my previous post:  Is there a straight
> forward way to have a local rpm
> repository on the puppet server rather than relying on yum and the RHE
> channels?

Check out mrepo if you want to mirror another repository and
createrepo if you want to create your own yum repository.

If you're already running Puppet inside of Apache, you'll just need to
setup a virtual host to serve up the directory containing the packages
and yum metadata.

It's actually quite straightforward.  Most of the time is going to
come from reading about how to use mrepo.

createrepo *.rpm works great if you just want to expose a directory as
a yum repo.  Super straight forward.

-Jeff

-- 
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] overriding packages in subclasses

2011-03-01 Thread russell.fulton
I am having a fight with a postgressql nodule:

It defines:

class postgresql::base {


  package {"postgresql":
ensure => present,
notify => undef,
  }
...

and later we have a class that inherits the base class:

class postgresql::rhe::v8-4 inherits postgresql::base {

  $data_dir = $postgresql_data_dir ? {
"" => "/var/lib/postgresql",
default => $postgresql_data_dir,
  }

  package {[
"postgresql84",
"postgresql84-server",
]:
ensure  => present,
  }

How can I get puppet to ignore the package definition in the 'base'
class?

This is on redhat -- postgresql installs 8.1.xxx and I want 8.4 --
puppet installs the two 84 packages and then bitches that it can not
install the straight postgresql because of conflicts (quite rightly).

Russell

-- 
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: best way of handling source installs

2011-03-01 Thread russell.fulton


> > I think this is even more important when you have a lot of churn.
> > Simply being able to flip between versions of the packages quickly
> > will surely save an awful lot of time.
>
> What he said - really.  Three immediate benefits:
>
>   - having the build process entirely scripted in the spec file ensures a
> consistent build process over time.
>
>   - the first time you deploy a new version that explodes, rolling back to a 
> set
> of known good binaries is utterly trivial to do in moments.
>
>   - as sensitive boxes (security monitors) it's very useful to be able to 
> easily
> verify the software binaries, using either the local rpm database or a copy of
> the original rpm.  for a little extra, you can pgp sign your rpm files too.
>

OK, OK :)

I know this and agree with it in principle.  It is just that at the
moment I am extremely hard
pressed and really don't have the time to work my way through figuring
out how to build rpms
from scratch.  The package Daniel pointed out looks very promising in
this respect adn I will certainly
look at it.

I'll repeat the question from my previous post:  Is there a straight
forward way to have a local rpm
repository on the puppet server rather than relying on yum and the RHE
channels?

Thanks, Russell

-- 
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 Enterprise

2011-03-01 Thread Luis Miguel Silva
Oh k, i just figured out how does Puppet get the node classes from the
dashboard, it does so by using the external node feature (that someone
had already talked about in this mailing list)! :o)

I'm just having some trouble understanding how do we specify classes
via site.pp and how to configure them with individual parameters (via
both the dashboard and site.pp).

Thanks!
Luis

On Tue, Mar 1, 2011 at 8:12 PM, Luis Miguel Silva
 wrote:
> Nan,
>
> I'm really confused here. Thanks to your tips, i was able to download
> an extra-module (i tried downloading puppetlabs/apache and
> bob-iptables) but i'm not entirely sure how to use them.
>
> I first tried adding a class called "helloworld" via dashboard and
> associated it with one of my nodes (which worked perfectly).
> I then tried doing the same thing by creating a
> /etc/puppetlabs/puppet/manifests/site.pp file with:
> node node01 {
>        include helloworld
> }
>
> But that did not seem to work.
> I tried restarting pe-puppet on both the client and the server but had
> no success...
>
> So, right now, i'm able to define new classes via the dashboard, but
> not via site.pp (and could not find out exactly how does the dashboard
> add classes to nodes, i did a grep for the node name in
> /etc/puppetlabs/ and could not find anything...).
>
> Finally, although adding classes to nodes via the dashboard works just
> fine, how do i specify the extra arguments?
> For instance, looking at the bob/iptables module you pointed out, it
> ships with a README.rst that shows a sample config:
>  iptables { "001 allow icmp":
>    proto => "icmp",
>    icmp  => "any",
>    jump  => "ACCEPT",
>  }
>
> But where do i specify this in the dashboard? (specific class parameters)?
> And how do i configure it in a site.pp ?
>
> That's the only two questions i have (and i promise not to bother you
> anymore)! :o)
>
> Thanks a lot for your help,
> Luis
>
> On Tue, Mar 1, 2011 at 6:14 PM, Luis Miguel Silva
>  wrote:
>> Oh, awesome!
>> My path env var didnt include that path so i couldnt find it and ended up 
>> installing from source!
>>
>> Thanks a million,
>> Luis Miguel Silva
>>
>> On Mar 1, 2011, at 6:11 PM, Nan Liu  wrote:
>>
>>> You shouldn't need to deploy puppet-module if you installed puppet
>>> enterprise, it should be part of the installation and the executable
>>> should be located in /opt/puppet/bin.
>>>
>>> Thanks,
>>>
>>> Nan
>>>
>>> On Tue, Mar 1, 2011 at 6:00 PM, Luis Miguel Silva
>>>  wrote:
 Thanks!

 I tried deploying puppet-module yesterday but had a lot of problems
 with Ruby dependencies (since Puppet Enterprise ships with its own
 ruby libs).

 Thanks,
 Luis

 On Tue, Mar 1, 2011 at 4:34 PM, Nan Liu  wrote:
> You can use puppet-module to download modules from forge and you just
> need to rename the folder to remove the author name afterwards.
>
> cd /etc/puppetlabs/puppet/modules/
> puppet-module install bobsh-iptables
> mv bobsh-iptables iptables.
>
> We don't have a way to make classes in modules show up in dashboard,
> that's the feature request I was discussing about. You can scan the
> available class using grep -r class *.
>
> There's a rake task that will allow you to add classes to dashboard,
> but it doesn't have any scanning capabilities.
>
> Thanks,
>
> Nan
>
> On Tue, Mar 1, 2011 at 4:26 PM, Luis Miguel Silva
>  wrote:
>> Dear Nan,
>>
>> As i mentioned in a previous email, thanks a lot for this info!
>>
>> Do you know how can i download extra modules from the repos and add
>> them to Puppet?
>> It's not a problem if i have to do it from the shell, i just don't
>> know if it is possible to download all of them at the same time AND
>> how to make them show up in the dashboard.
>>
>> Thank you,
>> Luis
>>
>> On Mon, Feb 28, 2011 at 4:41 PM, Nan Liu  wrote:
>>> On Mon, Feb 28, 2011 at 4:17 PM, Luis Miguel Silva
>>>  wrote:
 Dear all,

 I've been watching the installation how to video on PuppetLabs's
 website but i don't understand where to get mcollective OR how to
 clone the repos with all the modules (all at once)?
 http://www.puppetlabs.com/misc/pe-files/
>>>
>>> Currently, MCollective is not part of Puppet Enterprise, sorry for the
>>> confusion in the original video. See:
>>> http://www.puppetlabs.com/blog/puppet-enterprise-installation-2/
>>>
 I noticed there are mcollective-common, mcollective-server and
 mcollective-client rpm files BUT installing them did not install the
 mc-* commands that are used in the video...
>>>
>>> Depending on the version of MCollective, the latest version is single
>>> executable so
>>>
>>> mc ping
>>> mc inventory
>>> ...
>>>
>>> You also need ActiveMQ/RabbitMQ, please see documentation for more 
>>> detail

Re: [Puppet Users] Updating all packages with Puppet

2011-03-01 Thread Patrick

On Mar 1, 2011, at 4:58 PM, Giovanni Bordello wrote:

> Hi folks,
> 
> I'm very new to Puppet and perhaps what I'm trying to do is a trivial thing. 
> No so much for me though..
> 
> I use Puppet 2.6 to manage a bunch of CentOS 5 servers. A handful of web 
> servers, a handful of app-tier servers and a couple of other hosts - ldap, 
> mail, etc.
> 
> I've got a CentOS 5.5 repo on the Puppet/Kickstart server and install 
> everything from there, obviously a slightly different package sets for each 
> type of server.
> 
> Now the question: can I use Puppet to fetch all the latest updates from the 
> updates repo? I know how to configure the yum repo with Puppet but don't know 
> how to trigger the update?
> 
> Ideally something like:
>ensure => no-more-package-updates-available
> should do the trick :)


Will make sure a package is installed:
package { "mysql-server":
ensure => present
}

Will make sure a package is always up to date with the package database. (Or 
depending on the provider, this might be the locally cached version of the 
package database):
package { "mysql-server":
ensure => latest
}
#Note: this may cause a large load on your package mirror if the provider 
checks if the package is up to date on each run.  A local caching proxy or 
mirror is recommended.


If you want to make sure that all installed packages, you need something like 
this:
#Treat this is pesudo-code because I haven't used Yum for a very long time
exec { "/usr/sbin/yum --yes update":
#Using something to make this not run on every run is useful.  At the 
least, once per day should be enough.
}
#Again: this may cause a large load on your package mirror if the provider 
checks if the package is up to date on each run.  A local caching proxy or 
mirror is recommended.

-- 
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 Enterprise

2011-03-01 Thread Luis Miguel Silva
Nan,

I'm really confused here. Thanks to your tips, i was able to download
an extra-module (i tried downloading puppetlabs/apache and
bob-iptables) but i'm not entirely sure how to use them.

I first tried adding a class called "helloworld" via dashboard and
associated it with one of my nodes (which worked perfectly).
I then tried doing the same thing by creating a
/etc/puppetlabs/puppet/manifests/site.pp file with:
node node01 {
include helloworld
}

But that did not seem to work.
I tried restarting pe-puppet on both the client and the server but had
no success...

So, right now, i'm able to define new classes via the dashboard, but
not via site.pp (and could not find out exactly how does the dashboard
add classes to nodes, i did a grep for the node name in
/etc/puppetlabs/ and could not find anything...).

Finally, although adding classes to nodes via the dashboard works just
fine, how do i specify the extra arguments?
For instance, looking at the bob/iptables module you pointed out, it
ships with a README.rst that shows a sample config:
  iptables { "001 allow icmp":
proto => "icmp",
icmp  => "any",
jump  => "ACCEPT",
  }

But where do i specify this in the dashboard? (specific class parameters)?
And how do i configure it in a site.pp ?

That's the only two questions i have (and i promise not to bother you
anymore)! :o)

Thanks a lot for your help,
Luis

On Tue, Mar 1, 2011 at 6:14 PM, Luis Miguel Silva
 wrote:
> Oh, awesome!
> My path env var didnt include that path so i couldnt find it and ended up 
> installing from source!
>
> Thanks a million,
> Luis Miguel Silva
>
> On Mar 1, 2011, at 6:11 PM, Nan Liu  wrote:
>
>> You shouldn't need to deploy puppet-module if you installed puppet
>> enterprise, it should be part of the installation and the executable
>> should be located in /opt/puppet/bin.
>>
>> Thanks,
>>
>> Nan
>>
>> On Tue, Mar 1, 2011 at 6:00 PM, Luis Miguel Silva
>>  wrote:
>>> Thanks!
>>>
>>> I tried deploying puppet-module yesterday but had a lot of problems
>>> with Ruby dependencies (since Puppet Enterprise ships with its own
>>> ruby libs).
>>>
>>> Thanks,
>>> Luis
>>>
>>> On Tue, Mar 1, 2011 at 4:34 PM, Nan Liu  wrote:
 You can use puppet-module to download modules from forge and you just
 need to rename the folder to remove the author name afterwards.

 cd /etc/puppetlabs/puppet/modules/
 puppet-module install bobsh-iptables
 mv bobsh-iptables iptables.

 We don't have a way to make classes in modules show up in dashboard,
 that's the feature request I was discussing about. You can scan the
 available class using grep -r class *.

 There's a rake task that will allow you to add classes to dashboard,
 but it doesn't have any scanning capabilities.

 Thanks,

 Nan

 On Tue, Mar 1, 2011 at 4:26 PM, Luis Miguel Silva
  wrote:
> Dear Nan,
>
> As i mentioned in a previous email, thanks a lot for this info!
>
> Do you know how can i download extra modules from the repos and add
> them to Puppet?
> It's not a problem if i have to do it from the shell, i just don't
> know if it is possible to download all of them at the same time AND
> how to make them show up in the dashboard.
>
> Thank you,
> Luis
>
> On Mon, Feb 28, 2011 at 4:41 PM, Nan Liu  wrote:
>> On Mon, Feb 28, 2011 at 4:17 PM, Luis Miguel Silva
>>  wrote:
>>> Dear all,
>>>
>>> I've been watching the installation how to video on PuppetLabs's
>>> website but i don't understand where to get mcollective OR how to
>>> clone the repos with all the modules (all at once)?
>>> http://www.puppetlabs.com/misc/pe-files/
>>
>> Currently, MCollective is not part of Puppet Enterprise, sorry for the
>> confusion in the original video. See:
>> http://www.puppetlabs.com/blog/puppet-enterprise-installation-2/
>>
>>> I noticed there are mcollective-common, mcollective-server and
>>> mcollective-client rpm files BUT installing them did not install the
>>> mc-* commands that are used in the video...
>>
>> Depending on the version of MCollective, the latest version is single
>> executable so
>>
>> mc ping
>> mc inventory
>> ...
>>
>> You also need ActiveMQ/RabbitMQ, please see documentation for more 
>> details:
>> http://docs.puppetlabs.com/mcollective/reference/basic/gettingstarted.html
>>
>>> Also, i tried manually installing one of the modules
>>> (DavidSchmitt-apache-1.0.0) by downloading the .tar.gz file and
>>> putting the compressed file's contents at
>>> /etc/puppetlabs/puppet/modules but i could not see them under the
>>> dashboard...
>>
>> Currently, dashboard does not autoload classes in modules and we have
>> a feature request to detect and import classes into dashboard.
>>
>>> I also noticed i could not use the helloworld class (which,
>>>

Re: [Puppet Users] Re: best way of handling source installs

2011-03-01 Thread Frank Sweetser

On 3/1/2011 9:32 PM, Nigel Kersten wrote:

On Tue, Mar 1, 2011 at 5:40 PM, russell.fulton  wrote:


I am managing a fairly small set of machines (network security
monitors) and some of these packages are being installed on just two
or three boxes so spending a lot of time building packages is simply
not worth it.  The apps  are also updated fairly frequently and I need
to stay on the bleeding edge :(


I'm firmly of the opinion that time you invest now in automating
package creation as much as possible will repay itself very quickly
and be of immense value over time.

I think this is even more important when you have a lot of churn.
Simply being able to flip between versions of the packages quickly
will surely save an awful lot of time.


What he said - really.  Three immediate benefits:

 - having the build process entirely scripted in the spec file ensures a 
consistent build process over time.


 - the first time you deploy a new version that explodes, rolling back to a set 
of known good binaries is utterly trivial to do in moments.


 - as sensitive boxes (security monitors) it's very useful to be able to easily 
verify the software binaries, using either the local rpm database or a copy of 
the original rpm.  for a little extra, you can pgp sign your rpm files too.



--
Frank Sweetser fs at wpi.edu  |  For every problem, there is a solution that
WPI Senior Network Engineer   |  is simple, elegant, and wrong. - HL Mencken
GPG fingerprint = 6174 1257 129E 0D21 D8D4  E8A3 8E39 29E3 E2E8 8CEC

--
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] Re: best way of handling source installs

2011-03-01 Thread Nigel Kersten
On Tue, Mar 1, 2011 at 5:40 PM, russell.fulton  wrote:

> I am managing a fairly small set of machines (network security
> monitors) and some of these packages are being installed on just two
> or three boxes so spending a lot of time building packages is simply
> not worth it.  The apps  are also updated fairly frequently and I need
> to stay on the bleeding edge :(

I'm firmly of the opinion that time you invest now in automating
package creation as much as possible will repay itself very quickly
and be of immense value over time.

I think this is even more important when you have a lot of churn.
Simply being able to flip between versions of the packages quickly
will surely save an awful lot of time.

-- 
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: Regression in 2.6.5

2011-03-01 Thread Nigel Kersten
On Tue, Mar 1, 2011 at 2:14 PM, Nigel Kersten  wrote:
> bcc:puppet-dev
>
> Please follow the general status of this issue on the -users list.
> There will be a follow-up email to the -dev list about how best to
> resolve the remaining issue.
>
>
> On Tue, Mar 1, 2011 at 7:53 AM, Nigel Kersten  wrote:
>> http://projects.puppetlabs.com/issues/6443
>>
>> We have a regression that causes spurious errors and log messages due
>> to auditing being auto-enabled incorrectly in some situations.
>>
>> Do not upgrade to 2.6.5.
>>
>> We will be resolving this issue and providing further information as
>> we run through testing.
>>
>
> I believe this is an accurate characterization of the issue:
>
> Overview:
>
> In versions of Puppet from 2.6.0 to 2.6.4, files being managed via a
> source => attribute caused incorrect symbols to be written out to the
> audit log, even when auditing was not enabled.
>
> In Puppet 2.6.5 we accidentally enabled auditing for all files managed
> via the source attribute. At the same time we fixed the bug that
> caused incorrect symbols to be written out.
>
> As we're moving from incorrect_value -> correct_value, a notification
> is fired due to the audit value change. Note that this was the design
> goal of audit, to allow you to send events for attribute changes that
> you are not managing via Puppet.
>
> We have a patch for the accidental enabling of auditing that resolves
> that issue. However, if you are deliberately auditing, you will still
> get the spurious notify the first time you run with that patch.
>
> We're currently investigating the best way to resolve the single
> spurious notify.  Gory details follow.


The situation is significantly better than my outline above stated.

Correction:

We were only writing out the :absent symbol when the source-managed
file *really* was absent, not when content was modified.

Given that we have a fix we're currently testing for the 2.6.5 bug
where all source-managed files had auditing turned on, users upgrading
from 2.6.{0,1,2,3,4} to 2.6.6 will only be affected if:

* The local file was absent, being managed, and not being audited in
2.6.x prior to 2.6.5.

* The user updates to 2.6.6 at the same time as they turn on auditing
for the given resource.

The impact for them will be one extra notify event for such a file,
and then life will return to normal.

Note that if you did upgrade to 2.6.5, you'll have dealt with the cost
of the extra notify event already.

-- 
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] networkinterface type proposal

2011-03-01 Thread Scott Smith
Probably better to use network::interface, so you can add support for other
network resources.

Also:

https://github.com/ohlol/puppet-network

Old, out of date, not complete, but it's a start.

On Tue, Mar 1, 2011 at 5:50 PM, Eric Sorenson  wrote:

> Hi - I've searched around and haven't found anyone who's implemented a
> type+provider for configuring network interfaces in puppet.  Does anyone
> have such a thing already running that's just not on forge / github? I found
> some prior art (aside from the old 'interface' type which was deleted in
> 0.24) but most people seem to use definitions + templates which isn't a good
> "first class citizen" solution.
>
> I and other puppet hackers around my organization worked up a strawman
> proposal that we thought would be a reasonable interface and I figured I
> would float it by the list. Obviously it's a complicated beast but this
> would be great functionality to have in puppet. I'll update
> https://projects.puppetlabs.com/issues/3153 with the results of the
> discussion here and maybe we can get some traction on it.
>
>  - Eric Sorenson - N37 17.255 W121 55.738  - http://twitter.com/ahpook  -
>
>
> ### basic examples
> networkinterface { "eth0":
>   ensure=> enabled,
>   bootproto => dhcp,# required for DHCP/BOOTP, optional for static
>   hwaddr=> "00:aa:bb:cc:dd:ee"
> }
>
> networkinterface { "eth0":
>   ensure  => "enabled",  # sets ONBOOT=true, causes ifup refresh
>   hwaddr  => "00:aa:bb:cc:dd:ee"
>   ipaddress   => "10.0.0.2",
>   netmask => "255.255.255.0",
>   gateway => "10.0.0.1",
> }
>
> ### vlan example
> networkinterface { "vlan201":
>   ensure  => "enabled",
>   ipaddress   => "10.0.0.3",
>   netmask => "255.255.255.0",
>   gateway => "10.0.0.1",
>   vlantag => "201",   # 1 through 4096
>   physicaldev => "eth0",  # parent device, need this or hwaddr
>   # not too happy about this, but IMO the yum 'enablerepo' example
>   # shows there is a need to pass arbitrary provider-specific args
>   # i.e. the RH sysvinit provider would turn " " to \n and
>   # drop these into the network-scripts file.
>   # This particular option enables '/dev/vlan201' instead of
> '/dev/eth0.201'
>   extra_opts   => "VLAN_NAME_TYPE=VLAN_PLUS_VID_NO_PAD PEERDNS=NO
> PEERNTP=NO"
> }
>
> ### bonding example - master interface with two slaves
> networkinterface { "bond0":
>   ensure  => "enabled",
>   ipaddress   => "10.0.0.4",
>   netmask => "255.255.255.0",
>   gateway => "10.0.0.1",
>   # rather than support a crapload of attributes like "bond_mode =>
> active_backup",
>   # use the new-style BONDING_OPTS variable
>   extra_opts => "BONDING_OPTS='mode=active-backup arp_interval=60
> arp_ip_target=192.168.1.254'"
> }
> # slave interfaces for the bond
> networkinterface { "eth0":
>   ensure  => enabled,
>   bond_master => bond0,
> }
> networkinterface  { "eth1":
>   ensure  => enabled,
>   bond_master => bond0,
> }
>
> ### ip aliases
> # this requires a unique namevar so you couldn't model solaris
> # or iproute2-style secondary addresses without composite keys
> networkinterface { "bge0:1":
>   ensure=> enabled,
>   ipaddress => "10.0.0.5",
>   netmask   => "255.255.255.0",
>   gateway   => "10.0.0.1",
> }
>
>
>
>  --
> 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] networkinterface type proposal

2011-03-01 Thread Eric Sorenson
Hi - I've searched around and haven't found anyone who's implemented a 
type+provider for configuring network interfaces in puppet.  Does anyone have 
such a thing already running that's just not on forge / github? I found some 
prior art (aside from the old 'interface' type which was deleted in 0.24) but 
most people seem to use definitions + templates which isn't a good "first class 
citizen" solution.  

I and other puppet hackers around my organization worked up a strawman proposal 
that we thought would be a reasonable interface and I figured I would float it 
by the list. Obviously it's a complicated beast but this would be great 
functionality to have in puppet. I'll update   
https://projects.puppetlabs.com/issues/3153 with the results of the discussion 
here and maybe we can get some traction on it.

 - Eric Sorenson - N37 17.255 W121 55.738  - http://twitter.com/ahpook  -


### basic examples
networkinterface { "eth0":
  ensure=> enabled,
  bootproto => dhcp,# required for DHCP/BOOTP, optional for static
  hwaddr=> "00:aa:bb:cc:dd:ee"
}

networkinterface { "eth0":
  ensure  => "enabled",  # sets ONBOOT=true, causes ifup refresh
  hwaddr  => "00:aa:bb:cc:dd:ee"
  ipaddress   => "10.0.0.2",
  netmask => "255.255.255.0",
  gateway => "10.0.0.1",
}

### vlan example 
networkinterface { "vlan201":
  ensure  => "enabled",
  ipaddress   => "10.0.0.3",
  netmask => "255.255.255.0",
  gateway => "10.0.0.1",
  vlantag => "201",   # 1 through 4096
  physicaldev => "eth0",  # parent device, need this or hwaddr
  # not too happy about this, but IMO the yum 'enablerepo' example 
  # shows there is a need to pass arbitrary provider-specific args
  # i.e. the RH sysvinit provider would turn " " to \n and
  # drop these into the network-scripts file.
  # This particular option enables '/dev/vlan201' instead of '/dev/eth0.201'
  extra_opts   => "VLAN_NAME_TYPE=VLAN_PLUS_VID_NO_PAD PEERDNS=NO PEERNTP=NO"
}

### bonding example - master interface with two slaves 
networkinterface { "bond0":
  ensure  => "enabled",
  ipaddress   => "10.0.0.4",
  netmask => "255.255.255.0",
  gateway => "10.0.0.1",
  # rather than support a crapload of attributes like "bond_mode => 
active_backup",
  # use the new-style BONDING_OPTS variable
  extra_opts => "BONDING_OPTS='mode=active-backup arp_interval=60 
arp_ip_target=192.168.1.254'"
}
# slave interfaces for the bond
networkinterface { "eth0":
  ensure  => enabled,
  bond_master => bond0,
}
networkinterface  { "eth1":
  ensure  => enabled,
  bond_master => bond0,
}

### ip aliases 
# this requires a unique namevar so you couldn't model solaris
# or iproute2-style secondary addresses without composite keys
networkinterface { "bge0:1":
  ensure=> enabled,
  ipaddress => "10.0.0.5",
  netmask   => "255.255.255.0",
  gateway   => "10.0.0.1",
}



-- 
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: best way of handling source installs

2011-03-01 Thread russell.fulton

Thanks for the responses :)  I'll respond to all three here

OS is RedHat Enterprise :(   not my first choice.

>
> Have you thought about solutions like checkinstall, which allow you to
> create packages for applications like that easily?
> Seehttp://www.asic-linux.com.mx/~izto/checkinstall/
>

This looks nice.  If it can create rpms from a standard install that
would work for me -- I would still have to get them into the local
channels which is a real pain. If  one can stash rpms somewhere on the
puppet server and have it install them rather than having yum do the
install that would be even better.

A little background:

I am managing a fairly small set of machines (network security
monitors) and some of these packages are being installed on just two
or three boxes so spending a lot of time building packages is simply
not worth it.  The apps  are also updated fairly frequently and I need
to stay on the bleeding edge :(

That is why I was looking at doing something simple.

Puppet has been really great tool for this and allows me to move apps
around between sensors or build new sensors in a really straight
forward way...

Russell



-- 
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] Updating all packages with Puppet

2011-03-01 Thread Giovanni Bordello

Hi folks,

I'm very new to Puppet and perhaps what I'm trying to do is a trivial 
thing. No so much for me though..


I use Puppet 2.6 to manage a bunch of CentOS 5 servers. A handful of web 
servers, a handful of app-tier servers and a couple of other hosts - 
ldap, mail, etc.


I've got a CentOS 5.5 repo on the Puppet/Kickstart server and install 
everything from there, obviously a slightly different package sets for 
each type of server.


Now the question: can I use Puppet to fetch all the latest updates from 
the updates repo? I know how to configure the yum repo with Puppet but 
don't know how to trigger the update?


Ideally something like:
ensure => no-more-package-updates-available
should do the trick :)

How can I do that?

Thx!

GiBo

--
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] best way of handling source installs

2011-03-01 Thread Larry Vaden
On Tue, Mar 1, 2011 at 5:34 PM, russell.fulton  wrote:
> Hi
>
> I have a number of apps that need to be installed from tarballs --
> simple tar -zxf; configure;  make install...
> with a possible extra parameter to configure (usually prefix).
>
> There are no prepackaged versions of these available as they are very
> specialised application (security related).

For which OS?

regards/va...@texoma.net

-- 
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] best way of handling source installs

2011-03-01 Thread Daniel Hahler
Am 02.03.2011 00:34, schrieb russell.fulton:

> I have a number of apps that need to be installed from tarballs --
> simple tar -zxf; configure;  make install...
> with a possible extra parameter to configure (usually prefix).
> 
> There are no prepackaged versions of these available as they are very
> specialised application (security related).
> 
> I can handle these with an exec or series of execs in a define but I
> wondered if there was a better way or if someone else has already dome
> something along these lines.

Have you thought about solutions like checkinstall, which allow you to
create packages for applications like that easily?
See http://www.asic-linux.com.mx/~izto/checkinstall/


Cheers,
Daniel

-- 
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] best way of handling source installs

2011-03-01 Thread Brian Gupta
Typically I think people precompile and make custom OS packages. -Brian

On Tue, Mar 1, 2011 at 6:34 PM, russell.fulton wrote:

> Hi
>
> I have a number of apps that need to be installed from tarballs --
> simple tar -zxf; configure;  make install...
> with a possible extra parameter to configure (usually prefix).
>
> There are no prepackaged versions of these available as they are very
> specialised application (security related).
>
> I can handle these with an exec or series of execs in a define but I
> wondered if there was a better way or if someone else has already dome
> something along these lines.
>
> I did try google but I could not narrow the search down enough to be
> useful...
>
> Russell
>
> --
> 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] External node script flagging errors.

2011-03-01 Thread Douglas Garstang
What is the best way to have an external node script that encounters an
error fail? What should it do? Should it return a non zero exit code to the
OS? (of course, this doesn't seem to be documented anywhere). I just tested
the situation where my exteral node script returned 1 to the OS and printed
error on the screen, and when that node runs puppet, it seems to run just
fine. Maybe it's caching something. However, it would be nice to have the
client error out in such a way that I know there was a problem with the
external node script loading it's info. Anyone?

Doug

-- 
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] best way of handling source installs

2011-03-01 Thread russell.fulton
Hi

I have a number of apps that need to be installed from tarballs --
simple tar -zxf; configure;  make install...
with a possible extra parameter to configure (usually prefix).

There are no prepackaged versions of these available as they are very
specialised application (security related).

I can handle these with an exec or series of execs in a define but I
wondered if there was a better way or if someone else has already dome
something along these lines.

I did try google but I could not narrow the search down enough to be
useful...

Russell

-- 
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: mysql module is not found

2011-03-01 Thread Atha Kouroussis
Hi Tim,
is there a mysql class in your modules/mysql/init.pp manifest?

Cheers,
Atha
On Tuesday, March 1, 2011 at 7:28 PM, Tim Dunphy wrote: 
> hello list! could someone please offer an opinion as to why the mysql
> module I am attempting to include is not found?
> 
> ## error
> 
> [root@pdb1 ~]# puppetd --test
> err: Could not retrieve catalog from remote server: Error 400 on
> SERVER: Could not find class mysql at
> /etc/puppet/manifests/nodes.pp:25 on node pdb1.acadaca.net
> warning: Not using cache on failed catalog
> err: Could not retrieve catalog; skipping run
> 
> 
> 
> 
> ## nodes.pp
> 
> 
> 
> node 'pclient.acadaca.net' {
>  include basefiles
>  include baseapps
>  }
> 
> node 'pclient2.acadaca.net' {
>  include basefiles
>  include baseapps
>  include mysql
>  }
> 
> node 'pclient4.acadaca.net' {
> 
>  include basefiles
>  include baseapps
>  }
> node 'mclient.acadaca.net'{
>  include basefiles
>  include baseapps
>  include webserver
>  }
> node 'pdb1.acadaca.net' {
>  include basefiles
>  include baseapps
>  include mysql
>  include postfix
>  }
> 
> node 'kromep1.acadaca.net' {
>  include basefiles
>  include baseapps
>  include webserver
>  }
> 
> ## mysql module exists
> 
> [root@puppet ~]# ls -l /etc/puppet/modules/mysql/manifests/init.pp
> -rw-r--r-- 1 root root 396 Feb 28 18:03
> /etc/puppet/modules/mysql/manifests/init.pp
> 
> thank you kindly in advance! :)
> 
> -- 
> 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.
> 

-- 
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] Agent certificate name in a manifest on the master

2011-03-01 Thread Ben Hughes
On Tue, Mar 01, 2011 at 02:11:31PM -0800, Richard Crowley wrote:

> Is there a way to access the agent's certname as a variable?

Other than the ones listed at
http://docs.puppetlabs.com/guides/faq.html#are-there-variables-available-other-than-those-provided-by-facter
not really.

Could you expose the contents of /etc/certname via a simple Fact?

-- 
Ben Hughes || http://www.puppetlabs.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.



Re: [Puppet Users] mysql module is not found

2011-03-01 Thread Mark Stanislav
It's possible that your mysql class inside of that mysql module has broken 
syntax, generating that error.

-Mark

On Mar 1, 2011, at 5:28 PM, Tim Dunphy wrote:

> hello list! could someone please offer an opinion as to why the mysql
> module I am attempting to include is not found?
> 
> ## error
> 
> [root@pdb1 ~]# puppetd --test
> err: Could not retrieve catalog from remote server: Error 400 on
> SERVER: Could not find class mysql at
> /etc/puppet/manifests/nodes.pp:25 on node pdb1.acadaca.net
> warning: Not using cache on failed catalog
> err: Could not retrieve catalog; skipping run
> 
> 
> 
> 
> ## nodes.pp
> 
> 
> 
> node 'pclient.acadaca.net' {
>include basefiles
>include baseapps
>   }
> 
> node 'pclient2.acadaca.net' {
>include basefiles
>include baseapps
>include mysql
>   }
> 
> node 'pclient4.acadaca.net' {
> 
>   include basefiles
>   include baseapps
>  }
> node 'mclient.acadaca.net'{
>include basefiles
>include baseapps
>include webserver
>   }
> node 'pdb1.acadaca.net'{
>include basefiles
>include baseapps
>include mysql
>include postfix
>   }
> 
> node 'kromep1.acadaca.net' {
>  include basefiles
>  include baseapps
>  include webserver
>}
> 
> ## mysql module exists
> 
> [root@puppet ~]# ls -l /etc/puppet/modules/mysql/manifests/init.pp
> -rw-r--r-- 1 root root 396 Feb 28 18:03
> /etc/puppet/modules/mysql/manifests/init.pp
> 
> thank you kindly in advance! :)
> 
> -- 
> 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.
> 

-- 
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: Agent certificate name in a manifest on the master

2011-03-01 Thread Richard Crowley

> Is there a way to access the agent's certname as a variable?
> 

Volcane suggested on IRC:

FACTER_certname=$(cat /etc/puppet/certname) puppet agent ... --certname=$(cat 
/etc/puppet/certname)

which works fine. I turned it into a Ruby fact:

require 'facter'
require 'puppet'

Facter.add :certname do
setcode do
Puppet[:certname]
end
end


Thanks for the help, R.I. 

-- 
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] mysql module is not found

2011-03-01 Thread Tim Dunphy
hello list! could someone please offer an opinion as to why the mysql
module I am attempting to include is not found?

## error

[root@pdb1 ~]# puppetd --test
err: Could not retrieve catalog from remote server: Error 400 on
SERVER: Could not find class mysql at
/etc/puppet/manifests/nodes.pp:25 on node pdb1.acadaca.net
warning: Not using cache on failed catalog
err: Could not retrieve catalog; skipping run




## nodes.pp



node 'pclient.acadaca.net' {
include basefiles
include baseapps
   }

node 'pclient2.acadaca.net' {
include basefiles
include baseapps
include mysql
   }

node 'pclient4.acadaca.net' {

   include basefiles
   include baseapps
  }
node 'mclient.acadaca.net'{
include basefiles
include baseapps
include webserver
   }
node 'pdb1.acadaca.net'{
include basefiles
include baseapps
include mysql
include postfix
   }

node 'kromep1.acadaca.net' {
  include basefiles
  include baseapps
  include webserver
}

## mysql module exists

[root@puppet ~]# ls -l /etc/puppet/modules/mysql/manifests/init.pp
-rw-r--r-- 1 root root 396 Feb 28 18:03
/etc/puppet/modules/mysql/manifests/init.pp

thank you kindly in advance! :)

-- 
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.



Re: [Puppet Users] Puppet Parse Trees (for a lint checker)

2011-03-01 Thread Henrik Lindberg
An alternative is to use the Geppetto tool which parses puppet  
manifests into a model.
There is a Java API for this model. It can also be serialized in other  
formats that allow processing in other languages.


I am interested in what "lint rules" you had in mind, maybe we could  
collaborate to get them into geppetto?


More info here: https://github.com/cloudsmith/geppetto

Regards
- henrik

On Mar 1, 2011, at 12:14 PM, Nick Moffitt wrote:


I mean to write a lint checker for my manifests, but I am not a ruby
developer to any degree of proficiency.  What I think I would like is
some kind of serialization of the AST for a given .pp file, which I  
can

then import into my own Python code and analyze for undesirable
patterns.

Is there any way to get a dump or serialization or marshalling of the
parse tree for a given .pp file?  Or is there already some
easily-modifiable lint checker elsewhere?

--
A: No.
Q: Should I put my reply above quoted text?

--
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 API?

2011-03-01 Thread Luis Miguel Silva
Exactly what i was looking for, thanks!

On Tue, Mar 1, 2011 at 3:09 PM, Jacob Helwig  wrote:
> On Tue, 01 Mar 2011 15:06:13 -0700, Luis Miguel Silva wrote:
>>
>> Dear all,
>>
>> Is there an api we can use to externally add / remove or update
>> classes in Puppet or add them to nodes?
>> Or is changing config files / running puppet commands the only way to
>> interface with Puppet?
>>
>> Thank you,
>> Luis
>>
>
> Sounds like you want to look into external node classification.
>
> http://docs.puppetlabs.com/guides/external_nodes.html
>
> --
> Jacob Helwig
>
> -BEGIN PGP SIGNATURE-
> Version: GnuPG v1.4.10 (GNU/Linux)
>
> iQGcBAEBAgAGBQJNbW6nAAoJEHJabXWGiqEBXD4L/RiiHnkKj7ILp+j5/nUJte7g
> +lzb6mxYTFQdV0hROp5SbVEJMaSVoFHLrQBGmQj+hIryGqbnV4TaBsxc07cqrlqM
> FqNQenD9WYSJdt38i5qQ6OSXKCJC0D8z9HnkUer1s/OZjauNEQ9OIbGLgrdYx2VF
> mY/h8qTLZs6UOBydF4Po6+HrpVN12xkYpXS/UkfNdulzSfeXv4Q7ptOrSurQQVXz
> X3aw8yCHk7fvdQCM78Rz1RcPHDkhnnF+tR9gDRtO1wgutBrAcC1qN7LiUSKFE0Gw
> 8Emv2YMx7hCqd4CzU5/fo+NpX8yTPhLY+VsdlJmsrks6FXuJxtnFG6NV8U97iiKC
> dNzCXrTSVlH4mVNGSetNLujY3E1Rv2UUFCSI6S4HMCt4fV89NQ2hAZaExlzZ5LiL
> cjtLOpqnh93yNixFu8jt8v9TLdw9b9o0UPnENrLVXeoD36JTEfjfFZQnK5JN3nm4
> FWL80R1oRiYsCPWa80S3qFsDVxjqSa95/MhMZaR7fg==
> =pnvm
> -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+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.



[Puppet Users] Re: Regression in 2.6.5

2011-03-01 Thread Nigel Kersten
bcc:puppet-dev

Please follow the general status of this issue on the -users list.
There will be a follow-up email to the -dev list about how best to
resolve the remaining issue.


On Tue, Mar 1, 2011 at 7:53 AM, Nigel Kersten  wrote:
> http://projects.puppetlabs.com/issues/6443
>
> We have a regression that causes spurious errors and log messages due
> to auditing being auto-enabled incorrectly in some situations.
>
> Do not upgrade to 2.6.5.
>
> We will be resolving this issue and providing further information as
> we run through testing.
>

I believe this is an accurate characterization of the issue:

Overview:

In versions of Puppet from 2.6.0 to 2.6.4, files being managed via a
source => attribute caused incorrect symbols to be written out to the
audit log, even when auditing was not enabled.

In Puppet 2.6.5 we accidentally enabled auditing for all files managed
via the source attribute. At the same time we fixed the bug that
caused incorrect symbols to be written out.

As we're moving from incorrect_value -> correct_value, a notification
is fired due to the audit value change. Note that this was the design
goal of audit, to allow you to send events for attribute changes that
you are not managing via Puppet.

We have a patch for the accidental enabling of auditing that resolves
that issue. However, if you are deliberately auditing, you will still
get the spurious notify the first time you run with that patch.

We're currently investigating the best way to resolve the single
spurious notify.  Gory details follow.


Gory Details:

Glossary:

2.6.e3dfe41 means commit e3dfe41ce7da108fc345e58c7df8c1576ea951a0

https://github.com/puppetlabs/puppet/commit/e3dfe41ce7da108fc345e58c7df8c1576ea951a0

This is the commit that resolves the primary issue with source-managed
files incorrectly creating entries in the audit log, state.yaml.


Description:

On 2.6.5, we are auditing by default for all source managed files.

If you were on 2.6.4 (and probably earlier) and
  if you managed a file with the source parameter and
  if the local file was absent or content differed, we wrote out:

!ruby/sym type: !ruby/sym absent
!ruby/sym owner: !ruby/sym absent

  to state.yaml, even if you weren't auditing.

  Also, if you managed a file recursively with source, we also wrote out:

!ruby/sym content: !ruby/sym absent

  As of 2.6.5, when auditing all attributes,
  we write out the correct value:

!ruby/sym type: file
!ruby/sym owner: 1000
!ruby/sym content:

  This is a value change for the attribute being audited, and will
thus send appropriate events.

Implications:

  If you move from 2.6.4 -> 2.6.5 and
  you have a file resource with a notify parameter,
  you will send a single spurious notify.

  If you move from 2.6.4 -> 2.6.e3dfe41 and
  you are auditing file or owner (or content with a recursive file),
  you will send a single spurious notify.

  If you move from 2.6.4 -> 2.6.e3dfe41,
  and are not auditing type or owner (or content with a recursive file),
  you will never have the :absent entries removed from state.yaml.


Resolution:

Assuming that 2.6.6 will be equal to 2.6.e3dfe41, the only remaining
issue is the single spurious notify sent for files that have the
relevant attributes marked for audit.

This will only affect users who have explicitly turned on audit for
those attributes.

We have three potential workarounds:

a) Tell users to remove state.yaml and lose all audit history
b) Provide a one-off script to clean up incorrect entries from state.yaml
c) Fix it in the code.

I'll start a new thread about option c) to the -dev list in a few minutes.

-- 
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] Agent certificate name in a manifest on the master

2011-03-01 Thread Richard Crowley
Each of my EC2 instances run Puppet as `puppet agent ... --certname=$(cat 
/etc/puppet/certname)`, which works very well to get each instance to the 
correct node stanza in nodes.pp. 

I would like to use this certname value in the default node stanza thus:

node default {
@@nagios_host { "$settings::certname": }
}

Unsurprisingly, $settings::certname is the master's certname. $certname is 
empty.

Is there a way to access the agent's certname as a variable?

Thanks,

Richard 

-- 
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 API?

2011-03-01 Thread Jacob Helwig
On Tue, 01 Mar 2011 15:06:13 -0700, Luis Miguel Silva wrote:
> 
> Dear all,
> 
> Is there an api we can use to externally add / remove or update
> classes in Puppet or add them to nodes?
> Or is changing config files / running puppet commands the only way to
> interface with Puppet?
> 
> Thank you,
> Luis
> 

Sounds like you want to look into external node classification.

http://docs.puppetlabs.com/guides/external_nodes.html

-- 
Jacob Helwig


signature.asc
Description: Digital signature


[Puppet Users] Puppet API?

2011-03-01 Thread Luis Miguel Silva
Dear all,

Is there an api we can use to externally add / remove or update
classes in Puppet or add them to nodes?
Or is changing config files / running puppet commands the only way to
interface with Puppet?

Thank you,
Luis

-- 
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] Re: Puppet features

2011-03-01 Thread Luis Miguel Silva
Thank you!

On Tue, Mar 1, 2011 at 2:48 PM, James Turnbull  wrote:
> Luis Miguel Silva wrote:
>> Thanks!
>>
>> Has anybody seen docs / information on using, for instance, xCAT or
>> Cobbler with Puppet?
>>
>
> Cobbler:
>
> https://fedorahosted.org/cobbler/wiki/UsingCobblerWithConfigManagementSystem
> http://people.byte-code.com/fcrippa/wp-content/uploads/2008/06/fcrippa_large-scale-env.pdf
> http://projects.puppetlabs.com/projects/puppet/wiki/Bootstrapping_With_Puppet
>
> XCat:
>
> http://www.nodeofcrash.com/?p=353
>
> I know of some other work happening around XCat but not public information.
>
> Regards
>
> James Turnbull
>
> --
> James Turnbull
> Puppet Labs
> 1-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+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] Re: Puppet features

2011-03-01 Thread James Turnbull
Luis Miguel Silva wrote:
> Thanks!
> 
> Has anybody seen docs / information on using, for instance, xCAT or
> Cobbler with Puppet?
> 

Cobbler:

https://fedorahosted.org/cobbler/wiki/UsingCobblerWithConfigManagementSystem
http://people.byte-code.com/fcrippa/wp-content/uploads/2008/06/fcrippa_large-scale-env.pdf
http://projects.puppetlabs.com/projects/puppet/wiki/Bootstrapping_With_Puppet

XCat:

http://www.nodeofcrash.com/?p=353

I know of some other work happening around XCat but not public information.

Regards

James Turnbull

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



[Puppet Users] Re: [Puppet-dev] RFC: Database-backed inventory service plan

2011-03-01 Thread Matt Robinson
On Wed, Feb 23, 2011 at 2:04 PM, Nick Lewis  wrote:
> Our current plan for the inventory service is to provide active_record
> termini for the "facts" and "inventory" indirections. This is to support
> fast look-up of facts, and search of nodes based on their facts. However,
> there are already tables for facts, used for storeconfigs, along with an
> active_record terminus for facts.

On Fri, Feb 25, 2011 at 1:55 PM, Matt Robinson  wrote:
> I propose that we don't share tables, and the inventory service (and
> any other future service that needs a database backend) has its own
> set of namespaced tables (servicename_tablename).

Thanks to those who gave feedback.  The general consensus I've reached
talking offline to other devs (Jacob, Nick, Paul) is that we should
use separate tables for the inventory service from the ones that
storeconfigs currently uses.

The question of whether to normalize or denormalize (which I didn't
mean to have be the focus of this discussion at all) can be left up to
the devs who end up working on the implementation, taking the
discussion from this thread into account.

Matt

-- 
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: External Nodes - Puppet 2.6.4

2011-03-01 Thread cyrus
Making some headway, I now have a work-around but would like to know
the real reason since my work around involves modifying the Puppet
code.

Here is the issue in: /usr/local/lib/ruby/site_ruby/1.8/puppet/util.rb

 # The idea here is to avoid IO#read whenever possible.
output_file="/dev/null"
error_file="/dev/null"
if ! arguments[:squelch]
  require "tempfile"
  output_file = Tempfile.new("puppet")
  error_file=output_file if arguments[:combine]
end

What appears to be happening is that the output_file variable gets
assigned nothing. So farther down when the following is called:

$stdout.reopen(output_file)

It errors with an ArgumentError.

To get around this I just changed to $stdout.reopen("/dev/null").


On Mar 1, 11:44 am, cyrus  wrote:
> More info. It appears it has to do with the Ruby I compiled. I am
> running RHE5 which only comes with Ruby 1.8.5. Since I was
> experiencing issues with Store Configs I wanted to update to 1.8.7 so
> I could use the latest ActiveRecord, etc. Therefore I download the
> Ruby 1.8.7 source and compile and installed into /usr/local/bin. If I
> run using that ruby interpreter I get the error below. If I switch
> back to the RPM based one in /usr/bin it runs.
>
> Is there some add-on I need for Ruby? Does Puppet not work with 1.8.7?
>
> On Mar 1, 10:40 am, cyrus  wrote:
>
> > I have some more info.
>
> > notice: Starting Puppet master version 2.6.5
> > info: mount[files]: allowing * access
> > debug: No modules mount given; autocreating with default permissions
> > debug: No plugins mount given; autocreating with default permissions
> > debug: Finishing transaction 23799637825120
> > info: access[^/catalog/([^/]+)$]: allowing 'method' find
> > info: access[^/catalog/([^/]+)$]: allowing $1 access
> > info: access[/certificate_revocation_list/ca]: allowing 'method' find
> > info: access[/certificate_revocation_list/ca]: allowing * access
> > info: access[/report]: allowing 'method' save
> > info: access[/report]: allowing * access
> > info: access[/file]: allowing * access
> > info: access[/certificate/ca]: adding authentication no
> > info: access[/certificate/ca]: allowing 'method' find
> > info: access[/certificate/ca]: allowing * access
> > info: access[/certificate/]: adding authentication no
> > info: access[/certificate/]: allowing 'method' find
> > info: access[/certificate/]: allowing * access
> > info: access[/certificate_request]: adding authentication no
> > info: access[/certificate_request]: allowing 'method' find
> > info: access[/certificate_request]: allowing 'method' save
> > info: access[/certificate_request]: allowing * access
> > info: access[/]: adding authentication any
> > info: Inserting default '/status'(auth) acl because none where found
> > in '/puppet/development/auth.conf'
> > info: mount[files]: allowing * access
> > info: Expiring the node cache of lv1764p.xxx.com
> > info: Not using expired node for lv1764p.xx.com from cache;
> > expired at Tue Mar 01 10:36:31 -0700 2011
> > debug: Executing '/usr/local/bin/external-node lv1764p.x.com'
> > wrong number of arguments (2 for 1)
> > err: Failed to find lv1764p.xx.com via exec: Execution of '/usr/
> > local/bin/external-node lv1764p.x.com' returned 1:
> > err: Could not find node 'lv1764p.xx.com'; cannot compile
>
> > Notice the wrong number of arguments (2 for 1) message.
>
> > On Mar 1, 8:59 am, cyrus  wrote:
>
> > > Yes. The file is executable by everyone. Plus this worked prior to
> > > installing Ruby 1.8.7 and Puppet 2.6.4.
>
> > > On Feb 28, 3:40 pm, Nan Liu  wrote:
>
> > > > On Mon, Feb 28, 2011 at 3:36 PM, cyrus  wrote:
> > > > > I recently moved to Puppet 2.6.4. Prior to this I was using the
> > > > > available RPMS for RHEL which were 2.6.3. The reason I moved to the
> > > > > source 2.6.4 is that I wanted to update to Ruby 1.8.7 to see if that
> > > > > corrected the errors I was getting when trying to use Store Configs.
>
> > > > > Anyways, I compiled Ruby 1.8.7 from source into /usr/local/bin. I then
> > > > > installed Facter and Puppet into the same prefix.
>
> > > > > However now I can not get external nodes to work. On the client it
> > > > > gives:
>
> > > > > err: Could not retrieve catalog from remote server: Error 400 on
> > > > > SERVER: Could not find node 'lv00052p.encana.com'; cannot compile
>
> > > > > From the log I see:
>
> > > > > Feb 28 15:29:55 ls1313p puppet-master[20112]: Executing '/usr/bin/
> > > > > cobbler-ext-nodes lv00052p.encana.com'
> > > > > Feb 28 15:29:55 ls1313p puppet-master[20112]: Failed to find
> > > > > lv00052p.encana.com via exec: Execution of '/usr/bin/cobbler-ext-nodes
> > > > > lv00052p.encana.com' returned 1:
> > > > > Feb 28 15:29:55 ls1313p puppet-master[20112]: Could not find node
> > > > > 'lv00052p.encana.com'; cannot compile
>
> > > > > However, if I run
>
> > > > > /usr/bin/cobbler-ext-nodes lv00052p.encana.com
>
> > > > Can you execute this as the puppet user? If you run passenger,

Re: [Puppet Users] Re: Puppet features

2011-03-01 Thread Luis Miguel Silva
Thanks!

Has anybody seen docs / information on using, for instance, xCAT or
Cobbler with Puppet?

Thank you,
Luis

On Tue, Mar 1, 2011 at 11:54 AM, Disconnect  wrote:
> As far as guis and provisioning, those are covered by Foreman (under heavy
> development at http://theforeman.org/)
>
> (It doesn't do class building either, afaik nothing does right now.)
>
> On Tue, Mar 1, 2011 at 1:28 PM, Luis Miguel Silva
>  wrote:
>>
>> Thank you so much Luke, that was very helpful!
>>
>> Luis
>>
>> On Tue, Mar 1, 2011 at 1:52 AM, luke.bigum 
>> wrote:
>> > On Feb 28, 7:50 pm, Luis Miguel Silva
>> >  wrote:
>> >> Dear all,
>> >>
>> >> I'm a software integrator and i'm currently evaluating Puppet to
>> >> understand how we can potentially integrate our products with it.
>> >> I've been reading documentation on it and i'm currently installing a
>> >> Puppet system but i have some questions that i was hoping someone
>> >> could answer?
>> >>
>> >> a) In this page, it says that Puppet Enterprise supports provisioning
>> >> but the documentation i've seen so far only shows the maintenance
>> >> aspects of
>> >> Puppet?http://www.puppetlabs.com/puppet/puppet-enterprise/faq/
>> >> a.1) does Puppet do provisioning?
>> >
>> > Not in the sense that I think you're thinking of. You can't PXE boot
>> > and kickstart a server with Puppet - it's not a replacement for
>> > Cobbler. However, depending on your definition of provisioning, if you
>> > had a single server image that just had Puppet on it, from there you
>> > could continue it's installation with Puppet into some server type you
>> > use Puppet to describe.
>> >
>> >> b) Also, i've seen references to
>> >> Windows:http://docs.puppetlabs.com/guides/platforms.html
>> >> b.1) Does Puppet run on Windows?
>> >> b.2) Does it actually support doing maintenance on Windows OSes?
>> >
>> > Yes, but I believe this is no where near as functional as Puppet on
>> > *nix servers. Someone from Puppet Labs can probably give you a better
>> > idea of exactly what is and isn't possible with a Windows Puppet
>> > client.
>> >
>> >> c) I've read somewhere that Puppet has some sort of graphical
>> >> interface where you can edit the RAL classes and graphically insert
>> >> logic into them (i.e. dependencies and stuff)
>> >
>> > The closest thing to a GUI interface is Puppet Dashboard. IMO it's
>> > still maturing and more useful as a reporting tool at the moment. You
>> > can't write a module from Puppet Dashboard, so it's not a replacement
>> > for a text editor and the command line. If you use Puppet Dashboard as
>> > your external node classifier, then you've got some control over the
>> > behaviour of your nodes and classes, however you cannot "edit classes
>> > and graphically insert logic into them" from Dashboard.
>> >
>> >> c.1) Where can i find that interface?
>> >
>> > http://www.puppetlabs.com/puppet/related-projects/dashboard/
>> >
>> >> Thanks in advance,
>> >> Luis Silva
>> >
>> > Hope that helps,
>> >
>> > -Luke
>> >
>> > --
>> > 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.
>>
>
> --
> 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] Re: Puppet features

2011-03-01 Thread Disconnect
As far as guis and provisioning, those are covered by Foreman (under heavy
development at http://theforeman.org/)

(It doesn't do class building either, afaik nothing does right now.)

On Tue, Mar 1, 2011 at 1:28 PM, Luis Miguel Silva <
luismiguelferreirasi...@gmail.com> wrote:

> Thank you so much Luke, that was very helpful!
>
> Luis
>
> On Tue, Mar 1, 2011 at 1:52 AM, luke.bigum 
> wrote:
> > On Feb 28, 7:50 pm, Luis Miguel Silva
> >  wrote:
> >> Dear all,
> >>
> >> I'm a software integrator and i'm currently evaluating Puppet to
> >> understand how we can potentially integrate our products with it.
> >> I've been reading documentation on it and i'm currently installing a
> >> Puppet system but i have some questions that i was hoping someone
> >> could answer?
> >>
> >> a) In this page, it says that Puppet Enterprise supports provisioning
> >> but the documentation i've seen so far only shows the maintenance
> >> aspects of Puppet?
> http://www.puppetlabs.com/puppet/puppet-enterprise/faq/
> >> a.1) does Puppet do provisioning?
> >
> > Not in the sense that I think you're thinking of. You can't PXE boot
> > and kickstart a server with Puppet - it's not a replacement for
> > Cobbler. However, depending on your definition of provisioning, if you
> > had a single server image that just had Puppet on it, from there you
> > could continue it's installation with Puppet into some server type you
> > use Puppet to describe.
> >
> >> b) Also, i've seen references to Windows:
> http://docs.puppetlabs.com/guides/platforms.html
> >> b.1) Does Puppet run on Windows?
> >> b.2) Does it actually support doing maintenance on Windows OSes?
> >
> > Yes, but I believe this is no where near as functional as Puppet on
> > *nix servers. Someone from Puppet Labs can probably give you a better
> > idea of exactly what is and isn't possible with a Windows Puppet
> > client.
> >
> >> c) I've read somewhere that Puppet has some sort of graphical
> >> interface where you can edit the RAL classes and graphically insert
> >> logic into them (i.e. dependencies and stuff)
> >
> > The closest thing to a GUI interface is Puppet Dashboard. IMO it's
> > still maturing and more useful as a reporting tool at the moment. You
> > can't write a module from Puppet Dashboard, so it's not a replacement
> > for a text editor and the command line. If you use Puppet Dashboard as
> > your external node classifier, then you've got some control over the
> > behaviour of your nodes and classes, however you cannot "edit classes
> > and graphically insert logic into them" from Dashboard.
> >
> >> c.1) Where can i find that interface?
> >
> > http://www.puppetlabs.com/puppet/related-projects/dashboard/
> >
> >> Thanks in advance,
> >> Luis Silva
> >
> > Hope that helps,
> >
> > -Luke
> >
> > --
> > 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.
>
>

-- 
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: External Nodes - Puppet 2.6.4

2011-03-01 Thread cyrus
More info. It appears it has to do with the Ruby I compiled. I am
running RHE5 which only comes with Ruby 1.8.5. Since I was
experiencing issues with Store Configs I wanted to update to 1.8.7 so
I could use the latest ActiveRecord, etc. Therefore I download the
Ruby 1.8.7 source and compile and installed into /usr/local/bin. If I
run using that ruby interpreter I get the error below. If I switch
back to the RPM based one in /usr/bin it runs.

Is there some add-on I need for Ruby? Does Puppet not work with 1.8.7?

On Mar 1, 10:40 am, cyrus  wrote:
> I have some more info.
>
> notice: Starting Puppet master version 2.6.5
> info: mount[files]: allowing * access
> debug: No modules mount given; autocreating with default permissions
> debug: No plugins mount given; autocreating with default permissions
> debug: Finishing transaction 23799637825120
> info: access[^/catalog/([^/]+)$]: allowing 'method' find
> info: access[^/catalog/([^/]+)$]: allowing $1 access
> info: access[/certificate_revocation_list/ca]: allowing 'method' find
> info: access[/certificate_revocation_list/ca]: allowing * access
> info: access[/report]: allowing 'method' save
> info: access[/report]: allowing * access
> info: access[/file]: allowing * access
> info: access[/certificate/ca]: adding authentication no
> info: access[/certificate/ca]: allowing 'method' find
> info: access[/certificate/ca]: allowing * access
> info: access[/certificate/]: adding authentication no
> info: access[/certificate/]: allowing 'method' find
> info: access[/certificate/]: allowing * access
> info: access[/certificate_request]: adding authentication no
> info: access[/certificate_request]: allowing 'method' find
> info: access[/certificate_request]: allowing 'method' save
> info: access[/certificate_request]: allowing * access
> info: access[/]: adding authentication any
> info: Inserting default '/status'(auth) acl because none where found
> in '/puppet/development/auth.conf'
> info: mount[files]: allowing * access
> info: Expiring the node cache of lv1764p.xxx.com
> info: Not using expired node for lv1764p.xx.com from cache;
> expired at Tue Mar 01 10:36:31 -0700 2011
> debug: Executing '/usr/local/bin/external-node lv1764p.x.com'
> wrong number of arguments (2 for 1)
> err: Failed to find lv1764p.xx.com via exec: Execution of '/usr/
> local/bin/external-node lv1764p.x.com' returned 1:
> err: Could not find node 'lv1764p.xx.com'; cannot compile
>
> Notice the wrong number of arguments (2 for 1) message.
>
> On Mar 1, 8:59 am, cyrus  wrote:
>
> > Yes. The file is executable by everyone. Plus this worked prior to
> > installing Ruby 1.8.7 and Puppet 2.6.4.
>
> > On Feb 28, 3:40 pm, Nan Liu  wrote:
>
> > > On Mon, Feb 28, 2011 at 3:36 PM, cyrus  wrote:
> > > > I recently moved to Puppet 2.6.4. Prior to this I was using the
> > > > available RPMS for RHEL which were 2.6.3. The reason I moved to the
> > > > source 2.6.4 is that I wanted to update to Ruby 1.8.7 to see if that
> > > > corrected the errors I was getting when trying to use Store Configs.
>
> > > > Anyways, I compiled Ruby 1.8.7 from source into /usr/local/bin. I then
> > > > installed Facter and Puppet into the same prefix.
>
> > > > However now I can not get external nodes to work. On the client it
> > > > gives:
>
> > > > err: Could not retrieve catalog from remote server: Error 400 on
> > > > SERVER: Could not find node 'lv00052p.encana.com'; cannot compile
>
> > > > From the log I see:
>
> > > > Feb 28 15:29:55 ls1313p puppet-master[20112]: Executing '/usr/bin/
> > > > cobbler-ext-nodes lv00052p.encana.com'
> > > > Feb 28 15:29:55 ls1313p puppet-master[20112]: Failed to find
> > > > lv00052p.encana.com via exec: Execution of '/usr/bin/cobbler-ext-nodes
> > > > lv00052p.encana.com' returned 1:
> > > > Feb 28 15:29:55 ls1313p puppet-master[20112]: Could not find node
> > > > 'lv00052p.encana.com'; cannot compile
>
> > > > However, if I run
>
> > > > /usr/bin/cobbler-ext-nodes lv00052p.encana.com
>
> > > Can you execute this as the puppet user? If you run passenger, the
> > > owner of the config.ru file?
>
> > > Thanks,
>
> > > Nan
>
> > > > By hand it returns error code 0 and the following results:
>
> > > > classes: [dev_wes]
> > > > parameters: {env: dev, from_cobbler: 1, media_path: /ks/dist/dev-ks-
> > > > rhel-x86_64-server-5-u5,
> > > >  org: 1, passwd_mode: compat, redhat_management_type: 'off', stype:
> > > > wes}
>
> > > > This all worked prior to upgrading to 2.6.4.
>
> > > > Also, my config is:
>
> > > > [main]
> > > >    # The Puppet log directory.
> > > >    # The default value is '$vardir/log'.
> > > >    logdir = /var/log/puppet
>
> > > >    # Where Puppet PID files are kept.
> > > >    # The default value is '$vardir/run'.
> > > >    rundir = /var/run/puppet
>
> > > >    # Where SSL certificates are kept.
> > > >    # The default value is '$confdir/ssl'.
> > > >    ssldir = $vardir/ssl
>
> > > > [agent]
> > > >    # The file in which puppetd stores a list of

Re: [Puppet Users] Re: Puppet features

2011-03-01 Thread Luis Miguel Silva
Thank you so much Luke, that was very helpful!

Luis

On Tue, Mar 1, 2011 at 1:52 AM, luke.bigum  wrote:
> On Feb 28, 7:50 pm, Luis Miguel Silva
>  wrote:
>> Dear all,
>>
>> I'm a software integrator and i'm currently evaluating Puppet to
>> understand how we can potentially integrate our products with it.
>> I've been reading documentation on it and i'm currently installing a
>> Puppet system but i have some questions that i was hoping someone
>> could answer?
>>
>> a) In this page, it says that Puppet Enterprise supports provisioning
>> but the documentation i've seen so far only shows the maintenance
>> aspects of Puppet?http://www.puppetlabs.com/puppet/puppet-enterprise/faq/
>> a.1) does Puppet do provisioning?
>
> Not in the sense that I think you're thinking of. You can't PXE boot
> and kickstart a server with Puppet - it's not a replacement for
> Cobbler. However, depending on your definition of provisioning, if you
> had a single server image that just had Puppet on it, from there you
> could continue it's installation with Puppet into some server type you
> use Puppet to describe.
>
>> b) Also, i've seen references to 
>> Windows:http://docs.puppetlabs.com/guides/platforms.html
>> b.1) Does Puppet run on Windows?
>> b.2) Does it actually support doing maintenance on Windows OSes?
>
> Yes, but I believe this is no where near as functional as Puppet on
> *nix servers. Someone from Puppet Labs can probably give you a better
> idea of exactly what is and isn't possible with a Windows Puppet
> client.
>
>> c) I've read somewhere that Puppet has some sort of graphical
>> interface where you can edit the RAL classes and graphically insert
>> logic into them (i.e. dependencies and stuff)
>
> The closest thing to a GUI interface is Puppet Dashboard. IMO it's
> still maturing and more useful as a reporting tool at the moment. You
> can't write a module from Puppet Dashboard, so it's not a replacement
> for a text editor and the command line. If you use Puppet Dashboard as
> your external node classifier, then you've got some control over the
> behaviour of your nodes and classes, however you cannot "edit classes
> and graphically insert logic into them" from Dashboard.
>
>> c.1) Where can i find that interface?
>
> http://www.puppetlabs.com/puppet/related-projects/dashboard/
>
>> Thanks in advance,
>> Luis Silva
>
> Hope that helps,
>
> -Luke
>
> --
> 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:2

2011-03-01 Thread Mayank
OMG! This site is really cool!.. http://fionola.co.il/links.php?iboaolid=350

-- 
Today is tommorrow I was so worried about yesterday ...

-- 
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: External Nodes - Puppet 2.6.4

2011-03-01 Thread cyrus
I have some more info.

notice: Starting Puppet master version 2.6.5
info: mount[files]: allowing * access
debug: No modules mount given; autocreating with default permissions
debug: No plugins mount given; autocreating with default permissions
debug: Finishing transaction 23799637825120
info: access[^/catalog/([^/]+)$]: allowing 'method' find
info: access[^/catalog/([^/]+)$]: allowing $1 access
info: access[/certificate_revocation_list/ca]: allowing 'method' find
info: access[/certificate_revocation_list/ca]: allowing * access
info: access[/report]: allowing 'method' save
info: access[/report]: allowing * access
info: access[/file]: allowing * access
info: access[/certificate/ca]: adding authentication no
info: access[/certificate/ca]: allowing 'method' find
info: access[/certificate/ca]: allowing * access
info: access[/certificate/]: adding authentication no
info: access[/certificate/]: allowing 'method' find
info: access[/certificate/]: allowing * access
info: access[/certificate_request]: adding authentication no
info: access[/certificate_request]: allowing 'method' find
info: access[/certificate_request]: allowing 'method' save
info: access[/certificate_request]: allowing * access
info: access[/]: adding authentication any
info: Inserting default '/status'(auth) acl because none where found
in '/puppet/development/auth.conf'
info: mount[files]: allowing * access
info: Expiring the node cache of lv1764p.xxx.com
info: Not using expired node for lv1764p.xx.com from cache;
expired at Tue Mar 01 10:36:31 -0700 2011
debug: Executing '/usr/local/bin/external-node lv1764p.x.com'
wrong number of arguments (2 for 1)
err: Failed to find lv1764p.xx.com via exec: Execution of '/usr/
local/bin/external-node lv1764p.x.com' returned 1:
err: Could not find node 'lv1764p.xx.com'; cannot compile

Notice the wrong number of arguments (2 for 1) message.


On Mar 1, 8:59 am, cyrus  wrote:
> Yes. The file is executable by everyone. Plus this worked prior to
> installing Ruby 1.8.7 and Puppet 2.6.4.
>
> On Feb 28, 3:40 pm, Nan Liu  wrote:
>
> > On Mon, Feb 28, 2011 at 3:36 PM, cyrus  wrote:
> > > I recently moved to Puppet 2.6.4. Prior to this I was using the
> > > available RPMS for RHEL which were 2.6.3. The reason I moved to the
> > > source 2.6.4 is that I wanted to update to Ruby 1.8.7 to see if that
> > > corrected the errors I was getting when trying to use Store Configs.
>
> > > Anyways, I compiled Ruby 1.8.7 from source into /usr/local/bin. I then
> > > installed Facter and Puppet into the same prefix.
>
> > > However now I can not get external nodes to work. On the client it
> > > gives:
>
> > > err: Could not retrieve catalog from remote server: Error 400 on
> > > SERVER: Could not find node 'lv00052p.encana.com'; cannot compile
>
> > > From the log I see:
>
> > > Feb 28 15:29:55 ls1313p puppet-master[20112]: Executing '/usr/bin/
> > > cobbler-ext-nodes lv00052p.encana.com'
> > > Feb 28 15:29:55 ls1313p puppet-master[20112]: Failed to find
> > > lv00052p.encana.com via exec: Execution of '/usr/bin/cobbler-ext-nodes
> > > lv00052p.encana.com' returned 1:
> > > Feb 28 15:29:55 ls1313p puppet-master[20112]: Could not find node
> > > 'lv00052p.encana.com'; cannot compile
>
> > > However, if I run
>
> > > /usr/bin/cobbler-ext-nodes lv00052p.encana.com
>
> > Can you execute this as the puppet user? If you run passenger, the
> > owner of the config.ru file?
>
> > Thanks,
>
> > Nan
>
> > > By hand it returns error code 0 and the following results:
>
> > > classes: [dev_wes]
> > > parameters: {env: dev, from_cobbler: 1, media_path: /ks/dist/dev-ks-
> > > rhel-x86_64-server-5-u5,
> > >  org: 1, passwd_mode: compat, redhat_management_type: 'off', stype:
> > > wes}
>
> > > This all worked prior to upgrading to 2.6.4.
>
> > > Also, my config is:
>
> > > [main]
> > >    # The Puppet log directory.
> > >    # The default value is '$vardir/log'.
> > >    logdir = /var/log/puppet
>
> > >    # Where Puppet PID files are kept.
> > >    # The default value is '$vardir/run'.
> > >    rundir = /var/run/puppet
>
> > >    # Where SSL certificates are kept.
> > >    # The default value is '$confdir/ssl'.
> > >    ssldir = $vardir/ssl
>
> > > [agent]
> > >    # The file in which puppetd stores a list of the classes
> > >    # associated with the retrieved configuratiion.  Can be loaded in
> > >    # the separate ``puppet`` executable using the ``--loadclasses``
> > >    # option.
> > >    # The default value is '$confdir/classes.txt'.
> > >    classfile = $vardir/classes.txt
>
> > >    # Where puppetd caches the local configuration.  An
> > >    # extension indicating the cache format is added automatically.
> > >    # The default value is '$confdir/localconfig'.
> > >    localconfig = $vardir/localconfig
>
> > > [master]
> > >    # The main Puppet configuration directory. The default for this
> > >    # parameter is calculated based on the user.
> > >    confdir = /puppet/production
>
> > >    # Where Puppet stores

Re: [Puppet Users] Puppet Parse Trees (for a lint checker)

2011-03-01 Thread Nick Moffitt
Dan Bode:
> Hi Nick (long time :) )

Hi!  Nearly a year, by now!

> It is possible to parse a given file and get an ASTArray back, is that
> sufficient? I am pretty sure you are going to have to get your hands
> into the Ruby code to really figure this out.

I suppose so, although I hope that's something that could be serialized
trivially without leaving me holding a bunch of opaque object
references.

> These kinds of questions make more sense to be posted to puppet-dev

Hurg.  I was hoping something already existed.

Okay, I'll try to remember how to subscribe to that without accepting
google cookies.

-- 
"Here is the memo if you didn't receive it: GNOME and
Free Software is all about *SAVING THE WORLD* not
drawing pissy little buttons on the screen."
-- Jeff Waugh

-- 
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 Parse Trees (for a lint checker)

2011-03-01 Thread Dan Bode
Hi Nick (long time :) )

On Tue, Mar 1, 2011 at 3:14 AM, Nick Moffitt  wrote:

> I mean to write a lint checker for my manifests, but I am not a ruby
> developer to any degree of proficiency.  What I think I would like is
> some kind of serialization of the AST for a given .pp file, which I can
> then import into my own Python code and analyze for undesirable
> patterns.
>

It is possible to parse a given file and get an ASTArray back, is that
sufficient? I am pretty sure you are going to have to get your hands into
the Ruby code to really figure this out.

There kinds of questions make more sense to be posted to puppet-dev


>
> Is there any way to get a dump or serialization or marshalling of the
> parse tree for a given .pp file?  Or is there already some
> easily-modifiable lint checker elsewhere?
>
> --
> A: No.
> Q: Should I put my reply above quoted text?
>
> --
> 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] Puppet Error Message

2011-03-01 Thread cyrus
Every now and then I get the following error on a Puppet run:

Mon Feb 28 21:19:04 -0700 2011 Puppet (err): Could not retrieve
catalog from remote server: Error 400 on SERVER: invalid value for
Integer: "eNp1VtmS6jgSfZ+v0NTDRHczgHfAEf0ABgw2i9kNLxXCFmDwhuSVrx/Zhirq
\n3h4CHFYqJWWmTp5DvV4H/
8bxMW8GxyuyItmIwxBFsjwLbCTLQ2hF5F8AoCx0\nMIycwJcBx7BsneHqXBtwrCx0ZEZoMBzbERhQZ1oyw1B/
H3pIBv9xbIZhgZuw\nnMSGDeRb0IcNK/CoRwLdGBEZ0FcAQhxYiJAAW0HsRzL4YD9Ke
+LgKIauDBIv\nhRiVNod8fpk/IhyjyvWGsI+oaeL4cVZaCMIOdP3YOyIsg
+202KEuMoCVwPEI\nIP2ywDoB/
ggEri5KgGmBkwSgBIQ24CUgcdSz3Cj2nXuMHFsGfLuNONhiS3NR
\nNeJEyHbo9s2Y4KbrHJtlLQvzZ/nGNtql8wViuwjAo2V1n5XhQNaWPiWhKoEL
\no1OAPfndGISoqLp/JjmJkIeRiyChhf0QG2KVto+iNMC3TxRdGBmwAtcQpQbL
\n8g2mCj2MHA99EmQFvk2KwjKi1JIEoVrtkuP3nrIV0ALxDbYOPVsSvocO5Lnv
\nkR9AbF3kM4bhxbHI24IfpnLRD0u1sDrYch3kRwnCpIRUWQ4ecA2pwVd3l8Lw
\nhBENi2swDFB7r2Q9SG7UKIqN169K1AmhbWOKoR9FELhy0qNlx/SuHnQ/odNu
\niB0wrXYML9RsQfc3ADIf7yc+y/v7sUV1H4FP952u1m84/KpqkRLbrtPuaLCt
\nBttArli6ne42zfsfO4NGRbMICaijUzm0Aw861PsXrygP6QHz6ILwD4g5BP4A
\nUQFcHATR68Zth0Q2IhZ2wqqhl8gGIxiBgR8hHGKHoK!
 qLwAphekXgmQygoAN/\nrJ0b9M/wz7dkv66xSvat5M8rZKRGi32VnCC32JzW+ARdgj7ew/
oHgD8RfAli\nXOCX6/DPCQ/68YnSU4yL9v6o+vu/YOxbjZeD9cTE8/
oYRhbpV5I7ksz35N7w\n/QAb5mV/
cFy1mpALJvCGchl06afHzx5QYXOLG5TDcUqfi0E3Paj7W+iue8zI\ntuzdfZOTiTA
+SL0k7unEaEXqdWEf7MUmyjZLMvWd9UJN9OwIvR3WREdrTWZ6\nTcqFtLtmazeB4e2JTYKj2b0p66VuLUeCq6O
+Z/OH1sFbJpnm2cwSez57mJmL\nbL3a+GdxsfOWPetkZXe13zJ6al/IRG90MBVzB8/
iyYzu08HutBgnuqDH2rql
\nDuDUuOzPehLqhiJtGW3OevvJZv9YJJ21xKvcMGD2SzTbWszNY0MDMYwuaiNv
\nf4lVJuzAnns/qnmaLV3zZsf9kXFZNU/bJpurkp3qXZPbJ2ayOSgdmxHZ2NeS
\nmYINqda9D5QcRzoKj9f02IOPzdbWZ8yFV5TNlO2M+5dwmlF43NK//35HhUU5\nsxKUJ/
jKSeRTGQh8DxX9aqMEuUFYDN74xUKYzv1VqlBprpSO5B74LC6dRNAL
\naesGPhiiI6gEjS0ErVAyyjuF1H1x/RfMKac3xDfsUAvHgQJAVb8VbUSRWahb
\nAbyXwtmxFVVpVFgF20rGgPGk/tKx4EiqHiWun7FXJBaWwvwVRDnD/1RPivE+
\n3bCuUK4G3WkfzEMaSuD/EXl/AuPlBdocVwV1CcgzoicR/aTS30XlyachjC5P
\nyTtSYqoexYiUb8WzIjnaniWFvOomPtXwuzX/X1cWAlAR9rsA/KKHJXVR5nrj
\nIg9ev877oHz0pJfAev55ma+VV3vbv7f3zeKndKT0ulOtZcMoXdacYNZeqmoy
\nWqwf82gT25fdpElbpbXnE6kfJpl5EpmlJfYPSE!
 3XnplvdZytpgtttW/V+AWM\ntJpyjdzLbJPfw6uVKtrhvAsnvrYV/dtp3vE1cW!
 Y6i5N+3q
9qmrFG3FhVlprC\nhLvWfc8OzNk+Mx6SCWvwkI3yHK+725z1R6cUn4LAtsZsEf9w0Z
+NODzrSPaY\n6+cPzF8Ufr
+bL4UIHQqqGncFcm8OiWIeAqwt2HQ7Ou3WaiRNN6blqpDjvNBk\nmGWvqYuG2k/
G41DhaufJ5HHuRe5DmO+mh4Vm9KGwGizvqKcH1ng6wpkyTweW
\nMd3bznqdwv4VjcU4mcRrvR1J0n5ubfy9wTZRYncV8jAXvBIeAuYqmbfsfu4Z\no/
7G7EfkAY+DrkMWq+5REnr+ooiXUuv6WNvM/dVN3O27jywRjjDRWlqiBiut
\n1Q8D3VUD53qAjm7sRW1sdzvG5LwaEmakZbfV3cJmtrgOt0txKG7u4i5PYa8z
\nsbRexg4cwTG3gaK7rBfPrb162rJxthsMjMl2CB8uNKgy8Uc7QnkrPW9N7+6G\nqzS
+nSfiiYlbPX6CCc7z4WbX3zpkEOx/0FWhtxUuvwW1UtKXFwXpL2r38T/P\n7437\n"
Mon Feb 28 21:19:04 -0700 2011 Puppet (err): Could not retrieve
catalog; skipping run

Any idea why this is?

-- 
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: External Nodes - Puppet 2.6.4

2011-03-01 Thread cyrus
Yes. The file is executable by everyone. Plus this worked prior to
installing Ruby 1.8.7 and Puppet 2.6.4.

On Feb 28, 3:40 pm, Nan Liu  wrote:
> On Mon, Feb 28, 2011 at 3:36 PM, cyrus  wrote:
> > I recently moved to Puppet 2.6.4. Prior to this I was using the
> > available RPMS for RHEL which were 2.6.3. The reason I moved to the
> > source 2.6.4 is that I wanted to update to Ruby 1.8.7 to see if that
> > corrected the errors I was getting when trying to use Store Configs.
>
> > Anyways, I compiled Ruby 1.8.7 from source into /usr/local/bin. I then
> > installed Facter and Puppet into the same prefix.
>
> > However now I can not get external nodes to work. On the client it
> > gives:
>
> > err: Could not retrieve catalog from remote server: Error 400 on
> > SERVER: Could not find node 'lv00052p.encana.com'; cannot compile
>
> > From the log I see:
>
> > Feb 28 15:29:55 ls1313p puppet-master[20112]: Executing '/usr/bin/
> > cobbler-ext-nodes lv00052p.encana.com'
> > Feb 28 15:29:55 ls1313p puppet-master[20112]: Failed to find
> > lv00052p.encana.com via exec: Execution of '/usr/bin/cobbler-ext-nodes
> > lv00052p.encana.com' returned 1:
> > Feb 28 15:29:55 ls1313p puppet-master[20112]: Could not find node
> > 'lv00052p.encana.com'; cannot compile
>
> > However, if I run
>
> > /usr/bin/cobbler-ext-nodes lv00052p.encana.com
>
> Can you execute this as the puppet user? If you run passenger, the
> owner of the config.ru file?
>
> Thanks,
>
> Nan
>
> > By hand it returns error code 0 and the following results:
>
> > classes: [dev_wes]
> > parameters: {env: dev, from_cobbler: 1, media_path: /ks/dist/dev-ks-
> > rhel-x86_64-server-5-u5,
> >  org: 1, passwd_mode: compat, redhat_management_type: 'off', stype:
> > wes}
>
> > This all worked prior to upgrading to 2.6.4.
>
> > Also, my config is:
>
> > [main]
> >    # The Puppet log directory.
> >    # The default value is '$vardir/log'.
> >    logdir = /var/log/puppet
>
> >    # Where Puppet PID files are kept.
> >    # The default value is '$vardir/run'.
> >    rundir = /var/run/puppet
>
> >    # Where SSL certificates are kept.
> >    # The default value is '$confdir/ssl'.
> >    ssldir = $vardir/ssl
>
> > [agent]
> >    # The file in which puppetd stores a list of the classes
> >    # associated with the retrieved configuratiion.  Can be loaded in
> >    # the separate ``puppet`` executable using the ``--loadclasses``
> >    # option.
> >    # The default value is '$confdir/classes.txt'.
> >    classfile = $vardir/classes.txt
>
> >    # Where puppetd caches the local configuration.  An
> >    # extension indicating the cache format is added automatically.
> >    # The default value is '$confdir/localconfig'.
> >    localconfig = $vardir/localconfig
>
> > [master]
> >    # The main Puppet configuration directory. The default for this
> >    # parameter is calculated based on the user.
> >    confdir = /puppet/production
>
> >    # Where Puppet stores dynamic and growing data. The default for
> > this
> >    # parameter is calculated specially, like confdir.
> >    # The default value is '/var/lib/puppet'.
> >    vardir = /var/lib/puppet
>
> >    # external node lookup via cobbler
> >    external_nodes = /usr/bin/cobbler-ext-nodes
> >    node_terminus = exec
>
> >    reports = tagmail
> >    tagmap = $confdir/tagmail.conf
>
> >    # enable store configs
> >    #storeconfigs = true
> >    # use Postgres for store configs
> >    #dbadapter = postgresql
> >    #dbuser = puppet
> >    #dbpassword = puppet
> >    #dbserver = ls00034p
>
> > [development]
> >        manifest = $confdir/manifests/dev_site.pp
>
> > [tqa]
> >        manifest = $confdir/manifests/tqa_site.pp
>
> > Any help would be appreciated.
>
> > 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 
> > athttp://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] Error 400 on SERVER: invalid address

2011-03-01 Thread Felix Frank
Hi,

On 02/28/2011 07:58 AM, sanjiv.singh wrote:
> hi all,
> I had configured puppet with ldap (for storing client
> configuration )
> I stucked with an error msgwhen i fire puppetd on client...
> 
> $  sudo /usr/sbin/puppetd --test --debug
> .
> .
> .
> err: Could not retrieve catalog from remote server: Error 400 on
> SERVER: invalid address
> 
> and  when i tailed puppetmaster log
> there is an entry in log like ...
> ..
> 
> Feb 28 01:19:32 My-Server puppetmasterd[21999]: invalid address
> Feb 28 01:19:35 My-Server stunnel: LOG3[14372:1080092992]: SSL_accept:
> Peer suddenly disconnected

in what way is stunnel used in your puppetmaster setup? This does look
non-standard to me (this may be fine, but it may just as well be the
reason you're having weird problems).

Regards,
Felix

-- 
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] Possible bug with apt and --force-yes

2011-03-01 Thread Felix Frank
> err: //Packages::Mongodb/Package[mongodb-stable]/ensure: change from
> purged to 20110131 failed: Could not update: Execution of '/usr/bin/
> aptitude -y -o DPkg::Options::=--force-confold --force-yes install
> mongodb-stable=20110131' returned 1: /usr/bin/aptitude: unrecognized
> option '--force-yes'

Hi, I'm not sure why your puppet is using the aptitude provider, but you
may have better luck specifying

provider => "apt"

in your package resource.

HTH,
Felix

-- 
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] Regression in 2.6.5

2011-03-01 Thread Nigel Kersten
http://projects.puppetlabs.com/issues/6443

We have a regression that causes spurious errors and log messages due
to auditing being auto-enabled incorrectly in some situations.

Do not upgrade to 2.6.5.

We will be resolving this issue and providing further information as
we run through testing.

-- 
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: setting $noop=true in site.pp broken

2011-03-01 Thread Kal McFate
I've filed this as a bug as setting $noop doesn't seem to work
anywhere anymore.

http://projects.puppetlabs.com/issues/6526

-- 
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: fileserver and distributing many files

2011-03-01 Thread Jeffrey Goldschrafe
On Tuesday, March 1, 2011 2:58:03 AM UTC-5, Thomas Rasmussen wrote:
>
>
>
> On Feb 28, 9:35 pm, Patrick  wrote: 
> > On Feb 28, 2011, at 4:23 AM, Thomas Rasmussen wrote: 
> > 
> > 
> > 
> > 
> > 
> > > hey 
> > 
> > > OK, now I have tried to do it via rsync and it seems to be working... 
> > > but the recurse bug is apparently very serious... I now have a 
> > > manifest that does: 
> > 
> > >file { "/pack/mysql-5.5.9": 
> > >  ensure => directory, 
> > >  recurse => true, 
> > >  force => true, 
> > >  owner => "root", 
> > >  group => "root", 
> > >  require => Exec[rsync_mysql_install], 
> > >} 
> > 
> > > This takes about the same time as if I was copying (I need to be sure 
> > > of permissions of rsync'ed files). Is the recurse feature really that 
> > > bad? 
> > 
> > If the permissions you need to be sure of are all "root,root,755", it 
> will be much faster to just do a chmod+chown at the end and put that and the 
> rsync in a shellscript. 
> > 
>
> That is a hack but not a solution, honestly I'm really disappointed in 
> puppet not handling this very effeciently I've been used to 
> cfengine2 for the past year or so, but for a particular project we 
> have decided to use puppet, mainly because we like the manifests 
> better here than on cfengine... 
>
> So I hope that the performance issue when recursing directories gets 
> attention and gets fixed soon. 
>
> Thomas 
>

Is there any reason it's not feasible to build a package for your 
distribution and then use Puppet to install it? If there's a "right" way to 
do what you want, that's going to be it.

-- 
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: variable scope woes

2011-03-01 Thread Bill Proud
What I find works is a configuration along the following lines:

node mirror {
$my_role = "mirror"
}

node 'mirror.example.com' inherits mirror {
include iptables
include basenode
include sendmail
include sshkeys
}

-- 
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: Nagios monitoring with example42 modules

2011-03-01 Thread Al @ Lab42
Hi Pete,

On Monday, February 28, 2011 9:47:36 PM UTC+1, pete ehlke wrote:
>
> Folks:
>
> I've started to play around with the comprehensive integrated module set 
> from example42 (http://www.example42.com/).
>
> Following the instructions, I set up one node as a nagios server, with 
> 'include nagios'. I set up another node to be monitored via nagios, with 
> 'include nagios::target". I set $monitor=true for the base node, which is 
> inherited by both the nagios server and the target node, and I set 
> $monitor_type = ["nagios", "munin"], and I set $monitor_tool = "nagios". I 
> find the target's nagios resources exported to the storeconfigs database, 
> eg: 
>
> | 105 | /etc/nagios/auto.d/services/client.example.com-apache_process.cfg 
>  | File   |   2 |  4 |1 |   45 | 
> 2011-02-28 20:43:14 | 2011-02-28 20:43:14 |
>
> However, though both systems are monitored by munin in this setup, the 
> nagios server never seems to monitor the target 
> node. /etc/nagios/auto.d/services/client.example.com-apache_process.cfg and 
> friends do not get created on either system.
>
> Is anyone from example42 around to help point out where I'm being stupid 
> here?
>
>
Yes. Your setup doesn't seem to have something particularly wrong, but if 
you want to replicate a working layout try this:
Set for all nodes:

 $monitor = "yes"
 $monitor_tool = [ "nagios" , "munin" ]

And on you Nagios server:
 include nagios

That should be enough.
Consider that you do not need anymore to include nagios::target on the nodes to 
be monitored and that the variable
$monitor_type  is not used (eventually tell me where you've read about it... 
the could be a mistake in the documentation).

One thing that could be the cause for your problem is the variable 
$nagios_grouplogic that is useful if you need different Nagios servers checking 
 nodes
according to custom grouping logic.
If undefined your Nagios server should monitor all the nodes registered to the 
same puppetmaster.

Please, let me know if this helps.

Best regards,
Al

-- 
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] variable scope woes

2011-03-01 Thread Arnau Bria
On Mon, 28 Feb 2011 12:28:43 -0800 (PST)
draeath draeath wrote:

Hi,

you could add some notify to see what value has $my_role in some
classes.

http://www.devco.net/archives/2009/08/19/tips_and_tricks_for_puppet_debugging.php

We use same schema and variable scope works fine.

what puppet version?

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] Puppet Parse Trees (for a lint checker)

2011-03-01 Thread Nick Moffitt
(sorry Sandor, I hit individual reply entirely by mistake earlier)

Sandor Szuecs:
> On Mar 1, 2011, at 12:14 PM, Nick Moffitt wrote:
> > Or is there already some easily-modifiable lint checker elsewhere?
>
> You probably want:
> puppet --parseonly 

As of puppet 2.6.4 this does not print any parse trees that I can see.
Is there some extra-verbosity mode I can enable that will spit out the
AST in yaml or pson or something?

Your quotation of my request for a pre-existing easily-modifiable lint
checker suggests that you mean that the --parseonly mode has some
mechanism for specifying linter rules.  Is there some way I can warn
against particular syntactically-valid yet undesirable patterns of use
via --parseonly?  I would need to be able to specify these patterns
myself.

-- 
Schrödinger's cat was an observer.
WAKE UP, SHEEPLE!  Stop the silence!

-- 
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 Parse Trees (for a lint checker)

2011-03-01 Thread Sandor Szuecs

On Mar 1, 2011, at 12:14 PM, Nick Moffitt wrote:

> Or is there already some
> easily-modifiable lint checker elsewhere?

You probably want:

puppet --parseonly 


All the best, Sandor Szücs
--



-- 
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 Parse Trees (for a lint checker)

2011-03-01 Thread Nick Moffitt
I mean to write a lint checker for my manifests, but I am not a ruby
developer to any degree of proficiency.  What I think I would like is
some kind of serialization of the AST for a given .pp file, which I can
then import into my own Python code and analyze for undesirable
patterns.

Is there any way to get a dump or serialization or marshalling of the
parse tree for a given .pp file?  Or is there already some
easily-modifiable lint checker elsewhere?

-- 
A: No.
Q: Should I put my reply above quoted text?

-- 
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] Re: fileserver and distributing many files

2011-03-01 Thread Brice Figureau
On Mon, 2011-02-28 at 23:58 -0800, Thomas Rasmussen wrote:
> 
> On Feb 28, 9:35 pm, Patrick  wrote:
> > On Feb 28, 2011, at 4:23 AM, Thomas Rasmussen wrote:
> >
> >
> >
> >
> >
> > > hey
> >
> > > OK, now I have tried to do it via rsync and it seems to be working...
> > > but the recurse bug is apparently very serious... I now have a
> > > manifest that does:
> >
> > >file { "/pack/mysql-5.5.9":
> > >  ensure => directory,
> > >  recurse => true,
> > >  force => true,
> > >  owner => "root",
> > >  group => "root",
> > >  require => Exec[rsync_mysql_install],
> > >}
> >
> > > This takes about the same time as if I was copying (I need to be sure
> > > of permissions of rsync'ed files). Is the recurse feature really that
> > > bad?
> >
> > If the permissions you need to be sure of are all "root,root,755", it will 
> > be much faster to just do a chmod+chown at the end and put that and the 
> > rsync in a shellscript.
> >
> 
> That is a hack but not a solution, honestly I'm really disappointed in
> puppet not handling this very effeciently I've been used to
> cfengine2 for the past year or so, but for a particular project we
> have decided to use puppet, mainly because we like the manifests
> better here than on cfengine...

You need to understand the issue first:
When puppet manage a files (ie all aspects of it), it creates internally
a resource object (like every other resources you manage). Then this
resource is evaluated and the said resources do what is necessary so
that its target (the file on disk) is modified to match what you wanted.
To simplify recursive file resources management, puppet will manage all
the files found by recursively walking the hierarchy as if they were
independent resources. Which means that puppet has to create many
instances in memory (one per managed file/dir found during the walk).
This in turn expose some scalability issues in the event system and
transaction system of puppet.

> So I hope that the performance issue when recursing directories gets
> attention and gets fixed soon.

I also hope this will be the case. Unfortunately each time I wanted to
address this issue, I found that this part of the code is horribly
complex, and all my attempts to do it differently were doomed to fail.
-- 
Brice Figureau
Follow the latest Puppet Community evolutions on www.planetpuppet.org!

-- 
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] Re: fileserver and distributing many files

2011-03-01 Thread Patrick

On Feb 28, 2011, at 11:58 PM, Thomas Rasmussen wrote:

> 
> 
> On Feb 28, 9:35 pm, Patrick  wrote:
>> On Feb 28, 2011, at 4:23 AM, Thomas Rasmussen wrote:
>> 
>> 
>> 
>> 
>> 
>>> hey
>> 
>>> OK, now I have tried to do it via rsync and it seems to be working...
>>> but the recurse bug is apparently very serious... I now have a
>>> manifest that does:
>> 
>>>file { "/pack/mysql-5.5.9":
>>>  ensure => directory,
>>>  recurse => true,
>>>  force => true,
>>>  owner => "root",
>>>  group => "root",
>>>  require => Exec[rsync_mysql_install],
>>>}
>> 
>>> This takes about the same time as if I was copying (I need to be sure
>>> of permissions of rsync'ed files). Is the recurse feature really that
>>> bad?
>> 
>> If the permissions you need to be sure of are all "root,root,755", it will 
>> be much faster to just do a chmod+chown at the end and put that and the 
>> rsync in a shellscript.
>> 
> 
> That is a hack but not a solution, honestly I'm really disappointed in
> puppet not handling this very efficiently I've been used to
> cfengine2 for the past year or so, but for a particular project we
> have decided to use puppet, mainly because we like the manifests
> better here than on cfengine...
> 
> So I hope that the performance issue when recursing directories gets
> attention and gets fixed soon.
> 

Frankly, many people have said this in the past for the last few years.  It's a 
lot better, (yes it's a lot better) but I'm not very hopeful for it in the near 
future.  This has been a problem for years.

-- 
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: Puppet features

2011-03-01 Thread luke.bigum
On Feb 28, 7:50 pm, Luis Miguel Silva
 wrote:
> Dear all,
>
> I'm a software integrator and i'm currently evaluating Puppet to
> understand how we can potentially integrate our products with it.
> I've been reading documentation on it and i'm currently installing a
> Puppet system but i have some questions that i was hoping someone
> could answer?
>
> a) In this page, it says that Puppet Enterprise supports provisioning
> but the documentation i've seen so far only shows the maintenance
> aspects of Puppet?http://www.puppetlabs.com/puppet/puppet-enterprise/faq/
> a.1) does Puppet do provisioning?

Not in the sense that I think you're thinking of. You can't PXE boot
and kickstart a server with Puppet - it's not a replacement for
Cobbler. However, depending on your definition of provisioning, if you
had a single server image that just had Puppet on it, from there you
could continue it's installation with Puppet into some server type you
use Puppet to describe.

> b) Also, i've seen references to 
> Windows:http://docs.puppetlabs.com/guides/platforms.html
> b.1) Does Puppet run on Windows?
> b.2) Does it actually support doing maintenance on Windows OSes?

Yes, but I believe this is no where near as functional as Puppet on
*nix servers. Someone from Puppet Labs can probably give you a better
idea of exactly what is and isn't possible with a Windows Puppet
client.

> c) I've read somewhere that Puppet has some sort of graphical
> interface where you can edit the RAL classes and graphically insert
> logic into them (i.e. dependencies and stuff)

The closest thing to a GUI interface is Puppet Dashboard. IMO it's
still maturing and more useful as a reporting tool at the moment. You
can't write a module from Puppet Dashboard, so it's not a replacement
for a text editor and the command line. If you use Puppet Dashboard as
your external node classifier, then you've got some control over the
behaviour of your nodes and classes, however you cannot "edit classes
and graphically insert logic into them" from Dashboard.

> c.1) Where can i find that interface?

http://www.puppetlabs.com/puppet/related-projects/dashboard/

> Thanks in advance,
> Luis Silva

Hope that helps,

-Luke

-- 
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.