Re: [Puppet Users] Re: Resources existing in different operating systems.

2011-06-03 Thread Luke Bigum

Douglas,

If you don't use a conditional somewhere, how are you going to decide 
what resources are declared on what clients?


In that blog example, the classes are loaded based on the value of a 
fact reported by the Puppet client, in some ways more reliable than a 
variable defined in a Puppet master manifest. It's also not that bad a 
practice to conditionally include on variables declared at the top level 
(node.pp) - avoids variable scoping issues, a number of people on the 
list do that.


Using sub classes based on operating system also gives you the added 
advantage of tracking down problems sooner, a Puppet error will look like:


Foo::Redhat::File[foo.conf] ...

What approach would you like to see, conceptually? Maybe someone's done 
something similar with an ENC.


-Luke

On 03/06/11 05:25, Douglas Garstang wrote:
On Thu, Jun 2, 2011 at 12:36 PM, Douglas Garstang 
doug.garst...@gmail.com mailto:doug.garst...@gmail.com wrote:


So... I'm thinking about how to have puppet manage different
operating systems. It's one thing to use a selector to determine
the value of specific resources attribute, but what do you do when
a file may not exist on a specific O/S? You can't use a selector
in this case.

I really don't like the approach described here either...

http://m0dlx.com/blog/Puppet_manifests__a_multi_OS_style_guide.html

...where classes are loaded dynamically based on the value of a
variable.

What would best practice indicate?

Doug.


*jabs anyone that's prepared to be jabbed*



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



--
Luke Bigum

Information Systems
luke.bi...@lmax.com | http://www.lmax.com
LMAX, Yellow Building, 1A Nicholas Road, London W11 4AN



The information in this e-mail and any attachment is confidential and is 
intended only for the named recipient(s). The e-mail may not be disclosed or 
used by any person other than the addressee, nor may it be copied in any way. 
If you are not a named recipient please notify the sender immediately and 
delete any copies of this message. Any unauthorized copying, disclosure or 
distribution of the material in this e-mail is strictly forbidden. Any view or 
opinions presented are solely those of the author and do not necessarily 
represent those of the company.

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



Re: [Puppet Users] err: compile erro

2011-06-03 Thread Felix Frank
On 05/24/2011 12:07 PM, Denmat wrote:
 content = template(/usr/11.pdf),
 
 Try:
 source = /usr/11.pdf
 

That should actually be
content = file(/usr/11.pdf)

As has been pointed out, don't do this with large files, it's not
efficient at all.

-- 
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] High CPU usage puppet 2.6.6

2011-06-03 Thread Sirtaj Singh Kang


On 31-May-11, at 10:33 PM, Marek Dohojda wrote:


Hi

I recently upgrade my puppet from .25 to 2.6.6.  The actual upgrade  
process was trivial, but now I am seeing issues.  Puppetmaster is  
running at very high CPU usage.  Prior to the upgrade my load  
average was at around 2 ( this server is doing more stuff than just  
puppet ), but now I am hitting 12!!!


Is there a known issue with this puppet version that I haven't seen?


Perhaps you are running into this problem - 
http://projects.puppetlabs.com/issues/4487

-Taj.

--
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] Server side filebucket issue

2011-06-03 Thread Peter Meier

filebucket { puppet:
server = puppetmaster-cbr.it.csiro.au
}


you need to add path = false, as you're hitting a long outstanding bug. [1]

~pete

[1] http://projects.puppetlabs.com/issues/5362

--
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] backup files whith bad arborescence

2011-06-03 Thread Nathan Clemons
I think this is done because file systems can bog down with too many files
(or directories) inside one directory. By breaking down the hierarchy like
they do, they help keep performance optimal.

--
Nathan Clemons
http://www.livemocha.com
The worlds largest online language learning community



