[Puppet Users] Re: Puppet client not auto updating

2013-04-09 Thread Sy Doveton
Hi Martijn,

Thanks for your comments. I am using  puppet agent --test now that I have 
upgraded to ver3 as it was not available previously.

The service appears to be working better now and am having more luck with 
things applying.

Thanks all for your help.

Regards
Sy

On Monday, 8 April 2013 15:01:01 UTC+1, Martijn wrote:

 Hi Sy,

 The Puppet agent will usually log to syslog, both in case of errors or 
 succes, so check in /var/log/syslog (on Ubuntu) for any messages. By 
 default, the agent runs every half hour so I'd expect to see some entries 
 in the log every half hour.

 Make sure the puppet agent service runs as root. The puppet master does 
 not need to be root but the agent needs permission to check and change the 
 system. If you used the distro's of Puppetlabs' packages this is most 
 likely already the case.

 Instead of the obsolete puppetd command, use puppet agent --test for 
 manually starting a run. Add --noop for a trial-run, say if you just want 
 to see what would happen.

 Contrary to Drew's suggestion we actually prefer running the agent 
 service, instead of cron. Just to provide another opinion :). Still, both 
 methods should work fine, so we'll need to figure that out first.

 Regards, Martijn

 Op zaterdag 6 april 2013 00:48:10 UTC+2 schreef Sy Doveton het volgende:

 Hi,

 I am new to puppet and am experimenting with some basic commands. I have 
 a puppetmaster server and a couple or servers with puppet client. All 
 servers are running ubuntu.

 I have set up the link between the master and the clients and their certs 
 have been signed etc.

 The clients have had puppet started via 'service puppet start' and can 
 confirm they are running with 'service puppet status'.

 When I make any changes on the master nothing happens on the servers. I 
 have waited a couple of hours and e.g. the required package has not been 
 installed on the client. As soon as I run on the client:-

 puppetd --test

 It will immediately install the package so I know my manifests / modules 
 are correct as it does what I request when I manually ask it. I just need 
 it to run periodically automatically and get the latest info from the 
 master.

 Any ideas of things I can check?



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




[Puppet Users] How to optimize puppet class/module code ?

2013-04-09 Thread ForumUser
Hello all,

I am trying to write a syslog module for our small puppet installation.
Since I'd like to learn how to write puppet classes/modules I would avoid
modules from puppet labs forge (at least for now).

This module is going to be deployed on RH 5 _and_ 6.
In our infrastructure each RH line (5 or 6) is configured differently:
RH 5 uses sysklogd, RH 6 uses rsyslog.

I have written a class but as you can see it has a lot of redundant code.
Can I use any puppet syntax to make it more elegant (and easier to maintain 
:-) ) ?
Can you suggest anything ?

class syslog::install {
case $lsbmajdistrelease {
'5':{
package { sysklogd:
ensure = present,
}
}

'6':{
package { rsyslog:
ensure = present,
}
}
}
}

class syslog::config {
case $lsbmajdistrelease {
'5':{
file{ /etc/syslog.conf:
ensure = present,
owner = 'root',
group = 'root',
mode = 0644,
source = 
puppet:///modules/syslog/syslog.conf,
require = Class[syslog::install],
notify = Class[syslog::service],
}
}

'6':{
file{ /etc/rsyslog.conf:
ensure = present,
owner = 'root',
group = 'root',
mode = 0644,
source = 
puppet:///modules/syslog/rsyslog.conf,
require = Class[syslog::install],
notify = Class[syslog::service],
}
}
}
}

class syslog::service {
case $lsbmajdistrelease {
'5':{
service { syslog:
ensure = runing,
enable = true,
require = Class[syslog::config],
}
}

'6':{
service { rsyslog:
ensure = runing,
enable = true,
require = Class[syslog::config],
}
}
}
}


class syslog {
include syslog::install, syslog::config, syslog::service
}


Thanks in advance :-)
Przemek

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




[Puppet Users] Re: How to optimize puppet class/module code ?

2013-04-09 Thread Gavin Williams
Hi there, 

I think you're quickest win for making the code cleaner and easier would be 
to create a ::params class, which sets the correct values for package, file 
and service based on your distro. 

Can then inherit this class on your ::install, ::config and ::service 
classes. 

I'm sure other people will chime in with some other ideas aswell :) 

HTH

Gav

On Tuesday, 9 April 2013 10:36:51 UTC+1, ForumUser wrote:

 Hello all,

 I am trying to write a syslog module for our small puppet installation.
 Since I'd like to learn how to write puppet classes/modules I would avoid
 modules from puppet labs forge (at least for now).

 This module is going to be deployed on RH 5 _and_ 6.
 In our infrastructure each RH line (5 or 6) is configured differently:
 RH 5 uses sysklogd, RH 6 uses rsyslog.

 I have written a class but as you can see it has a lot of redundant code.
 Can I use any puppet syntax to make it more elegant (and easier to 
 maintain :-) ) ?
 Can you suggest anything ?

 class syslog::install {
 case $lsbmajdistrelease {
 '5':{
 package { sysklogd:
 ensure = present,
 }
 }

 '6':{
 package { rsyslog:
 ensure = present,
 }
 }
 }
 }

 class syslog::config {
 case $lsbmajdistrelease {
 '5':{
 file{ /etc/syslog.conf:
 ensure = present,
 owner = 'root',
 group = 'root',
 mode = 0644,
 source = 
 puppet:///modules/syslog/syslog.conf,
 require = 
 Class[syslog::install],
 notify = Class[syslog::service],
 }
 }

 '6':{
 file{ /etc/rsyslog.conf:
 ensure = present,
 owner = 'root',
 group = 'root',
 mode = 0644,
 source = 
 puppet:///modules/syslog/rsyslog.conf,
 require = 
 Class[syslog::install],
 notify = Class[syslog::service],
 }
 }
 }
 }

 class syslog::service {
 case $lsbmajdistrelease {
 '5':{
 service { syslog:
 ensure = runing,
 enable = true,
 require = Class[syslog::config],
 }
 }

 '6':{
 service { rsyslog:
 ensure = runing,
 enable = true,
 require = Class[syslog::config],
 }
 }
 }
 }


 class syslog {
 include syslog::install, syslog::config, syslog::service
 }


 Thanks in advance :-)
 Przemek



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




[Puppet Users] Re: How to optimize puppet class/module code ?

2013-04-09 Thread ForumUser
Hi Gavin,

Can you suggest any URL where I could read about ::params classes (and 
examples of course ;-) ) ?

