Re: [Puppet Users] Slides TDD with puppet - puppetcamp paris yesterday

2014-04-16 Thread Johan De Wit

Great having a discussion on testing.

I have to reread all your comments, having a busy week catching up with 
work after a week of having fun at all the puppetcamps.


I keep on tracking this thread, and will add my thoughts soon.

Thanks for all your comments'

Johan


On 15/04/14 15:46, Alexander Fortin wrote:

On Tuesday, April 15, 2014 1:10:05 PM UTC+2, Felix.Frank wrote:

On 04/15/2014 09:25 AM, Nikola Petrov wrote:
 I haven't used catalog-diff but I
 am suspecting that it might be a substitute for the rspec tests.
Tell me

No. rspec allows you to implement unit tests to catch certain
regression
bugs. catalog-diff is rather concerned with integration testing
(although you can use rspec for that as well).


I think with catalog-diff we're catching regression bugs too, meaning 
that if the module interface is broken in the proposed commit, it will 
show up as an error (unless no node is actually including the 
refactored module).


 does it provide the following:

 * Automatic runs through guard/rake/whatever on every commit to
verify
 that I am not breaking things like permissions on files

You could do that, but compiling each of your nodes' catalog on every
commit would be excessive.


I agree it can be overkill for many environments, I guess depends on 
what you actually want to test, or better, what kind of confidence you 
want to have that your committed code is not actually breaking anything.


To me seems that the catalog-diff approach is catching a broad variety 
of problems, also some that (I think) can't be easily catch by 
expressions in rspec.


For example, somewhere in a random manifest I'm just changing 
declaration style for a class, from 'include myclass' to class 
{'myclass': }, leading to possible declaration dependency order / 
duplicated declarations problems: Node A (which I am currently working 
on) is including only one declaration, but node B was evaluating that 
class declaration two times, hence the duplicate declaration only on 
node B.


Can rspec-puppet catch also this kind of problems? More in general, 
I'd like to know if rspec-puppet can give me the confidence that, 
given a node resource, the new version of the catalog will compile for 
that node.

 --
Alex
--
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 
mailto:puppet-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/826f278e-1b69-4721-9e35-7028627c44fa%40googlegroups.com 
https://groups.google.com/d/msgid/puppet-users/826f278e-1b69-4721-9e35-7028627c44fa%40googlegroups.com?utm_medium=emailutm_source=footer.

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



--
Johan De Wit

Open Source Consultant

Red Hat Certified Engineer  (805008667232363)
Puppet Certified Professional 2013/2014 (PCP006)
_
 
Open-Future Phone +32 (0)2/255 70 70

Zavelstraat 72  Fax   +32 (0)2/255 70 71
3071 KORTENBERG Mobile+32 (0)474/42 40 73
BELGIUM http://www.open-future.be
_
 



Next Events:
Puppet Introduction Course | 
http://www.open-future.be/puppet-introduction-course-14th-april
Puppet Advanced Training | 
http://www.open-future.be/puppet-advanced-training-15-till-17th-april
Linux Training | https://www.open-future.be/linux-training-5-till-9th-may
Puppet Introduction Course | 
https://www.open-future.be/puppet-introduction-course-12th-may
Subscribe to our newsletter | http://eepurl.com/BUG8H

--
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534E250D.6040609%40open-future.be.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Re: Hiera Performance Testing

2014-04-16 Thread Daniele Sluijters
Ah,

Then I'm afraid you're on your own. The instrumentation framework got added 
and expanded upon somewhere in the 3.x series, I believe 3.2 was the first 
to be able to give some useful information and as of 3.5 the API is 
actually public so that others can build on it.

As far as Hiera goes, lookup times depend on a bunch of things. Part of it 
is the complexity of the hierarchy, the more places it might need to look 
the longer it will take. If you do a 'normal' hiera call it'll exit on the 
first match so depending on how quickly it can find a match it'll take a 
bit longer or not. Then there's the hiera_array and hiera_hash calls which 
search the whole hierarchy and build up an array or hash of all the 
returned values which will take longer than a hiera call.

If you really want to get an indication I'd say just switch a few modules 
to hiera and compare compile times. You could also start adding 
Hiera.debug() calls with time information in Hiera's backend.rb.

In all honesty though, I'd suggest you get to upgrading to 3.4+ first. 
That'll give you a bit of a performance boost and 3.4+ doesn't require 
Hiera, it just ships with it. It'll also enable a bunch of things that will 
make your life more pleasant as a module author or maintainer. If you're 
using opensource modules it's likely they'll shortly start dropping 2.7 
support if they haven't already with the coming of Puppet 3.6 and 4.x.

-- 
Daniele Sluijters

On Monday, 14 April 2014 19:35:37 UTC+2, David Danzilio wrote:

 Unfortunately, and I probably should've mentioned this in the OP, we're 
 currently stuck on the 2.7 series.

 On Monday, April 14, 2014 1:11:36 PM UTC-4, Daniele Sluijters wrote:

 Hi,

 I think a good start would be to turn on profiling, aka profiling=true in 
 puppet.conf or puppet agent --profile. The output will show up in the 
 master's logs.

 -- 
 Daniele Sluijters

 On Friday, 11 April 2014 22:55:45 UTC+2, David Danzilio wrote:

 Hi Everybody.

 I'm trying to come up with a way to understand how Hiera is going to 
 affect compile times on our Puppet masters. We've got just over 100K lines 
 of Puppet code, and thousands of hosts across a few environments. I know 
 there are a lot of variables to this problem, but I'm drawing a blank on a 
 good way to test this. Has anybody run into this? Is there a simple way to 
 do this that I'm just not seeing?

 Thanks!
 David



-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/2d3bf99d-6a06-485c-8f6f-c2f7731ce445%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Setting validproperties fields in provider modules

2014-04-16 Thread Felix Frank
Hmm, I still don't really see what you are intent on doing specifically,
to be honest.

Looking at
https://github.com/puppetlabs/puppet/blob/master/lib/puppet/provider/user/useradd.rb#L195
does this problem not boil down to overriding the passcmd method and
adding some kind of case statements to handle your different environments?

You mentioned at the beginning of the thread that you're facing issues
accessing the resource property values. These *should* work:

min_age = resource.should(:password_min_age)
max_age = resource.should(:password_max_age)

If I'm not mistaken, this should be synonymous with e.g.
resource[:password_min_age]. `resource` is the attr_accessor for
`@resource`. I'm not sure why so much provider code ignores the accessors.

Felix