On Fri, Jun 3, 2011 at 1:01 AM, florian grandjean.flor...@gmail.com wrote:

 Hello,
 I want to say if it's regular when i backup config file with
 filebucket, the save create more folder.

 Example :
 root@client:~# tree /var/testBackup/
 /var/testBackup/
 ├── 0
 │   └── 9
 │   └── 6
 │   └── 9
 │   └── 3
 │   └── f
 │   └── f
 │   └── d
 │   └── 09693ffd352436e900afd719c5a5a8b3
 │   ├── contents
 │   └── paths
 ├── 2
 │   └── 5
 │   └── 5
 │   └── f
 │   └── 3
 │   └── c
 │   └── 2
 │   └── e
 │   └── 255f3c2e42515586e807f1a39ae58cf2
 │   ├── contents
 │   └── paths

 It's possible to create this tree ?

 /var/testBackup/
 ├── 255f3c2e42515586e807f1a39ae58cf2
 │   └── contents
 │   └── paths


 Thanks

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



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



[Puppet Users] Re: backup files whith bad arborescence

2011-06-03 Thread florian
But it's possible to avoid this arborescence ? even if i lose in
performance ?

-- 
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: Resources existing in different operating systems.

2011-06-03 Thread Douglas Garstang
On Fri, Jun 3, 2011 at 12:52 AM, Luke Bigum luke.bi...@lmax.com wrote:

  Douglas,

 If you don't use a conditional somewhere, how are you going to decide what
 resources are declared on what clients?


I never said I didn't want to use conditionals somewhere.



 In that blog example, the classes are loaded based on the value of a fact
 reported by the Puppet client, in some ways more reliable than a variable
 defined in a Puppet master manifest. It's also not that bad a practice to
 conditionally include on variables declared at the top level (node.pp) -
 avoids variable scoping issues, a number of people on the list do that.


Yes, I understand that. We don't put our variables in the manifests. We put
them into csv files and use extlookup, which works great. However, I'm not
talking about the use of variables here. I'm talking about logic based on
operating system.

I'd also like to see something, maybe in the best practices document on the
Puppet Labs website indicating which is the correct way to handle specific
operating ystem logic. Having multiple classes (ie a lot of classes) per
module, means more files, which in my opinion, makes things confusing and
it's never really clear which is the best way to break things up. When you
have more than a few files, there's also a tendency to create subdirectories
under manifests/, and have stuff like module::A::B.pp and when you start
doing that, it becomes even more unclear how things should be arranged.

I've been working with puppet for over three years now and variable scoping
still isn't clear to me.


 Using sub classes based on operating system also gives you the added
 advantage of tracking down problems sooner, a Puppet error will look like:

 Foo::Redhat::File[foo.conf] ...

 What approach would you like to see, conceptually? Maybe someone's done
 something similar with an ENC.


All I was asking for was a way to conditional manage a resource based on the
operating system. Something like:

file {

$operatingsystem ? {
  'centos' = {
/etc/somefile:
source = 
  },
  'default' = {}
}

Haven't tried it, but I don't think that's allowed.

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.



Re: [Puppet Users] Re: backup files whith bad arborescence

2011-06-03 Thread Patrick

On Jun 3, 2011, at 8:12 AM, florian wrote:

 But it's possible to avoid this arborescence ? even if i lose in
 performance ?

My understanding is that the answer is mo because you're not even supposed to 
be using those files directly, so it shouldn't matter.  You should be using the 
file bucket through puppet instead.

Out of curiosity, why do you care?

-- 
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] High CPU usage puppet 2.6.6

2011-06-03 Thread Marek Dohojda
Apparently it is solved.  I recently updated from .25 to 2.6.6 and the
upgrade went smoothly.  However I run into the runaway process issue with
ended up making my server have over 20 load average (up from around 1-2).  I
ended up shutting down puppet for the weekend so that I could deal with it
on Monday. Well when I brought up the server on Monday it hasn't had high
CPU usage since.  It is 5 days later and my loadaverage hovers at around 1-2
as before.

BTW I have shutdown all instances of puppetmaster prior to sending an email,
and restarted it fresh... so not sure what happened here.

On Fri, Jun 3, 2011 at 7:12 AM, Sirtaj Singh Kang sirtaj.k...@gmail.comwrote:


 On 31-May-11, at 10:33 PM, Marek Dohojda wrote:

  Hi

 I recently upgrade my puppet from .25 to 2.6.6.  The actual upgrade
 process was trivial, but now I am seeing issues.  Puppetmaster is running at
 very high CPU usage.  Prior to the upgrade my load average was at around 2 (
 this server is doing more stuff than just puppet ), but now I am hitting
 12!!!

 Is there a known issue with this puppet version that I haven't seen?


 Perhaps you are running into this problem -
 http://projects.puppetlabs.com/issues/4487

 -Taj.


 --
 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] Module variables missing during some puppet runs