On Tuesday, 9 April 2013 10:47:40 UTC+1, Gavin Williams wrote:

 Hi there, 

 I think you're quickest win for making the code cleaner and easier would 
 be to create a ::params class, which sets the correct values for package, 
 file and service based on your distro. 

 Can then inherit this class on your ::install, ::config and ::service 
 classes. 

 I'm sure other people will chime in with some other ideas aswell :) 

 HTH

 Gav

 On Tuesday, 9 April 2013 10:36:51 UTC+1, ForumUser wrote:

 Hello all,

 I am trying to write a syslog module for our small puppet installation.
 Since I'd like to learn how to write puppet classes/modules I would avoid
 modules from puppet labs forge (at least for now).

 This module is going to be deployed on RH 5 _and_ 6.
 In our infrastructure each RH line (5 or 6) is configured differently:
 RH 5 uses sysklogd, RH 6 uses rsyslog.

 I have written a class but as you can see it has a lot of redundant code.
 Can I use any puppet syntax to make it more elegant (and easier to 
 maintain :-) ) ?
 Can you suggest anything ?

 class syslog::install {
 case $lsbmajdistrelease {
 '5':{
 package { sysklogd:
 ensure = present,
 }
 }

 '6':{
 package { rsyslog:
 ensure = present,
 }
 }
 }
 }

 class syslog::config {
 case $lsbmajdistrelease {
 '5':{
 file{ /etc/syslog.conf:
 ensure = present,
 owner = 'root',
 group = 'root',
 mode = 0644,
 source = 
 puppet:///modules/syslog/syslog.conf,
 require = 
 Class[syslog::install],
 notify = 
 Class[syslog::service],
 }
 }

 '6':{
 file{ /etc/rsyslog.conf:
 ensure = present,
 owner = 'root',
 group = 'root',
 mode = 0644,
 source = 
 puppet:///modules/syslog/rsyslog.conf,
 require = 
 Class[syslog::install],
 notify = 
 Class[syslog::service],
 }
 }
 }
 }

 class syslog::service {
 case $lsbmajdistrelease {
 '5':{
 service { syslog:
 ensure = runing,
 enable = true,
 require = 
 Class[syslog::config],
 }
 }

 '6':{
 service { rsyslog:
 ensure = runing,
 enable = true,
 require = 
 Class[syslog::config],
 }
 }
 }
 }


 class syslog {
 include syslog::install, syslog::config, syslog::service
 }


 Thanks in advance :-)
 Przemek



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




Re: [Puppet Users] Re: How to optimize puppet class/module code ?

2013-04-09 Thread fatmcgav
http://soimasysadmin.com/2012/02/29/puppet-inheritance-revisited/ is one
I've got bookmarked...

HTH

Gav


On 9 April 2013 10:54, ForumUser p@cmcmarkets.com wrote:

 Hi Gavin,

 Can you suggest any URL where I could read about ::params classes (and
 examples of course ;-) ) ?

 On Tuesday, 9 April 2013 10:47:40 UTC+1, Gavin Williams wrote:

 Hi there,

 I think you're quickest win for making the code cleaner and easier would
 be to create a ::params class, which sets the correct values for package,
 file and service based on your distro.

 Can then inherit this class on your ::install, ::config and ::service
 classes.

 I'm sure other people will chime in with some other ideas aswell :)

 HTH

 Gav

 On Tuesday, 9 April 2013 10:36:51 UTC+1, ForumUser wrote:

 Hello all,

 I am trying to write a syslog module for our small puppet installation.
 Since I'd like to learn how to write puppet classes/modules I would avoid
 modules from puppet labs forge (at least for now).

 This module is going to be deployed on RH 5 _and_ 6.
 In our infrastructure each RH line (5 or 6) is configured differently:
 RH 5 uses sysklogd, RH 6 uses rsyslog.

 I have written a class but as you can see it has a lot of redundant code.
 Can I use any puppet syntax to make it more elegant (and easier to
 maintain :-) ) ?
 Can you suggest anything ?

 class syslog::install {
 case $lsbmajdistrelease {
 '5':{
   **  package { sysklogd:
   **  ensure = present,
   **  }
 }

 '6':{
   **  package { rsyslog:
   **  ensure = present,
   **  }
 }
 }
 }

 class syslog::config {
 case $lsbmajdistrelease {
 '5':{
   **  file{ /etc/syslog.conf:
   **  ensure = present,
   **  owner = 'root',
   **  group = 'root',
   **  mode = 0644,
   **  source =
 puppet:///modules/syslog/**syslog.conf,
   **  require =
 Class[syslog::install],
   **  notify =
 Class[syslog::service],
   **  }
 }

 '6':{
   **  file{ /etc/rsyslog.conf:
   **  ensure = present,
   **  owner = 'root',
   **  group = 'root',
   **  mode = 0644,
   **  source =
 puppet:///modules/syslog/**rsyslog.conf,
   **  require =
 Class[syslog::install],
   **  notify =
 Class[syslog::service],
   **  }
 }
 }
 }

 class syslog::service {
 case $lsbmajdistrelease {
 '5':{
   **  service { syslog:
   **  ensure = runing,
   **  enable = true,
   **  require =
 Class[syslog::config],
   **  }
 }

 '6':{
   **  service { rsyslog:
   **  ensure = runing,
   **  enable = true,
   **  require =
 Class[syslog::config],
   **  }
 }
 }
 }


 class syslog {
 include syslog::install, syslog::config, syslog::service
 }


 Thanks in advance :-)
 Przemek

  --
 You received this message because you are subscribed to a topic in the
 Google Groups Puppet Users group.
 To unsubscribe from this topic, visit
 https://groups.google.com/d/topic/puppet-users/vJeR5M2-TS0/unsubscribe?hl=en
 .
 To unsubscribe from this group and all its topics, send an email to
 puppet-users+unsubscr...@googlegroups.com.
 To post to this group, send email to puppet-users@googlegroups.com.
 Visit this group at http://groups.google.com/group/puppet-users?hl=en.
 For more options, visit https://groups.google.com/groups/opt_out.




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

[Puppet Users] Re: How to optimize puppet class/module code ?

2013-04-09 Thread Stefan Heijmans
Or checkout this one from Ken Barber; modern module development 
http://www.slideshare.net/PuppetLabs/modern-module-development-ken-barber-2012-edinburgh-puppet-camp
http://www.youtube.com/watch?v=zNXSKv6987g
 

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




Re: [Puppet Users] Re: How to optimize puppet class/module code ?

2013-04-09 Thread ForumUser
I have looked at this example. But what is a difference between 'File' and 
'file' keyword ?
Where I can read more about it ?

On Tuesday, 9 April 2013 10:56:30 UTC+1, Gavin Williams wrote:

 http://soimasysadmin.com/2012/02/29/puppet-inheritance-revisited/ is one 
 I've got bookmarked... 

 HTH

 Gav


 On 9 April 2013 10:54, ForumUser p@cmcmarkets.com javascript:wrote:

 Hi Gavin,

 Can you suggest any URL where I could read about ::params classes (and 
 examples of course ;-) ) ?

 On Tuesday, 9 April 2013 10:47:40 UTC+1, Gavin Williams wrote:

 Hi there, 

 I think you're quickest win for making the code cleaner and easier would 
 be to create a ::params class, which sets the correct values for package, 
 file and service based on your distro. 

 Can then inherit this class on your ::install, ::config and ::service 
 classes. 

 I'm sure other people will chime in with some other ideas aswell :) 

 HTH

 Gav

 On Tuesday, 9 April 2013 10:36:51 UTC+1, ForumUser wrote:

 Hello all,

 I am trying to write a syslog module for our small puppet installation.
 Since I'd like to learn how to write puppet classes/modules I would 
 avoid
 modules from puppet labs forge (at least for now).

 This module is going to be deployed on RH 5 _and_ 6.
 In our infrastructure each RH line (5 or 6) is configured differently:
 RH 5 uses sysklogd, RH 6 uses rsyslog.

 I have written a class but as you can see it has a lot of redundant 
 code.
 Can I use any puppet syntax to make it more elegant (and easier to 
 maintain :-) ) ?
 Can you suggest anything ?

 class syslog::install {
 case $lsbmajdistrelease {
 '5':{
   **  package { sysklogd:
   **  ensure = present,
   **  }
 }

 '6':{
   **  package { rsyslog:
   **  ensure = present,
   **  }
 }
 }
 }

 class syslog::config {
 case $lsbmajdistrelease {
 '5':{
   **  file{ /etc/syslog.conf:
   **  ensure = present,
   **  owner = 'root',
   **  group = 'root',
   **  mode = 0644,
   **  source = 
 puppet:///modules/syslog/**syslog.conf,
   **  require = 
 Class[syslog::install],
   **  notify = 
 Class[syslog::service],
   **  }
 }

 '6':{
   **  file{ /etc/rsyslog.conf:
   **  ensure = present,
   **  owner = 'root',
   **  group = 'root',
   **  mode = 0644,
   **  source = 
 puppet:///modules/syslog/**rsyslog.conf,
   **  require = 
 Class[syslog::install],
   **  notify = 
 Class[syslog::service],
   **  }
 }
 }
 }

 class syslog::service {
 case $lsbmajdistrelease {
 '5':{
   **  service { syslog:
   **  ensure = runing,
   **  enable = true,
   **  require = 
 Class[syslog::config],
   **  }
 }

 '6':{
   **  service { rsyslog:
   **  ensure = runing,
   **  enable = true,
   **  require = 
 Class[syslog::config],
   **  }
 }
 }
 }


 class syslog {
 include syslog::install, syslog::config, syslog::service
 }


 Thanks in advance :-)
 Przemek

  -- 
 You received this message because you are subscribed to a topic in the 
 Google Groups Puppet Users group.
 To unsubscribe from this topic, visit 
 https://groups.google.com/d/topic/puppet-users/vJeR5M2-TS0/unsubscribe?hl=en
 .
 To unsubscribe from this group and all its topics, send an email to 
 puppet-users...@googlegroups.com javascript:.
 To post to this group, send email to puppet...@googlegroups.comjavascript:
 .
 Visit this group at http://groups.google.com/group/puppet-users?hl=en.
 For more options, visit https://groups.google.com/groups/opt_out.
  
  