On 04/16/2014 03:11 AM, James Perry wrote:
 The HPUX code I am trying to modify is already in the existing Puppet
 code base at
 https://github.com/puppetlabs/puppet/blob/master/lib/puppet/provider/user/hpux.rb.
 
 
 The functionality I am trying to use is to set the value of a specific
 property so that I can specify the commands to run depending on which
 password aging scheme is required on a specific HPUX OS version and
 setup. Some are trusted computing, some use a version of the shadow
 password and others just a plain old password file.
 
 The module I found the functionality I want to extend is based on the
 snippet of code starting at line 11 of
 https://github.com/adrienthebo/puppet-filemapper/blob/master/lib/puppetx/filemapper.rb.
 
 
 Unfortunately I am unable to seem to get it to work and thus I am at a
 loss. I really need to be able to ensure that the proper expiry setups
 are in place for HPUX because while I managed to get the password
 functionality into the main stream code base, it is not likewise
 resetting the password expiration for another 90 days and thus the
 account gets locked 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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534E38FC.7090405%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Could not find terminus console for indirection node

2014-04-16 Thread Felix Frank
Hi,

no this is new to me. Can you share the puppet.conf from your master and
agent?

Thanks,
Felix

On 04/16/2014 03:07 AM, triceras wrote:
 Hi All,
 
   I was running puppet agent manually on a node when suddenly all the
 puppet node executions started to fail with the following error message
 displayed:
 
  /Error: Could not retrieve catalog from remote server: Error 400 on
 SERVER: Failed when searching for node bat02-shr.pexa: Could not find
 terminus console for indirection node/
 / Warning: Not using cache on failed catalog/
 / Error: Could not retrieve catalog; skipping run/
 
  Has anyone ever experienced such error message when running puppet
 agent on a node ?
 
  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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534E4991.8060708%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Provider macports is not functional on this host error

2014-04-16 Thread Felix Frank
Hi,

that's weird. What's the output of

facter -p operatingsystem

on this machine?

On 02/26/2014 04:47 PM, Pascal Robert wrote:
 Hi,
 
 I'm working on our first Puppet deployment, and one of the things we
 want to install is the NRPE (Nagios agent) on our CentOS, Ubuntu and OS
 X boxes. The problem is: MacPorts don't get installs, and I get:
 
 Error: /Stage[main]/Nagios/Package[${nagios_plugins}]: Provider macports
 is not functional on this host
 Error: /Stage[main]/Nagios/Package[${$nrpe}]: Provider macports is not
 functional on this host
 Error: /Stage[main]/Macosx/Package[smartmontools]: Provider macports is
 not functional on this host

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534E794B.5070505%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] How to install rpm and push file to set of servers

2014-04-16 Thread Felix Frank
So, your servers are already classified, but there are groups of servers
that do not align with the basic classification. Is that your problem?

On 02/27/2014 02:23 PM, Vivek wrote:
 Hi there,
 
 I would like to install rpms from Puppet master to puppet clients and
 also push some files to list of servers, already I do mentioned
 different classification of servers under manifest of nodes, but I would
 like to do it for specific list of server only. Please suggest your
 views and how to do it by following best practice, thanks in advance.
 
 Regards,
 Vivek

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534E79BC.6000707%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Puppet agent hogging CPU/RAM

2014-04-16 Thread Felix Frank
Hi,

that may be a red herring. Whatever is causing your contention may well
be the action taken *after* what is logged at that moment.

I advise to either
 * watch the `ps auxwf` output for child processes or failing that
 * emply `strace -f` to try and determine what is going on, roughly

HTH,
Felix

On 02/28/2014 03:03 PM, alan...@op5.com wrote:
 Debug: Prefetching apt resources for package
 Debug: Executing '/usr/bin/dpkg-query-W--showformat'${Status} ${Package}
 ${Version} :DESC: ${Description}\n:DESC:\n''
 
 What happens when this comes up in the log is that server 1 stands there
 until it runs out of ram and starts killing processes (i.e. standard OOM
 behaviour) while server 2 takes about half a minute to complete (with
 the puppet agent hogging quite a bit of ram and 100% CPU), but then
 actually completes properly. A detail regarding the execution time is
 that the execution time reported to Puppet Dashboard when this happens
 isn't even near the time it actually takes to run the command (for
 example, for server 2, it is reporting times somewhere around 10-15 sec).
 

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534E7A6B.9070005%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] How puppet install another version of the same package.

2014-04-16 Thread Felix Frank
Interesting use case. Sounds like we may be lacking a feature here.

Shlo, is the yum command working when you paste it just the way puppet
issues it, or are you skipping all the fancy parameters of puppet's?

Cheers,
Felix

On 03/05/2014 11:30 AM, Flamarion Jorge wrote:
 Hi,
 
 I have same problem and my workaround, until discovery solution,has
 been to use a exec function and run yum command.
 
 This works for me.
 
 Flamarion Jorge
 
 Em 05/03/14 03:42, shlo.af...@gmail.com escreveu:
  
  
  Hi I want to install same package with a 2 different version like:
  
  libstdc++-4.4.7-3.el6.i686 libstdc++-4.4.7-3.el6.x86_64
  
  
  I put it in puppet init file and when I run puppet I get:
  
  err: /Package[libstdc++]/ensure: change from 4.4.7-3.el6 to
  4.4.7-4.el6.i686 failed: Could not update: Execution of
  '/usr/bin/yum -d 0 -e 0 -y install libstdc++-4.4.7-4.el6.i686'
  returned 1: Error:  Multilib version problems found. This often
  means that the root cause is something else and multilib version
  checking is just pointing out that there is a problem.
  
  
  I have libstdc++-4.4.7-3.el6.x86_64 installed already. When I run
  yum from the command like it run okay and install both version.
  What I can do to make puppet install it too.

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534E7BA6.9030707%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Best Practices/Ideas for mixing Windows and Linux

2014-04-16 Thread Felix Frank
Hi,

and welcome aboard! :)

In the rare case where Linux and Windows will have use for the same
modules (I can hardly think of any, barring perhaps nagios, but even
there I prefer NSCA on Windows vs. NRPE on Linux), I would still
hesitate before creating two worlds.

Each module should be self contained and do its job. Use fact values to
make decisions and branch out of things that won't work on certain
platforms or are just generally different.

I suppose that for Windows, lots of things will be much different from
*NIX. Still, that would basically mean that certain (or most) classes in
the modules are wrappers of the form (untested example):

class my_feature {
  case $operatingsystem {
'Windows': { include my_feature::windows }
... # other special cases?
default: { include my_feature::linux }
  }
}

HTH,
Felix