2011-06-03 Thread treydock
I am getting the following error on about every other manual run of
puppet... (hostnames removed)


err: Could not retrieve catalog from remote server: Error 400 on
SERVER: Failed to parse template zabbix/userparameter_mysql_conf.erb:
Could not find value for 'zabbix_mysql_user_parameters' at /etc/puppet/
modules/zabbix/manifests/classes/mysql.pp:7 on node
puppetclient.domain

If I then do another puppet run, I do not receive the error.  It seems
that just about every other manual run during testing of new module
changes has this happen.  This is occuring on ALL my puppet clients
that are using the zabbix::mysql module.  All systems running
Puppet-2.6.8.  Below is the full debug log and my zabbix module.

The $zabbix_mysql_user_parameters variable is optional...right now
only one node has it defined explicitly, like so:

$zabbix_mysql_user_parameters =  {
item1 = { 'name' = 'mediawiki.usercount[*]', 'command' =
'mysql -B -s -e SELECT count(*) FROM user $1'},
}

This is the mysql class for zabbix where the empty variable is defined
so that if no node has it defined it shouldn't fail...


$zabbix_mysql_user_parameters = []

class zabbix::mysql inherits zabbix::agent {

file {
$zabbix_userparameter_config_dir/userparameter_mysql.conf:
content = template(zabbix/
userparameter_mysql_conf.erb),
group   = zabbix,
owner   = zabbix,
mode= 600,
require = Package[zabbix-agent];

$zabbix_user_home_dir/.my.cnf:
source  = puppet:///modules/zabbix/.my.cnf,
group   = zabbix,
owner   = zabbix,
mode= 600,
require = [ Package[zabbix-agent],
File[$zabbix_user_home_dir] ];
}

}


Here's the variables usage in the template...
% zabbix_mysql_user_parameters.each do |key, value_hash| -%
UserParameter=%= value_hash['name'] %,HOME=%= zabbix_user_home_dir
% %= value_hash['command'] %
% end -%


Would the solution be to make the template call use this instead??

% if has_variable?(zabbix_mysql_user_parameters) -%
% zabbix_mysql_user_parameters.each do |key, value_hash| -%
UserParameter=%= value_hash['name'] %,HOME=%= zabbix_user_home_dir
% %= value_hash['command'] %
% end -%
% end -%

Thanks!

- Trey

-- 
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: Resources existing in different operating systems.

2011-06-03 Thread Russell Howe
 -Original Message-
 From: puppet-users@googlegroups.com 
 [mailto:puppet-users@googlegroups.com] On Behalf Of Douglas Garstang
 Sent: 03 June 2011 16:21
 To: puppet-users@googlegroups.com
 Subject: Re: [Puppet Users] Re: Resources existing in 
 different operating systems.

 All I was asking for was a way to conditional manage a 
 resource based on the operating system. Something like:
 
 file {
 
 $operatingsystem ? {
   'centos' = {
 /etc/somefile:
 source =  
   },
   'default' = {}
 }
 
 Haven't tried it, but I don't think that's allowed.
 
 Doug.

How about

case $operatingsystem {
'centos': { $filesource = /bar }
default: { $filesource = /foo }
}

file { name:
source = $filesource,
# ...
}

-- 
Russell Howe
rh...@moonfruit.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] Re: Resources existing in different operating systems.