-- 
You received this message because you are subscribed to the Google Groups 
Puppet Users group.
To unsubscribe from this 

[Puppet Users] Re: Puppet parameterized class - include for declaration?

2013-04-09 Thread jcbollinger


On Monday, April 8, 2013 4:10:03 PM UTC-5, Shantanu wrote:


 The parameterized classes guide mentions that a parameterized class is 
 declared using following syntax [1]:

 class {'classname': }


 But the puppetlabs postgresql 
 modulehttps://github.com/puppetlabs/puppet-postgresql#setupmentions that a 
 parameterized class '
 postgresql::serverhttps://github.com/puppetlabs/puppet-postgresql/blob/master/manifests/server.pp'
  
 can be declared using 'include' syntax [2]. 

 So is 'include' syntax supported for parameterized classes now?


The 'include' function has always worked with parameterized classes.  It 
just doesn't bind any parameter values to the named class.  Indeed, the 
parameterized-style class declaration syntax is better viewed as a *parameter 
binding* syntax, with a side effect of declaring the class.  That makes it 
a lot easier to understand its constraints -- principally, that if a 
parameterized-style class declaration is used, for a given class then it 
must be the first declaration of that class that is evaluated. (Any number 
of 'include' declarations may be used for the same class.)

Using the 'include' function with parameterized classes makes especial 
sense when relying exclusively on Puppet 3's automated hiera-based data 
binding, because there is nothing but downside to using empty 
parameterized-style class declarations.

Note, too, that you can use (empty) parameterized declarations for 
UNparameterized classes.  But don't do that.


John


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




[Puppet Users] Re: How to optimize puppet class/module code ?

2013-04-09 Thread ForumUser
Hi there,

after reading the code I have changed my puppet code to the following
(thanks ! - it is now much more readable :-) ).
But I don't know how to change the source = from syslog::config
class to be universal.
Could you please help me ?

class syslog::params {
case $lsbmajdistrelease {
'5':{
$syslog_package_name = 'sysklogd'
$syslog_syslog_config = '/etc/
syslog.conf'
$syslog_service_name = 'syslog'
}

'6':{
$syslog_package_name = 'rsyslog'
$syslog_syslog_config = '/etc/
rsyslog.conf'
$syslog_service_name = 'rsyslog'
}
}
}

class syslog::install {
package { $syslog::params::syslog_package_name:
ensure = installed,
}
}

class syslog::config {
file{ $syslog::params::syslog_config:
ensure = present,
owner = 'root',
group = 'root',
mode = 0644,
source = puppet:///modules/syslog/syslog.conf,
require = Class[syslog::install],
notify = Class[syslog::service],
}
}

class syslog::service {
service { $syslog::params::syslog_service_name:
ensure = runing,
enable = true,
require = Class[syslog::config],
}
}

class syslog {
include syslog::params, syslog::install, syslog::config,
syslog::service
}