On 03/05/2014 07:53 PM, Jared Annes wrote:
 I'm fairly new to puppet, and I've been tasked with building manifests
 to deploy software, mostly monitoring agents. Each agent has different
 versions, and each agent has different package for each OS. I'm trying
 to figure out which would be the best way to accomplish this from a
 design perspective. Right now, everything has it's own module
 (OS/Agent/Version). However, I'm not sure this is the best way and I'm
 looking for opinions from others.
 
 Some ideas I've had (and I'm not sure some of this is even possible, let
 alone a good idea):
 
 Module for each agent/OS, different versions contained in the module
 i.e
 Agent1_linux
 Agent1_windows
 Agent2_linux
 Agent2_windows
 (each module's init.pp has different version classes or something similar)
 
 Modules for each agent version, OSes combined in the module
 Agent1_v1
 Agent1_v2
 Agent2_v1
 Agent2_v2
 (each modules init.pp has different code for the different OSes)
 
 Combining the two ideas, one module for each agent
 Agent1
 Agent2
 (each modules init.pp has different code for OS and versions).
 
 Ideas? Suggestions? Theories? Thanks for any/all input. Keep in mind I'm
 new to this product, so I might not be making absolute sense.
 
 -- 
 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
 mailto:puppet-users+unsubscr...@googlegroups.com.
 To view this discussion on the web visit
 https://groups.google.com/d/msgid/puppet-users/410eb3db-83bb-4473-8d85-437ef813c546%40googlegroups.com
 https://groups.google.com/d/msgid/puppet-users/410eb3db-83bb-4473-8d85-437ef813c546%40googlegroups.com?utm_medium=emailutm_source=footer.
 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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534E7D43.8020906%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] how do I check to see whether a hash value is defined if a parent of the hash value might not even exist?

2014-04-16 Thread Felix Frank
Hi,

the puppetlabs-stdlib module introduces a has_key() function to puppet.

HTH,
Felix

On 03/10/2014 09:42 PM, Steve Neuharth wrote:
 The trouble is that it totally fails if even the top or intermediate
 levels of the hash don't exist. I've tried using if
 $web_conf[$::client][$::env][$name]['server_name'] != undef, tried if
 undef($web_conf[$::client][$::env][$name]['server_name']) etc.
 
 what's the correct way to do 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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534E7DDB.4020405%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Recursive file delete fails with empty files

2014-04-16 Thread Felix Frank
Hi,

yes, if there is not yet a bug report about this, it would be great if
you could create one.

Cheers,
Felix

On 03/10/2014 10:13 PM, Sam Tresler wrote:
 So, is this a known bug, by design, or something that I should figure
 out how to file a bug report for? 
 
 I can work around it easily enough, but it seems like a recursive,
 forced, purge shouldn't be stymied by a 0 byte file. neh? 

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534E7E27.6010204%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] How to install puppet on ubuntu 13.10?

2014-04-16 Thread Felix Frank
Hi,

that's actually quite well documented:

http://docs.puppetlabs.com/guides/installation.html#debian-and-ubuntu

On 03/14/2014 01:59 AM, pengyu...@gmail.com wrote:
 Hi,
 
 I run the following commands to install puppet on ubuntu 13.10. But they
 are not successful. Does anybody know what is the correct way to install
 puppet on ubuntu 13.10? 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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534E8024.4090305%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] How to use puppet on ubuntu 13.10?

2014-04-16 Thread Felix Frank
You are stuck on this step:

http://docs.puppetlabs.com/guides/installation.html#sign-node-certificates

I advise to perfer the PuppetLabs documentation over third party
material. It is generally of very high quality.

On 03/14/2014 02:57 PM, Peng Yu wrote:
 pengy@boron:~$ sudo puppet agent --test
 Exiting; no certificate found and waitforcert is disabled
 
 Could anybody help me understand what is the correct flow to use puppet? 
 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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534E807A.1020304%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Using different version of ruby

2014-04-16 Thread Felix Frank
Hi,

I fear that is an oddball combination you're asking for.

I assume that it should be quite simple to run Puppet through ruby 1.9
if you forgo the apt package and install via gem1.9.1 instead (yes, the
binary name is misleading - it *is* 1.9.3).

Regards,
Felix

On 03/14/2014 11:13 AM, Andrea Cappelli wrote:
 
 I'm using Puppet on Ubuntu (lucid and precise) with packages from
 apt.puppetlabs.com
 Anyone uses ruby 1.9.3 (for example 1.9.3-p327, I know p0 is broken for
 puppet), maybe through rbenv or rvm?

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534E811E.6070707%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Ubuntu puppet agent execution permissions

2014-04-16 Thread Felix Frank
Hi,

perhaps the permissions on your $vardir are too wide?

In short, no - you typically do not want any user to be able to access
the necessary information to connect to your puppet master.

Cheers,
Felix

On 03/14/2014 01:11 PM, Vladimir Nikolic wrote:
 Hello,
 
 is it normal behaviour for puppet agent to allow execution of
 subcommands to all (non-privileged) users?
 For example, all users on local system can disable puppet agent with
 command:
 puppet agent --disable
 
 Regards,
 Vladimir

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534E8195.7040403%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Memory sizing (or leak) in master. [Tkt: 115440]

2014-04-16 Thread Felix Frank
I honestly don't know but - what is the exact ruby version on this box,
down to the patch level?

On 03/14/2014 02:18 PM, Chris Ritson wrote:
 How much memory would be normal for a setup of this size, and how is it 
 likely to scale as we add more client agents?

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534E81D3.2020709%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] puppet facts upload not working

2014-04-16 Thread Felix Frank
Humm, I never tried that.

Have you tried launching the master process using --no-daemonize -dv and
watch the debug output?

On 03/18/2014 04:14 AM, Corey Osman wrote:
 #bash: puppet facts upload
 Error: execution expired
 Error: Try 'puppet help facts upload' for usage

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534E8268.6060904%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] fail on first error. don't continue doing stuff

2014-04-16 Thread Felix Frank
How does this failure manifest itself then?

Have you scrutinized the agent's log to get to the bottom of it?

On 03/18/2014 10:03 PM, Alexander Gray II wrote:
 I have weird scenario:
 When I run puppet for the very first time, it always fails, but when I
 re-run puppet on that machine, it always passes.
 I must have some obscure dependency issue somewhere and I'm trying to
 track it down.
 
 Something *must* be occurring after the first error (puppet continues to
 run after that first error), but I would like to stop puppet the moment
 it encounters that error so that I can snoop around that machine.
 
 Is there anyway for puppet to exit the moment it encounters an error?
 
 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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534E82E7.60203%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Using Puppet with a self-signed ssl certificate

2014-04-16 Thread Felix Frank
Actually, yeah. Can't you just used that corporate cert as your CA?

I think you would end up with this:
http://docs.puppetlabs.com/puppet/latest/reference/config_ssl_external_ca.html#option-1-single-ca

HTH,
Felix

On 03/26/2014 10:55 PM, Tom Albrecht wrote:
 The ... is information on the self-signed cert.  I've already been
 banging my head just trying to get the whole ssl cert stuff working, and
 it's very possible I screwed something up.
 
 Any ideas?

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534E8518.1030505%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] 403 You don't have permission to access /production/... after switching from puppemaster to passenger

2014-04-16 Thread Felix Frank
Hi,

I don't really have a clue, but have you checked your auth.conf in your
$confdir?

On 03/27/2014 05:36 PM, bjoern pohl wrote:
 Any Idea what this could be or how I can get better debug information
 what passenger does not like here ? ( PassengerLog is currently pointing
 to the webserver logs, but does not tell me anything...)
 

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534E8599.6040202%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] YAML in network requests is deprecated