2011-06-03 Thread Douglas Garstang
On Fri, Jun 3, 2011 at 10:01 AM, Russell Howe rh...@moonfruit.com wrote:

  -Original Message-
  From: puppet-users@googlegroups.com
  [mailto:puppet-users@googlegroups.com] On Behalf Of Douglas Garstang
  Sent: 03 June 2011 16:21
  To: puppet-users@googlegroups.com
  Subject: Re: [Puppet Users] Re: Resources existing in
  different operating systems.

  All I was asking for was a way to conditional manage a
  resource based on the operating system. Something like:
 
  file {
 
  $operatingsystem ? {
'centos' = {
  /etc/somefile:
  source = 
},
'default' = {}
  }
 
  Haven't tried it, but I don't think that's allowed.
 
  Doug.

 How about

 case $operatingsystem {
'centos': { $filesource = /bar }
default: { $filesource = /foo }
 }

 file { name:
source = $filesource,
# ...
 }


What if the file doesn't exist at all on the other distro? I know for
example that centos creates a symlink from /boot/grub/grub.conf to
/etc/grub.conf. What if I only wanted to manage this file for CentOS, and
for other distro's, do nothing ?

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.



Re: [Puppet Users] Re: Resources existing in different operating systems.

2011-06-03 Thread Luke Bigum

On 03/06/11 16:21, Douglas Garstang wrote:
I'd also like to see something, maybe in the best practices document 
on the Puppet Labs website indicating which is the correct way to 
handle specific operating ystem logic. Having multiple classes (ie a 
lot of classes) per module, means more files, which in my opinion, 
makes things confusing and it's never really clear which is the best 
way to break things up. When you have more than a few files, there's 
also a tendency to create subdirectories under manifests/, and have 
stuff like module::A::B.pp and when you start doing that, it 
becomes even more unclear how things should be arranged.


I guess it's up to the site and the Puppet admins on how to break up 
their classes. I'm not sure there's an all encompassing best practice as 
everyone's requirements will be different. For example if I was just 
managing CentOS and Red Hat systems, I might simply embed if/else logic 
in a single class and handle the differences in the OS there, as they 
are mostly the same and splitting off a separate class might be a waste 
of time.


If I was managing a site with Fedora, Ubuntu, Macs, etc, I'd definitely 
go down the conditionally include classes and subclasses, mainly for 
management reasons, like  a typo in class somefile::ubuntu doesn't 
affect class somefile::redhat. Also the logging of resources indicates 
exactly which class::subclass::subsubclass a resource is declared in, so 
I know where to go hunting to make a change to it. In practice I'd make 
judgement calls about when to split a class into subclasses based on 
operating systems or to nest if/else statements in a class based on how 
complex the class was getting, and so I'd have a mixture of both.


All I was asking for was a way to conditional manage a resource based 
on the operating system. Something like:


file {

$operatingsystem ? {
  'centos' = {
/etc/somefile:
source = 
  },
  'default' = {}
}


Regarding your example above, that won't work, a Selector is a RHS 
operator, so can't be used like that. You'd need to either use a case 
statement or if/else block, from the docs:


| if  $is_virtual  {
  service  {'ntpd':
ensure  =  stopped,
enable  =  false,
  }
}
else  {
  service  {  'ntpd':
name=  'ntpd',
ensure  =  running,
enable  =  true,
hasrestart  =  true,
require  =  Package['ntp'],
  }
}
|


--
Luke Bigum

Information Systems
luke.bi...@lmax.com | http://www.lmax.com
LMAX, Yellow Building, 1A Nicholas Road, London W11 4AN



The information in this e-mail and any attachment is confidential and is 
intended only for the named recipient(s). The e-mail may not be disclosed or 
used by any person other than the addressee, nor may it be copied in any way. 
If you are not a named recipient please notify the sender immediately and 
delete any copies of this message. Any unauthorized copying, disclosure or 
distribution of the material in this e-mail is strictly forbidden. Any view or 
opinions presented are solely those of the author and do not necessarily 
represent those of the company.

--
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: Server side filebucket issue

2011-06-03 Thread treydock
Wow I can't believe that's all that was keeping me from having my
filebucket work in the same manner described by LawrleC.

The primary reason I want to use filebucket is to view changes in
Puppet-dashboard.  Now that my filebucket works I only have 1/2 the
files viewable in puppet-dashboard.

In dashboard the original shows up when I click the MD5 sum, however
the new version gives me We're sorry, but something went wrong.
We've been notified about this issue and we'll take a look at it
shortly.  which I'm guessing is because the file doesn't exist.  I
looked in the actual filebucket, and only the original exists.  Is
there a way to enable Puppet-dashboard or Puppet to also show the new
version of a file?

Thanks
- Trey

On Jun 3, 9:05 am, Peter Meier peter.me...@immerda.ch wrote:
  filebucket { puppet:
          server = puppetmaster-cbr.it.csiro.au
  }

 you need to add path = false, as you're hitting a long outstanding bug. [1]

 ~pete

 [1]http://projects.puppetlabs.com/issues/5362

-- 
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: Resources existing in different operating systems.

2011-06-03 Thread Pietro Monteiro

On 06/03/2011 10:04 AM, Douglas Garstang wrote:
What if the file doesn't exist at all on the other distro? I know for 
example that centos creates a symlink from /boot/grub/grub.conf to 
/etc/grub.conf. What if I only wanted to manage this file for CentOS, 
and for other distro's, do nothing ?


Doug.


if $operatingsystem == 'centos' {
  file { '/etc/grub.conf':
.
  }
}

is one possible solution

--
Pietro Monteiro
Senior Developer
DECK Monitoring
115 W 8th Ave. Eugene, Oregon 97401
Office: 541-343-0110
www.deckmonitoring.com

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



[Puppet Users] Re: How do I enable repositories and install packages

2011-06-03 Thread hyzhang
Thank you all for the response. I applied the patch. It seems work
partially, but failed due to packages is not signed. So that raises
another question - is there a puppet patch for nogpgcheck?

On Jun 1, 12:41 pm, Jacob Helwig ja...@puppetlabs.com wrote:
 If you want to enable the repositories on a per-package basis as was
 shown in the examples (with the --enablerepo flag), then you'll
 definitely want to watch  vote for #4113[1].

 If you want to have the repositories always enabled, then you should be
 able to do that through the yum configuration.  I'm not all that
 familiar with the details though since I've tended not to use the RPM
 based systems.

 [1]http://projects.puppetlabs.com/issues/4113

 --
 Jacob Helwig

 On Wed, 01 Jun 2011 09:31:51 -0700, Nathan Clemons wrote:

  The package resource type will allow you to install packages via Yum, but
  does not (last I checked) support specifying repos to enable/disable (which
  I'd dearly love if it was added).

  Which means you either get to write your own extension to package to add
  that functionality, or use exec.

  --
  Nathan Clemons
 http://www.livemocha.com
  The worlds largest online language learning community

  On Wed, Jun 1, 2011 at 9:19 AM, hyzhang hyzh...@jcvi.org wrote:

   Hi,

   My shell script is as below. How do I translate them to puppet
   language? I think I can use exec directly. But is there a better way?

   /usr/bin/yum clean all
   /bin/echo -e \n/usr/bin/yum -y --enablerepo=base,rpmforge install
   mplayer mplayer-skins
   /usr/bin/yum -y --enablerepo=base,rpmforge install mplayer mplayer-
   skins

   /usr/bin/yum clean all
   /bin/echo -e \n/usr/bin/yum -y --nogpgcheck install RealPlayer
   AdobeReader_enu flash-plugin
   /usr/bin/yum -y --nogpgcheck install RealPlayer AdobeReader_enu flash-
   plugin

   /usr/bin/yum clean all
   /bin/echo -e \n/usr/bin/yum -y --enablerepo=base install pidgin
   /usr/bin/yum -y --enablerepo=base install pidgin

   Thanks,
   -Haiyan



  signature.asc
  1KViewDownload

-- 
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: How do I enable repositories and install packages

2011-06-03 Thread Matthew Black
It fails because the yum repository by default is requiring the package be
signed. If you update the repo configuration, with the option below, you
would not need to do a --nogpgcheck with the package install. The only other
time that this option would not work is if you are doing a localinstall via
yum, which there is no repo configuration involved.

gpgcheck=0



-Original Message-
From: puppet-users@googlegroups.com [mailto:puppet-users@googlegroups.com]
On Behalf Of hyzhang
Sent: Friday, June 03, 2011 1:11 PM
To: Puppet Users
Subject: [Puppet Users] Re: How do I enable repositories and install
packages

Thank you all for the response. I applied the patch. It seems work
partially, but failed due to packages is not signed. So that raises
another question - is there a puppet patch for nogpgcheck?

On Jun 1, 12:41 pm, Jacob Helwig ja...@puppetlabs.com wrote:
 If you want to enable the repositories on a per-package basis as was
 shown in the examples (with the --enablerepo flag), then you'll
 definitely want to watch  vote for #4113[1].

 If you want to have the repositories always enabled, then you should be
 able to do that through the yum configuration.  I'm not all that
 familiar with the details though since I've tended not to use the RPM
 based systems.

 [1]http://projects.puppetlabs.com/issues/4113

 --
 Jacob Helwig

 On Wed, 01 Jun 2011 09:31:51 -0700, Nathan Clemons wrote:

  The package resource type will allow you to install packages via Yum,
but
  does not (last I checked) support specifying repos to enable/disable
(which
  I'd dearly love if it was added).

  Which means you either get to write your own extension to package to add
  that functionality, or use exec.

  --
  Nathan Clemons
 http://www.livemocha.com
  The worlds largest online language learning community

  On Wed, Jun 1, 2011 at 9:19 AM, hyzhang hyzh...@jcvi.org wrote:

   Hi,

   My shell script is as below. How do I translate them to puppet
   language? I think I can use exec directly. But is there a better way?

   /usr/bin/yum clean all
   /bin/echo -e \n/usr/bin/yum -y --enablerepo=base,rpmforge install
   mplayer mplayer-skins
   /usr/bin/yum -y --enablerepo=base,rpmforge install mplayer mplayer-
   skins

   /usr/bin/yum clean all
   /bin/echo -e \n/usr/bin/yum -y --nogpgcheck install RealPlayer
   AdobeReader_enu flash-plugin
   /usr/bin/yum -y --nogpgcheck install RealPlayer AdobeReader_enu flash-
   plugin

   /usr/bin/yum clean all
   /bin/echo -e \n/usr/bin/yum -y --enablerepo=base install pidgin
   /usr/bin/yum -y --enablerepo=base install pidgin

   Thanks,
   -Haiyan



  signature.asc
  1KViewDownload

-- 
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: Resources existing in different operating systems.

2011-06-03 Thread Russell Howe
 What if the file doesn't exist at all on the other distro? I 
 know for example that centos creates a symlink from 
 /boot/grub/grub.conf to /etc/grub.conf. What if I only wanted 
 to manage this file for CentOS, and for other distro's, do nothing ?

Put the file resource inside the case statement itself?

-- 
Russell Howe
rh...@moonfruit.com

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



[Puppet Users] require? before? I need to have a dependency in place . . .

2011-06-03 Thread guymatz
Hi,
I need to have a network interface set up with puppet before I can use
the interface (as a facter fact) in a subsequent class which uses the
IP of the interface in a template . . .   So I really need the
interface class to execute on the client, the client to resend its
facts, then for puppet to continue on.

I've tried using require Class['interface'] in the webserver class
and i've tried using before Class['webserver] in the interface
class . . .

Anyone have any thoughts/suggestions?

Thanks a lot,
Guy

P.S. - does anyone

-- 
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: Resources existing in different operating systems.

2011-06-03 Thread Dominic Cleal
Great to see this discussed, thanks for bringing it up.

(Disclaimer: I'm the author of the blog post)

On 03/06/11 18:05, Luke Bigum wrote:
 On 03/06/11 16:21, Douglas Garstang wrote:
 I'd also like to see something, maybe in the best practices document
 on the Puppet Labs website indicating which is the correct way to
 handle specific operating ystem logic. Having multiple classes (ie a
 lot of classes) per module, means more files, which in my opinion,
 makes things confusing and it's never really clear which is the best
 way to break things up. When you have more than a few files, there's
 also a tendency to create subdirectories under manifests/, and have
 stuff like module::A::B.pp and when you start doing that, it
 becomes even more unclear how things should be arranged.

I tend to use a single init.pp still for a lot of things, as I find
myself writing a fair amount of common code even across different
platforms.  I don't find it particularly useful to split it into a new
file for common bits, another for Red Hat and another for Solaris.  It
becomes difficult to manage as dependencies are spread across files and
opportunities to rationalise common code are missed.

Where I have modules where the OSes have nothing in common then I would
split them out into separate redhat.pp and solaris.pp manifests.  For
me, this is a very small number, but it'll naturally depend on your
environment.

 I guess it's up to the site and the Puppet admins on how to break up
 their classes. I'm not sure there's an all encompassing best practice as
 everyone's requirements will be different. For example if I was just
 managing CentOS and Red Hat systems, I might simply embed if/else logic
 in a single class and handle the differences in the OS there, as they
 are mostly the same and splitting off a separate class might be a waste
 of time.
 
 If I was managing a site with Fedora, Ubuntu, Macs, etc, I'd definitely
 go down the conditionally include classes and subclasses, mainly for
 management reasons, like  a typo in class somefile::ubuntu doesn't
 affect class somefile::redhat. Also the logging of resources indicates
 exactly which class::subclass::subsubclass a resource is declared in, so
 I know where to go hunting to make a change to it. In practice I'd make
 judgement calls about when to split a class into subclasses based on
 operating systems or to nest if/else statements in a class based on how
 complex the class was getting, and so I'd have a mixture of both.

That's fair enough.  I found the consistency quite useful when working
in a team, so it became a familiar pattern across every module in this
case - even if that meant some classes were empty.

-- 
Dominic Cleal
Red Hat Consulting
m: +44 (0)7818 512168

-- 
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] require? before? I need to have a dependency in place . . .

2011-06-03 Thread Michael Knox
Guy,
To requery the facts during would, most likely, invalidate your catalogue
for that run.

I've handled this by doing the work over 2 puppet runs.

I have a custom fact that requires an X display (thanks to an install app
that requires X display, even when using command line options and silent
mode).

If the custom fact returns it's default value (ie. the install app
can't/hasn't run), I don't do anything with that app in the current puppet
run.
The particular class then just installs the ruby gem headless so the fact
can use it on the next execution.

Cheers
Mike

-- 
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] parameterised classes via LDAP how?

2011-06-03 Thread Larry Ludwig
In 2.6 Puppet added parameterised classes, my question is it possible to 
call them via LDAP? If so how?

-- 
You received this message because you are subscribed to the Google Groups 
Puppet Users group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/puppet-users/-/Z3dWYmJhOXFSQVVK.
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] Client vs server storeconfigs