On 9 Apr, 05:47, Gavin Williams fatmc...@gmail.com wrote:
 Hi there,

 I think you're quickest win for making the code cleaner and easier would be
 to create a ::params class, which sets the correct values for package, file
 and service based on your distro.

 Can then inherit this class on your ::install, ::config and ::service
 classes.

 I'm sure other people will chime in with some other ideas aswell :)

 HTH

 Gav







 On Tuesday, 9 April 2013 10:36:51 UTC+1, ForumUser wrote:

  Hello all,

  I am trying to write a syslog module for our small puppet installation.
  Since I'd like to learn how to write puppet classes/modules I would avoid
  modules from puppet labs forge (at least for now).

  This module is going to be deployed on RH 5 _and_ 6.
  In our infrastructure each RH line (5 or 6) is configured differently:
  RH 5 uses sysklogd, RH 6 uses rsyslog.

  I have written a class but as you can see it has a lot of redundant code.
  Can I use any puppet syntax to make it more elegant (and easier to
  maintain :-) ) ?
  Can you suggest anything ?

  class syslog::install {
          case $lsbmajdistrelease {
                  '5':    {
                                  package { sysklogd:
                                          ensure = present,
                                  }
                          }

                  '6':    {
                                  package { rsyslog:
                                          ensure = present,
                                  }
                          }
          }
  }

  class syslog::config {
          case $lsbmajdistrelease {
                  '5':    {
                                  file    { /etc/syslog.conf:
                                          ensure = present,
                                          owner = 'root',
                                          group = 'root',
                                          mode = 0644,
                                          source =
  puppet:///modules/syslog/syslog.conf,
                                          require =
  Class[syslog::install],
                                          notify = Class[syslog::service],
                                  }
                          }

                  '6':    {
                                  file    { /etc/rsyslog.conf:
                                          ensure = present,
                                          owner = 'root',
                                          group = 'root',
                                          mode = 0644,
                                          source =
  puppet:///modules/syslog/rsyslog.conf,
                                          require =
  Class[syslog::install],
                                          notify = Class[syslog::service],
                                  }
                          }
          }
  }

  class syslog::service {
          case $lsbmajdistrelease {
                  '5':    {
                                  service { syslog:
                                          ensure = runing,
                                          enable = true,
                                          require = Class[syslog::config],
                                  }
                          }

                  '6':    {
                                  service { 

[Puppet Users] Re: puppet uninstall package

2013-04-09 Thread jcbollinger


On Monday, April 8, 2013 3:46:40 AM UTC-5, Francesco wrote:

 Hy I m a new user in world puppet
 I have installed a packge test on a node screen without problem
 Now i want to try to uninstall it but without success. This is the file 
 configuration
 this is my file init.pp
 package {screen-4.0.3-16.el6:
 ensure= absent
 }

 #package and purge its config files
 package {screen-4.0.3-16.el6:
 ensure = purged
 }

 this is the path of my manifest /etc/puppet/modules/screen/manifests
 this is the command that I execute to remove package screen
  puppet agent --server=puppet..I

 this is the answer

 Info: Retrieving plugin
 Info: Caching catalog for node.xx.xx.x
 Info: Applying configuration version '1365406267'
 Notice: Finished catalog run in 0.08 seconds
 Effectively screen is already installed

 Thank you in advance
 I m going mad



Puppet is not parsing your module's manifest.  It would fail with a parse 
error if it tried to do.

I think you have a misconception: installing or creating a module in your 
module path does not in itself cause any declarations in any of its 
manifests to be applied to client nodes.  At a typical site, there are 
multiple kinds of nodes that must be configured differently, sometimes 
including even special one-offs.  Puppet therefore has mechanisms for 
assigning specific resource declarations and collections of resource 
declarations to clients.  It assigns only those declarations.

Unless you configure it specially, the master starts with 
puppet-path/manifests/site.pp (not init.pp -- that's for modules).  
Declarations in that file apply to all nodes, and it is typical (at least 
when starting with Puppet) to use node declarations to tell Puppet which 
declarations to apply to each particular client.  For the time being, 
however you can define just a default node in which you declare the 
appropriate class from your 'screen' module:

node default {
  include 'screen'
}

Puppet determines where to look for the manifest containing class 'screen's 
definition based on the class name.  Class definitions are usually assumed 
to be in files classname.pp in directories corresponding to their module 
and any intermediate namespaces.  Classes that have the same name as the 
module in which they appear are special, however: they should be in files 
named init.pp in their module's manifests directory.  In your case that 
would be /etc/puppet/modules/screen/manifests/init.pp.  That file should 
contain this:

class screen {
  package { 'screen':
ensure = 'purged'
  }
}


Note that the version and release codes are NOT part of the package name, 
and if putting them in happens to work in any given context then that is a 
happenstance on which you should not rely and from which you should not 
draw any conclusions.  To ensure that a specific version/release of the 
package was installed, you would use the 'ensure' parameter: ensure = 
'4.0.3-16.el6'.  On the other hand, a lot of people don't care exactly 
which version (ensure = 'installed') or want the latest available version, 
whatever that happens to be (ensure = 'latest').

Note also that there can be only one declaration for package 'screen' for 
any given node.  Puppet does not allow multiple declarations for the same 
resource; this helps you ensure internal consistency of your manifests.


John

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




[Puppet Users] Re: Announce: Hiera 1.2.0 Available

2013-04-09 Thread windowsrefund

Personally, I'm not looking forward to dealing with this deep merge thing 
at all and would like to see it ripped out. When someone takes the time to 
properly organize their backend data along with a sane hierarchy, there's 
no need for this kind of overhead. 

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




[Puppet Users] install multiple versions with gem provider

2013-04-09 Thread Marc Genou
We usually run apps with a couple of versions of the same gem.
Is it possible to do that with an only manifest?

PS: I am a little noob with puppet yet

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




[Puppet Users] Puppet mount fails due to kernel module

2013-04-09 Thread Stack Kororā
Greetings!

I am having a problem with puppet mounting a device and am hoping someone 
can help. Here is the short version, if you have questions or need more 
detail, please feel free to ask.

I have a Panasas storage device on my network on which my home directory 
resides. The Panasas device mounts the filesystem via a kernel module 
(which they call DirectFlow). Thus, when I run as root ` mount /home` a 
kernel module is loaded and then the filesystem is loaded. I have certain 
restrictions in place on my servers which I have to keep in line (Puppet is 
AMAZING for this!) and the mounting of /home is one of those restrictions.

I have in my puppet manifest this:
mount { /home : 
ensure = mounted, 
atboot = true, 
device = panfs://192.168.1.20/home, 
fstype = panfs, 
options = defaults,nodev, 
remounts = true, 
pass = 2, 
dump = 1, 
} 

If I run, as root, `puppet agent --test` then the /home filesystem is 
mounted and everything is wonderful. However, if I let the puppet agent 
daemon try to mount /home I get errors in the log files without the mount 
ever happening.

Apr  2 13:01:08 testnode puppet-agent[29955]: 
(/Stage[main]/mount::Homefilesystem/Mount[/home]/ensure) ensure changed 
'unmounted' to 'mounted'
Apr  2 13:01:08 testnode puppet-agent[29955]: 
(/Stage[main]/mount::Homefilesystem/Mount[/home]) Could not evaluate: 
Execution of '/bin/mount -o defaults,nodev /home' returned 1: mount.panfs 
error: cannot init pan_sock_ping 0x239d (pan_sock: protected socket, 
permission denied) 

Neither Panasas representatives I talked to seemed to have any idea what 
Puppet was before I spoke to them. My coworkers, the Panasas reps, and I 
brainstormed a few ideas but only three seemed to work:
* Have the puppet daemon run as root instead of the puppet user (which is 
an obvious issue)
* Use auto-mount (which works but is causing some oddities in a few of my 
jobs which I am fairly sure is due to the latency of the mount)
* Have Puppet call a script with the setuid bit configured which can mount 
/home (which doesn't 100% address my needs of puppet being able to remount 
if one of those parameters is wrong/missing/changed/whatever without that 
script getting complicated).

Before I commit towards one option, I thought I would ask the other Puppet 
masters out there for ideas. Given the popularity of Puppet in datacenters 
as well as the popularity of SAN devices in datacenters I figure someone 
out there has probably solved this problem. I am hoping that their solution 
is better then the ones we have come up with. :-D

Can anyone help me out with this?

Thank you in advance!!

Stack

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




[Puppet Users] Realize a virtual parametriced class

2013-04-09 Thread Israel Calvete
Hi,

I try some like this...

I need  virtual parametriced class.

*@class {backup::client:*
*   backup = xx*
*}*

Is posible to do something like this? If 


To realice...

This don't works. (err: Could not retrieve catalog from remote server: 
Error 400 on SERVER: Resource* type class *doesn't exist at ..)

*Class | title == 'backup::client' | {*
*backup = $backup_remote*
*}*

This works fine but i can't set any parameter ( I need set the param value)

*realize('backup::client')*


So, the question is... How i can do to realize a virtual parametriced class?

Thanks.




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




RE: [Puppet Users] Puppet mount fails due to kernel module

2013-04-09 Thread Steven Nemetz
This is an OS privilege issue. So puppet has to working within what can be done 
on the OS.
By default mount requires root privileges to make changes. This is why it will 
work as root but not as puppet.
So you either run as root or set it up so a non-root user can mount

Some OS's have options to allow mount to work for non-root users. Check your 
mount man page and test.
Load a different app to handle user mounts. There are other apps available for 
this type of thing. Fuse and apps based on fuse are the most common, but not 
the only ones available.

Hope that helps a little,

Steven

Date: Mon, 8 Apr 2013 21:02:26 -0700
From: i.am.st...@gmail.com
To: puppet-users@googlegroups.com
Subject: [Puppet Users] Puppet mount fails due to kernel module

Greetings!
I am having a problem with puppet mounting a device and am hoping someone can 
help. Here is the short version, if you have questions or need more detail, 
please feel free to ask.
I have a Panasas storage device on my network on which my home directory 
resides. The Panasas device mounts the filesystem via a kernel module (which 
they call DirectFlow). Thus, when I run as root ` mount /home` a kernel module 
is loaded and then the filesystem is loaded. I have certain restrictions in 
place on my servers which I have to keep in line (Puppet is AMAZING for this!) 
and the mounting of /home is one of those restrictions.
I have in my puppet manifest this:mount { /home :

   
ensure = mounted,

   
atboot = true,

   
device = panfs://192.168.1.20/home,

   
fstype = panfs,

   
options = defaults,nodev,

   
remounts = true,

   
pass = 2,

   
dump = 1,

   
} 

If I run, as root, `puppet agent --test` then the /home filesystem is mounted 
and everything is wonderful. However, if I let the puppet agent daemon try to 
mount /home I get errors in the log files without the mount ever happening.
Apr  2 13:01:08 testnode puppet-agent[29955]: 
(/Stage[main]/mount::Homefilesystem/Mount[/home]/ensure) ensure changed 
'unmounted' to 'mounted'Apr  2 13:01:08 testnode puppet-agent[29955]: 
(/Stage[main]/mount::Homefilesystem/Mount[/home]) Could not evaluate: Execution 
of '/bin/mount -o defaults,nodev /home' returned 1: mount.panfs error: cannot 
init pan_sock_ping 0x239d (pan_sock: protected socket, permission denied) 
Neither Panasas representatives I talked to seemed to have any idea what Puppet 
was before I spoke to them. My coworkers, the Panasas reps, and I brainstormed 
a few ideas but only three seemed to work:
* Have the puppet daemon run as root instead of the puppet user (which is an 
obvious issue)* Use auto-mount (which works but is causing some oddities in a 
few of my jobs which I am fairly sure is due to the latency of the mount)* Have 
Puppet call a script with the setuid bit configured which can mount /home 
(which doesn't 100% address my needs of puppet being able to remount if one of 
those parameters is wrong/missing/changed/whatever without that script getting 
complicated).
Before I commit towards one option, I thought I would ask the other Puppet 
masters out there for ideas. Given the popularity of Puppet in datacenters as 
well as the popularity of SAN devices in datacenters I figure someone out there 
has probably solved this problem. I am hoping that their solution is better 
then the ones we have come up with. :-D
Can anyone help me out with this?
Thank you in advance!!
Stack



-- 

You received this message because you are subscribed to the Google Groups 
Puppet Users group.

To unsubscribe from this group and stop receiving emails from it, send an email 
to puppet-users+unsubscr...@googlegroups.com.

To post to this group, send email to puppet-users@googlegroups.com.

Visit this group at http://groups.google.com/group/puppet-users?hl=en.

For more options, visit https://groups.google.com/groups/opt_out.

 

 
  

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




Re: [Puppet Users] Puppet mount fails due to kernel module

2013-04-09 Thread Jonathan Stanton
Hello,

On Apr 9, 2013, at 12:02 AM, Stack Kororā wrote:

 Greetings!
 
 I am having a problem with puppet mounting a device and am hoping someone 
 can help. Here is the short version, if you have questions or need more 
 detail, please feel free to ask.
 
 I have a Panasas storage device on my network on which my home directory 
 resides. The Panasas device mounts the filesystem via a kernel module 
 (which they call DirectFlow). Thus, when I run as root ` mount /home` a 
 kernel module is loaded and then the filesystem is loaded. I have certain 
 restrictions in place on my servers which I have to keep in line (Puppet is 
 AMAZING for this!) and the mounting of /home is one of those restrictions.
 
 I have in my puppet manifest this:
 mount { /home : 
ensure = mounted, 
atboot = true, 
device = panfs://192.168.1.20/home, 
fstype = panfs, 
options = defaults,nodev, 
remounts = true, 
pass = 2, 
dump = 1, 
} 
 
 If I run, as root, `puppet agent --test` then the /home filesystem is 
 mounted and everything is wonderful. However, if I let the puppet agent 
 daemon try to mount /home I get errors in the log files without the mount 
 ever happening.
 

The puppet agent that runs on your server is normally running as root (it has 
to be to have privileges to make all of the change it can do). However a number 
of Linux operating systems have further security protection beyond just root 
which can restrict what daemons can do but does not restrict what a 'human' 
logged in as root may be able to do. For example all of the Redhat Enterprise 
Linux (and Fedora) use Selinux which will normally limit what even root 
executing dameon processes can do in order to protect the system from attacks. 
Other OS's like OpenBSD/FreeBSD or Linux distributions have similar 
capabilities that go by different names. 

If those are enabled, you may find that things you can do as a root user don't 
work when run from cron or from a daemon process. 

If this is RHEL/Centos then try putting SElinux in permissive mode (as root 
user run 'setenforce Permissive' ) and see if you have the same problem. If so 
then that identifies the issue and you can either generate a custom selinux 
policy for puppet, run in permissive, or change the way the mount happens. What 
to do depends on your organization security policy. 

Since it works when you run puppet agent --test the manifest itself is probably 
fine and the puppet mount code is able to load your module ok. 

 Apr  2 13:01:08 testnode puppet-agent[29955]: 
 (/Stage[main]/mount::Homefilesystem/Mount[/home]/ensure) ensure changed 
 'unmounted' to 'mounted'
 Apr  2 13:01:08 testnode puppet-agent[29955]: 
 (/Stage[main]/mount::Homefilesystem/Mount[/home]) Could not evaluate: 
 Execution of '/bin/mount -o defaults,nodev /home' returned 1: mount.panfs 
 error: cannot init pan_sock_ping 0x239d (pan_sock: protected socket, 
 permission denied) 
 
 Neither Panasas representatives I talked to seemed to have any idea what 
 Puppet was before I spoke to them. My coworkers, the Panasas reps, and I 
 brainstormed a few ideas but only three seemed to work:
 * Have the puppet daemon run as root instead of the puppet user (which is 
 an obvious issue)

This should already be happening. Only the 'puppet master' runs as a regular 
'puppet' user, the agent normally runs as root. 

 * Use auto-mount (which works but is causing some oddities in a few of my 
 jobs which I am fairly sure is due to the latency of the mount)
 * Have Puppet call a script with the setuid bit configured which can mount 
 /home (which doesn't 100% address my needs of puppet being able to remount 
 if one of those parameters is wrong/missing/changed/whatever without that 
 script getting complicated).

I would not recommend this. It is fragile and as you say loses much of the 
benefit of puppet. 

 
 Before I commit towards one option, I thought I would ask the other Puppet 
 masters out there for ideas. Given the popularity of Puppet in datacenters 
 as well as the popularity of SAN devices in datacenters I figure someone 
 out there has probably solved this problem. I am hoping that their solution 
 is better then the ones we have come up with. :-D
 
 Can anyone help me out with this?
 
 Thank you in advance!!
 
 Stack
 

Hope this helps.

Jonathan
---
Jonathan Stanton jonat...@spreadconcepts.com
Spread Group Messaging  www.spread.org
Spread Concepts LLC www.spreadconcepts.com
---





 -- 
 You received this message because you are subscribed to the Google Groups 
 Puppet Users group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 

[Puppet Users] Re: mcollective getaddrinfo: Name or service not known

2013-04-09 Thread Ming Qian
I encountered the same exactly problem. 
The reason for my case is that the error was caused by the /etc/hosts. 
The agent node's /etc/hosts didn't contain the master node's host name, 
although I added its IP named puppet in /etc/hosts before. 








On Tuesday, August 21, 2012 7:46:52 PM UTC-4, James Trier wrote:

 I'm getting these errors when running 'puppet agent --test' after doing a 
 new installation of an agent:

 err: 
 /Stage[main]/Pe_mcollective::Plugins/File[/opt/puppet/libexec/mcollective/mcollective/security/sshkey.rb]/content:
  
 change from {md5}512f42272699eaa085c83d2cc67c27ea to 
 {md5}8fa3e9125fd917948445e3d2621d40e5 failed: Could not back up 
 /opt/puppet/libexec/mcollective/mcollective/security/sshkey.rb: 
 getaddrinfo: Name or service not known

 err: 
 /Stage[main]/Pe_mcollective::Posix/File[/etc/puppetlabs/mcollective/server.cfg]/content:
  
 change from {md5}a9c7335a83c5ac9f6a19bb195ea0c63e to 
 {md5}db6aa935c128b6d7bd12b41dfbe33b91 failed: Could not back up 
 /etc/puppetlabs/mcollective/server.cfg: getaddrinfo: Name or service not 
 known

 I know the above error is commonly related to DNS but I'm not sure where 
 the disconnect it. These are brand new agent installations. server field in 
 the agent puppet.conf is the server hostname which is also the listed 
 certname shown when 'puppet master --configprint certname,certdnsnames' is 
 typed from the server (certdnsname is blank).

 Any help or direction?

 Thanks -- James




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




[Puppet Users] Re: replacing mkdir -p

2013-04-09 Thread Mike Power
I'll see if I can open source the component I wrote and upload it to puppet 
forge.  In this way the open source community can continue the debate about 
what is the best way to do this, while at the same time those who want can 
use some solution other than mkdir -p

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




[Puppet Users] Re: replacing mkdir -p

2013-04-09 Thread Klavs Klavsen
pls. post if you upload it to the forge or somewhere else.. would 
definetely be interested in getting rid of mkdir -p :)

Den tirsdag den 9. april 2013 18.56.33 UTC+2 skrev Mike Power:

 I'll see if I can open source the component I wrote and upload it to 
 puppet forge.  In this way the open source community can continue the 
 debate about what is the best way to do this, while at the same time those 
 who want can use some solution other than mkdir -p


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




[Puppet Users] puppet inverts dependencies?

2013-04-09 Thread Mike Power
Have anyone of you every seen puppet invert a dependency?


Say I have a class like so:
class jenkins {
user {jenkins:
ensure  = present,
}
}

That should form a dependency like so User[jenkins] = Class[jenkins].
That dependency means that the user jenkins will be done before Class 
jenkins.  However every once (twice now) something disturbs pupplets 
delicate sensibilities and it seems to create a new dependency that goes 
backward from what it is supposed to.  This causes a dependency cycle and 
breaks my catalog.  Right now I have a git module checking out the source 
for a jenkins server.  I end up with a dependency cycle like this:
(Exec[git_http://mich...@github.com/somevalidgiturl] = 
Git::Repo[http://mich...@github.com/somevalidgiturl] = Class[Jenkins] = 
User[jenkins] = Exec[git_http://mich...@github.com/somevalidgiturl])

Notice how it now says Class[Jenkins] needs to be done before 
User[jenkins].  But the jenkins user is defined in the class jenkins.  So 
the dependency should be the other way, It seems to have inverted that 
dependency.  I have found that if I tweak with related components of the 
catalog then it will go away.

https://projects.puppetlabs.com/issues/19718

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




[Puppet Users] testing static manifests

2013-04-09 Thread Bernardo Costa
I would like to know how do people test a manifest that is basically static 
without any parameter. By testing it, I mean not only check the syntax or 
any invalid directive, but if the configuration there written is 
implementing the expected behaviour when used. Of course, one way is just 
point a machine to my puppet master and see that it has the right 
configuration. But wouldn't exist another way to check this ?

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




[Puppet Users] Nagios Module Facter Lib 'mountpoints.rb' Causing Windows Clients to Not Operate Properly

2013-04-09 Thread phundisk
I recently downloaded the nagios puppet module (
https://github.com/duritong/puppet-nagios) for my environment.  I have 
noticed that the lib file 'mountpoints.rb' for this module causes issue 
when a windows puppet node is run.  When I remove this library file 
completely, none of the issues I am seeing happen anymore.  Does anyone 
know of a good way to modify the mountpoints.rb file to be more windows 
friendly?  Or does anyone know where this is actually failing? 
 I attached the mountspoints.rb below.

*The following are the symtoms I am seeing during a puppet run on windows*
Using Facter::Util::Resolution.exec with a shell built-in is deprecated. 
Most built-ins can be replaced with native ruby commands. If you really 
have to run a built-in, pass cmd /c your_builtin as a command
err: /Service[NSClientpp]: Could not evaluate: Could not find init script 
for 'NSClientpp'
err: /Service[puppet]: Could not evaluate: Could not find init script for 
'puppet'

*mountpoints.rb*
begin

  mountpoints = []
  # we show devices, but we avoid outputing duplicate devices
  devices = []
  Facter.add(mountpoints) do
ignorefs = [NFS, nfs, nfs4, nfsd, afs, binfmt_misc, proc, 
smbfs, 
autofs, iso9660, ncpfs, coda, devpts, ftpfs, 
devfs, 
mfs, shfs, sysfs, cifs, lustre_lite, tmpfs, 
usbfs, udf,
fusectl, fuse.snapshotfs, rpc_pipefs]
begin
  require 'filesystem'
rescue Exception = e
  confine :kernel = :linux
  ENV[PATH]=/bin:/sbin:/usr/bin:/usr/sbin
  fs_source = nil
  if FileTest.exists?(/etc/mtab)
fs_source = /etc/mtab 
  elsif FileTest.exists?(/proc/mounts)
fs_source = /proc/mounts 
  end

  mounts = File.read(fs_source).split(\n)
  mounts.each do |mount|
mount = mount.split( )
if ((not ignorefs.include?(mount[2]))  (mount[3] !~ /bind/)  
(not devices.include?(mount[0]))  (not mountpoints.include?(mount[1])))
  mountpoints.push(mount[1])
end
devices.push(mount[0]) if not devices.include?(mount[0])
  end
else
  FileSystem.mounts.each do |m| 
if ((not ignorefs.include?(m.fstype))  (m.options !~ /bind/)  
!devices.include?(mount[0]))
  mountpoints.push(m.mount)
end
devices.push(m.mount) if not devices.include?(m.mount)
  end
end
setcode do
  mountpoints.join(,)
end
  end
  Facter.add(devices) do
setcode do
  devices.join(,)
end
  end

rescue Exception = e
end


-- 
_
This email and any files transmitted with it are confidential and intended 
solely for the addressee.  If you received this email in error, please do 
not disclose the contents to anyone; kindly notify the sender by return 
email and delete this email and any attachments from your system.

© 2011 Currensee Inc. is a member of the National Futures Association (NFA) 
Member ID 0403251 | Over the counter retail foreign currency (Forex) 
trading may involve significant risk of loss. It is not suitable for all 
investors and you should make sure you understand the risks involved before 
trading and seek independent advice if necessary. Performance, strategies 
and charts shown are not necessarily predictive of any particular result 
and past performance is no indication of future results. Investor returns 
may vary from Trade Leader returns based on slippage, fees, broker spreads, 
volatility or other market conditions.

Currensee Inc | 54 Canal St 4th Floor | Boston, MA 02114 | +1.617.624.3824

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




[Puppet Users] Re: puppet uninstall package

2013-04-09 Thread Francesco
Now eureka I have uninstall screen with rpm and I have created the 
following 
I begun from screen installation again :)))
/etc/puppet/modules/screen/manifests/init.pp

class screen {

  package { 'screen':
ensure = 'present'
}
}

under this path I ve declared class

/etc/puppet/manifests/site.pp

John I hope to understand what you are trying to say to me

But where I can define which packet must have a node rather than another
Example where can i set if node 1 can have screen an node 2 can have vim 
but not screen and node 3 apache and not vim?? perhups in node.pp ??
Thank you in advance and to Andy too

#import 'nodes.pp'
$puppetserver = 'puppet.xxx.xxx.xxx.it'

node default {
include 'screen'

include 'sudo'
}

node 'lurtz.interno.regione.lazio.it' {
include screen
}




Il giorno lunedì 8 aprile 2013 10:46:40 UTC+2, Francesco ha scritto:

 Hy I m a new user in world puppet
 I have installed a packge test on a node screen without problem
 Now i want to try to uninstall it but without success. This is the file 
 configuration
 this is my file init.pp
 package {screen-4.0.3-16.el6:
 ensure= absent
 }

 #package and purge its config files
 package {screen-4.0.3-16.el6:
 ensure = purged
 }

 this is the path of my manifest /etc/puppet/modules/screen/manifests
 this is the command that I execute to remove package screen
  puppet agent --server=puppet..I

 this is the answer

 Info: Retrieving plugin
 Info: Caching catalog for node.xx.xx.x
 Info: Applying configuration version '1365406267'
 Notice: Finished catalog run in 0.08 seconds
 Effectively screen is already installed

 Thank you in advance
 I m going mad

 Cheers








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




Re: [Puppet Users] Puppet mount fails due to kernel module

2013-04-09 Thread Stack Kororā


On Tuesday, April 9, 2013 9:56:11 AM UTC-5, Jonathan Stanton wrote:

 [snip] 

If those are enabled, you may find that things you can do as a root user 
 don't work when run from cron or from a daemon process. 

 If this is RHEL/Centos then try putting SElinux in permissive mode (as 
 root user run 'setenforce Permissive' ) and see if you have the same 
 problem. If so then that identifies the issue and you can either generate a 
 custom selinux policy for puppet, run in permissive, or change the way the 
 mount happens. What to do depends on your organization security policy. 

 
Thanks Jonathan!
That was exactly the problem. SELinux runs on these systems and I was so 
focused on the puppet part that I missed the SELinux part. Doh!
 

 [snip]

This should already be happening. Only the 'puppet master' runs as a 
 regular 'puppet' user, the agent normally runs as root. 


Thanks for letting me know. I thought both ran as puppet before now. 



I put SELinux into permissive mode and let the puppet agent do its thing 
successfully! Hooray!! But I really need SELinux...Any suggestions on 
getting this to work through SELinux* ? 

* I completely understand that this is not a Puppet problem anymore so a 
response of 'Go harass the SELinux list' won't hurt my feelings any. But it 
is worth it to ask as I am sure there are others who deal with Puppet and 
SELinux. 
:-) 

Since SELinux is in permissive mode, I piped the relevant information from 
audit.log into audit2allow. 

$ tail -50 /var/log/audit/audit.log | grep -i panfs | audit2allow -m panfs 
module panfs 1.0; 

require { 
type node_t; 
type sysctl_vm_t; 
type mount_t; 
class capability net_raw; 
class dir search; 
class file read; 
class rawip_socket { ioctl shutdown bind create getattr node_bind }; 
} 

#= mount_t == 
allow mount_t node_t:rawip_socket node_bind; 
allow mount_t self:capability net_raw; 
allow mount_t self:rawip_socket { bind create ioctl shutdown getattr }; 
allow mount_t sysctl_vm_t:dir search; 
allow mount_t sysctl_vm_t:file read; 

Since that looked good, I updated the module in SELinux 
$ tail -50 /var/log/audit/audit.log | grep -i panfs | audit2allow -M panfs 
$ semodule -i panfs 
$semodule -l | grep panfs 
panfs1.0 

Then I turned SELinux back on with setenforce and reset puppet with 
`service puppet restart`. I didn't get any SELinux audit messages, but it 
still doesn't mount. It looks like (to me anyway) that the mounting process 
is still trying to get to resources that it can't access because they are 
being blocked by SELinux. However, I was really hoping that it would put 
something in to the audit.log file, but nothing changed. Any ideas as to 
why it didn't work? 

Apr  9 16:22:00 test puppet-agent[32086]: 
(/Stage[main]/Cisaudit::Homefilesystem/Mount[/home]/ensure) ensure changed 
'unmounted' to 'mounted' 
Apr  9 16:22:01 test puppet-agent[32086]: 
(/Stage[main]/Cisaudit::Homefilesystem/Mount[/home]) Could not evaluate: 
Execution of '/bin/mount -o defaults,nodev /home' returned 1: mount.panfs 
warning: couldn't ping address 192.168.1.20:3095 using 192.168.1.11:1, 
0x239d (pan_sock: protected socket, permission denied) 
Apr  9 16:22:01 test puppet-agent[32086]: 
(/Stage[main]/Cisaudit::Homefilesystem/Mount[/home]) mount.panfs warning: 
This mount still may succeed, but one or more local interfaces (listed 
below) failed communicate with the Panasas realm during mount.  This 
suggests that a route cannot be established between these local 
interface(s) and the system.  A client sends a list of IP addresses on 
which the Panasas storage system may establish a connection.  If any one of 
these addresses should be excluded from the mount time check, use the 
'callback-network-disallow' or 'callback-address-disallow' mount options. 
 See 'man 8 mount.panfs' for more details on PanFS mount options. 
 Excluding the interface from the check at mount time will avoid long 
running mount commands. 
Apr  9 16:22:01 test puppet-agent[32086]: 
(/Stage[main]/Cisaudit::Homefilesystem/Mount[/home]) mount.panfs: failed 
local addresses: 192.168.1.11:1 
Apr  9 16:22:01 test puppet-agent[32086]: 
(/Stage[main]/Cisaudit::Homefilesystem/Mount[/home]) mount.panfs: 
successful local addresses: 
Apr  9 16:22:01 test puppet-agent[32086]: 
(/Stage[main]/Cisaudit::Homefilesystem/Mount[/home]) mount.panfs error: 
couldn't ping realm servers for mount 
Apr  9 16:22:01 test puppet-agent[32086]: 
(/Stage[main]/Cisaudit::Homefilesystem/Mount[/home]) mount.panfs error: 
cannot process mount options in postinit step 0x7 (Invalid argument) 

Thanks again! I appreciate the help!

-- 
You received this message because you are subscribed to the Google Groups 
Puppet Users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to puppet-users+unsubscr...@googlegroups.com.
To post to this group, send email to puppet-users@googlegroups.com.

Re: [Puppet Users] How to executing puppet module via puppetrun

2013-04-09 Thread Peter Brown
As far as I am aware puppetrun (Which is being phased out) only tells a
client node to start a normal puppet run.
I don't believe it is possible to tell it to only do particular parts of
it's manifest.

puppet apply is probably more useful to you but as far as I am aware it
only runs on the node itself so you will need some way of triggering it
remotely.

Please note I have only user puppet run and have never used puppet apply or
had a need to use it so I don't know much else.

Hope that helps.

Pete


On 9 April 2013 11:51, Love Anthony Vish lov3v...@gmail.com wrote:

 Hello Guys,

 I am able to execute puppetrun on specified client.
 #puppetrun mars.example.co.in

 But the above command only load or read .pp file under *
 /etc/puppet/manifests*.

 Is there any way, Where i can describe my own module or specified module
 for specific puppet client.

 e.g. #puppetrun jupiter.example.co.in (and it should load
 /etc/puppet/modules/sudo/manifests/.pp)

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




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




Re: [Puppet Users] Re: Puppet parameterized class - include for declaration?

2013-04-09 Thread Peter Brown
On 9 April 2013 17:18, joe lava...@gmail.com wrote:

 You can include a parameterized class as long as all it's parameters have
 default values.


or you use hiera or an External Node Classifier to automagically set the
variables that don't have defaults or override that ones you need to.




 On Monday, April 8, 2013 3:10:03 PM UTC-6, Shantanu wrote:


 The parameterized classes guide mentions that a parameterized class is
 declared using following syntax [1]:

 class {'classname': }


 But the puppetlabs postgresql 
 modulehttps://github.com/puppetlabs/puppet-postgresql#setupmentions that a 
 parameterized class '
 postgresql::serverhttps://github.com/puppetlabs/puppet-postgresql/blob/master/manifests/server.pp'
 can be declared using 'include' syntax [2].

 So is 'include' syntax supported for parameterized classes now?

 --
 Shantanu


 1. 
 http://docs.puppetlabs.com/**guides/parameterized_classes.**htmlhttp://docs.puppetlabs.com/guides/parameterized_classes.html
 2. 
 https://github.com/puppetlabs/**puppet-postgresql#setuphttp://github.com/puppetlabs/puppet-postgresql#setup


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




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




[Puppet Users] Re: testing static manifests

2013-04-09 Thread joe
Testing of puppet manifests is done using rspec.

http://rspec-puppet.com/

https://puppetlabs.com/blog/the-next-generation-of-puppet-module-testing/

On Tuesday, April 9, 2013 1:46:32 PM UTC-6, Bernardo Costa wrote:

 I would like to know how do people test a manifest that is basically 
 static without any parameter. By testing it, I mean not only check the 
 syntax or any invalid directive, but if the configuration there written is 
 implementing the expected behaviour when used. Of course, one way is just 
 point a machine to my puppet master and see that it has the right 
 configuration. But wouldn't exist another way to check this ?

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




Re: [Puppet Users] Realize a virtual parametriced class

2013-04-09 Thread Peter Brown
This seems like entirely the wrong way to use classes.

Classes are a set of resources that can be applied to a node.

The easiest way to use classes is to include them in a node definition like
so

node 'blah.example.com' {
include blackup::client
}

if you need to set the variable for a class you can use hiera or an enc or
do something like this.

node 'blah.example.com' {
class{'backup::client':
backup = 'blah',
}

for more detailed explanations of classes please have a look here.
http://docs.puppetlabs.com/puppet/3/reference/lang_classes.html



On 9 April 2013 20:20, Israel Calvete icalv...@gmail.com wrote:

 Hi,

 I try some like this...

 I need  virtual parametriced class.

 *@class {backup::client:*
 *   backup = xx*
 *}*

 Is posible to do something like this? If


 To realice...

 This don't works. (err: Could not retrieve catalog from remote server:
 Error 400 on SERVER: Resource* type class *doesn't exist at ..)

 *Class | title == 'backup::client' | {*
 *backup = $backup_remote*
 *}*

 This works fine but i can't set any parameter ( I need set the param value)

 *realize('backup::client')*


 So, the question is... How i can do to realize a virtual parametriced
 class?

 Thanks.




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




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




[Puppet Users] hard reset with vcsrepo?

2013-04-09 Thread Schofield
Is it possible to use vcsrepo to remove uncommitted changes to git repo?  
Essentially I am hoping that vcsrepo can keep a local repo in sync with a a 
remote repo and revert any modified files and delete any untracked files in 
the local working directory that don't exist in the remote repo.

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




Re: [Puppet Users] How to executing puppet module via puppetrun

2013-04-09 Thread Love Anthony Vish
Thx Pete, at least i came to know *puppetrun (Which is being phased out) 
only tells a client node to start a normal puppet run.*

On Wednesday, April 10, 2013 5:06:42 AM UTC+5:30, Pete wrote:

 As far as I am aware puppetrun (Which is being phased out) only tells a 
 client node to start a normal puppet run.
 I don't believe it is possible to tell it to only do particular parts of 
 it's manifest.

 puppet apply is probably more useful to you but as far as I am aware it 
 only runs on the node itself so you will need some way of triggering it 
 remotely.

 Please note I have only user puppet run and have never used puppet apply 
 or had a need to use it so I don't know much else.

 Hope that helps.

 Pete


 On 9 April 2013 11:51, Love Anthony Vish lov3...@gmail.com 
 javascript:wrote:

 Hello Guys,

 I am able to execute puppetrun on specified client.
 #puppetrun mars.example.co.in

 But the above command only load or read .pp file under *
 /etc/puppet/manifests*. 

 Is there any way, Where i can describe my own module or specified module 
 for specific puppet client.

 e.g. #puppetrun jupiter.example.co.in (and it should load 
 /etc/puppet/modules/sudo/manifests/.pp)

  -- 
 You received this message because you are subscribed to the Google Groups 
 Puppet Users group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to puppet-users...@googlegroups.com javascript:.
 To post to this group, send email to puppet...@googlegroups.comjavascript:
 .
 Visit this group at http://groups.google.com/group/puppet-users?hl=en.
 For more options, visit https://groups.google.com/groups/opt_out.
  
  




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




Re: [Puppet Users] How to executing puppet module via puppetrun

2013-04-09 Thread Love Anthony Vish
Thx Pete, at least i came to know *puppetrun (Which is being phased out) 
only tells a client node to start a normal puppet run.*

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




Re: [Puppet Users] How to executing puppet module via puppetrun

2013-04-09 Thread Love Anthony Vish
Thx Pete, at least i came to know *puppetrun (Which is being phased out) 
only tells a client node to start a normal puppet run.*

On Wednesday, April 10, 2013 5:06:42 AM UTC+5:30, Pete wrote:

 As far as I am aware puppetrun (Which is being phased out) only tells a 
 client node to start a normal puppet run.
 I don't believe it is possible to tell it to only do particular parts of 
 it's manifest.

 puppet apply is probably more useful to you but as far as I am aware it 
 only runs on the node itself so you will need some way of triggering it 
 remotely.

 Please note I have only user puppet run and have never used puppet apply 
 or had a need to use it so I don't know much else.

 Hope that helps.

 Pete



  
  



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




Re: [Puppet Users] How to executing puppet module via puppetrun

2013-04-09 Thread Love Anthony Vish
Thx Pete, at least i understood *puppetrun (Which is being phased out) 
only tells a client node to start a normal puppet run.*

On Wednesday, April 10, 2013 5:06:42 AM UTC+5:30, Pete wrote:

 As far as I am aware puppetrun (Which is being phased out) only tells a 
 client node to start a normal puppet run.
 I don't believe it is possible to tell it to only do particular parts of 
 it's manifest.

 puppet apply is probably more useful to you but as far as I am aware it 
 only runs on the node itself so you will need some way of triggering it 
 remotely.

 Please note I have only user puppet run and have never used puppet apply 
 or had a need to use it so I don't know much else.

 Hope that helps.

 Pete


 On 9 April 2013 11:51, Love Anthony Vish lov3...@gmail.com 
 javascript:wrote:

 Hello Guys,

 I am able to execute puppetrun on specified client.
 #puppetrun mars.example.co.in

 But the above command only load or read .pp file under *
 /etc/puppet/manifests*. 

 Is there any way, Where i can describe my own module or specified module 
 for specific puppet client.

 e.g. #puppetrun jupiter.example.co.in (and it should load 
 /etc/puppet/modules/sudo/manifests/.pp)

  -- 
 You received this message because you are subscribed to the Google Groups 
 Puppet Users group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to puppet-users...@googlegroups.com javascript:.
 To post to this group, send email to puppet...@googlegroups.comjavascript:
 .
 Visit this group at http://groups.google.com/group/puppet-users?hl=en.
 For more options, visit https://groups.google.com/groups/opt_out.
  
  




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




Re: [Puppet Users] How to executing puppet module via puppetrun

2013-04-09 Thread Love Anthony Vish
Thx Pete, at least i understood *puppetrun (Which is being phased out) 
only tells a client node to start a normal puppet run.*

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