2014-04-16 Thread Felix Frank
Hi,

you can try and start with `puppet master --configprint all | grep -i yaml`.

HTH,
Felix

On 03/29/2014 01:01 PM, Rakesh Kathpal wrote:
 Hi,
 
 I see that this issues has been fixed in puppet 3.3.
 
 https://projects.puppetlabs.com/issues/21427
 
 I am using puppet 3.4 but still receiving a lot of warning related to this.
 
 Can someone please suggest how can fix this issue on my master.
 
 Regards,
 
 Rakesh K.

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534E872A.6030907%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Setting validproperties fields in provider modules

2014-04-16 Thread Jim Perry
Thanks. I am still learning Ruby so I will look into accessors in more
detail.

What I am trying to do is call the HPUX provider and use it to set the min
and max age that gets passed back to the parent. Then I also need to be
able to verify the right commands are used to reset the expiration when the
user password is updated if it is a trusted setup.

On Apr 16, 2014 4:02 AM, Felix Frank felix.fr...@alumni.tu-berlin.de
wrote:

 Hmm, I still don't really see what you are intent on doing specifically,
 to be honest.

 Looking at

https://github.com/puppetlabs/puppet/blob/master/lib/puppet/provider/user/useradd.rb#L195
 does this problem not boil down to overriding the passcmd method and
 adding some kind of case statements to handle your different environments?

 You mentioned at the beginning of the thread that you're facing issues
 accessing the resource property values. These *should* work:

 min_age = resource.should(:password_min_age)
 max_age = resource.should(:password_max_age)

 If I'm not mistaken, this should be synonymous with e.g.
 resource[:password_min_age]. `resource` is the attr_accessor for
 `@resource`. I'm not sure why so much provider code ignores the accessors.

 Felix

 On 04/16/2014 03:11 AM, James Perry wrote:
  The HPUX code I am trying to modify is already in the existing Puppet
  code base at
 
https://github.com/puppetlabs/puppet/blob/master/lib/puppet/provider/user/hpux.rb
.
 
 
  The functionality I am trying to use is to set the value of a specific
  property so that I can specify the commands to run depending on which
  password aging scheme is required on a specific HPUX OS version and
  setup. Some are trusted computing, some use a version of the shadow
  password and others just a plain old password file.
 
  The module I found the functionality I want to extend is based on the
  snippet of code starting at line 11 of
 
https://github.com/adrienthebo/puppet-filemapper/blob/master/lib/puppetx/filemapper.rb
.
 
 
  Unfortunately I am unable to seem to get it to work and thus I am at a
  loss. I really need to be able to ensure that the proper expiry setups
  are in place for HPUX because while I managed to get the password
  functionality into the main stream code base, it is not likewise
  resetting the password expiration for another 90 days and thus the
  account gets locked out.

 --
 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/66hM1Vc8fYU/unsubscribe.
 To unsubscribe from this group and all its topics, send an email to
puppet-users+unsubscr...@googlegroups.com.
 To view this discussion on the web visit
https://groups.google.com/d/msgid/puppet-users/534E38FC.7090405%40alumni.tu-berlin.de
.
 For more options, visit https://groups.google.com/d/optout

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/CAO0AM%3DrxT7fys4S3dRnT1uOszmrqjMZw6H1xNi-BMXsgvOyMfQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] puppetlabs-apache

2014-04-16 Thread willi . fehler
Hi,

we are using puppetlabs-apache module version 1.01.

When we run puppet parser validate to check our Puppet code we see the 
following error:

Warning: You cannot collect exported resources without storeconfigs being 
set; the collection will be ignored on line 65 in file 
/etc/puppet/modules/apache/manifests/balancer.pp

Is there a possibility to ged rid of this warning?

Regards - Willi

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/b37e857c-8d7a-4952-8fc2-8a78d9524b4d%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Hiera arry into ERB template

2014-04-16 Thread Sans
Hi there,

Trying to figure out how to use  hiera-array in my template. So, this is 
what I have in .yaml file:


my_coll_list:
 - mon502.local
 - mon522.local


and in my nodes.pp, I have this:

$my_colloctors = hiera_array('my_coll_list')



then in one of my ERB templates, I using that like this:

COLLECTORS = %= @my_colloctors % 



if i understood correctly, according the Puppet documentation, using *array 
merge lookup,* I was expecting a result like this: COLLECTORS = 
['mon502.local', 'mon522.local']
but what I'm getting is: COLLECTORS = mon502.localmon522.local


What am I missing here?

Best,
San

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/ba8d7376-6c45-48d6-80a1-5e5d58af71cd%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Re: Hiera Performance Testing

2014-04-16 Thread Nan Liu
On Mon, Apr 14, 2014 at 12:35 PM, David Danzilio
david.danzi...@gmail.comwrote:

 Unfortunately, and I probably should've mentioned this in the OP, we're
 currently stuck on the 2.7 series.


You should be able to run puppet master --compile certname and time it to
get a coarse measurement of before and after. Just make sure you take a
good random sample from a variety of systems with different classes.

HTH,

Nan

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/CACqVBqC0O0As8K0ATD5%2BizdTKJ%3DKocA0hRcw5CsPhZuXr8F67Q%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] selecting a command in a provider based on class variable?

2014-04-16 Thread Nan Liu
On Fri, Apr 11, 2014 at 7:15 PM, Tim Mooney tim.moo...@ndsu.edu wrote:

 The tl;dr version:

 Can anyone point me at an example of an existing provider that selects
 a particular command based not on a facter fact or whether a particular
 path exists, but instead on a variable from a puppet class?

 The full version:

 We have puppet 3.4.2 on master and all agents, generally from the
 PuppetLabs packages for OpenSource puppet.

 Red Hat has begun providing alternate (updated) versions of some packages
 as part of its Software Collections Library, aka SCL.  If you have
 a RHEL 6.5 system subscribed to the appropriate software collections
 channel, it's entirely possible to have something like this:

 $ rpm -q -f /usr/bin/mysql
 mysql-5.1.73-3.el6_5.x86_64
 $ rpm -q -f /opt/rh/mysql55/root/usr/bin/mysql
 mysql55-mysql-5.5.36-1.1.el6.x86_64

 For a provider that relies on the mysql command-line tool to accomplish
 certain tasks, it's no longer a great solution to just do

 commands :mysql = 'mysql'

 I also don't want to just have it always use the binary from
 /opt/rh/mysql55/root/usr/bin/mysql if it's present, since it's at least
 conceivable that one might need to use a particular version of the client
 when accessing a particular database.

 The best idea I've come up with is to have the provider decide which
 specific version of a command to use based on a variable that has already
 been set in the class, but I haven't found any examples of providers that
 do that.  If anyone can point me at some prior art, I would greatly
 appreciate it.


An example of pe_gem v.s. package built in ruby gem provider:
https://github.com/puppetlabs/puppetlabs-pe_gem