2011-06-03 Thread Sirtaj Singh Kang

Hi all,

As I understand it, storeconfigs needs to be enabled on both the agent  
and the master to function ideally. I have a couple of questions:


- Can the various agents and the master safely share the same  
storeconfigs db (say, a postgresql server)? Is there any benefit to  
setting things up

this way?

- Is there any benefit for an _agent_ to use an RDBMS vs sqlite for  
its storeconfigs, since there is no db contention problem on an agent?


Thanks for any guidance,

-Taj.

--
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] Client vs server storeconfigs

2011-06-03 Thread Ohad Levy
On Sat, Jun 4, 2011 at 5:28 AM, Sirtaj Singh Kang sirtaj.k...@gmail.comwrote:

 Hi all,

 As I understand it, storeconfigs needs to be enabled on both the agent and
 the master to function ideally. I have a couple of questions:

 the database exists only on the server side

Ohad

 - Can the various agents and the master safely share the same storeconfigs
 db (say, a postgresql server)? Is there any benefit to setting things up
 this way?

 - Is there any benefit for an _agent_ to use an RDBMS vs sqlite for its
 storeconfigs, since there is no db contention problem on an agent?

 Thanks for any guidance,

 -Taj.

 --
 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] Client vs server storeconfigs

2011-06-03 Thread Sirtaj Singh Kang

Thanks for the reply Ohad,

On 04-Jun-11, at 9:43 AM, Ohad Levy wrote:
[snip]

the database exists only on the server side


Okay. I am seeing /var/lib/puppet/state/clientconfigs.sqlite3 even on  
machines running only the agent. I have


[main]
...
storeconfigs = true
thin_storeconfigs = true
dbadapter = sqlite3

on all machines, with the master overriding with dbadapter = postgresql.

Is the clientconfigs.sqlite3 file related to storeconfigs? If so, is  
it simply being created and ignored by the agent?


Apologies if I'm asking silly questions, I'd appreciate a pointer to  
an RTFM, it's possible I have missed something.


-Taj.

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