HTH,

Nan

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/CACqVBqD06H9mha4A4TAQXActPau1HGdCzHgfT%2B_BJxP8UhNHag%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Same methods in two providers - how to optimize it?

2014-04-16 Thread Jakov Sosic
Hi,

I'm developing some of my custom types, and some of them share same params, 
with exactly the same methods...

For example, I have these params in three of my types and they are same:

lib/puppet/type/mytype1.rb
lib/puppet/type/mytype2.rb
lib/puppet/type/mytype3.rb

  newproperty(:comment) do
defaultto ''
  end


Is there a way I can maybe extract that code into some external library and 
reuse it in all of my three types? Now, this definition is not a problem, 
but when you start to include various checks, and override methods like 
insync? and your param code grows to 30-40 lines, and you use it in 
multiple types, it gets usefull to extract that code to some external class 
and include it into these types.



I have same problem with methods in providers, for example:

lib/puppet/provider/mytype1/default.rb
lib/puppet/provider/mytype2/default.rb
lib/puppet/provider/mytype3/default.rb

all have for example:

  # sets comment
  def comment=(value)
@property_hash[:comment]=(value)
  end

Is there a way to extract method provider into some external file and just 
include it somehow?


If it's possible I would like to escape a route of creating another custom 
type, and add its value to param of another custom type :-/

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/3ac5529c-9bfe-44a3-a150-ce6598e56bde%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Dashboard: New Install: Report processor failed - permission denied

2014-04-16 Thread Will Button
Hi all,
Installed puppet open source 2.7.23 and puppet dashboard.
I have agents successfully talking to the master

Puppet dashboard gui works on port 3000
I can post successfully using a rest client to 
http://ph-puppet01.mylist.com:3000/reports/upload
puppetmaster service is running, puppet-dashboard service is running, 
puppet-dashboard-workers service is running

Agents are unable to report.

Puppetmaster logs:
Apr 16 09:11:44 ph-puppet01 puppet-master[12288]: Could not find node 
'ph-puppet01.mylist.com'; cannot compile
Apr 16 09:11:44 ph-puppet01 puppet-agent[5774]: Could not retrieve catalog 
from remote server: Error 400 on SERVER: Could not find node 
'ph-puppet01.mylist.com'; cannot compile
Apr 16 09:11:44 ph-puppet01 puppet-agent[5774]: Using cached catalog
Apr 16 09:11:44 ph-puppet01 puppet-agent[5774]: Could not retrieve catalog; 
skipping run
Apr 16 09:11:44 ph-puppet01 puppet-master[12288]: Report processor failed: 
Permission denied - connect(2)


Puppetmaster puppet.conf:
[main]
# The Puppet log directory.
# The default value is '$vardir/log'.
logdir = /var/log/puppet
modulepath = /etc/puppet/modules
# Where Puppet PID files are kept.
# The default value is '$vardir/run'.
rundir = /var/run/puppet

# Where SSL certificates are kept.
# The default value is '$confdir/ssl'.
ssldir = $vardir/ssl
dns_alt_names=puppet,ph-puppet01.mylist.com,puppet.mylist.com

[master]
# Puppet-Dashboard
reports = store, http
reporturl = http://ph-puppet01.mylist.com:3000/reports/upload
node_terminus = exec
external_nodes = /usr/bin/env 
PUPPET_DASHBOARD_URL=http://localhost:3000 
/opt/puppet-dashboard/bin/external_node

[agent]
# The file in which puppetd stores a list of the classes
# associated with the retrieved configuratiion.  Can be loaded in
# the separate ``puppet`` executable using the ``--loadclasses``
# option.
# The default value is '$confdir/classes.txt'.
classfile = $vardir/classes.txt

# Where puppetd caches the local configuration.  An
# extension indicating the cache format is added automatically.
# The default value is '$confdir/localconfig'.
localconfig = $vardir/localconfig
server = ph-puppet01.mylist.com
report = true
pluginsync = true




Agent puppet.conf:
[main]
# The Puppet log directory.
# The default value is '$vardir/log'.
logdir = /var/log/puppet

# Where Puppet PID files are kept.
# The default value is '$vardir/run'.
rundir = /var/run/puppet

# Where SSL certificates are kept.
# The default value is '$confdir/ssl'.
ssldir = $vardir/ssl

[agent]
# The file in which puppetd stores a list of the classes
# associated with the retrieved configuratiion.  Can be loaded in
# the separate ``puppet`` executable using the ``--loadclasses``
# option.
# The default value is '$confdir/classes.txt'.
classfile = $vardir/classes.txt

# Where puppetd caches the local configuration.  An
# extension indicating the cache format is added automatically.
# The default value is '$confdir/localconfig'.
localconfig = $vardir/localconfig
server = ph-puppet01.mylist.com
report = true
pluginsync = true




Dashboard settings.yml:
#===[ Settings ]=
#
# This file is meant for storing setting information that is never
# published or committed to a revision control system.
#
# Do not modify this config/settings.yml.example file directly -- you
# should copy it to config/settings.yml and customize it there.
#
#---[ Values ]--

# Node name to use when contacting the puppet master.  This is the
# CN that is used in Dashboard's certificate.
cn_name: 'dashboard'

ca_crl_path: 'certs/dashboard.ca_crl.pem'

ca_certificate_path: 'certs/dashboard.ca_cert.pem'

certificate_path: 'certs/dashboard.cert.pem'

private_key_path: 'certs/dashboard.private_key.pem'

public_key_path: 'certs/dashboard.public_key.pem'

# Hostname of the certificate authority.
ca_server: 'puppet'

# Port for the certificate authority.
ca_port: 8140

# Key length for SSL certificates
key_length: 1024

# The inventory service allows you to connect to a puppet master to 
retrieve and node facts
enable_inventory_service: true

# Hostname of the inventory server.
inventory_server: 'ph-puppet01.mylist.com'

# Port for the inventory server.
inventory_port: 8140

# Set this to true to allow Dashboard to display diffs on files that
# are archived in the file bucket.
use_file_bucket_diffs: false

# Hostname of the file bucket server.
file_bucket_server: 'puppet'

# Port for the file bucket server.
file_bucket_port: 8140

# Amount of time in seconds since last report before a node is considered 
no longer reporting
no_longer_reporting_cutoff: 3600

# How many days of history to display on the Daily Run Status graph
daily_run_history_length: 30


[Puppet Users] file: square bracket in template

2014-04-16 Thread Laurent CREPET
Hi,

I'm new to Puppet. I'm using Puppet 3.4.3. I'm trying tried to build a 
template of file /etc/my.cnf. Puppet does not like the square brackets in 
my.cnf.erb, giving the following error:
Error: Parameter source failed on File[/etc/my.cnf]: Could not 
understand source [mysqld]

I will have a look at the Puppet Forge for modules to deal with MySQL. 
However, can we have a square bracket in a template (outside of the 
Out-of-Scope Variables use) ?

Regards,
Laurent.

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/10feae9e-1c0e-4850-b812-156714480027%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Re: file: square bracket in template

2014-04-16 Thread jcbollinger


On Wednesday, April 16, 2014 8:01:13 AM UTC-5, Laurent CREPET wrote:

 Hi,

 I'm new to Puppet. I'm using Puppet 3.4.3. I'm trying tried to build a 
 template of file /etc/my.cnf. Puppet does not like the square brackets in 
 my.cnf.erb, giving the following error:
 Error: Parameter source failed on File[/etc/my.cnf]: Could not 
 understand source [mysqld]

 I will have a look at the Puppet Forge for modules to deal with MySQL. 
 However, can we have a square bracket in a template (outside of the 
 Out-of-Scope Variables use) ?



To the best of my knowledge, square brackets appearing in ERB template text 
have no special meaning to ERB.  They are just copied verbatim to the 
output.

I suspect that you have written something like

file { '/etc/my.cnf'':
  source = template('my.cnf.erb')
}

where what you want is

file { '/etc/my.cnf'':
  content = template('my.cnf.erb')
}

The distinction is quite important: the 'source' parameter is expected to 
specify a URL from which the agent get retrieve the desired file content, 
whereas the 'content' property gives the content itself.  (The two are 
mutually exclusive.)


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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/42cc-eea7-4da3-89ee-da1913ddd3c6%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Hiera arry into ERB template

2014-04-16 Thread José Luis Ledesma
Hi,

First, hiera_array function if for creating an array looking for the key in
every hiera hierarchy, if the values are just on one level, you should use
the hiera function.

Second, the problem here is the way erb templates print arrays, so just a
matter of format.

Regards,
El 16/04/2014 18:31, Sans r.santanu@gmail.com escribió:

 Hi there,

 Trying to figure out how to use  hiera-array in my template. So, this is
 what I have in .yaml file:


 my_coll_list:
 - mon502.local
 - mon522.local


 and in my nodes.pp, I have this:

 $my_colloctors = hiera_array('my_coll_list')



 then in one of my ERB templates, I using that like this:

 COLLECTORS = %= @my_colloctors %



 if i understood correctly, according the Puppet documentation, using *array
 merge lookup,* I was expecting a result like this: COLLECTORS =
 ['mon502.local', 'mon522.local']
 but what I'm getting is: COLLECTORS = mon502.localmon522.local


 What am I missing here?

 Best,
 San

 --
 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 view this discussion on the web visit
 https://groups.google.com/d/msgid/puppet-users/ba8d7376-6c45-48d6-80a1-5e5d58af71cd%40googlegroups.comhttps://groups.google.com/d/msgid/puppet-users/ba8d7376-6c45-48d6-80a1-5e5d58af71cd%40googlegroups.com?utm_medium=emailutm_source=footer
 .
 For more options, visit https://groups.google.com/d/optout.


-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/CAF_B3ddsiA-%2Be7b98PV0OUc79GavgtpWnMJx-K%3DSWbAwkTMpzg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Dashboard: New Install: Report processor failed - permission denied

2014-04-16 Thread José Luis Ledesma
Hi,

You should be using puppet 3.x if you are just starting.

Anyway, have you created the node in the dashboard with his fqdn?

Regards,
El 16/04/2014 19:25, Will Button rekibnikufe...@gmail.com escribió:

 Hi all,
 Installed puppet open source 2.7.23 and puppet dashboard.
 I have agents successfully talking to the master

 Puppet dashboard gui works on port 3000
 I can post successfully using a rest client to
 http://ph-puppet01.mylist.com:3000/reports/upload
 puppetmaster service is running, puppet-dashboard service is running,
 puppet-dashboard-workers service is running

 Agents are unable to report.

 Puppetmaster logs:
 Apr 16 09:11:44 ph-puppet01 puppet-master[12288]: Could not find node '
 ph-puppet01.mylist.com'; cannot compile
 Apr 16 09:11:44 ph-puppet01 puppet-agent[5774]: Could not retrieve catalog
 from remote server: Error 400 on SERVER: Could not find node '
 ph-puppet01.mylist.com'; cannot compile
 Apr 16 09:11:44 ph-puppet01 puppet-agent[5774]: Using cached catalog
 Apr 16 09:11:44 ph-puppet01 puppet-agent[5774]: Could not retrieve
 catalog; skipping run
 Apr 16 09:11:44 ph-puppet01 puppet-master[12288]: Report processor failed:
 Permission denied - connect(2)


 Puppetmaster puppet.conf:
 [main]
 # The Puppet log directory.
 # The default value is '$vardir/log'.
 logdir = /var/log/puppet
 modulepath = /etc/puppet/modules
 # Where Puppet PID files are kept.
 # The default value is '$vardir/run'.
 rundir = /var/run/puppet

 # Where SSL certificates are kept.
 # The default value is '$confdir/ssl'.
 ssldir = $vardir/ssl
 dns_alt_names=puppet,ph-puppet01.mylist.com,puppet.mylist.com

 [master]
 # Puppet-Dashboard
 reports = store, http
 reporturl = http://ph-puppet01.mylist.com:3000/reports/upload
 node_terminus = exec
 external_nodes = /usr/bin/env PUPPET_DASHBOARD_URL=
 http://localhost:3000 /opt/puppet-dashboard/bin/external_node

 [agent]
 # The file in which puppetd stores a list of the classes
 # associated with the retrieved configuratiion.  Can be loaded in
 # the separate ``puppet`` executable using the ``--loadclasses``
 # option.
 # The default value is '$confdir/classes.txt'.
 classfile = $vardir/classes.txt

 # Where puppetd caches the local configuration.  An
 # extension indicating the cache format is added automatically.
 # The default value is '$confdir/localconfig'.
 localconfig = $vardir/localconfig
 server = ph-puppet01.mylist.com
 report = true
 pluginsync = true




 Agent puppet.conf:
 [main]
 # The Puppet log directory.
 # The default value is '$vardir/log'.
 logdir = /var/log/puppet

 # Where Puppet PID files are kept.
 # The default value is '$vardir/run'.
 rundir = /var/run/puppet

 # Where SSL certificates are kept.
 # The default value is '$confdir/ssl'.
 ssldir = $vardir/ssl

 [agent]
 # The file in which puppetd stores a list of the classes
 # associated with the retrieved configuratiion.  Can be loaded in
 # the separate ``puppet`` executable using the ``--loadclasses``
 # option.
 # The default value is '$confdir/classes.txt'.
 classfile = $vardir/classes.txt

 # Where puppetd caches the local configuration.  An
 # extension indicating the cache format is added automatically.
 # The default value is '$confdir/localconfig'.
 localconfig = $vardir/localconfig
 server = ph-puppet01.mylist.com
 report = true
 pluginsync = true




 Dashboard settings.yml:
 #===[ Settings ]=
 #
 # This file is meant for storing setting information that is never
 # published or committed to a revision control system.
 #
 # Do not modify this config/settings.yml.example file directly -- you
 # should copy it to config/settings.yml and customize it there.
 #
 #---[ Values ]--

 # Node name to use when contacting the puppet master.  This is the
 # CN that is used in Dashboard's certificate.
 cn_name: 'dashboard'

 ca_crl_path: 'certs/dashboard.ca_crl.pem'

 ca_certificate_path: 'certs/dashboard.ca_cert.pem'

 certificate_path: 'certs/dashboard.cert.pem'

 private_key_path: 'certs/dashboard.private_key.pem'

 public_key_path: 'certs/dashboard.public_key.pem'

 # Hostname of the certificate authority.
 ca_server: 'puppet'

 # Port for the certificate authority.
 ca_port: 8140

 # Key length for SSL certificates
 key_length: 1024

 # The inventory service allows you to connect to a puppet master to
 retrieve and node facts
 enable_inventory_service: true

 # Hostname of the inventory server.
 inventory_server: 'ph-puppet01.mylist.com'

 # Port for the inventory server.
 inventory_port: 8140

 # Set this to true to allow Dashboard to display diffs on files that
 # are archived in the file bucket.
 use_file_bucket_diffs: false

 # Hostname of the file bucket server.
 

[Puppet Users] Re: Hiera arry into ERB template

2014-04-16 Thread jcbollinger
On Wednesday, April 16, 2014 11:31:53 AM UTC-5, Sans wrote:

 Hi there,

 Trying to figure out how to use  hiera-array in my template. So, this is 
 what I have in .yaml file:



No, you are just trying to use an array.  Your template can't tell where 
the array came from or how it was constructed.

 



 my_coll_list:
 - mon502.local
 - mon522.local


 and in my nodes.pp, I have this:

 $my_colloctors = hiera_array('my_coll_list')





You probably do not want to use hiera_array() for that.  Use plain hiera() 
instead.  The former traverses your entire hierarchy, returning an array 
whose elements are the values matching the specified key at each level.  
The latter returns the value associated with the requested key at the 
highest-priority level of your hierarchy that provides one, as whatever 
data type is modeled by the data (an array, in your example).

 

 then in one of my ERB templates, I using that like this:

 COLLECTORS = %= @my_colloctors % 



 if i understood correctly, according the Puppet documentation, using *array 
 merge lookup,* I was expecting a result like this: COLLECTORS = 
 ['mon502.local', 'mon522.local']
 but what I'm getting is: COLLECTORS = mon502.localmon522.local

  

   1. You are confusing the Puppet DSL representation of an array with its 
   (Ruby) stringification.  The latter is what your template will produce, and 
   it is simply the concatenation of the string values of the array elements.
   2. The Puppet DSL form of the value of $my_colloctors that you actually 
   have is in all likelihood [['mon502.local', 'mon522.local']].  That is, 
   an array whose only element is an array of your colloctors (whatever those 
   are).  See my previous comments about hiera_array() vs. hiera().
   
 


 What am I missing here?



If you really do want to collect collectors from multiple levels of your 
hierarchy, then you will need to flatten the result.  Additionally, you 
will need to format it into your template yourself.  There are many ways to 
do that, but one would be something like this:

COLLECTORS = [%= @my_collectors.map { |c| '#{c.to_s}'}.join(', ') %]


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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/e23021a9-0844-4cdb-946c-04f78a7aafe6%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Re: puppetlabs-apache

2014-04-16 Thread jcbollinger


On Wednesday, April 16, 2014 11:11:30 AM UTC-5, willi@home24.de wrote:

 Hi,

 we are using puppetlabs-apache module version 1.01.

 When we run puppet parser validate to check our Puppet code we see the 
 following error:

 Warning: You cannot collect exported resources without storeconfigs being 
 set; the collection will be ignored on line 65 in file 
 /etc/puppet/modules/apache/manifests/balancer.pp

 Is there a possibility to ged rid of this warning?



Sure, you can install puppetdb and enable storeconfigs on your master.  
That has the added benefit that the apache::balancer and 
apache::balancermember defined types will work for you.

If you don't want to enable storeconfigs, and (therefore) you don't want to 
use apache::balancer, then you can remove apache/manifests/balancer.pp from 
the module (which will render apache::balancermember useless, though 
harmless).

You could also omit apache/manifests/balancer.pp from the manifests you 
validate, but that's asking for trouble.  The warning is there for a reason.


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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/ab186e88-a3eb-4271-85cf-639554ad5584%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Re: fail on first error. don't continue doing stuff

2014-04-16 Thread jcbollinger


On Tuesday, March 18, 2014 4:03:38 PM UTC-5, Alexander Gray II wrote:

 I have weird scenario:
 When I run puppet for the very first time, it always fails, but when I 
 re-run puppet on that machine, it always passes.
 I must have some obscure dependency issue somewhere and I'm trying to 
 track it down.

 Something *must* be occurring after the first error (puppet continues to 
 run after that first error), but I would like to stop puppet the moment it 
 encounters that error so that I can snoop around that machine.



This kind of problem often arises when you are using Puppet to install 
software that it needs to use for other configuration tasks.  Sometimes 
(and moreso in the most recent versions of Puppet) you can fix the problem 
by declaring resource relationships the require Puppet to sync the software 
(typically by applying a Package resource) before it tries to apply 
whatever resource it is that otherwise fails the first time.

 

 Is there anyway for puppet to exit the moment it encounters an error?



Not as far as I am aware.  Puppet is designed specifically to apply as much 
of the nodes configuration as it can.  The log will tell you the order in 
which resources were applied, and which one(s) failed.  It will give that 
and more to you in great detail if you enable verbose logging (--verbose 
flag).


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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/66901d00-a7d2-4ab3-9457-882ae9425548%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Memory sizing (or leak) in master. [Tkt: 115440]

2014-04-16 Thread Ramin K

On 3/14/2014 6:18 AM, Chris Ritson wrote:

Am I being too optimistic? Running a centos 6.5 virtual machine as puppet 
master, on version 3.4.3, I am frequently running out of memory. The virtual 
machine only has 0.75Gig of allocated memory. It holds 225 certificates, but 
only about 130 of these agent machines are regularly active. Mostly they run 
the puppet agent from cron once an hour at a random time or with a random splay 
from within puppet if the start time is not already randomised.

How much memory would be normal for a setup of this size, and how is it likely 
to scale as we add more client agents?

Chris Ritson (Computing Officer and School Safety Officer)


From a prod Puppet master running 3.4.3, Ruby 1.8.7, and Passenger 4.

puppet01 ~ $ sudo passenger-memory-stats
snip
- Passenger processes --
PIDVMSizePrivate   Name

9874   236.1 MB  148.1 MB  Passenger RackApp: /home/deploy/puppet/rack
13019  224.2 MB  136.7 MB  Passenger RackApp: /home/deploy/puppet/rack

200MB per application instance is roughly what I've heard from other 
users in the community.


In your case I'd consider increasing RAM to 1G and setting limits on the 
number of Puppet master processes. Something like the following might work.


## passenger.conf
PassengerMaxPoolSize 2 # only two instances
PassengerMinInstances 2 # assumes no other Passenger run applications
PassengerMaxRequests 1
PassengerStatThrottleRate 30

In regards to scaling Puppet it's a matter of controlling concurrent 
requests. If you never have more than two concurrent requests then you 
may never need a larger server. General rule of thumb is 1.5 or 2.0 
instances per core, 250MB per instance, and enough instances to handle 
requests.


Ramin

--
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/534ED05D.9040305%40badapple.net.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Dashboard: New Install: Report processor failed - permission denied

2014-04-16 Thread Will Button
Hey, thanks for the reply!
I had installed puppet-server from the epel repos- that's where I got 2.7.

I added the puppetlabs repos, removed 2.7 and installed 3.4.
Restarted, and all works great now.

Thanks for your help!

On Wednesday, April 16, 2014 10:55:05 AM UTC-7, Jose Luis Ledesma wrote:

 Hi,

 You should be using puppet 3.x if you are just starting.

 Anyway, have you created the node in the dashboard with his fqdn?

 Regards,
 El 16/04/2014 19:25, Will Button rekibni...@gmail.com javascript: 
 escribió:

 Hi all,
 Installed puppet open source 2.7.23 and puppet dashboard.
 I have agents successfully talking to the master

 Puppet dashboard gui works on port 3000
 I can post successfully using a rest client to 
 http://ph-puppet01.mylist.com:3000/reports/upload
 puppetmaster service is running, puppet-dashboard service is running, 
 puppet-dashboard-workers service is running

 Agents are unable to report.

 Puppetmaster logs:
 Apr 16 09:11:44 ph-puppet01 puppet-master[12288]: Could not find node '
 ph-puppet01.mylist.com'; cannot compile
 Apr 16 09:11:44 ph-puppet01 puppet-agent[5774]: Could not retrieve 
 catalog from remote server: Error 400 on SERVER: Could not find node '
 ph-puppet01.mylist.com'; cannot compile
 Apr 16 09:11:44 ph-puppet01 puppet-agent[5774]: Using cached catalog
 Apr 16 09:11:44 ph-puppet01 puppet-agent[5774]: Could not retrieve 
 catalog; skipping run
 Apr 16 09:11:44 ph-puppet01 puppet-master[12288]: Report processor 
 failed: Permission denied - connect(2)


 Puppetmaster puppet.conf:
 [main]
 # The Puppet log directory.
 # The default value is '$vardir/log'.
 logdir = /var/log/puppet
 modulepath = /etc/puppet/modules
 # Where Puppet PID files are kept.
 # The default value is '$vardir/run'.
 rundir = /var/run/puppet

 # Where SSL certificates are kept.
 # The default value is '$confdir/ssl'.
 ssldir = $vardir/ssl
 dns_alt_names=puppet,ph-puppet01.mylist.com,puppet.mylist.com

 [master]
 # Puppet-Dashboard
 reports = store, http
 reporturl = http://ph-puppet01.mylist.com:3000/reports/upload
 node_terminus = exec
 external_nodes = /usr/bin/env PUPPET_DASHBOARD_URL=
 http://localhost:3000 /opt/puppet-dashboard/bin/external_node

 [agent]
 # The file in which puppetd stores a list of the classes
 # associated with the retrieved configuratiion.  Can be loaded in
 # the separate ``puppet`` executable using the ``--loadclasses``
 # option.
 # The default value is '$confdir/classes.txt'.
 classfile = $vardir/classes.txt

 # Where puppetd caches the local configuration.  An
 # extension indicating the cache format is added automatically.
 # The default value is '$confdir/localconfig'.
 localconfig = $vardir/localconfig
 server = ph-puppet01.mylist.com
 report = true
 pluginsync = true




 Agent puppet.conf:
 [main]
 # The Puppet log directory.
 # The default value is '$vardir/log'.
 logdir = /var/log/puppet

 # Where Puppet PID files are kept.
 # The default value is '$vardir/run'.
 rundir = /var/run/puppet

 # Where SSL certificates are kept.
 # The default value is '$confdir/ssl'.
 ssldir = $vardir/ssl

 [agent]
 # The file in which puppetd stores a list of the classes
 # associated with the retrieved configuratiion.  Can be loaded in
 # the separate ``puppet`` executable using the ``--loadclasses``
 # option.
 # The default value is '$confdir/classes.txt'.
 classfile = $vardir/classes.txt

 # Where puppetd caches the local configuration.  An
 # extension indicating the cache format is added automatically.
 # The default value is '$confdir/localconfig'.
 localconfig = $vardir/localconfig
 server = ph-puppet01.mylist.com
 report = true
 pluginsync = true




 Dashboard settings.yml:
 #===[ Settings ]=
 #
 # This file is meant for storing setting information that is never
 # published or committed to a revision control system.
 #
 # Do not modify this config/settings.yml.example file directly -- you
 # should copy it to config/settings.yml and customize it there.
 #
 #---[ Values ]--

 # Node name to use when contacting the puppet master.  This is the
 # CN that is used in Dashboard's certificate.
 cn_name: 'dashboard'

 ca_crl_path: 'certs/dashboard.ca_crl.pem'

 ca_certificate_path: 'certs/dashboard.ca_cert.pem'

 certificate_path: 'certs/dashboard.cert.pem'

 private_key_path: 'certs/dashboard.private_key.pem'

 public_key_path: 'certs/dashboard.public_key.pem'

 # Hostname of the certificate authority.
 ca_server: 'puppet'

 # Port for the certificate authority.
 ca_port: 8140

 # Key length for SSL certificates
 key_length: 1024

 # The inventory service allows you to connect to a puppet master to 
 retrieve and node facts
 enable_inventory_service: true

 # 

[Puppet Users] Announce: Puppet 3.5.1 available!

2014-04-16 Thread Eric Sorenson
Released April 16, 2014. (RC1: April 10.)

3.5.1 is a backward-compatible features and fixes release in the Puppet 3 
series.
When 3.5.0 went final, users found breaking issues with the `yumrepo` resource 
type and with dynamic environments which hadn't been uncovered in the release 
candidate period. This release fixes those problems, as well as a couple of 
smaller bugs.

Read the full release notes here: 
http://docs.puppetlabs.com/puppet/latest/reference/release_notes.html#puppet-351
Get the downloads by following the directions here: 
http://docs.puppetlabs.com/guides/installation.html

Eric Sorenson - eric.soren...@puppetlabs.com - freenode #puppet: eric0
puppet platform // coffee // techno // bicycles

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/3193923F-6E67-4C15-B624-7FDC9951%40puppetlabs.com.
For more options, visit https://groups.google.com/d/optout.