[Puppet Users] Puppet8 'lookup' fails when Puppet7 succeeds

2023-08-23 Thread Jon Jaroker
I am migrating from puppet 7 to puppet 8 by first updating servers in a 
staging environment (which is operating puppet version 8.1.0).  While 
debugging hiera, I notice the following unusual behavior with the puppet 
lookup command.

In the production environment running puppet 7.25.0, the following two 
commands produce the same correct output:

[1] puppet lookup sshd::config --environment production --node 
'puppet.datacenter' 
--explain --verbose 
--hiera_config=/etc/puppetlabs/code/environments/production/hiera.yaml

[2] puppet lookup sshd::config --environment production  --explain 
--verbose 
--hiera_config=/etc/puppetlabs/code/environments/production/hiera.yaml

Both commands are run on the puppet master.  Command [2] omits the --node 
option.  Both commands produce the correct lookup.

In the staging environment that was generated by branching 
production->staging, a newly-created puppet master fails when the -node 
option is specified.  Specifically,

[3] puppet lookup sshd::config --environment staging --node 
'puppet.staging' --explain --verbose --hiera_conf
ig=/etc/puppetlabs/code/environments/staging/hiera.yaml 
Error: Could not run: No facts available for target node: puppet.staging

but the following command (which omits the -node option) produces the 
correct lookup

[4]puppet lookup sshd::config --environment staging --explain --verbose 
--hiera_config=/etc/puppetlabs/code/
environments/staging/hiera.yaml

There are no warnings or other debug messages.  The structure of the data 
directory and manifests is exactly the same.  The production environment 
has puppetDB operating, but the staging environment was newly created and 
only has puppetserver.

Any suggestions on how to debug this would be appreciated.

Thank you,
Jon

-- 
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/a4c86230-3d8c-4711-a4b6-7a3db676b625n%40googlegroups.com.


Re: [Puppet Users] Recent 5.5.x point releases are throwing some warnings for me

2018-08-29 Thread jon
Fair enough.  Some parts of our Puppet code base is almost 10 years old, 
and usually only gets updated when a deprecation requires it.  We'll have 
to put some time into reorganizing things a bit one of these days.

Jon

On Wednesday, 29 August 2018 07:58:32 UTC-6, Henrik Lindberg wrote:
>
> On 2018-08-29 15:11, jcbollinger wrote: 
> > 
> > 
> > On Tuesday, August 28, 2018 at 12:13:15 PM UTC-5, kris.b...@puppet.com 
> > wrote: 
> > 
> > 
> > Hi Jon, 
> > 
> > As you have read, this is part of our work implementing errors to 
> > enforce the standards set down in PUP-1434.  In particular, your 
> > example '$module_path/seed/manifests/init.pp' looks like it is in 
> > the init file of module 'seed'.  Assuming that is what you meant, 
> > anything starting with 'seed' would be OK in that file, e.g. 'seed', 
> > 'seed::remote_file', 'seed::foo::remote_file' would all work.  Note 
> > that as part of point 4. of PUP-1434 (now being implemented in the 
> > work of PUP-9020), you will also not be allowed to put things like 
> > resources in the top level, but instead should include your 
> > resources in a class, define, function, or type declaration. 
> > 
> > 
> > As a matter of style, the usual recommendation is that furthermore, 
> > every class and defined type definition be located in its own file 
> > <https://puppet.com/docs/puppet/5.5/style_guide.html#separate-files>, 
> > named as predicted from its fully-qualified name.  Of course, this is 
> > coupled with assigning an appropriate fully-qualified name.  It is 
> > important to understand that class and type names in Puppet are 
> > independent of the pathnames of the files in which the class and type 
> > definitions appear.  The importance of the pathnames is limited to 
> > enabling Puppet to /find/ type and class definitions at runtime. 
> > 
> > 
>
> Not quite - what is now starting to be enforced is that definitions 
> must be made in a file that is on an accepted path for that definition. 
>
> Best, 
> - henrik 
>
> > 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...@googlegroups.com  
> > <mailto:puppet-users+unsubscr...@googlegroups.com >. 
> > To view this discussion on the web visit 
> > 
> https://groups.google.com/d/msgid/puppet-users/916271cc-6a49-4374-afe2-d6fe0dff297d%40googlegroups.com
>  
> > <
> https://groups.google.com/d/msgid/puppet-users/916271cc-6a49-4374-afe2-d6fe0dff297d%40googlegroups.com?utm_medium=email_source=footer>.
>  
>
> > For more options, visit https://groups.google.com/d/optout. 
>
>
> -- 
>
> Visit my Blog "Puppet on the Edge" 
> http://puppet-on-the-edge.blogspot.se/ 
>
>

-- 
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/75960b28-a2e6-4bec-9083-1c4f758dcd93%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Recent 5.5.x point releases are throwing some warnings for me

2018-08-28 Thread jon
Guess I should have read to point 6 in PUP-1434, init.pp is special.  Got 
it, thanks a bunch.

Jon

On Tuesday, 28 August 2018 10:08:16 UTC-6, j...@jnjschneider.com wrote:
>
> So does this mean if the path is '$module_path/seed/manifests/init.pp' then 
> the define name will now need to be 'seed::init::remote_file' in place of 
> 'remote_file'?
>
> Thanks,
> Jon
>
> On Tuesday, 28 August 2018 09:50:48 UTC-6, Branan Purvine-Riley wrote:
>>
>> Hi Jon,
>>
>> In Puppet 6 we're going to start requiring that the names of 
>> classes/defines match the name that's implied by their file path[1]. We 
>> added that deprecation warning in 5.5.6[2] as part of a push to get 
>> upcoming Puppet 6 changes printing warnings whenever possible.
>>
>> [1] https://tickets.puppetlabs.com/browse/PUP-1434 and 
>> https://tickets.puppetlabs.com/browse/PUP-4242
>> [2] https://tickets.puppetlabs.com/browse/PUP-8894
>>
>>
>> On Tue, Aug 28, 2018 at 8:31 AM  wrote:
>>
>>> I was away on vacation for a month, upon getting back I am finding the 
>>> Puppet Agent is now throwing a warning on all of the defines I have in a 
>>> module that is applied to all our Linux servers.  (we are auto updating 
>>> point releases)
>>>
>>> Warning: Unacceptable location. The name 'remote_file' is unacceptable 
>>> in file '/etc/puppet/modules/seed/manifests/init.pp' (file: 
>>> /etc/puppet/modules/seed/manifests/init.pp, line: 1123, column: 1)
>>>
>>> We have several defines in this module, all now causing the same warning 
>>> message and wasn't a few months ago.  I couldn't find anything in the 5.5.x 
>>> release notes to explain why this warning has started to pop up.
>>>
>>> In this case the define warned about above looks like:
>>>
>>> define remote_file($remote_location=undef, $mode='0644', $owner=undef, 
>>> $group=undef) {
>>> Code here
>>> }
>>>
>>> Thanks in advance for any ideas anyone might have on why this warning 
>>> has started to pop up.
>>>
>>> Jon
>>>
>>> -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "Puppet Users" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to puppet-users...@googlegroups.com.
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/puppet-users/673af078-aadf-4c43-8f8a-c451f688a85f%40googlegroups.com
>>>  
>>> <https://groups.google.com/d/msgid/puppet-users/673af078-aadf-4c43-8f8a-c451f688a85f%40googlegroups.com?utm_medium=email_source=footer>
>>> .
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>> -- 
>> Regards,
>>
>> Branan Riley
>> Senior Software Engineer, Puppet inc.
>>
>

-- 
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/4ef21186-4624-49e1-9e7f-e2ead76a0db3%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Recent 5.5.x point releases are throwing some warnings for me

2018-08-28 Thread jon
So does this mean if the path is '$module_path/seed/manifests/init.pp' then 
the define name will now need to be 'seed::init::remote_file' in place of 
'remote_file'?

Thanks,
Jon

On Tuesday, 28 August 2018 09:50:48 UTC-6, Branan Purvine-Riley wrote:
>
> Hi Jon,
>
> In Puppet 6 we're going to start requiring that the names of 
> classes/defines match the name that's implied by their file path[1]. We 
> added that deprecation warning in 5.5.6[2] as part of a push to get 
> upcoming Puppet 6 changes printing warnings whenever possible.
>
> [1] https://tickets.puppetlabs.com/browse/PUP-1434 and 
> https://tickets.puppetlabs.com/browse/PUP-4242
> [2] https://tickets.puppetlabs.com/browse/PUP-8894
>
>
> On Tue, Aug 28, 2018 at 8:31 AM > 
> wrote:
>
>> I was away on vacation for a month, upon getting back I am finding the 
>> Puppet Agent is now throwing a warning on all of the defines I have in a 
>> module that is applied to all our Linux servers.  (we are auto updating 
>> point releases)
>>
>> Warning: Unacceptable location. The name 'remote_file' is unacceptable in 
>> file '/etc/puppet/modules/seed/manifests/init.pp' (file: 
>> /etc/puppet/modules/seed/manifests/init.pp, line: 1123, column: 1)
>>
>> We have several defines in this module, all now causing the same warning 
>> message and wasn't a few months ago.  I couldn't find anything in the 5.5.x 
>> release notes to explain why this warning has started to pop up.
>>
>> In this case the define warned about above looks like:
>>
>> define remote_file($remote_location=undef, $mode='0644', $owner=undef, 
>> $group=undef) {
>> Code here
>> }
>>
>> Thanks in advance for any ideas anyone might have on why this warning has 
>> started to pop up.
>>
>> Jon
>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Puppet Users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to puppet-users...@googlegroups.com .
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/puppet-users/673af078-aadf-4c43-8f8a-c451f688a85f%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/puppet-users/673af078-aadf-4c43-8f8a-c451f688a85f%40googlegroups.com?utm_medium=email_source=footer>
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
> -- 
> Regards,
>
> Branan Riley
> Senior Software Engineer, Puppet inc.
>

-- 
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/493ef3be-ec71-48a0-86c7-5290a5d3cd71%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Recent 5.5.x point releases are throwing some warnings for me

2018-08-28 Thread jon
I was away on vacation for a month, upon getting back I am finding the 
Puppet Agent is now throwing a warning on all of the defines I have in a 
module that is applied to all our Linux servers.  (we are auto updating 
point releases)

Warning: Unacceptable location. The name 'remote_file' is unacceptable in 
file '/etc/puppet/modules/seed/manifests/init.pp' (file: 
/etc/puppet/modules/seed/manifests/init.pp, line: 1123, column: 1)

We have several defines in this module, all now causing the same warning 
message and wasn't a few months ago.  I couldn't find anything in the 5.5.x 
release notes to explain why this warning has started to pop up.

In this case the define warned about above looks like:

define remote_file($remote_location=undef, $mode='0644', $owner=undef, 
$group=undef) {
Code here
}

Thanks in advance for any ideas anyone might have on why this warning has 
started to pop up.

Jon

-- 
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/673af078-aadf-4c43-8f8a-c451f688a85f%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Re: Problem with snmpd service in new ubuntu 16.04

2016-05-12 Thread Jon Skarpeteig
Same problem with AutoFS

On Thursday, May 5, 2016 at 8:51:41 AM UTC+2, amateo wrote:
>
> Hello, 
>
> I'm testing my puppet code in the new ubuntu 16.04. 
>
> I'm using razorsedge/snmp module from the forge to manage snmpd. 
> In 
> this module, it manages snmpd service with: 
>
>service { 'snmpd': 
>  ensure => $service_ensure_real, 
>  name   => $service_name, 
>  enable => $service_enable_real, 
>  hasstatus  => $service_hasstatus, 
>  hasrestart => $service_hasrestart, 
>  require=> [ Package['snmpd'], File['var-net-snmp'], ], 
>} 
>
> In concrete, in my config, $service_enable_real has the value of 
> true. 
>
> The problem I'm having is that every run shows the message: 
>
> Notice: /Stage[main]/Snmp/Service[snmpd]/enable: enable changed 'false' 
> to 'true' 
>
> Running puppet in debug mode shows: 
>
> Debug: Executing '/usr/bin/dpkg-query -W --showformat '${Status} 
> ${Package} ${Version}\n'' 
> Debug: Executing: '/bin/systemctl is-active snmpd' 
> Debug: Executing: '/bin/systemctl show snmpd --property LoadState 
> --property UnitFileState --no-pager' 
> Debug: Executing: '/bin/systemctl unmask snmpd' 
> Debug: Executing: '/bin/systemctl enable snmpd' 
> Notice: /Stage[main]/Snmp/Service[snmpd]/enable: enable changed 'false' 
> to 'true' 
> Debug: /Stage[main]/Snmp/Service[snmpd]: The container Class[Snmp] will 
> propagate my refresh event 
> Debug: Class[Snmp]: The container Stage[main] will propagate my refresh 
> event 
>
> I have manually run each systemctl command and all of them returns 
> error code 0. The displayed output is: 
>
> root@ubuntu-16-04:~# /bin/systemctl is-active snmpd 
> active 
> root@ubuntu-16-04:~# /bin/systemctl show snmpd --property LoadState 
> --property UnitFileState --no-pager 
> LoadState=loaded 
> UnitFileState=bad 
> root@ubuntu-16-04:~# /bin/systemctl unmask snmpd 
> root@ubuntu-16-04:~# /bin/systemctl enable snmpd 
> snmpd.service is not a native service, redirecting to systemd-sysv-install 
> Executing /lib/systemd/systemd-sysv-install enable snmpd 
>
> Any help? Thank you. 
>  
> -- 
> Angel L. Mateo Martínez 
> Sección de Telemática 
> Área de Tecnologías de la Información 
> y las Comunicaciones Aplicadas (ATICA) 
> http://www.um.es/atica 
> Tfo: 868887590 
> Fax: 86337 
>

-- 
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/c9e052cd-29cc-4125-b02a-06140db31a50%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Sending facts out-of-band natively

2014-09-11 Thread Jon McKenzie
Hi all, 

We're thinking about implementing the puppet facts upload pattern to send 
facts up to the Puppetmaster (and into Foreman) out-of-band. Basically, we 
need a way to distinguish hosts which are alive, but just have their agent 
disabled (e.g. for troubleshooting), and hosts which are just not 
communicating with the Puppet infrastructure. We'd also like to keep 
up-to-date inventory information (we have a few dozen custom facts which we 
need to report on) despite the status (enabled/disabled) of the puppet 
agent.

It's surprising that this functionality isn't just accomplished 
automatically. But now, since Puppet 4 is deprecating the inventory 
service, the above solution will likely need to change. But the suggestion 
in the deprecation documentation that users simply write a script to parse 
the facts into the PuppetDB wire format and send them along seems like a 
pretty big step backwards from a usability point of view. It seems a little 
crazy that an end user has to deal with something so low-level to 
accomplish something that the Puppet agent can (and does) already do. The 
interface goes from 1 touchpoint (the 'puppet facts' command) to about four 
(get the current facts, format the facts into PuppetDB wire, retrieve the 
puppetdb server hostname from .. who knows where, configuration?, make the 
request to the PuppetDB API).

Is there room in this equation for a different agent run mode, one where 
the Puppet modules don't get applied, but the rest of the workflow (facts, 
etc.) still executes? Is there a better way of accomplishing this?

Thoughts?

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/574e25ff-e2be-4328-94d1-2dc7ab25285b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Re: Sending facts out-of-band natively

2014-09-11 Thread Jon McKenzie
For anyone that's interested, here's what I ended up doing:

I created a new Puppet face called 'maintenance' with an 'enter' and 'exit' 
action. When you 'enter' maintenance mode, it runs the 'config' face to set 
'noop' to 'true' (by default in the agent section, but you can specify). 
This way, all of the standard agent processing logic runs (reports, etc.), 
except the host won't apply any config changes. Operationally, our team is 
just going to deprecate usage of 'puppet agent --disable' and instead use 
this custom command for maintenance/troubleshooting activities. 

On Thursday, September 11, 2014 10:11:10 AM UTC-4, Jon McKenzie wrote:

 Hi all, 

 We're thinking about implementing the puppet facts upload pattern to 
 send facts up to the Puppetmaster (and into Foreman) out-of-band. 
 Basically, we need a way to distinguish hosts which are alive, but just 
 have their agent disabled (e.g. for troubleshooting), and hosts which are 
 just not communicating with the Puppet infrastructure. We'd also like to 
 keep up-to-date inventory information (we have a few dozen custom facts 
 which we need to report on) despite the status (enabled/disabled) of the 
 puppet agent.

 It's surprising that this functionality isn't just accomplished 
 automatically. But now, since Puppet 4 is deprecating the inventory 
 service, the above solution will likely need to change. But the suggestion 
 in the deprecation documentation that users simply write a script to parse 
 the facts into the PuppetDB wire format and send them along seems like a 
 pretty big step backwards from a usability point of view. It seems a little 
 crazy that an end user has to deal with something so low-level to 
 accomplish something that the Puppet agent can (and does) already do. The 
 interface goes from 1 touchpoint (the 'puppet facts' command) to about four 
 (get the current facts, format the facts into PuppetDB wire, retrieve the 
 puppetdb server hostname from .. who knows where, configuration?, make the 
 request to the PuppetDB API).

 Is there room in this equation for a different agent run mode, one where 
 the Puppet modules don't get applied, but the rest of the workflow (facts, 
 etc.) still executes? Is there a better way of accomplishing this?

 Thoughts?

 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/fd3fd128-c998-47f9-bf13-2c7e7826943f%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Eugene Oregon Puppet User Group?

2014-05-01 Thread Jon Sawyer
I am interested in starting one if one does not yet exist. 
I'd like to talk about and collaborate on usage of puppet.

Anyone can hit me up if there is such a group here in town, I know there is 
one in Portland but I won't be going any time soon.

-- 
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/981c1dbd-7df7-4401-839a-c1e50e1fa2e4%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] How to Prevent Both MySQL and Percona From Being Installed? (RSOLVED)

2014-04-25 Thread Jon Forrest

On 4/25/2014 5:31 AM, Walter Heck wrote:

Why don't you use the puppetlabs-mysql module? There you can use percona
simply by modifying a few parameters, circumventing this whole issue.

just my 2 cents :)


You're right - I could have. Maybe I should have. But,
I like little puzzles like this because they help me
learn more about Puppet.

Jon Forrest


--
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/535B3696.2070602%40gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Re: Package With 'yum' Provider Uses 'rpm' to Remove a Package (bug?)

2014-04-24 Thread Jon Forrest

On 4/24/2014 7:01 AM, jcbollinger wrote:


That's not necessarily a naive assumption, but it does suggest that you
haven't fully grasped the Puppet paradigm.  You seem to be thinking in
terms of how to persuade Puppet to execute specific commands, but you
should be thinking in terms of how to accurately express the desired
target state.


I think I did, but that didn't work. So, I had to get fancy.


Given that, then, declaring to Puppet that you want a package absent
is a statement about that package alone.  Declaring that you want it
purged says that you want not only that package absent, but also all
its configuration files and any other packages that depend on it.


This is indeed the critical fact that I wasn't aware of. Thanks
for clearing this up.

Jon

--
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/5359D29E.2020606%40gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] How to Prevent Both MySQL and Percona From Being Installed? (RSOLVED)

2014-04-24 Thread Jon Forrest

A very clever co-worker managed to come with a solution.

Changing

  package {
'mysql':
  provider = yum,
  ensure = purged,
  }

to

  package {
'mysql.x86-64':
  provider = yum,
  ensure = purged,
  }

solved the problem.

I'm not sure why this works. I suspect it's because adding the .x86-64
somehow prevents the pattern from matching Percona. I'm going to
check this.

This approach is easier than creating a custom fact.

Thanks for all the suggestions.

Jon Forrest

--
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/5359D4E2.2090908%40gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Re: Package With 'yum' Provider Uses 'rpm' to Remove a Package (bug?)

2014-04-23 Thread Jon Forrest
On Wed, Apr 23, 2014 at 8:54 AM, jcbollinger john.bollin...@stjude.org wrote:


 On Tuesday, April 22, 2014 2:16:22 PM UTC-5, Jon Forrest wrote:

 (I found a discussion from 6/22/09 on this topic, but that was a long time
 ago.)

 Did the discussion give you reason to think that the behavior was
 unintentional or likely to change?

I didn't think that whatever my reaction was to a 5 year old discussion
would matter now.  Puppet changes. People change.

 Using Puppet 3.5.1 on CentOS 6.5 I recently created the following:

   package {
 [ PackageKit]:
   ensure = absent,
   }

 However, when I ran Puppet, I got

 Error: Execution of '/bin/rpm -e PackageKit-0.5.8-21.el6.x86_64' returned
 1: error: Failed dependencies:
 PackageKit = 0.5.8-21.el6 is needed by (installed)
 PackageKit-yum-0.5.8-21.el6.x86_64
 PackageKit = 0.5.8-21.el6 is needed by (installed)
 PackageKit-glib-0.5.8-21.el6.x86_64
 PackageKit is needed by (installed)
 PackageKit-yum-plugin-0.5.8-21.el6.x86_64

 Notice that the provider is running '/bin/rpm' which explains the errors.



 Yes, this is intentional.  Puppet is taking care to avoid undeclared side
 effects.  Such side effects can make your manifest set inconsistent in ways
 that Puppet cannot otherwise detect.  For example, suppose somewhere else in
 your manifest set you had

   package { PackageKit-yum: ensure = 'installed' }

 That declaration and your example declaration are not consistent with each
 other, but if Puppet provided for ensure = absent via yum then both could
 be applied without error.  The result would depend on the relative order in
 which the declarations were applied, but neither result would be fully
 consistent with the catalog.

OK. See below.


 So, I explicitly added
 a provider, so that the resource definition is this:

  package {
 [ PackageKit]:
   provider = 'yum',
   ensure = absent,
   }

 There was no change!!



 No, because the agent was selecting the yum provider already.  The yum
 provider ensures absent by use of 'rpm -e'.  Again, this is intentional.

Apparently. But still, I was hoping there would be a way to somehow express
that I really truly wanted yum to remove a package, the same way it would
if I ran yum on the command line. In this case, there are no
conflicting resource
definitions so there would be no problem with the catalog being consistent.

My perhaps naive assumption would be that if I explicitly used the 'yum'
provider Puppet would follow my direction. I'm clearly wrong. Again,
see below.

 In the discussion from 2009, somebody suggested using purge instead of
 absent,
 so I did.

 And if you are willing to accept the risk of inconsistency described above,
 then that is what you should do.  But it's spelled purged, not purge.

Oops. You're right. My mistake, although would it be reasonable to expect
Puppet to show an error?

So, apart from my stupid syntax error, it seems like my problem was caused
by not understanding the difference between absent and purged when
the yum provider is used. I just googled

puppet difference between purged and absent

and I didn't find an explanation. I also checked the Puppet Type
Reference manual
and I didn't find anything there. Can you point me to anything?

Thanks,
Jon Forrest

-- 
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/CAF0Z9ipGV40Uj8P7s10_H%2BFt0p4OQbi5uH5RErWL_0zgtTBwqg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Unclear Status Messages

2014-04-23 Thread Jon Forrest
I have the following resource:

  package {
[ PackageKit]:
  provider = 'yum',
  ensure = purged,
  }

The first time I run Puppet I get status message I expect, e.g.

Notice: /Stage[main]/Xoom/Package[PackageKit]/ensure: ensure changed
'0.5.8-21.el6' to 'purged'

I then run Puppet again without making any changes to either the host
or the Puppet master. I then get:

Notice: /Stage[main]/Xoom/Package[PackageKit]/ensure: created

This makes it look like Puppet created the PackageKit package, even
though I asked for it to be deleted. However, this package wasn't
actually installed, e.g.

# rpm -qa | fgrep PackageKit
#

Why would that second message appear? I didn't ask for the
package to be created, plus the package wasn't actually created.

Thanks,
Jon Forrest

-- 
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/CAF0Z9iqJhe5OTY4q_tRAOhzCQ%3D6CjatGuDfTEU6e56aT6QhUrA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] How to Prevent Both MySQL and Percona From Being Installed?

2014-04-23 Thread Jon Forrest
I have an interesting problem (to me). I want to install Percona
mysql. This is easy.
But I also want to make sure regular MySQL isn't installed on the same
machine that's running Percona.

To install Percona, I have a resource like

  package {
'percona-client':
name = 'Percona-Server-client-55',
ensure = installed,
  }

To make sure MySQL isn't installed I have

  package {
'mysql':
  provider = yum,
  ensure = purged,
  }

The problem is that Puppet tries to remove Percona, instead of MySQL.
This is because the Percona rpm provides the mysql feature. By this I mean
the output from 'yum provides mysql' contains (edited):

Percona-Server-client-55-5.5.36-rel34.2.el6.x86_64 : Percona Server - Client
Repo: XXX
Matched from:
Other   : mysql

Percona-Server-client-55-5.5.36-rel34.2.el6.x86_64 : Percona Server - Client
Repo: installed
Matched from:
Other   : Provides-match: mysql

Of course, trying to remove Percona fails because other things depend on
it, as they should.

The only ideas I have for removing MySQL, and not Percona, are:

1) Use rpmrebuild to change what Percona provides
2) Use something like (untested)

exec { /usr/bin/yum -y remove mysql:
  onlyif = /bin/rpm -qa |/bin/fgrep mysql

3) Just presume that MySQL won't be installed in the first place.
I could do this but I'd like my modules to be more accepting and
not require a specially prepared system.

Any suggestions?

Jon Forrest

-- 
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/CAF0Z9io2vvOO3nBitsZRXE0AbbA10f8rP0mnhse61%3DWOG9Ycag%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Package With 'yum' Provider Uses 'rpm' to Remove a Package (bug?)

2014-04-22 Thread Jon Forrest
(I found a discussion from 6/22/09 on this topic, but that was a long time 
ago.)

Using Puppet 3.5.1 on CentOS 6.5 I recently created the following:

  package {
[ PackageKit]:
  ensure = absent,
  }

However, when I ran Puppet, I got

Error: Execution of '/bin/rpm -e PackageKit-0.5.8-21.el6.x86_64' returned 
1: error: Failed dependencies:
PackageKit = 0.5.8-21.el6 is needed by (installed) 
PackageKit-yum-0.5.8-21.el6.x86_64
PackageKit = 0.5.8-21.el6 is needed by (installed) 
PackageKit-glib-0.5.8-21.el6.x86_64
PackageKit is needed by (installed) 
PackageKit-yum-plugin-0.5.8-21.el6.x86_64

Notice that the provider is running '/bin/rpm' which explains the errors. 
So, I explicitly added
a provider, so that the resource definition is this:

 package {
[ PackageKit]:
  provider = 'yum',
  ensure = absent,
  }

There was no change!!

In the discussion from 2009, somebody suggested using purge instead of 
absent,
so I did. But although Puppet now uses yum, it does so in a very strange 
way:

Error: Could not update: Execution of '/usr/bin/yum -d 0 -e 0 -y install 
PackageKit-purge' returned 1: Error: Nothing to do
Wrapped exception:

This looks like a bug to me.

I ended up using

  exec { /usr/bin/yum -y remove PackageKit:
onlyif = /bin/rpm -qa |/bin/fgrep PackageKit,
}

but this is a step in the wrong direction.

Comments?

Jon Forreset

-- 
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/2089be92-a912-4645-819c-d1da5c3d34da%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Re: Final Comments on Pro Puppet 2nd Edition

2014-03-27 Thread Jon Forrest


On Thu, Mar 27, 2014 at 3:02 PM, Daniele Sluijters
daniele.sluijt...@gmail.com wrote:
 Hi,

 I'm going to be slightly blunt here.

That's fair.

 The authors of the book have, repeatedly, ask you to connect with them 
through different channels and
 contribute your fixes to the Github repository that was set up.

One author asked me once. I've never heard from any of the other authors.

Furthermore, as of today, Apress *still* doesn't show anything on
their Errata page for the book. That's the first place where issues should 
show up.

Though I appreciate your review of the book, the way you've handled the 
situation is
 not exactly exemplary.

I obviously don't agree. I'm doing this editing for free, on my own
time. I don't make any money from doing it. Helping the authors, who are 
making money
from the book (which is entirely fine), doesn't seem like an exemplary way
to handle the situation either. The list of issues is freely available
for them, or anybody
else, to do whatever they want with, including putting them on GitHub.

Let's say I had chosen to work with the authors. What difference would that
have made?

 I'm also wondering what you're trying to achieve here. I'm sure you 
realise
 that most people won't be reading your posts on the mailing lists before
 buying the book.

Maybe not, but I hope I've helped those that do.

Other than listing the issues with the book, I'm not trying to achieve 
anything.
I'm not a Puppet expert so I'm not promoting a Puppet consulting business.
These days I don't work as an editor so I'm not trying to get editing work.

 From reading your comments most of them are not about
 errors with regard to Puppet but with (perceived) errors in grammar, style
 or formatting.

Exactly right. This is a point I've made several times. But these are
exactly the kind of errors that the publisher had the responsibility
to fix. They didn't. When I buy a book with these kinds of problems
I feel ripped off, especially since it's not that hard to do right.
It's the technical stuff about Puppet that's hard.

I just got a copy of the latest version of Patterson and Hennesy's
Computer Architecture book. That's an example of how a book should
be edited.

 Only a few are actually about code or command errors and a
 few about terminology that's used before it's been explained or other 
issues
 that could potentially hamper the users understanding.

Right again. I even went to the trouble of clearly labeling the issues I
found so that people who don't care about typos, grammar, style, or
formatting can ignore all that and only look at the true errors.

I knew that not everyone would be interested in what I found. That's
why I clearly labeled my postings so that people who didn't care about
issues in the book could ignore what I said.

What would you have done?

Jon Forrest

-- 
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/b0fd3dff-f8de-4b00-aa1a-dd76b16e85aa%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Problems in Ch. 11 and 12 of Pro Puppet 2nd Edition

2014-03-26 Thread Jon Forrest

Here are the issues I found in Chapters 11 and 12.

Jon Forrest

M = mistake
U = unclear
T = typo
E = text change
C = comment

(U) Pg. 249 Most readers won't know what an orchestration framework is.
I know I don't.

(C) Pg. 249 commands dispatched to systems in this manner are difficult 
to manage using the same tools and processes that you manage code with

Give an example of this.

(U) Pg. 249 MCollective agents
It would be useful to contrast an MCollective agent with a Puppet agent.

(E) Pg. 250 actions on all of your systems is quite straightforward -
actions is quite straightforward
(The point is that the actions don't have to occur on all your systems)

(E) Pg. 250 may consider deploying -
may require deploying

(E) Pg. 253 connect our clients -
connect our client
(The example layout only includes one client.)

(E) Pg. 255 has packages for both DEB and RPM -
has packages in both .deb and .rpm formats

(E) Pg. 257 addressed by metadata -
selected by examining metadata

(U) Pg. 257 There are several places on this page that talk about the 
Facter library.

Why is Facter called a library?

(E) Pg. 257 locate the Precise boxes -
locate the boxes running Debian Precise

(E) Pg. 263 we've taught you -
you've learned

(E) Pg. 263 It is still right next to -
It's still contained in

(E) Pg. 265 and can split on -
and can key off of

(E) Pg. 265 package manager or Gems -
package manager or RubyGems

(C) Pg. 265 Hiera can be installed from system packages (Listing 12-6) 
or with RubyGems (Listing 12-7).
This is already stated in the first sentence of this paragraph. There's 
no need to say it again.


(E) Pg. 265 Installing Hiera with packages -
Installing Hiera from packages

(T) Pg. 266 /etc//hiera.yaml -
/etc/hiera.yaml

(E) Pg. 267 The file /etc/puppet/hiera.yaml is used -
This file is used

(E) Pg. 267 rather than being itself a data store -
rather than being a data store itself

(E) Pg. 267 it will attempt to make the lookup on the first element -
Hiera will attempt to match the first element

(E) Pg. 267 First create the directory for data -
First create the data directory

(E) Pg. 268 run it with the debug flag -
run it with the debug flag (-d)

(T) Pg. 270 we use Puppet apply
Following convention on Page 268, Puppet apply should be puppet 
apply and should

be in bold.

(T) Pg. 270 a value from hiera -
a value from Hiera

(E) Pg. 270 code running in development is a good mock for the Puppet 
code -

code running in development imatches the Puppet code

(E) Pg. 271 without giving much thought to type -
without giving much thought to the other types Hiera can return

(E) Pg. 271 in the YAML format -
in YAML format

(T) Pg. 272 In Listing 12-26 shouldn't there be a newline after clock3] ?

(T) Pg. 273 As you can see, we can to offload -
As you can see, we can offload

(T) Pg. 275 backup_dirs array is set -
the backup_dirs array is set

(T) Pg. 275 focusing the data -
focusing on the data

(E) Pg. 275 Where putting strings -
While putting strings

(E) Pg. 276 the package, file, service model
On Pg. 275 you said package-file-service. Be consistent.

(E) Pg. 277 Second, create a global.d directory -
Second, create a /etc/puppet/data/global.d directory

(T) Pg. 281 (Listing 12-60)and -
(Listing 12-60) and

(T) Pg. 281 example of use(Listing 12-61.) -
example of use (Listing 12-61.)

(E) Pg. 284 you will want to remove defaults.yaml fully -
you will want to securely remove defaults.yaml

(T) Pg. 285 keys on each puppet Master -
keys on each Puppet master

(M) Pg. 287 presented as in Listing 12-74 -
presented in Listing 12-72

(T) Pg. 288 data entry science::param2: 'looked up in Hiera'. -
data entry science::param2: 'looked up in hiera'.

(T) Pg. 289 Openstack-infra does not
Openstack-infra should be in console bold, as on Page 288.

(T) Pg. 292 a slew of Hiera backends to store our Hiera data
The names of the backends that follow should use the same font that was 
used when the backends were presented earlier in the chapter.


--
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/5333A367.3080606%40gmail.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Final Comments on Pro Puppet 2nd Edition

2014-03-26 Thread Jon Forrest

I just posted my list of issues I discovered in Chapters 11
and 12 - the last two chapters of Pro Puppet 2nd Edition.

I found a lot of issues with this book. I simply don't
understand how these issues escaped the editors. One reason
I posted what I did is so that anyone thinking about buying
the book will know what to expect.

I just hope the technical material about Puppet was higher
quality than the editing job that went into this book. Since
I'm not a Puppet expert I have no way of judging, so I won't
comment.

I've posted the complete list of issues on
https://www.dropbox.com/s/qmcdgdo4bvq620q/propuppet2.txt

Jon Forrest

--
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/5333A664.7080707%40gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Re: Problems in Ch. 1 and 2 of Pro Puppet 2nd Edition

2014-03-22 Thread Jon Forrest

On 3/22/2014 4:03 PM, Julien Deloubes wrote:

Hi John,
thanks for your work.
I think i found another typo or maybe there is something i don't understand?

(T) Pg. 51 file { ::$ssh::params::ssh_service_config: -
file { $::ssh::params::ssh_service_config:


Very good find. I missed that one. I've added it to my master list,
credited to you, which I'll be putting on Dropbox when it's finished.

Submitting errors to Apress is also a good idea, although it isn't clear
if it will do any good. After all, the Errata page for Pro Puppet
2nd ed. is still empty, even after everything I've posted.

Jon



--
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/lglbvm%24rvg%241%40ger.gmane.org.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Problems in Ch. 10 of Pro Puppet 2nd Edition

2014-03-15 Thread Jon Forrest

Here are the issues I found in Chapters 10.

Jon Forrest

M = mistake - all readers should be aware of this
U = unclear - chances are readers will wonder about this
T = typo - a trivial uncontroversial text change
E = text change - most readers won't care but editors should
C = comment - more detailed or complex issue

(T) Pg. 227 to the existing resources types, providers and functions -
to the existing resources types, providers, and functions

(E) Pg. 227 support for environmental variables -
support for environment variables
(This occurs three times in the note on this page.)

(C) Pg. 227 concept called plug-ins in modules
Is this really the name of the concept?

(U) Pg. 227 host that includes a particular module
This could be confusing because a reader might think you're talking
about the Puppet include function.

(E) Pg. 228 there are two popular approaches to the task -
there are two popular approaches for doing so

(E) Pg. 228 allows a greater portability -
allows greater portability

(M) Pg. 228 The list of what's contained in the bind module should 
contain the line

bind/lib as the second to last line.

(T) Pg. 228 setting turns on the plug-ins in modules capability
Everywhere else on this page you've shown plug-ins in modules in
italics. Why isn't it that way here?

(T) Pg. 229 refer to osfamily with $ osfamily -
refer to osfamily with $osfamily

(E) Pg. 229 it will return -
the script will return

(C) Pg. 230 The indentation of several lines in Listing 10-4 is wrong. 
For example, the '}'

on the last line is too far to the left.

(E) Pg. 231 similar approach to commands -
similar approach with commands

(C) Pg. 231 Sometimes they're your facts and sometimes they're our 
facts.

Be consistent.

(E) Pg. 231 that references this directory and will allow Facter to 
find -

that references this directory so that Facter can find

(E) Pg. 231 you can call Facter -
you can run Facter

(E) Pg. 231 If the required output appears -
If the expected output appears

(E) Pg. 231 error message you can debug will be generated -
error message will be generated

(T) Pg. 231 following directory. -
following directory:

(E) Pg. 232 and output to -
and send output to

(C) Pg. 232 You use key=value in one place and key/value in another.
Be consistent.

(E) Pg. 232 or txt files -
or text files

(E) Pg. 232 adding to types -
adding types

(T) Pg. 232 Types, Providers and Functions -
Types, Providers, and Functions
(This error occurs several times on this page. It's also correct in 
several places.)


(T) Pg. 232 earlier this chapter -
earlier in this chapter

(E) Pg. 233 And just as you can with custom facts -
And just as with custom facts

(C) Pg. 233 Don't apache/lib/puppet and apache/lib/puppet/parser also 
need to be created?
If you're presuming a mkdir -p approach then these don't have to be 
explicitly mentioned.


(E) Pg. 233 As we did when we configured Puppet for custom facts -
As when we added custom facts to Puppet

(E) Pg. 233 synced down to an agent -
synced to an agent

(E) Pg. 233 Puppet has a package type, a service type, a user type, and 
all the other types available
Puppet has many types available, such as  a package type, a service 
type, a user type, and many others


(E) Pg. 234 First we create a module called custom to store it in -
First we create a module called custom with the following files and 
directories


(E) Pg. 236 This is a parameter value -
This is a parameter

(E) Pg. 236 In this parameter we've again used -
This parameter uses

(E) Pg. 236 could also use this validation for -
could also validate

(E) Pg. 236 In the case of our method, -
Our method

(T) Pg. 238 You've just seena very -
You've just seen a very

(C) Pg. 238 rather than multi-line configuration files.
/etc/shells is a multi-line configuration file.

(T) Pg. 240 They tell the Puppet -
They tell Puppet

(E) Pg. 241 the relevant line of configuration -
the relevant configuration line

(E) Pg. 241 add the /bin/anothershell -
add /bin/anothershell

(T) Pg. 241 add anothershell -
add /bin/anothershell

(E) Pg. 245 or testing environment and enable -
or testing environment, and enable

(C) Pg. 245 The three 'mkdir' commands are a different style for showing
the required module layout. Previously, all that was shown was a list of
directory and file names.

(E) Pg. 245 action, and with rvalues you pass -
action. With rvalues you pass

(E) Pg. 246 whether the file parses without error -
whether there are any syntax errors

(E) Pg. 246 function performed correctly -
function ran correctly

(T) Pg. 248 providers, functions and facts -
providers, functions, and facts

--
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/53252366.4060306%40gmail.com.
For more options

[Puppet Users] Problems in Ch. 8 and 9 of Pro Puppet 2nd Edition

2014-03-12 Thread Jon Forrest
Here are the issues I found in Chapters 8 and 9.

Jon Forrest

M = mistake
U = unclear
T = typo
E = text change
C = comment

(T) Pg. 191 like librarian puppet -
like librarian-puppet

(T) Pg. 191 rspec-puppet, rspec-system and integrating -
rspec-puppet, rspec-system, and integrating

(U) Pg. 194 mysql::db provider
What's a provider?

(T) Pg. 196 The puppet-module tool -
The Puppet Module tool
(This is how you've referred to it up to now.)

(T) Pg. 197 in your version control -
in your version control system

(U) Pg. 197 you will need to remove the contents
Do you mean to remove the contents of /etc/puppet/modules from
the file system or from the version control system, or both?

(E) Pg. 197 You can specify the version -
You can specify the version you want to install

(E) Pg. 198 to version control -
to your version control system

(C) Pg. 198 You haven't mentioned Puppetfile.lock before. You should say
something about it if it's so critical that it needs to be kept in a
version control
system.

(T) Pg. 199 First up is puppet lint -
First up is puppet-lint

(E) Pg. 202 want a fixtures file -
want a .fixtures.yml file

(T) Pg. 202 we have modified fixtures.yml -
we have modified .fixtures.yml

(E) Pg. 203 specify osfamily as one of the OS families -
assign osfamily the name of one of the OS families

(E) Pg. 203 it will throw an error -
spec will throw an error
(Is the name of this tool spec or rspec?)

(T) Pg. 208 creating the rspec system directory layout -
Creating the rspec-system directory layout

(T) Pg. 210 and then CD to the Vagrant folder -
 and then cd to the Vagrant folder

(T) Pg. 210 Accessing rspec system Vagrant machines -
Accessing rspec-system Vagrant machines

(E) Pg. 217 sent to the master server -
sent to the Puppet master

(E) Pg. 217 success or failure of those resources -
success or failure of those changes

(E) Pg. 221 Specifying this tag will make the report return all error
messages -
Specifying this tag will make Puppet send all error messages

(E) Pg. 221 We can install RRDTools via package -
We can install the RRDTools package

(E) Pg. 221 Red Hat, CentOS, and Mandriva versions -
Red Hat, CentOS, and Mandriva

(E) Pg. 222 Both gems should work to produce -
Both gems should produce

(E) Pg. 222 in the form of an HTTP Post -
via an HTTP Post

(E) Pg. 222 on the master -
on the Puppet master

(E) Pg. 222 supports the importation of
supports importing

(U) Pg. 223 Instead, the report processors are stored in the
lib/puppet/reports directory. For example, on an Ubuntu
Puppet master we'd add our custom report processor to the
/usr/lib/ruby/vendor_ruby/puppet/reports
directory
The second location mentioned,
/usr/lib/ruby/vendor_ruby/puppet/reports, is not in
lib/puppet/reports,
as the first sentence says it should be.

(E) Pg. 223 You could also parse particular -
You could also filter particular

(E) Pg. 223 We also wrote our summary report out to a directory named
after the Puppet agent host located under the reports
directory -
We also wrote our summary report out to a directory, located under
the reports directory, named after the Puppet agent host

(T) Pg. 225 reporting data from thecode -
reporting data from the code

-- 
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/CAF0Z9iqHSxSY35unOZtC-aW3hS4shw6ak9z%2Bnz0RNzV2tvXVOQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Re: Problems in Ch. 4 of Pro Puppet 2nd Edition

2014-03-11 Thread Jon Forrest
On 3/11/2014 10:32 AM, Spencer Krum wrote:
 Thanks so much for reading attentively and posting your feedback. I'm
 sorry you don't want to help us more formally.

I want to make it clear that the reason for this is because since
this is a closed-source book, I'd need some form of payment for
a formal relationship (I've done massive free edits of Pro Git and
Managing Jenkins because these are open-source books). At this point,
such things only complicate my taxes and make me feel obligated to
get things done to meet deadlines. Since I have a fulltime day job
I can't commit to anything with fixed deadlines. It wouldn't be fair
to you or Apress.

 I don't think its realistic to open source the book at this point, but I'll 
 open the
 conversation with Apress and the other authors.

OK. If you do change your mind then I'd be more than glad to work with
you.

Jon

On Tue, Mar 11, 2014 at 10:32 AM, Spencer Krum krum.spen...@gmail.com wrote:

 Hi Jon,

 I'll ask my editor to link the errata from the github repository to the
 eratta page on the Apress website. I want to assure you we went through
 several rounds of editing, but errors are always going to fall through.
 Thanks so much for reading attentively and posting your feedback. I'm sorry
 you don't want to help us more formally. I don't think its realistic to open
 source the book at this point, but I'll open the conversation with Apress
 and the other authors.

 Thanks again,
 Spencer

 On Monday, March 10, 2014 4:31:26 AM UTC, Jon Forrest wrote:



 On Wednesday, March 5, 2014 10:29:07 AM UTC-8, Spencer Krum wrote:
 Hi Jon,

  My name is Spencer Krum. I am one of the authors of Pro Puppet. I want
  to thank you for going through the book with such a fine toothed comb.
  I wish I had known you were so committed to making this book a success
  months ago. I would have gotten you an advance copy so you could
  have helped make the final version better.

 What concerns me most is how Apress could have released a book with so
 many issues.
 Somehow their production process broke down.

  From what I understand from Apress, we don't have the ability to
  directly address these problems in newly sold versions of the book.
  These errors will be with us until a 3rd edition comes out, maybe
  sometime around Puppet 4.

 I'm sorry to hear that. That seems like a long time to wait. What's worse
 is that people who don't read this email list
 will have no idea that this book is full of issues. Even now, after I've
 been releasing these lists for ~2 weeks, the
 errata page on the Apress web site (http://www.apress.com/9781430260400)
 still says there are no errata for this book.
 That's not fair.

  Here is what we can do. I have created a github repository to collect
  the errata in a single place.
  https://github.com/pro-puppet/pro-puppet-errata
  I don't think we can get that link added to the front matter, but we can
  probably get it added to the description of
  the book on Amazon, and can link to it in the online/supplemental
  materials. This repository is one central place
  we can collect all the errors/corrections about Pro Puppet 2n'd edition,
  not just yours.
  I've already added your ch1-4 reviews to that project. Would you be
  willing to work on the rest of the chapters with us?

 Since I haven't received any money from Apress, nor will I request
 anything other than my own copy of the book (which
 they've now given me), I'm not inclined to formally work on this project
 (see below)

  If you feel comfortable with git/github I can give you contributor
  access or I can add the text if you want to send it to me.
  I think collecting all the errors in the github repository is a better
  solution than posting them all to separate messages
  to the Puppet users mailing list, a list of over a thousand people.
  What do you think?

 What I'm planning on doing is continuing on as I have been. I'm going to
 post my lists, chapter
 by chapter, to this list. You, and anybody else, are free to do whatever
 you want with them, such as putting
 them up on GitHub. I clearly label these postings so anyone who isn't
 interested in them can easily
 skip them.

 Is this a reasonable approach?

 Jon Forrest

 P.S. Have you considered putting the sources for Pro Puppet 2nd ed. up on
 GitHub the way
 Scott Chacon did for Pro Git?

 --
 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/dzXe29iNwtQ/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/52ee6a2c-8cbd-4d2d-a687-4a5cee33aa6a%40googlegroups.com.
 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

[Puppet Users] Problems in Ch. 7 of Pro Puppet 2nd Edition

2014-03-11 Thread Jon Forrest

Here are the issues I found in Chapter 7. Short chapter - many typos.
Only 5 more chapters to go.

Jon Forrest

M = mistake
U = unclear
T = typo
E = text change
C = comment

(M) Pg. 169 an external node carrier (ENC) -
an external node classifier (ENC)

(C) Pg. 169 integrated data center lifecycle management tool
This is a meaningless phrase.

(E) Pg. 170 The Foreman installer currently does not support 
MCollective or PuppetDB installation -

The Foreman installer currently does not install MCollective or PuppetDB

(C) Pg. 172 Foreman will be accessible at https://fqdn/;
You should make it clear here that fqdn should be replaced by the 
hostname of the
host running Foreman. You mention this instead on the next page, but 
that's too late.


(T) Pg. 172 add your foreman server -
add your Foreman server

(C) Pg. 172 Why should provisioning be disabled? I'm not saying this is 
wrong but

it would be nice to know why.

(E) Pg. 175 it will drill down -
Foreman will drill down

(E) Pg. 176 The Foreman behaves as an ENC -
Foreman behaves as an ENC
(Using been using Foreman without the up to now.
Be consistent. This mistake occurs more than once on this page.)

(U) Pg. 178 What's an eventful report?

(U) Pg. 178 Why does pro-puppet-foreman-client1.lan appear twice in 
Figure 7-10?
I would expect there to be one entry per client. If this isn't true, 
please explain what's

included in the Reports tab.

(T) Pg. 178 node with errors and warning -
node with errors and warnings

(U) Pg. 179 What's an eventful node?

(E) Pg. 179 query for all of the nodes -
query all of the nodes running Debian Linux

(T) Pg. 180 which like Foreman -
which, like Foreman

(T) Pg. 180 advancing reporting tools -
advanced reporting tools

(E) Pg. 180 enterprise product line and support -
enterprise product line

(U) Pg. 180 One of the key differences from Foreman is that PE Console 
focuses on Puppet and its related products -

Foreman focuses on Puppet also. How is this different than PE Console?

(T) Pg. 180 For this section will be running -
For this section we will be running

(T) Pg. 180 access the console -
access the PE console

(T) Pg. 181 Once our nodes have checked in, we can begin applying 
configuration to them -
Once your nodes have checked in, you can begin applying configuration 
to them

(Why did you change person here? This problem also exists on Pg. 182)

(T) Pg. 183 Once your click Run -
Once you click Run

(T) Pg. 184 requests HTTP library -
Requests HTTP library

(E) Pg. 184 Every node that runs -
Every running node

(U) Pg. 184 If the capability is enabled, it can also give you
The pronoun reference for it isn't clear. Is it referring to PuppetDB
or the capability, or Puppetboard?

(E) Pg. 185 you will have to run Puppetboard -
you will have to install Puppetboard

(E) Pg. 185 another httpd, like Nginx -
another web server, like Nginx

(E) Pg. 185 nodes who changed -
nodes that changed

(E) Pg. 186 filter the table for you -
filter the table

(E) Pg. 186 it will give you -
you'll have

(E) Pg. 187 showing for which nodes this fact is known  -
showing which nodes have this fact

(E) Pg. 188 and allows you -
and allowing you

(E) Pg. 188 as we try -
as it tries

(C) Pg. 189 that enable you to provide graphing to your team
I looked all through this chapter and I didn't see anything about
graphing. What did I miss?

--
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/531FD2C5.3050903%40gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Meeting Puppet contractors

2014-03-11 Thread Jon Forrest

On 3/11/2014 9:24 AM, Brandon Clark wrote:

I'm not clear on what the etiquette is here but I was hoping to reach
out to the puppet community to see if there are any sysops people here
who are looking for work. My current admin recently got a new job and
moved on so I have need of a replacement person with puppet experience.
If these kinds of posts are not welcome I understand if it needs to be
moderated. Perhaps I can get a recommendation of where I can meet
potential contractors? Thanks


I personally have no problem with this but I think you should
say something about where the job is located, or whether telecommuting
is allowed.

Jon Forrest


--
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/531FD336.4050302%40gmail.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Problems in Ch. 6 of Pro Puppet 2nd Edition

2014-03-09 Thread Jon Forrest

Here are the issues I found in Chapter 6. There were an awful lot
of typos.

Jon Forrest

M = mistake
U = unclear
T = typo
E = text change
C = comment

(E) Pg. 155 multiple hosts that have a relationship -
multiple related hosts

(E) Pg. 155 resources and their information to -
resources to

(E) Pg. 155 operator -
system administrator

(E) Pg. 155 not declare the resource itself -
not declare the resources for these accounts itself

(T) Pg. 156 in once place -
in one place

(E) Pg. 156 one or more times -
as many times as necessary

(T) Pg. 156 until they're-realized -
until they're realized

(E) Pg. 157 how to handle the situation where you need to make a number 
of virtual resources real -

how can multiple virtual resources be made real

(T) Pg. 158 The syntax arrows are -, and ~ . -
The syntax arrows are - and ~ .

(T) Pg. 159 feature they aredesigned -
feature they are designed

(T) Pg. 159 through the puppetlabs puppetdb -
through the puppetlabs/puppetdb

(T) Pg. 159 puppetlabs -
Puppetlabs

(E) Pg. 159 If you don't have your Puppet master currently configured 
to be a node -

If your Puppet master isn't defined in site.pp

(T) Pg. 160 Puppetdb will collect -
PuppetDB will collect

(T) Pg. 160 offers an API -
offer an API

(T) Pg. 160 youcan now export -
you can now export

(T) Pg. 160 check the availability to new Puppet-managed systems -
check the availability of new Puppet-managed systems

(E) Pg. 160 When new systems are brought online in a large network -
When new systems are brought online

(E) Pg. 161 may be declared virtually -
may be declared as virtual
(This appears twice.)

(E) Pg. 161 all nodes in the network -
all nodes managed by Puppet

(E) Pg. 161 exported and collectible -
exported

(E) Pg. 161 each resource contain the suffixes _dsa or _rsa -
each resource ends with _dsa or _rsa

(E) Pg. 161 unique title for the entire network -
unique title

(E) Pg. 161 the node may be reached by -
configured on the node

(E) Pg. 161 comes from Facter and is automatically provided -
comes automatically from Facter

(T) Pg. 161 They type and key parameters -
The type and key parameters

(U) Pg. 161 You must also collect all exported sshkey resources
What does it mean to collect a resource?

(E) Pg. 162 the node classification for every host in the network -
the node classification for every host managed by Puppet
(There are many cases where the network is used on this page.
These aren't necessary because Puppet can manage hosts on one
or more networks.)

(C) Pg. 162 Is node classification the right term?

(E) Pg. 162 host keys are collected -
host keys appear

(T) Pg. 162 public key exported -
public keys exported

(E) Pg. 162 on the web server -
on the web host
(This is how you refer to this host everywhere else)

(E) Pg. 162 on the mail.example.com host -
on mail.example.com

(E) Pg. 162 So long as Puppet -
As long as Puppet

(E) Pg. 163 public identification keys -
SSH host keys

(E) Pg. 163 This combination eliminates -
This eliminates

(E) Pg. 163 configure the Example.com system -
configure Example.com

(E) Pg. 163  As Example.com operator -
 As the Example.com system administrator
(This occurs several places in this chapter.)

(E) Pg. 163 This configuration file fragment contains a single line, 
the URL to a member -
This produces a configuration file fragment containing a single line, 
the URL of a member


(C) Pg. 163 Puppet recommends
Puppet doesn't recommend anything. The Puppet style guide might, though.

(E) Pg. 163 To add additional capacity -
To add additional nodes

(U) Pg. 164 What's a contained file resource?

(E) Pg. 164 configuring Puppet to automatically monitor -
configuring Nagios to automatically monitor

(E) Pg. 164 for Nagios built into the software -
for Nagios built in

(E) Pg. 165 looks to the configuration files -
looks in the configuration files

(M) Pg. 165 exported by the nagios::target class
There's no such class shown in this chapter with this name. Do
you mean nagios::export::target? This also appears on Pg. 166 and Pg. 167.
Maybe the class in Figure 6-19 should be renamed to nagios::target.

(M) Pg. 165 Let's take a look at these two classes now (see Listing 6-17)
Listing 6-17 only contains one class.

(T) Pg. 166 $ipaddress -
$::ipaddress

(T) Pg. 166 $fqdn -
$::fqdn

(T) Pg. 168 on the puppet master -
on the Puppet master

--
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/531D2FC0.4020703%40gmail.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Re: Problems in Ch. 4 of Pro Puppet 2nd Edition

2014-03-09 Thread Jon Forrest


On Wednesday, March 5, 2014 10:29:07 AM UTC-8, Spencer Krum wrote:
Hi Jon,

 My name is Spencer Krum. I am one of the authors of Pro Puppet. I want to 
thank you for going through the book with such a fine toothed comb.
 I wish I had known you were so committed to making this book a success 
months ago. I would have gotten you an advance copy so you could
 have helped make the final version better.

What concerns me most is how Apress could have released a book with so many 
issues.
Somehow their production process broke down. 

 From what I understand from Apress, we don't have the ability to directly 
address these problems in newly sold versions of the book.
 These errors will be with us until a 3rd edition comes out, maybe 
sometime around Puppet 4.

I'm sorry to hear that. That seems like a long time to wait. What's worse 
is that people who don't read this email list
will have no idea that this book is full of issues. Even now, after I've 
been releasing these lists for ~2 weeks, the
errata page on the Apress web site (http://www.apress.com/9781430260400) 
still says there are no errata for this book.
That's not fair.

 Here is what we can do. I have created a github repository to collect the 
errata in a single place.
 https://github.com/pro-puppet/pro-puppet-errata
 I don't think we can get that link added to the front matter, but we can 
probably get it added to the description of
 the book on Amazon, and can link to it in the online/supplemental 
materials. This repository is one central place
 we can collect all the errors/corrections about Pro Puppet 2n'd edition, 
not just yours.
 I've already added your ch1-4 reviews to that project. Would you be 
willing to work on the rest of the chapters with us?

Since I haven't received any money from Apress, nor will I request anything 
other than my own copy of the book (which
they've now given me), I'm not inclined to formally work on this project 
(see below)

 If you feel comfortable with git/github I can give you contributor access 
or I can add the text if you want to send it to me.
 I think collecting all the errors in the github repository is a better 
solution than posting them all to separate messages
 to the Puppet users mailing list, a list of over a thousand people.
 What do you think?

What I'm planning on doing is continuing on as I have been. I'm going to 
post my lists, chapter
by chapter, to this list. You, and anybody else, are free to do whatever 
you want with them, such as putting
them up on GitHub. I clearly label these postings so anyone who isn't 
interested in them can easily
skip them.

Is this a reasonable approach?

Jon Forrest

P.S. Have you considered putting the sources for Pro Puppet 2nd ed. up on 
GitHub the way
Scott Chacon did for Pro Git?

-- 
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/97ed6952-3d4c-46c6-8fc3-582375004ba8%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Problems in Ch. 5 of Pro Puppet 2nd Edition

2014-03-06 Thread Jon Forrest
Here are the issues I found in Chapter 5.

M = mistake
U = unclear
T = typo
E = text change
C = comment

(T) Pg. 141 classes, inheritance, variables and environment configuration -
classes, inheritance, variables, and environment configuration

(E) Pg. 141 This integration is used -
This is used

(T) Pg. 141 using hiera -
using Hiera

(T) Pg. 141 chapter 12.Most -
chapter 12. Most

(U) Pg. 141 Maybe you'll explain it later but it isn't at all clear at
this point
how I'll be able to use the syntax shown to define nodes without
needing to edit files.
Where do lines with that syntax appear?

(E) Pg. 141 of these for you -
for you

(T) Pg. 141 the LDAP node classifier -
an LDAP node classifier

(M) Pg. 142 Yet Ain't Markup Language -
YAML Ain't Markup Language
(How could you allow this mistake?)

(C) Pg. 142 I'm bothered by the fact that it's and It is appear on the same
line. Although this doesn't have any technical effect, this book is
very inconsistent
about when contractions are used.

(U) Pg. 142 expressed in a hash
How is what appears later on the page a hash?

(T) Pg. 142 you've added our -
you've added your

(E) Pg. 142 then expressed that the value of item foo is bar -
then set the value of item foo to be bar

(E) Pg. 142 suitable YAML -
valid YAML

(E) Pg. 142 to use an external node classifier -
to use an ENC
(You've been using ENC up to this point. Why change now?)

(E) Pg. 143 and the name and location -
the path

(E) Pg. 143 a classifier called puppet_node_classifier located in the
/usr/bin directory -
a classifier called /usr/bin/puppet_node_classifier

(E) Pg. 143 written in shell script -
written in the Bash scripting language

(U) Pg. 144 external data store
What does this mean?

(U) Pg. 144 The Parameterized Classes in YAML example is supposed to
show parameters passed to classes. However, the example doesn't make it
clear which parameter is being passed. For example, the example at the bottom
of the page doesn't look much different than the example near the top of the
page.

(T) Pg. 145 web, web1, web123 and so on -
web, web1, web123, and so on

(T) Pg. 146 This page uses hostname while the previous pages use
host name.

(T) Pg. 149 such as DNS, user and group data -
such as DNS, user, and group data

(T) Pg. 149 For Red hat -
For RedHat

(C) Pg. 149 So far the book as used Git for all source code management.
This page all of a sudden, without notice, uses Subversion.

(T) Pg. 149 change into the resulting directory and make and install
the code -
change into the resulting directory, make, and install the code

(C) Pg. 150 Some places on this page use first person plural, and other
places use second person plural.

(E) Pg. 150 Schemas -
Schema
(Schema is like Fish)

(E) Pg. 150 [master] section] -
[master] stanza
(This is how previous chapters refer to it)

(E) Pg. 151 to look to -
to use

(E) Pg. 152 manner as doing so -
manner as

-- 
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/CAF0Z9iqy2PFngEa9xBAVGM6rAGMn8U%2B4vzs_qneYkJTQvBAMVg%40mail.gmail.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [Puppet Users] Re: Problems in Ch. 4 of Pro Puppet 2nd Edition

2014-03-06 Thread Jon Forrest

On 3/5/2014 1:26 PM, Alessandro Franceschi wrote:

Hei Jon,
your text correction and errors hunting skills are impressive.


Thanks. I try.


I'm writing a book about Puppet too and am definitively in time to
correct it before printing.
There are already technical reviewers doing a great work, but I think
you can add great value to the contents and their correctness.

Let me know if you are available.


Will this book be open source? I'm not really interested in working
for money so I generally only work on open source books since this lets
me return a favor to the author as thanks for releasing a free book.

Pro Puppet 2nd edition isn't open source, I know. I'm not
really sure why I'm doing it. Apress has given me an eBook copy
but that was after I did the first 3 chapters. Maybe I'm doing
it because this will probably become the predominant Puppet book
(unless yours is better). It's too  bad this book has so many issues.
I wasn't expecting this when I  started. It's almost as if nobody proof
read it, although its editor tells me otherwise.

Jon Forrest



--
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/53194829.4060804%40gmail.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Problems in Ch. 4 of Pro Puppet 2nd Edition

2014-03-02 Thread Jon Forrest

Again, nothing that a good proof edit couldn't fix.

Jon Forrest


(U) Pg. 100 Listing 4-2 shows package resource definitions appearing as 
the result
of running 'puppet resource service'. Are we supposed to do anything 
with these definitions?


(U) Pg. 100 In Listing 4-2 why aren't standard 'yum install' or 
'service' commands used?


(U) Pg. 101 How is a reader supposes to know what an NPM provider or RVM is?

(T) Pg 101 Often installing Passenger -
Often, installing Passenger

(T) Pg 103 will consume some time is to run -
will consume some time to run

(T) Pg. 103 facter fqdn. -
facter fqdn

(T) Pg. 103 Pro-puppet-master-centos-II -
pro-puppet-master-centos-II

(E) Pg. 103 stored in the environment as a standard environment 
variable -

stored in a standard environment variable

(T) Pg. 105 ServerName attribute of -
ServerName attribute in

(C) Pg. 106 You should mention that the notice about installing Emacs
is just an example. New readers might think that they should see this 
exact line.


(U) Pg. 108 Figure 4-1 looks like there are 3 machines behind the load 
balancer,

but the Note makes it clear that there is really just 1 machine there.

(E) Pg. 111 the puppet user, as this parameter decides -
the puppet user since this determines

(E) Pg. 111 sure to modify -
sure to replace

(C) Pg. 111 Step 3 vs. four lines. You should decide on a convention
for including numbers in text. Either they should be all numeric (e.g. 
3, 4) or all text (e.g. three, four).


(E) Pg. 111 Pass the request along -
Pass the request

(M) Pg. 111, 112 There are 3 places that the front-end load balancer 
configuration
file is mentioned, saying that it appears in Listing 4-14. This actually 
appears in Listing 4-13.


(E) Pg. 111 are listed, port 18140 and 18141 -
are listed, running on ports 18140 and 18141

(T) Pg. 112 look to -
look at

(T) Pg. 112 mail.pro-puppet..com -
mail.pro-puppet.com

(T) Pg. 112 back- end -
back-end

(E) Pg. 112 HTTP systems -
HTTP servers

(T) Pg. 113 logged into -
logged in

(E) Pg. 115 is also available -
also appears

(T) Pg. 115 let's bring back both workers back online -
let's bring both workers back online

(E) Pg. 120 Use the puppet agent command to generate a certificate -
Use the puppet agent command to generate a certificate signing request
(The title for List 4-34 also needs to be modified). (This is correct on 
Pg 124).


(E) Pg. 121 used the ls utility -
used ls

(E) Pg. 122 with a single thread -
with a single core

(M) Pg. 123 which were defined in Listing 4-38 -
which were defined in Listing 4-37

(C) Pg. 126 First, remove the ssl/ca directory on the secondary CA server
This step isn't necessary if you use the -a option to rsync, which makes
the destination an exact copy of the source.

(E) Pg. 127 a one-minute cron job -
a cron job that runs every minute

(C) Pg. 127 The font used in the paragraph starting This uses the rsync 
utility is wrong.

It's using the console font from from the crontab -l example.

(E) Pg. 128 we get a test run as shown -
we make a test run as shown

(T) Pg. 130 You performed twosimple -
You performed two simple

(M) Pg. 130 We could also use DNS round robin to easily redirect
and consolidate all certificate requests to a single Puppet CA worked.
This is exactly the opposite of what DNS round robin does. It's odd
that this mistake exists here since the following paragraph explains DNS 
round robin correctly.


(E) Pg. 130 a portion of the Puppet agent systems -
some Puppet agents

(E) Pg. 131 As in our HTTP load balancing -
As in HTTP load balancing

(E) Pg. 131 the Puppet agent supports the configuration of a Puppet CA 
server -

the Puppet agent can be configured to use a Puppet CA server

(U) Pg. 131 The Puppet agent configuration should set the --ca_server 
configuration option

How? Does this go in puppet.conf where the other configuration options go?
If so, why is the option name shown with the '--' characters?

(E) Pg. 131 written down in puppet.conf -
specified in puppet.conf

(T) Pg. 131 I see both HA proxy and HA-proxy used. However,
according to http://haproxy.1wt.eu, its name is HAproxy.
This needs to be corrected in many places in the rest of this chapter.

(T) Pg. 131 impenetrable to the HA proxy -
impenetrable to HAproxy

(U) Pg. 131 populating client configs to set the caserver configuration 
option
In addition to the awkward wording, it isn't clear how to set the 
caserver option. Also,

is this the same --ca_server option I mentioned above?

(U) Pg. 134 What does it mean to segment a Puppet infrastructure?

(U) Pg. 134 What does running a load-balancing virtual IP mean?

(T) Pg. 134 to speak -
that speaks

(E) Pg. 134 The Linux machine uses a BGP or OSPF or other routing 
protocol link -

The machine running Quagga uses a routing protocol link

(U) Pg. 134 The paragraph explaining anycast is extremely unclear.

(E) Pg. 134 and local code -
and local Puppet manifests

(U) Pg. 135 What does it mean that the Git directories pollute

[Puppet Users] Problems in Ch. 1 and 2 of Pro Puppet 2nd Edition

2014-02-23 Thread Jon Forrest

I spent a lot of time reading the 1st edition of the Pro Puppet
book and I found many problems, most of which should have been
caught by the various editors at Apress. I posted a list of
what I found to this list and to Apress. My feeling was that Apress
was surprisingly nonchalant about the editorial quality of that book.
Since I'm the first to admit that I'm no Puppet expert I'm not
talking much about problems in its technical coverage since I'm not
really qualified to judge.

When the 2nd edition of Pro Puppet came out I had high hopes
that Apress would have learned something from the 1st edition.
I was wrong. Below are the issues I've found with Chapter 1 and 2.
Fortunately, the vast majority of these problems are very minor. But
they still show a surprising lack of attention to detail by Apress.
In one case, an error I found in the 1st edition appears again
in the 2nd edition. This error even appears in their errata for
the 1st edition.

In spite of what appears below, I think Pro Puppet is pretty good,
and is definitely worth reading. But Apress better be careful, because
they're in danger of becoming as bad as Packt in their editorial
quality.

Cordially,

Jon Forrest


M = mistake
U = unclear
T = typo
E = text change
C = comment

(C) Node definitions throughout the Safari online book have the closing 
single quote
on a line by itself. They should be on the same line as the opening 
single quote.
This is correct in the printed book. In fact, there are a number of 
similar formatting
issues that only appear in the Safari online book. I've noted some of 
them below.
Starting with Ch.2 I'm now reading a borrowed copy of the Apress book so 
I won't

be commenting on these issues further.

(E) Pg. 1 you use to create Puppet configuration -
you use to create Puppet configurations

(M) Pg. 1  licensed as Apache 2.0 - licensed under the Apache 2.0 
license

This appears correctly in the section about Facter and Facts.

(U) Pg. 2 The Puppet master runs as a daemon on a host and contains the 
configuration required for the specific environment.
This is poor wording. What does the configuration required for the 
specific environment mean?


(T) Pg. 4 .apt-get install vim - apt-get install vim

(T) Pg. 5 on Red Hat it would execute yum
execute should not be in italics.

(E) Pg. 6 Puppet configuration can be safely run -
Puppet can be safely run

(M) Pg. 7 The first caveat is that the master needs to be a later 
release than the agents. -
The first caveat is that the master needs to be the same or a later 
release than the agents.


(T) Pg. 9 On Red Hat, CentOS, Fedora, SUSE/SLES, Debian and Ubuntu, 
this package is called rubygems. -
On Red Hat, CentOS, Fedora, SUSE/SLES, Debian, and Ubuntu, this package 
is called rubygems.


(T) Pg. 10 RubyGems or Source -
RubyGems or source

(M) Pg. 19 and C:\ProgramData\PuppetLabs\puppet\etc\ -
and C:\ProgramData\PuppetLabs\puppet\etc\puppet.conf

(E) Pg. 19 Once we've configured appropriate DNS for Puppet -
Once we've configured appropriate DNS entries for Puppet

(E) Pg. 20 This directory and file is often already created when the 
Puppet packages are installed. If it hasn't already been created, create 
this directory and file now -
This directory and file are often already created when the Puppet 
packages are installed. If they haven't already been created, create 
this directory and file now


(E) Pg. 21 Starting the daemon will initiate -
Starting the daemon will initialize

(T) Pg. ? puppet agent --test --server= puppet.pro-puppet.com -
puppet agent --test --server=puppet.pro-puppet.com
(On Safari online only)

(M) Pg. 22 with three options. The first option, --server, -
with three options. The second option, --server,

(T) Pg. 23 in the main section -
in the [main] section

(T) Pg. 23 your client).The -
your client). The

(E) Pg. 23 The agent sends the certificate request -
The agent sends the certificate signing request

Pg. ? This configuration is called waitforcertand is -
This configuration is called waitforcert and is
(On Safari online only)

(U) Pg. 26 In Listing 1-7 there are two node definitions for 'node1'. 
The text doesn't

make it clear why an. A FQDN name is shown in one definition and just
a hostname is shown in the other.

(C) Pg. 26 Parameterized classes is too important a concept to be 
brushed over.

Just a short description only confuses readers.

(M) Pg. 28 check the value of the operatingsystem fact -
check the value of the osfamily fact

(U) Pg. 28 relationship between the Package[sudo-ldap] resource
The listing show the package {sudo-ldap ...} syntax. A new
user won't know why Package has an upper case first letter. This problem is
also present in many places in Ch. 2. It's first explained on Pg. 47.

(E) Pg. 28 allows Puppet to retrieve a file from the Puppet source -
allows Puppet to retrieve a file from the Puppet server

(E) Pg. 28 is the name of the Puppet source -
is the name of the Puppet server

(E) Pg. 30

[Puppet Users] Re: Facter errors with InfiniBand and VDSM

2014-02-20 Thread Jon Forrest


On Sunday, February 9, 2014 1:34:57 PM UTC-8, treydock wrote:

 After some debugging it seems it's the ;vdsmdummy; interface that's 
 causing both problems.  I have a host with Infiniband, and the same version 
 of Puppet and Facter, that has no errors running facter.  My guess is when 
 ifconfig is executed for ;vdsmdummy; it's not using '2 /dev/null', but I 
 can't identify where in the Facter code this is happening.

 I updated Facter to 1.7.5-rc2 and the error is still the same on the host 
 with the ;vdsmdummy; bridge device.


I'm having the same problem on a node without Infiniband, but with VDSM 
installed. This is with
version 1.7.5 of facter on CentOS 6.5 (with all patches).

This doesn't seem to prevent anything from working. It would be nice if it 
went away, though.

Jon Forrest

-- 
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/651a7d69-2254-41a6-9612-4d87c4399a69%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [Puppet Users] Re: Puppet Actions in Parallel?

2014-02-18 Thread Jon Forrest
On Mon, Feb 17, 2014 at 6:20 AM, jcbollinger john.bollin...@stjude.org wrote:

 Well, I think the question that killed this thread the first time boils down
 to would it really?.  The speculation at the time was that parallel
 execution would produce disappointing wall-time gains, based on the
 assertion that the catalog application process is largely I/O bound.  There
 were also some assertions that Ruby doesn't do shared-memory parallelism
 very well.  Nobody reported any actual analysis of any of that, though.

Right. Without such analysis it's hard to know if this idea is worth following
up on today.

But, one thing to keep in mind is that systems are always changing. An I/O bound
system of today might not be I/O bound tomorrow as technological improvements
appear. Having a computer with available resources unable to apply to resources
to a Puppet run (or anything else) is wasteful. In time, the lack of
client parallelization
could be a competitive weakness as Puppet competes in the marketplace.
(I don't know
what the status of client parallelization is in the competition right now).

Jon Forrest

-- 
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/CAF0Z9ipsPHh%2BZOC_VJM2x_74ToCD-u-imyk4Y9bXyi4wxMhYtg%40mail.gmail.com.
For more options, visit https://groups.google.com/groups/opt_out.


[Puppet Users] Re: Puppet Actions in Parallel?

2014-02-15 Thread Jon Forrest


On Friday, February 14, 2014 8:52:59 PM UTC-8, Andrew Pennebaker wrote:

 This is a fantastic idea! Any progress on this?


I'm the original poster. It's been a while since I posted this.
iIt didn't generate nearly as much interest as
I was hoping. There was some concern that even though
various actions were at the same level in the dependency graph,
that they would have side effects that required serial execution.
One example of this is that there can only be one apt-get install at
a time. There are probably others.

So, it wouldn't be easy for Puppet to know which actions
it should do safely in parallel.

If any other the experts have anything to add I'd love
to hear it.

Jon Forrest
 

-- 
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/86d46ce2-a714-48c1-9954-b5c9b483b14a%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [Puppet Users] Re: Error Message: Could not set present on ensure: Function not implemented

2014-02-07 Thread Jon Jaroker
Hello John,

Thank you for the suggestions.  You were correct it was related to the
'ensure' property.

I discovered the actual cause of the problem to be fuse and symlink
weirdness present in the latest version of Proxmox cluster.  It appears
that Puppet first creates a temp file and then moves it to this
Proxmox-managed, fuse location.  This move failed because of permission
problems.  This problem did not exist in the previous version of Proxmox
when configured as a cluster.

My debug approach was to manually reproduce Puppet's behavior, but first I
had to realize that Puppet creates a file in /tmp and then moves it to the
desired location. Creating the file inside the fuse-symlinked directory
worked normally.

The workaround was to puppet-manage the files in a regular directory and
then use an 'exec' resource to copy (not move) the file to its final
location.  The new define includes a 'proxmox_workaround' flag to handle
this special case.  I updated the wiki page to show this workaround:

http://jaroker.org/technical_notes/issues/software/puppet/start

Regards,
Jon

---
Jon Jaroker
http://jaroker.com


On Thu, Jan 30, 2014 at 9:13 AM, jcbollinger john.bollin...@stjude.orgwrote:



 On Wednesday, January 29, 2014 2:00:28 PM UTC-6, Jon Jaroker wrote:

 Hello,

 Would anyone know what the error message Could not set present on
 ensure: Function not implemented means.  It is appearing in Puppet 2.7.13
 on a File resource type.  The --debug flag does not give any hints.
 [...]

 Any suggestions on how to troubleshoot this?



 That's certainly an unhelpful message.  I suspect it really means an
 unanticipated error occurred while trying to sync the target file's
 'ensure' property.  Since you are ensuring present, Puppet would only be
 trying to do something with the ensure property if [it thought that] the
 file does not yet exist.

 Some things to look at:

1. Unless you want to accommodate the possibility that the target file
is a symlink, I would ensure 'file' rather than 'present'.  That is
unlikely to resolve the problem, however.
2. Check whether the File's target directory exists.
3. Check whether the File's target directory is readable and writable
to the Puppet agent.  Check that every directory in the path to it is
readable.  Even with the agent running as a privileged user such as root,
there are still ways that it might be denied access (e.g. SELinux, root
squashing [for network filesystems]).


 John

  --
 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/L_sLXfw3mJw/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/882a1699-d99c-43b8-af80-e3c0da5616b5%40googlegroups.com
 .

 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/CAPRiO6SwYhMwbz2AEwiFe1GQFaYbDE7gk81Xhj4SZnL7%3DMJ3%3DQ%40mail.gmail.com.
For more options, visit https://groups.google.com/groups/opt_out.


[Puppet Users] ENC - how to set order of operations?

2014-02-03 Thread Jon Yeargers
I need to convert my resource based system to ENC. It's mostly 
straightforward but I'm not sure how to handle operations like these: 

Class['apt'] - Package| |

-- 
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/b6324c21-3725-480d-b2ab-33ee48577ba6%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [Puppet Users] ENC - how to set order of operations?

2014-02-03 Thread Jon Yeargers
Right. So how would I declare this dependency setup if I stop using node 
files?

On Monday, February 3, 2014 9:33:40 AM UTC-8, Jose Luis Ledesma wrote:

 Hi

 Perhaps  I'm confused but an ENC stores node definition and not collector 
 nor dependencies...doesn't it?

 Regards,
 El 03/02/2014 16:13, Jon Yeargers ethr...@gmail.com javascript: 
 escribió:

 I need to convert my resource based system to ENC. It's mostly 
 straightforward but I'm not sure how to handle operations like these: 

 Class['apt'] - Package| |

  -- 
 You received this message because you are subscribed to the Google Groups 
 Puppet Users group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to puppet-users...@googlegroups.com javascript:.
 To view this discussion on the web visit 
 https://groups.google.com/d/msgid/puppet-users/b6324c21-3725-480d-b2ab-33ee48577ba6%40googlegroups.com
 .
 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/89c4d5d6-1f79-454c-8d22-1e1fb9ce15d6%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [Puppet Users] ENC - how to set order of operations?

2014-02-03 Thread Jon Yeargers
So if a given node is named in both an ENC and the site manifest... it will 
use both? IE If I have some definitions that I want to send everywhere and 
others that are node specific.. I can use both types of node entries?

On Monday, February 3, 2014 10:14:52 AM UTC-8, Dan Bode wrote:




 On Mon, Feb 3, 2014 at 9:45 AM, Jon Yeargers ethr...@gmail.comjavascript:
  wrote:

 Right. So how would I declare this dependency setup if I stop using node 
 files?


 Even if you use an ENC, Puppet will still consult your site manifest, so 
 using an ENC does not preclude you from setting resource dependencies via 
 collection in your site manifest.
  



 On Monday, February 3, 2014 9:33:40 AM UTC-8, Jose Luis Ledesma wrote:

 Hi

 Perhaps  I'm confused but an ENC stores node definition and not 
 collector nor dependencies...doesn't it?

 Regards,
 El 03/02/2014 16:13, Jon Yeargers ethr...@gmail.com escribió:

  I need to convert my resource based system to ENC. It's mostly 
 straightforward but I'm not sure how to handle operations like these: 

 Class['apt'] - Package| |

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

 To view this discussion on the web visit https://groups.google.com/d/
 msgid/puppet-users/b6324c21-3725-480d-b2ab-33ee48577ba6%
 40googlegroups.com.
 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...@googlegroups.com javascript:.
 To view this discussion on the web visit 
 https://groups.google.com/d/msgid/puppet-users/89c4d5d6-1f79-454c-8d22-1e1fb9ce15d6%40googlegroups.com
 .

 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/d0568d5a-450f-45e3-9d4e-7d85e2e07d60%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[Puppet Users] Port for ENC requests?

2014-02-03 Thread Jon Yeargers
I'm trying to debug a new ENC setup. I created a short perl script to 
output a few lines of YAML. It runs fine on the puppet server but when I 
try it on a client I get this error:

Warning: Error 400 on SERVER: Failed to find client.domain.org via exec: 
Execution of the '/etc/puppet/ENC/plug0.pl client.domain.org' returned 13:

What I've tried:

- turning off SELinux / adding exceptions
 * no change
- running the script locally
* runs fine
- looking for errors in apache logs
* nothing in there
- looking for errors in $LOGDIR/messages
* nothing there either

What I'm wondering about is whether these requests need a certain port to 
be open in the firewall. The clients in question are connected via a VPN so 
the traffic is somewhat non-standard.

Somewhere else I should be looking for errors? What does error 13 imply?

-- 
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/7fb3cc93-b3ef-41f8-a169-40bffc13e2d3%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[Puppet Users] Error Message: Could not set present on ensure: Function not implemented

2014-01-29 Thread Jon Jaroker
Hello, 

Would anyone know what the error message Could not set present on ensure: 
Function not implemented means.  It is appearing in Puppet 2.7.13 on a 
File resource type.  The --debug flag does not give any hints.  

The complete manifest triggering this error is located here:

http://jaroker.org/technical_notes/issues/software/puppet/start

The full error message is:

err: /Stage[main]//Node[bose]/Openvz::Bindmount[apps07]/File[Bind Mount 
Config for apps07 on bose]/ensure: change from absent to present failed: 
Could not set 'present on ensure: Function not implemented - 
/etc/vz/conf/1107.mount20140128-9690-11oic7u-0 at 
/etc/puppet/modules/common/openvz/manifests/bindmount.pp:47

The resource being managed (where the problem is occurring) is:

file { Bind Mount Config for ${container} on ${host}:
ensure  = present,
path= $bind_conf,
content = 
template('openvz/mount.conf.erb','common/header.sh.erb'),
mode= 740, #(Proxmox file system unable to chmod)
}


Any suggestions on how to troubleshoot this?

Thank you,
Jon

-- 
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/4459553d-128f-4345-a4b7-6d1873d3dc7b%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[Puppet Users] Puppet 2.7.23 error Could not set present on ensure: Function not implemented

2014-01-28 Thread Jon Jaroker
Hello, I was wondering if anyone can give me a pointer on how to solve an 
ambiguous Puppet error Function not implemented when attempting to create 
a file using the 'file' resource type.  The '--debug' flag does not produce 
useful information.

My puppet manifests work fine on several other physical and virtual hosts. 
 This error appears on a new host that was recently installed.  The 
software and hardware configuration of this new host are almost identical 
to all other systems on which the same puppet manifests runs normally.  

I notice the error message is appending (what appears to be) the temporary 
file name used in generating a diff to the managed resource. 

I put the error message and relevant manifest on a web page as well as 
excerpt them below.  

Can someone offer suggestions on how I can debug this?  

Thank you,
Jon

Full manifest is located here:

http://jaroker.org/technical_notes/issues/software/puppet/start

The error message is:

err: /Stage[main]//Node[bose]/Openvz::Bindmount[apps07]/File[Bind Mount Config 
for apps07 on bose]/ensure: change from absent to present failed: Could not set 
'present on ensure: Function not implemented - 
/etc/vz/conf/1107.mount20140128-9690-11oic7u-0 at 
/etc/puppet/modules/common/openvz/manifests/bindmount.pp:47

This error is being triggered by the following resource:

file { Bind Mount Config for ${container} on ${host}:
ensure  = present,
path= $bind_conf,
content = template('openvz/mount.conf.erb','common/header.sh.erb'),
mode= 740, #(Proxmox file system unable to chmod)
}


-- 
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/d74d6954-c868-4cf4-8e2d-67dd740d9acf%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[Puppet Users] Re: What is the convention used if I want to pull content from source-control for populating a manifest resource?

2014-01-28 Thread Jon Jaroker
The URI scheme for 'source' is either 'puppet' or 'file'.  Here is the man 
page:

http://docs.puppetlabs.com/references/latest/type.html#file-attribute-source

To pull from a repository, you should use a subversion manifest that 
implements checkout.  

Jon

On Monday, January 27, 2014 1:45:30 PM UTC-5, Mark Jaffe wrote:

 Manifest for an app:

 class my_app {
 .
 .
 .

file { '/etc/sysconfig/my_app/configs':
 ensure =  directory,
 mode  =   0755,
 source =  '
 https://subversion.mycompany.com/repository/project/trunk/model-config',
 }

 How would I provide user auth?


-- 
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/33875a92-1c20-4ecc-b998-b4624a5241be%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [Puppet Users] Getting agent v3.4 to manage my services

2013-12-31 Thread Jon Yeargers
I corrected the problem by including this in my /etc/init.d/script:

if [ -e $PIDFILE ]
then
  exit 0
else
  exit 1
fi

Put this in a 'status' command for your service control script. It works in 
puppet v3.4.

On Monday, December 30, 2013 3:11:30 PM UTC-8, Edson Manners wrote:

  I had this same problem and couldn't figure out why it did it. I was 
 moving from 2.7.23 to 3.x and it was driving me nuts, I never found what 
 was the exact cause as there weren't any errors showing up and ' puppet 
 agent -t' ran clean.

 I ended up blowing away my whole puppet/passenger/puppetdb install and 
 starting from 3.4 in order to get past it. I wish you better luck.




 On 12/30/2013 06:04 PM, Jon Yeargers wrote:
  
 I have a group of services that are supposed to be maintained by puppet 
 agent. Up until I moved from 2.6 to 3.4 they were kept up to date and 
 running (as expected). 

  Since the upgrade of the puppet agent these services are no longer being 
 monitored. I'm sure that the server is still seeing the files as errors in 
 them are flagged. 

  Running 'puppet agent --debug' shows the requests for 'service name 
 status' go by and yet even though the service is not running there is no 
 move to start it. Running the 'service name start' command starts the 
 service normally.

  So: what have I broken by upgrading my clients?  As I mentioned - this 
 used to work.
  -- 
 You received this message because you are subscribed to the Google Groups 
 Puppet Users group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to puppet-users...@googlegroups.com javascript:.
 To view this discussion on the web visit 
 https://groups.google.com/d/msgid/puppet-users/dba2294d-826c-46d1-817c-6fd383818220%40googlegroups.com
 .
 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/2af667fc-8c33-491a-aa11-8fd369ba205e%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[Puppet Users] Getting agent v3.4 to manage my services

2013-12-30 Thread Jon Yeargers
I have a group of services that are supposed to be maintained by puppet 
agent. Up until I moved from 2.6 to 3.4 they were kept up to date and 
running (as expected).

Since the upgrade of the puppet agent these services are no longer being 
monitored. I'm sure that the server is still seeing the files as errors in 
them are flagged. 

Running 'puppet agent --debug' shows the requests for 'service name 
status' go by and yet even though the service is not running there is no 
move to start it. Running the 'service name start' command starts the 
service normally.

So: what have I broken by upgrading my clients?  As I mentioned - this used 
to work.

-- 
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/dba2294d-826c-46d1-817c-6fd383818220%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[Puppet Users] triggering 'apt-get update'?

2013-12-20 Thread Jon Yeargers
I'm using the puppetforge 'apt' module to deal with some repositories. It 
has 'always-apt-update' as a property and I've had it set to 'true' but I'm 
wondering what happens if I don't. 

Is the puppet package manager 'smart' enough to get the latest versions of 
packages that it's monitoring ('ensure = latest') without being told to 
keep the repository up to date?

The main reason I'm asking is that the 'apt-get update' seems to always run 
last in the 'agent' pass. IE it takes two runs to get the latest packages - 
1 to update the cache and the 2nd to get the latest versions. 

-- 
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/f1848bdf-c513-4d27-a156-8f6847e60650%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[Puppet Users] Execution expired? Error message during agent run

2013-12-20 Thread Jon Yeargers
Running 'puppet agent --test' - after 5-10 minutes of execution this error 
appeared:

err: Could not run Puppet configuration client: execution expired

When I ran the same command the execution resumed and continued to 
completion.


-- 
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/dd24edc8-dff5-44de-83d1-2b16e45e0d14%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [Puppet Users] Re: puppet node find doesn't return classes and scope vars ?

2013-12-19 Thread Jon McKenzie
https://tickets.puppetlabs.com/browse/PUP-1185

On Thursday, December 19, 2013 7:49:08 AM UTC-5, Felix.Frank wrote:

 Is there an issue for this in Jira? If not, it would be much appreciated 
 for either of you to create one. 

 Thanks, 
 Felix 

 On 12/13/2013 11:08 PM, Paul Archer wrote: 
  I see that puppet 3.3.2 has the problem as well. Worse, the 
  documentation for 'puppet node' doesn't match the actual command. 
  
  
  On Friday, December 13, 2013 11:13:26 AM UTC-6, Jon McKenzie wrote: 
  
  Re-upping this topic rather than creating a new one. 
  
  I'm using Puppet 3.3.1 and am still having this problem. 


-- 
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/d8ab6651-45c5-45ea-846b-c1e2d874885d%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [Puppet Users] Re: Getting latest agent on debian for ARM?

2013-12-13 Thread Jon Yeargers
So am I SOL on this? Is ARM considered an 'unsupported architecture' until 
I can create a 'dmidecode' for this platform?

On Wednesday, December 11, 2013 10:55:11 AM UTC-8, Jon Yeargers wrote:

 I can wget and install facter but the issues continue:

 root@plugpc-005:/tmp# apt-get install puppet
 Reading package lists... Done
 Building dependency tree
 Reading state information... Done
 You might want to run 'apt-get -f install' to correct these:
 The following packages have unmet dependencies:
  facter : Depends: dmidecode but it is not installable
  puppet : Depends: puppet-common (= 3.3.2-1puppetlabs1) but it is not 
 going to be installed
 E: Unmet dependencies. Try 'apt-get -f install' with no packages (or 
 specify a solution).


 root@plugpc-005:/tmp# apt-get install puppet-common
 Reading package lists... Done
 Building dependency tree
 Reading state information... Done
 You might want to run 'apt-get -f install' to correct these:
 The following packages have unmet dependencies:
  facter : Depends: dmidecode but it is not installable
  puppet-common : Depends: ruby-shadow but it is not installable or
   libshadow-ruby1.8 but it is not going to be 
 installed
  Depends: libaugeas-ruby but it is not going to be 
 installed or
   libaugeas-ruby1.9.1 but it is not going to be 
 installed or
   libaugeas-ruby1.8 but it is not going to be 
 installed
  Depends: hiera (= 1.0.0) but it is not going to be 
 installed
  Depends: ruby-rgen (= 0.6.5) but it is not going to be 
 installed
  Recommends: lsb-release but it is not going to be 
 installed
  Recommends: debconf-utils but it is not going to be 
 installed
 E: Unmet dependencies. Try 'apt-get -f install' with no packages (or 
 specify a solution).


 Attempts to install any of these packages gives me similar errors.

 On Wednesday, December 11, 2013 9:50:07 AM UTC-8, Jeff Bachtel wrote:

  You can fetch it directly (wget, curl, whatever) from


 http://apt.puppetlabs.com/pool/squeeze/main/f/facter/facter_1.6.18-1puppetlabs1_all.deb

 Jeff

 On 12/11/2013 12:39 PM, Jon Yeargers wrote:
  
  root@plugpc-005:~# apt-get install ruby libopenssl-ruby pciutils
 Reading package lists... Done
 Building dependency tree
 Reading state information... Done
 Note, selecting 'libruby' instead of 'libopenssl-ruby'
 pciutils is already the newest version.
 libruby is already the newest version.
 ruby is already the newest version.
 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

  There isn't a 'download' option for apt-get on this system so I tried 
 '--download-only':

  root@plugpc-005:~# apt-get --download-only install  facter
 Reading package lists... Done
 Building dependency tree
 Reading state information... Done
 Some packages could not be installed. This may mean that you have
 requested an impossible situation or if you are using the unstable
 distribution that some required packages have not yet been created
 or been moved out of Incoming.
 The following information may help to resolve the situation:

  The following packages have unmet dependencies:
  facter : Depends: dmidecode but it is not installable
 E: Broken packages
  
  I added '--ignore-missing' but the result was the same. 

 On Wednesday, December 11, 2013 7:47:02 AM UTC-8, Jeff Bachtel wrote: 

  demidecode (which is a hard dependency for facter) is not available for 
 armel in Debian's repository. I have confirmed that facter will not fail 
 outright when dmidecode is missing.

 The following facter variables will not be created, however:
 bios_release_date
 bios_vendor
 bios_version
 boardmanufacturer
 boardproductname
 boardserialnumber
 manufacturer
 productname
 serialnumber
 type
 uuid

 If that's acceptable for you, you can try

 apt-get install ruby libopenssl-ruby pciutils
 apt-get download facter
 dpkg -i --force-depends facter*.deb
 apt-get install puppet

 This will manually install the other facter dependencies (which should 
 exist for armel), download the facter .deb file, then do an install of it 
 without checking depends. The puppet install should succeed after that.

 I think facter's dmidecode dependency should be a Suggests vice a 
 Depends, and it might be worth filing a bugrep to get it changed.

 Jeff


 On 12/11/2013 10:31 AM, Jon Yeargers wrote:
  
 I also tried 'apt-get dist-upgrade'. This brought down 'hiera' (along 
 with a few other things). 

  Then tried 'apt-get install puppet-common' - this failed as 'facter' 
 needed a higher version.

  .. so tried 'facter' but this failed with:

  facter : Depends : dmidecode but it is not installable

  
  
  If I do 'apt-cache search dmidecode' it isn't available.

 On Wednesday, December 11, 2013 7:26:02 AM UTC-8, Jon Yeargers wrote: 

 'apt-get update' ran fine this time. 

  'apt-get install puppet':

  Some packages could not be installed. This may

[Puppet Users] Re: puppet node find doesn't return classes and scope vars ?

2013-12-13 Thread Jon McKenzie
Re-upping this topic rather than creating a new one.

I'm using Puppet 3.3.1 and am still having this problem.

For example, if I run:

puppet node find $(puppet config print certname) --render-as yaml 

The resulting YAML is missing ENC-set parameters (among other things).

On the other hand, if I call the Puppet server's REST API (e.g. a GET to 
https://puppet:8140/production/node/certname), I *do* get the ENC-set 
parameters.

I'd like to use the provided command-line tool to do this, but it doesn't 
seem to be working correctly. Am I missing something?

Thanks!

On Friday, April 5, 2013 4:14:36 AM UTC-4, Mohit Chawla wrote:

 Hi, 

 I am trying to use the node subcommand like so: 

 puppet node find --terminus rest --render-as yaml --mode master foo.com

 This only shows facts, name, environment, expiration and time but not the 
 classes or node level variables. 

 Puppet version is 2.7.20. Any suggestions ? 


-- 
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/8441d5dd-8207-4f3a-9fce-6f8ab872b199%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [Puppet Users] Re: Getting latest agent on debian for ARM?

2013-12-13 Thread Jon Yeargers
Just out of curiosity I created my own 'dmidecode' package with a trivial 
(does nothing) dmidecode executable. Once this was installed the rest of 
puppet v 3.3.2 installed fine.

NOW: it's having trouble accepting that certain services are already 
running and it's trying to restart them every time. Strangely enough it 
doesn't happen with 'system' services (EG apache2, snmpd) but only with my 
code. I can't imagine this is related to my fake dmidecode but I'll keep 
looking into it.

On Friday, December 13, 2013 4:08:10 AM UTC-8, Felix.Frank wrote:

 Ideally, there will be a newly released facter package that replaces 
 this dependency by a suggestion or recommendation. It will Just Work for 
 you then. 

 In the meantime, these are your options: 
 a) fetch the facter source package and build a forked package without 
 this dependency 
 b) fetch all deb packages you require and install them in one go using 
 dpkg -i --force-depends or similar. 

 Option (a) is simple if you're versed in the creation of Debian 
 packages, and pretty difficult if you're not. 

 HTH, 
 Felix 

 On 12/13/2013 12:39 PM, Jon Yeargers wrote: 
  So am I SOL on this? Is ARM considered an 'unsupported architecture' 
  until I can create a 'dmidecode' for this platform? 


-- 
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/40a9fd9d-127e-48b9-8c67-c284ca6bd694%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [Puppet Users] Re: Getting latest agent on debian for ARM?

2013-12-13 Thread Jon Yeargers
Answer here: 
http://stackoverflow.com/questions/14607385/puppet-does-not-start-a-service-varnish-when-puppet-apply-is-run



On Friday, December 13, 2013 11:07:01 AM UTC-8, Jon Yeargers wrote:

 Just out of curiosity I created my own 'dmidecode' package with a trivial 
 (does nothing) dmidecode executable. Once this was installed the rest of 
 puppet v 3.3.2 installed fine.

 NOW: it's having trouble accepting that certain services are already 
 running and it's trying to restart them every time. Strangely enough it 
 doesn't happen with 'system' services (EG apache2, snmpd) but only with my 
 code. I can't imagine this is related to my fake dmidecode but I'll keep 
 looking into it.

 On Friday, December 13, 2013 4:08:10 AM UTC-8, Felix.Frank wrote:

 Ideally, there will be a newly released facter package that replaces 
 this dependency by a suggestion or recommendation. It will Just Work for 
 you then. 

 In the meantime, these are your options: 
 a) fetch the facter source package and build a forked package without 
 this dependency 
 b) fetch all deb packages you require and install them in one go using 
 dpkg -i --force-depends or similar. 

 Option (a) is simple if you're versed in the creation of Debian 
 packages, and pretty difficult if you're not. 

 HTH, 
 Felix 

 On 12/13/2013 12:39 PM, Jon Yeargers wrote: 
  So am I SOL on this? Is ARM considered an 'unsupported architecture' 
  until I can create a 'dmidecode' for this platform? 



-- 
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/0b3e34b1-e3e1-4e8d-8a3a-23ab6be1bf8d%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [Puppet Users] Re: Getting latest agent on debian for ARM?

2013-12-11 Thread Jon Yeargers
'apt-get update' ran fine this time.

'apt-get install puppet':

Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 puppet : Depends: puppet-common (= 3.3.2-1puppetlabs1) but 
2.6.2-5+squeeze8 is to be installed
E: Broken packages


I also tried uninstalling puppet and then doing the install. Same result.



On Tuesday, December 10, 2013 3:11:27 PM UTC-8, Moses Mendoza wrote:

 Hi all, apt.puppetlabs.com has been updated with additional 
 architectures so the 'all' packages should install. Can you check if 
 you still have the same issues? 

 On Tue, Dec 10, 2013 at 12:01 PM, Moses Mendoza 
 mo...@puppetlabs.comjavascript: 
 wrote: 
  On Tue, Dec 10, 2013 at 10:52 AM, Jon Yeargers 
  ethr...@gmail.comjavascript: 
 wrote: 
  I updated the repository file using the official puppet-recommended 
 version. 
  The corrected line is: 
  
  deb http://apt.puppetlabs.com squeeze main   (i mistakenly entered 
 'wheezy' 
  above). 
  
  When I do 'apt-get update' I'm told: 
  
  W: Filed to fetch http://apt.puppetlabs.com/dists/squeeze/ReleaseUnable to 
  find expected entry main/binary-armel/Packages in Meta-index file 
 (malformed 
  Release file?) 
  
  
  On Tuesday, December 10, 2013 9:11:44 AM UTC-8, Felix.Frank wrote: 
  
  That's not the issue at all I think. 
  
  Is that source.list entry from a howto? 
  
  Have you tried the instructions here: 
  
  
 http://docs.puppetlabs.com/guides/puppetlabs_package_repositories.html#for-debian-and-ubuntu
  
  
  Because what apt is making of your configuration is plain wrong. 
  
  On 12/10/2013 05:50 PM, Jon Yeargers wrote: 
   If I create a '/etc/apt/sources.list.d/puppet.list' with: 
   
   deb http://apt.puppetlabs.com/pool wheezy stable 
   
   I get: 
   
   Failed to fetch 
   
   
 http://apt.puppetlabs.com/pool/dists/wheezy/stable/binary-armel/Packages.gz 
   404 Not Found 
   
   I'm thinking that I might need to set this up on an x86 machine and 
 then 
   rebuild the package file myself in a private repository. 
  
  My apologies - this is a problem with our apt repository configuration 
  - we did not set it up to include architectures other than i386 and 
  amd64. We will be remedying this soon, so that while we may not yet 
  have arm-specific packages, at least our all-arch packages will work. 
  
  
  -- 
  You received this message because you are subscribed to the Google 
 Groups 
  Puppet Users group. 
  To unsubscribe from this group and stop receiving emails from it, send 
 an 
  email to puppet-users...@googlegroups.com javascript:. 
  To view this discussion on the web visit 
  
 https://groups.google.com/d/msgid/puppet-users/0e4f7484-682f-44c9-b370-5a977d4085ee%40googlegroups.com.
  

  
  For more options, visit https://groups.google.com/groups/opt_out. 
  
  
  
  -- 
  Moses Mendoza 
  Puppet Labs 
  
  Join us at PuppetConf 2014, September 23-24 in San Francisco 



 -- 
 Moses Mendoza 
 Puppet Labs 

 Join us at PuppetConf 2014, September 23-24 in San Francisco 


-- 
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/a2bd1ecb-dd6a-42cb-9ffc-333e9cfdc0db%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [Puppet Users] Re: Getting latest agent on debian for ARM?

2013-12-11 Thread Jon Yeargers
I also tried 'apt-get dist-upgrade'. This brought down 'hiera' (along with 
a few other things).

Then tried 'apt-get install puppet-common' - this failed as 'facter' needed 
a higher version.

.. so tried 'facter' but this failed with:

facter : Depends : dmidecode but it is not installable



If I do 'apt-cache search dmidecode' it isn't available.

On Wednesday, December 11, 2013 7:26:02 AM UTC-8, Jon Yeargers wrote:

 'apt-get update' ran fine this time.

 'apt-get install puppet':

 Some packages could not be installed. This may mean that you have
 requested an impossible situation or if you are using the unstable
 distribution that some required packages have not yet been created
 or been moved out of Incoming.
 The following information may help to resolve the situation:

 The following packages have unmet dependencies:
  puppet : Depends: puppet-common (= 3.3.2-1puppetlabs1) but 
 2.6.2-5+squeeze8 is to be installed
 E: Broken packages


 I also tried uninstalling puppet and then doing the install. Same result.



 On Tuesday, December 10, 2013 3:11:27 PM UTC-8, Moses Mendoza wrote:

 Hi all, apt.puppetlabs.com has been updated with additional 
 architectures so the 'all' packages should install. Can you check if 
 you still have the same issues? 

 On Tue, Dec 10, 2013 at 12:01 PM, Moses Mendoza mo...@puppetlabs.com 
 wrote: 
  On Tue, Dec 10, 2013 at 10:52 AM, Jon Yeargers ethr...@gmail.com 
 wrote: 
  I updated the repository file using the official puppet-recommended 
 version. 
  The corrected line is: 
  
  deb http://apt.puppetlabs.com squeeze main   (i mistakenly entered 
 'wheezy' 
  above). 
  
  When I do 'apt-get update' I'm told: 
  
  W: Filed to fetch http://apt.puppetlabs.com/dists/squeeze/ReleaseUnable 
  to 
  find expected entry main/binary-armel/Packages in Meta-index file 
 (malformed 
  Release file?) 
  
  
  On Tuesday, December 10, 2013 9:11:44 AM UTC-8, Felix.Frank wrote: 
  
  That's not the issue at all I think. 
  
  Is that source.list entry from a howto? 
  
  Have you tried the instructions here: 
  
  
 http://docs.puppetlabs.com/guides/puppetlabs_package_repositories.html#for-debian-and-ubuntu
  
  
  Because what apt is making of your configuration is plain wrong. 
  
  On 12/10/2013 05:50 PM, Jon Yeargers wrote: 
   If I create a '/etc/apt/sources.list.d/puppet.list' with: 
   
   deb http://apt.puppetlabs.com/pool wheezy stable 
   
   I get: 
   
   Failed to fetch 
   
   
 http://apt.puppetlabs.com/pool/dists/wheezy/stable/binary-armel/Packages.gz 
   404 Not Found 
   
   I'm thinking that I might need to set this up on an x86 machine and 
 then 
   rebuild the package file myself in a private repository. 
  
  My apologies - this is a problem with our apt repository configuration 
  - we did not set it up to include architectures other than i386 and 
  amd64. We will be remedying this soon, so that while we may not yet 
  have arm-specific packages, at least our all-arch packages will work. 
  
  
  -- 
  You received this message because you are subscribed to the Google 
 Groups 
  Puppet Users group. 
  To unsubscribe from this group and stop receiving emails from it, send 
 an 
  email to puppet-users...@googlegroups.com. 
  To view this discussion on the web visit 
  
 https://groups.google.com/d/msgid/puppet-users/0e4f7484-682f-44c9-b370-5a977d4085ee%40googlegroups.com.
  

  
  For more options, visit https://groups.google.com/groups/opt_out. 
  
  
  
  -- 
  Moses Mendoza 
  Puppet Labs 
  
  Join us at PuppetConf 2014, September 23-24 in San Francisco 



 -- 
 Moses Mendoza 
 Puppet Labs 

 Join us at PuppetConf 2014, September 23-24 in San Francisco 



-- 
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/96382244-64e6-458e-a33a-81f24a4befbf%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [Puppet Users] Re: Getting latest agent on debian for ARM?

2013-12-11 Thread Jon Yeargers
root@plugpc-005:~# apt-get install ruby libopenssl-ruby pciutils
Reading package lists... Done
Building dependency tree
Reading state information... Done
Note, selecting 'libruby' instead of 'libopenssl-ruby'
pciutils is already the newest version.
libruby is already the newest version.
ruby is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

There isn't a 'download' option for apt-get on this system so I tried 
'--download-only':

root@plugpc-005:~# apt-get --download-only install  facter
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 facter : Depends: dmidecode but it is not installable
E: Broken packages

I added '--ignore-missing' but the result was the same.

On Wednesday, December 11, 2013 7:47:02 AM UTC-8, Jeff Bachtel wrote:

  demidecode (which is a hard dependency for facter) is not available for 
 armel in Debian's repository. I have confirmed that facter will not fail 
 outright when dmidecode is missing.

 The following facter variables will not be created, however:
 bios_release_date
 bios_vendor
 bios_version
 boardmanufacturer
 boardproductname
 boardserialnumber
 manufacturer
 productname
 serialnumber
 type
 uuid

 If that's acceptable for you, you can try

 apt-get install ruby libopenssl-ruby pciutils
 apt-get download facter
 dpkg -i --force-depends facter*.deb
 apt-get install puppet

 This will manually install the other facter dependencies (which should 
 exist for armel), download the facter .deb file, then do an install of it 
 without checking depends. The puppet install should succeed after that.

 I think facter's dmidecode dependency should be a Suggests vice a Depends, 
 and it might be worth filing a bugrep to get it changed.

 Jeff


 On 12/11/2013 10:31 AM, Jon Yeargers wrote:
  
 I also tried 'apt-get dist-upgrade'. This brought down 'hiera' (along with 
 a few other things). 

  Then tried 'apt-get install puppet-common' - this failed as 'facter' 
 needed a higher version.

  .. so tried 'facter' but this failed with:

  facter : Depends : dmidecode but it is not installable

  
  
  If I do 'apt-cache search dmidecode' it isn't available.

 On Wednesday, December 11, 2013 7:26:02 AM UTC-8, Jon Yeargers wrote: 

 'apt-get update' ran fine this time. 

  'apt-get install puppet':

  Some packages could not be installed. This may mean that you have
 requested an impossible situation or if you are using the unstable
 distribution that some required packages have not yet been created
 or been moved out of Incoming.
 The following information may help to resolve the situation:

  The following packages have unmet dependencies:
  puppet : Depends: puppet-common (= 3.3.2-1puppetlabs1) but 
 2.6.2-5+squeeze8 is to be installed
 E: Broken packages

  
  I also tried uninstalling puppet and then doing the install. Same 
 result.

  
  
 On Tuesday, December 10, 2013 3:11:27 PM UTC-8, Moses Mendoza wrote: 

 Hi all, apt.puppetlabs.com has been updated with additional 
 architectures so the 'all' packages should install. Can you check if 
 you still have the same issues? 

 On Tue, Dec 10, 2013 at 12:01 PM, Moses Mendoza mo...@puppetlabs.com 
 wrote: 
  On Tue, Dec 10, 2013 at 10:52 AM, Jon Yeargers ethr...@gmail.com 
 wrote: 
  I updated the repository file using the official puppet-recommended 
 version. 
  The corrected line is: 
  
  deb http://apt.puppetlabs.com squeeze main   (i mistakenly entered 
 'wheezy' 
  above). 
  
  When I do 'apt-get update' I'm told: 
  
  W: Filed to fetch http://apt.puppetlabs.com/dists/squeeze/ReleaseUnable 
  to 
  find expected entry main/binary-armel/Packages in Meta-index file 
 (malformed 
  Release file?) 
  
  
  On Tuesday, December 10, 2013 9:11:44 AM UTC-8, Felix.Frank wrote: 
  
  That's not the issue at all I think. 
  
  Is that source.list entry from a howto? 
  
  Have you tried the instructions here: 
  
  
 http://docs.puppetlabs.com/guides/puppetlabs_package_repositories.html#for-debian-and-ubuntu
  
  
  Because what apt is making of your configuration is plain wrong. 
  
  On 12/10/2013 05:50 PM, Jon Yeargers wrote: 
   If I create a '/etc/apt/sources.list.d/puppet.list' with: 
   
   deb http://apt.puppetlabs.com/pool wheezy stable 
   
   I get: 
   
   Failed to fetch 
   
   
 http://apt.puppetlabs.com/pool/dists/wheezy/stable/binary-armel/Packages.gz 
   404 Not Found 
   
   I'm thinking that I might need to set this up on an x86 machine 
 and then 
   rebuild the package file myself in a private repository. 
  
  My apologies - this is a problem with our apt repository configuration 
  - we did

Re: [Puppet Users] Re: Getting latest agent on debian for ARM?

2013-12-11 Thread Jon Yeargers
I can wget and install facter but the issues continue:

root@plugpc-005:/tmp# apt-get install puppet
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
 facter : Depends: dmidecode but it is not installable
 puppet : Depends: puppet-common (= 3.3.2-1puppetlabs1) but it is not going 
to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or 
specify a solution).


root@plugpc-005:/tmp# apt-get install puppet-common
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
 facter : Depends: dmidecode but it is not installable
 puppet-common : Depends: ruby-shadow but it is not installable or
  libshadow-ruby1.8 but it is not going to be 
installed
 Depends: libaugeas-ruby but it is not going to be 
installed or
  libaugeas-ruby1.9.1 but it is not going to be 
installed or
  libaugeas-ruby1.8 but it is not going to be 
installed
 Depends: hiera (= 1.0.0) but it is not going to be 
installed
 Depends: ruby-rgen (= 0.6.5) but it is not going to be 
installed
 Recommends: lsb-release but it is not going to be installed
 Recommends: debconf-utils but it is not going to be 
installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or 
specify a solution).


Attempts to install any of these packages gives me similar errors.

On Wednesday, December 11, 2013 9:50:07 AM UTC-8, Jeff Bachtel wrote:

  You can fetch it directly (wget, curl, whatever) from


 http://apt.puppetlabs.com/pool/squeeze/main/f/facter/facter_1.6.18-1puppetlabs1_all.deb

 Jeff

 On 12/11/2013 12:39 PM, Jon Yeargers wrote:
  
  root@plugpc-005:~# apt-get install ruby libopenssl-ruby pciutils
 Reading package lists... Done
 Building dependency tree
 Reading state information... Done
 Note, selecting 'libruby' instead of 'libopenssl-ruby'
 pciutils is already the newest version.
 libruby is already the newest version.
 ruby is already the newest version.
 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

  There isn't a 'download' option for apt-get on this system so I tried 
 '--download-only':

  root@plugpc-005:~# apt-get --download-only install  facter
 Reading package lists... Done
 Building dependency tree
 Reading state information... Done
 Some packages could not be installed. This may mean that you have
 requested an impossible situation or if you are using the unstable
 distribution that some required packages have not yet been created
 or been moved out of Incoming.
 The following information may help to resolve the situation:

  The following packages have unmet dependencies:
  facter : Depends: dmidecode but it is not installable
 E: Broken packages
  
  I added '--ignore-missing' but the result was the same. 

 On Wednesday, December 11, 2013 7:47:02 AM UTC-8, Jeff Bachtel wrote: 

  demidecode (which is a hard dependency for facter) is not available for 
 armel in Debian's repository. I have confirmed that facter will not fail 
 outright when dmidecode is missing.

 The following facter variables will not be created, however:
 bios_release_date
 bios_vendor
 bios_version
 boardmanufacturer
 boardproductname
 boardserialnumber
 manufacturer
 productname
 serialnumber
 type
 uuid

 If that's acceptable for you, you can try

 apt-get install ruby libopenssl-ruby pciutils
 apt-get download facter
 dpkg -i --force-depends facter*.deb
 apt-get install puppet

 This will manually install the other facter dependencies (which should 
 exist for armel), download the facter .deb file, then do an install of it 
 without checking depends. The puppet install should succeed after that.

 I think facter's dmidecode dependency should be a Suggests vice a 
 Depends, and it might be worth filing a bugrep to get it changed.

 Jeff


 On 12/11/2013 10:31 AM, Jon Yeargers wrote:
  
 I also tried 'apt-get dist-upgrade'. This brought down 'hiera' (along 
 with a few other things). 

  Then tried 'apt-get install puppet-common' - this failed as 'facter' 
 needed a higher version.

  .. so tried 'facter' but this failed with:

  facter : Depends : dmidecode but it is not installable

  
  
  If I do 'apt-cache search dmidecode' it isn't available.

 On Wednesday, December 11, 2013 7:26:02 AM UTC-8, Jon Yeargers wrote: 

 'apt-get update' ran fine this time. 

  'apt-get install puppet':

  Some packages could not be installed. This may mean that you have
 requested an impossible situation or if you are using the unstable
 distribution that some required packages have not yet been created
 or been moved out of Incoming.
 The following information may help to resolve

[Puppet Users] Re: Getting latest agent on debian for ARM?

2013-12-10 Thread Jon Yeargers
I've tried using 'gem' to install the latest build but it brings down lots 
of (seemingly) unnecessary bits with it. (examples, docs, etc)

On Thursday, December 5, 2013 9:16:15 AM UTC-8, Jon Yeargers wrote:

 I'm looking to deploy several hundred ARM based machines in the near 
 future. At this point the puppet agent version available via apt (Debian 6) 
  is 2.6. 

 I tried adding the apt.puppetlabs.com repository but it won't install on 
 my systems as the CPU type isn't supported. 

 What are my options to get 3.x? I don't see a path to compile the source. 
 Can I copy the relevant folders to a private repository and host from 
 there? 


-- 
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/8cb52b29-e9a4-4192-bb16-d7efa1917d65%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [Puppet Users] Problem with report processor - undefined method

2013-12-10 Thread Jon Yeargers
I would love DEARLY to be able to update my clients (agents) but they are 
running on ARM processors and I can't get the update. I posted about this 
here and on askpuppet but haven't found an answer yet.

On Tuesday, December 10, 2013 8:16:33 AM UTC-8, Jeff Bachtel wrote:

 If this is accurate, I can only warn that I've run into horribly annoying, 
 manifest-breaking issues trying to run 2.6/2.7 clients with 3.3 servers. It 
 may not be official advice, but if you can make puppet client versions 
 track your puppet server closer, you will have much less headache.

 Jeff


 On Thu, Dec 5, 2013 at 7:29 PM, Jon Yeargers ethr...@gmail.comjavascript:
  wrote:

 After I got puppetdb working I was looking about at the various bits of 
 data available. Looking at the 'nodes' option I was suprised to see this:

   report_timestamp : null

 for every node. They all have this for their puppet.conf:

 [main]
 logdir=/var/log/puppet
 vardir=/var/lib/puppet
 ssldir=/var/lib/puppet/ssl
 rundir=/var/run/puppet
 factpath=$vardir/lib/facter
 templatedir=$confdir/templates
 [agent]
 server=server_name
 certname=client_name
 pluginsync=true
 report=true

 so I assumed they were reporting. 

 TL;DR

 Looking at /var/log/messages on the server I found these messages 
 appearing:

 puppet-master[1090]: Report processor failed: undefined method `=' for 
 nil:NilClass

 What's up? Have I misconfigured something?

 Clients: v 2.6
 Server: v 3.3


  -- 
 You received this message because you are subscribed to the Google Groups 
 Puppet Users group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to puppet-users...@googlegroups.com javascript:.
 To view this discussion on the web visit 
 https://groups.google.com/d/msgid/puppet-users/d0e27c25-4970-4ee8-bc75-680d057ff9aa%40googlegroups.com
 .
 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/d9c94126-51b1-4406-b522-6d21ef002209%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[Puppet Users] Re: Getting latest agent on debian for ARM?

2013-12-10 Thread Jon Yeargers
If I create a '/etc/apt/sources.list.d/puppet.list' with:

deb http://apt.puppetlabs.com/pool wheezy stable

I get:

Failed to fetch 
http://apt.puppetlabs.com/pool/dists/wheezy/stable/binary-armel/Packages.gz 
404 Not Found

I'm thinking that I might need to set this up on an x86 machine and then 
rebuild the package file myself in a private repository.

On Tuesday, December 10, 2013 8:22:36 AM UTC-8, Jon Yeargers wrote:

 I've tried using 'gem' to install the latest build but it brings down lots 
 of (seemingly) unnecessary bits with it. (examples, docs, etc)

 On Thursday, December 5, 2013 9:16:15 AM UTC-8, Jon Yeargers wrote:

 I'm looking to deploy several hundred ARM based machines in the near 
 future. At this point the puppet agent version available via apt (Debian 6) 
  is 2.6. 

 I tried adding the apt.puppetlabs.com repository but it won't install on 
 my systems as the CPU type isn't supported. 

 What are my options to get 3.x? I don't see a path to compile the source. 
 Can I copy the relevant folders to a private repository and host from 
 there? 



-- 
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/a1b10982-5296-448e-b27b-608142dd47ef%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[Puppet Users] Re: Error 400 on SERVER: No such file or directory - getcwd

2013-12-10 Thread Jon Jaroker
I debugged this same 400 error with 'getcwd' in my 2.7.18 version of 
puppet.  I did not find useful information through web searches, so posted 
my debugging steps here: http://jaroker.com/?p=2036

In my case, the puppet master had been operating normally for over a year. 
I had recently updated my Eclipse IDE and created new manifests. The IDE 
used non UTF-8 encoding on these new files. Subsequent puppet runs on 
various nodes produced this 400-getcwd error:  puppet:  Could not retrieve 
catalog from remote server Error 400 on SERVER “Could not parse for 
environment...” getcwd

In my case, the solution was to identify DOS-encoded files on the master 
and convert them to unix.

Jon

On Wednesday, June 19, 2013 12:28:28 PM UTC-4, Rachel Andrew wrote:

 Hi 

 fully expecting to have done something silly here but am struggling to 
 debug why I am getting the error: 

 Error: Could not retrieve catalog from remote server: Error 400 on SERVER: 
 No such file or directory - getcwd at /etc/puppet/manifests/nodes.pp:2 on 
 node my.domain.net 

 the line in question is getting a custom module which has not changed 
 recently. 

 I was installing 
 http://www.practicalclouds.com/content/guide/pclouds-vcsdeploy-deploy-stuffand
  having some permissions issues, so I think this may well be to do with 
 permissions. However I am at a loss as to what as everything looks to be 
 ok. 

 Puppet Master and two client nodes on Debian Wheezy, the clients both 
 return this error. Puppet version 3.2.1 on all 3. 

 Any suggestions as to where to start debugging this? 

 Rachel

-- 
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/3340e221-be23-405d-baa0-5d08001aedc8%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [Puppet Users] Re: Getting latest agent on debian for ARM?

2013-12-10 Thread Jon Yeargers
I updated the repository file using the official puppet-recommended 
version. The corrected line is:

deb http://apt.puppetlabs.com squeeze main   (i mistakenly entered 'wheezy' 
above).

When I do 'apt-get update' I'm told:

W: Filed to fetch http://apt.puppetlabs.com/dists/squeeze/Release Unable to 
find expected entry main/binary-armel/Packages in Meta-index file 
(malformed Release file?)

On Tuesday, December 10, 2013 9:11:44 AM UTC-8, Felix.Frank wrote:

 That's not the issue at all I think. 

 Is that source.list entry from a howto? 

 Have you tried the instructions here: 

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

 Because what apt is making of your configuration is plain wrong. 

 On 12/10/2013 05:50 PM, Jon Yeargers wrote: 
  If I create a '/etc/apt/sources.list.d/puppet.list' with: 
  
  deb http://apt.puppetlabs.com/pool wheezy stable 
  
  I get: 
  
  Failed to fetch 
  
 http://apt.puppetlabs.com/pool/dists/wheezy/stable/binary-armel/Packages.gz 
  404 Not Found 
  
  I'm thinking that I might need to set this up on an x86 machine and then 
  rebuild the package file myself in a private repository. 


-- 
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/0e4f7484-682f-44c9-b370-5a977d4085ee%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[Puppet Users] Re: Problem with report processor - undefined method

2013-12-06 Thread Jon Yeargers
On further inspections the YAML files are still being created but not the 
puppet db entries. 

On Thursday, December 5, 2013 4:29:44 PM UTC-8, Jon Yeargers wrote:

 After I got puppetdb working I was looking about at the various bits of 
 data available. Looking at the 'nodes' option I was suprised to see this:

   report_timestamp : null

 for every node. They all have this for their puppet.conf:

 [main]
 logdir=/var/log/puppet
 vardir=/var/lib/puppet
 ssldir=/var/lib/puppet/ssl
 rundir=/var/run/puppet
 factpath=$vardir/lib/facter
 templatedir=$confdir/templates
 [agent]
 server=server_name
 certname=client_name
 pluginsync=true
 report=true

 so I assumed they were reporting. 

 TL;DR

 Looking at /var/log/messages on the server I found these messages 
 appearing:

 puppet-master[1090]: Report processor failed: undefined method `=' for 
 nil:NilClass

 What's up? Have I misconfigured something?

 Clients: v 2.6
 Server: v 3.3




-- 
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/6abed7eb-6cb9-439e-93be-01524276fed7%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[Puppet Users] Getting latest agent on debian for ARM?

2013-12-05 Thread Jon Yeargers
I'm looking to deploy several hundred ARM based machines in the near 
future. At this point the puppet agent version available via apt (Debian 6) 
 is 2.6. 

I tried adding the apt.puppetlabs.com repository but it won't install on my 
systems as the CPU type isn't supported. 

What are my options to get 3.x? I don't see a path to compile the source. 
Can I copy the relevant folders to a private repository and host from 
there? 

-- 
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/06eb5267-9326-4a5b-91d8-cf55c734aaad%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[Puppet Users] puppetdb not responding since 'yum update'

2013-12-05 Thread Jon Yeargers
I did `yum update` on my puppet server about a week ago. Up to that point I 
had puppet and puppetdb running on the same machine. Since the update 
puppetdb doesn't appear to be listening on port 8081 anymore.

When I run `puppet agent --test` on a client I get this error:

err: Could not retrieve catalog from remote server: Error 400 on 
SERVER: Failed to submit 'replace facts' command for plugpc-005.client to 
PuppetDB at puppet.server:8081: Connection refused - connect(2)

Looking at `nmap -P0 puppet.server` shows that port 8081 isn't open. Trying 
`telnet puppet.server 8081` confirms this.

My configs are all set using the values from 
[here].(http://docs.puppetlabs.com/puppetdb/latest/connect_puppet_master.html).

`ps -ax` shows that the processes are running:

2040 ?Ss 4:55 /usr/sbin/openvpn --daemon --writepid 
/var/run/openvpn/puppet.pid --config puppet.conf --cd /etc/openvpn 
--script-security 2
29737 ?Sl 0:37 /usr/bin/java -XX:OnOutOfMemoryError=kill -9 
%p -Xmx192m -XX:+HeapDumpOnOutOfMemoryError 
-XX:HeapDumpPath=/var/log/puppetdb/puppetdb-oom.hprof -jar 
/usr/share/puppetdb/puppetdb.jar services -c /etc/puppetdb/conf.d
29924 ?Sl 0:01 Passenger AppPreloader: 
/usr/share/puppet/rack/puppetmasterd   
29963 ?Sl 0:00 Passenger RackApp: 
/usr/share/puppet/rack/puppetmasterd


The output of `netstat -nap | grep 8081` is empty. 

Turning off iptables doesn't make any difference. (not that it would - 
nobody is listening at the port anyway)

NOTE: This system was working ok before the update. I could download 
configs to clients and query the db for the results.

So - what did I break?

-- 
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/f4f93c97-a763-40c4-96c6-6c341893fc74%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [Puppet Users] puppetdb not responding since 'yum update'

2013-12-05 Thread Jon Yeargers
I used 'puppetdb-ssl-setup' (after removing the ssl folder) to no avail.

(sorry about cross posting - I thought I had removed the 'ask' entry)

On Thursday, December 5, 2013 12:25:24 PM UTC-8, Ken Barber wrote:

 I responded to this in ask, but I'll answer here also. 

 In the file /etc/puppetdb/conf.d/jetty.ini, the settings ssl-host and 
 ssl-port must be set to listen on the SSL port (8081). However, if 
 your ssl certs aren't yet configured this may fail for you. Usually 
 puppetdb-ssl-setup is a good way to set these up automatically, so try 
 this first. For ssl-host I usually recommend something like ::1 or 
 0.0.0.0 to listen on all ports for simplicity, but you can make this 
 explicit if you like. 

 ken. 



 On Thu, Dec 5, 2013 at 7:48 PM, Jon Yeargers ethr...@gmail.comjavascript: 
 wrote: 
  I did `yum update` on my puppet server about a week ago. Up to that 
 point I 
  had puppet and puppetdb running on the same machine. Since the update 
  puppetdb doesn't appear to be listening on port 8081 anymore. 
  
  When I run `puppet agent --test` on a client I get this error: 
  
  err: Could not retrieve catalog from remote server: Error 400 on 
 SERVER: 
  Failed to submit 'replace facts' command for plugpc-005.client to 
 PuppetDB 
  at puppet.server:8081: Connection refused - connect(2) 
  
  Looking at `nmap -P0 puppet.server` shows that port 8081 isn't open. 
 Trying 
  `telnet puppet.server 8081` confirms this. 
  
  My configs are all set using the values from 
  [here].(
 http://docs.puppetlabs.com/puppetdb/latest/connect_puppet_master.html). 
  
  `ps -ax` shows that the processes are running: 
  
  2040 ?Ss 4:55 /usr/sbin/openvpn --daemon --writepid 
  /var/run/openvpn/puppet.pid --config puppet.conf --cd /etc/openvpn 
  --script-security 2 
  29737 ?Sl 0:37 /usr/bin/java -XX:OnOutOfMemoryError=kill 
 -9 
  %p -Xmx192m -XX:+HeapDumpOnOutOfMemoryError 
  -XX:HeapDumpPath=/var/log/puppetdb/puppetdb-oom.hprof -jar 
  /usr/share/puppetdb/puppetdb.jar services -c /etc/puppetdb/conf.d 
  29924 ?Sl 0:01 Passenger AppPreloader: 
  /usr/share/puppet/rack/puppetmasterd 
  29963 ?Sl 0:00 Passenger RackApp: 
  /usr/share/puppet/rack/puppetmasterd 
  
  
  The output of `netstat -nap | grep 8081` is empty. 
  
  Turning off iptables doesn't make any difference. (not that it would - 
  nobody is listening at the port anyway) 
  
  NOTE: This system was working ok before the update. I could download 
 configs 
  to clients and query the db for the results. 
  
  So - what did I break? 
  
  -- 
  You received this message because you are subscribed to the Google 
 Groups 
  Puppet Users group. 
  To unsubscribe from this group and stop receiving emails from it, send 
 an 
  email to puppet-users...@googlegroups.com javascript:. 
  To view this discussion on the web visit 
  
 https://groups.google.com/d/msgid/puppet-users/f4f93c97-a763-40c4-96c6-6c341893fc74%40googlegroups.com.
  

  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/6e94f3ef-4320-4b49-b430-10f646f220cc%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [Puppet Users] puppetdb not responding since 'yum update'

2013-12-05 Thread Jon Yeargers
Setting the 'ssl_host=' param to 0.0.0.0 turned the trick (so to speak). I 
kept trying variations on what the ssl cert was created for.

Thank you for clearing this up for me.

On Thursday, December 5, 2013 1:17:51 PM UTC-8, Ken Barber wrote:

 Can you show your jetty.ini? And the results of running 
 puppetdb-ssl-setup ... the more information the better in these kinds 
 of cases. 

 Also - is PuppetDB listening to port 8080? 

 On Thu, Dec 5, 2013 at 9:15 PM, Jon Yeargers ethr...@gmail.comjavascript: 
 wrote: 
  I used 'puppetdb-ssl-setup' (after removing the ssl folder) to no avail. 
  
  (sorry about cross posting - I thought I had removed the 'ask' entry) 
  
  
  On Thursday, December 5, 2013 12:25:24 PM UTC-8, Ken Barber wrote: 
  
  I responded to this in ask, but I'll answer here also. 
  
  In the file /etc/puppetdb/conf.d/jetty.ini, the settings ssl-host and 
  ssl-port must be set to listen on the SSL port (8081). However, if 
  your ssl certs aren't yet configured this may fail for you. Usually 
  puppetdb-ssl-setup is a good way to set these up automatically, so try 
  this first. For ssl-host I usually recommend something like ::1 or 
  0.0.0.0 to listen on all ports for simplicity, but you can make this 
  explicit if you like. 
  
  ken. 
  
  
  
  On Thu, Dec 5, 2013 at 7:48 PM, Jon Yeargers ethr...@gmail.com 
 wrote: 
   I did `yum update` on my puppet server about a week ago. Up to that 
   point I 
   had puppet and puppetdb running on the same machine. Since the update 
   puppetdb doesn't appear to be listening on port 8081 anymore. 
   
   When I run `puppet agent --test` on a client I get this error: 
   
   err: Could not retrieve catalog from remote server: Error 400 on 
   SERVER: 
   Failed to submit 'replace facts' command for plugpc-005.client to 
   PuppetDB 
   at puppet.server:8081: Connection refused - connect(2) 
   
   Looking at `nmap -P0 puppet.server` shows that port 8081 isn't open. 
   Trying 
   `telnet puppet.server 8081` confirms this. 
   
   My configs are all set using the values from 
   
   [here].(
 http://docs.puppetlabs.com/puppetdb/latest/connect_puppet_master.html). 
   
   `ps -ax` shows that the processes are running: 
   
   2040 ?Ss 4:55 /usr/sbin/openvpn --daemon --writepid 
   /var/run/openvpn/puppet.pid --config puppet.conf --cd /etc/openvpn 
   --script-security 2 
   29737 ?Sl 0:37 /usr/bin/java 
 -XX:OnOutOfMemoryError=kill 
   -9 
   %p -Xmx192m -XX:+HeapDumpOnOutOfMemoryError 
   -XX:HeapDumpPath=/var/log/puppetdb/puppetdb-oom.hprof -jar 
   /usr/share/puppetdb/puppetdb.jar services -c /etc/puppetdb/conf.d 
   29924 ?Sl 0:01 Passenger AppPreloader: 
   /usr/share/puppet/rack/puppetmasterd 
   29963 ?Sl 0:00 Passenger RackApp: 
   /usr/share/puppet/rack/puppetmasterd 
   
   
   The output of `netstat -nap | grep 8081` is empty. 
   
   Turning off iptables doesn't make any difference. (not that it would 
 - 
   nobody is listening at the port anyway) 
   
   NOTE: This system was working ok before the update. I could download 
   configs 
   to clients and query the db for the results. 
   
   So - what did I break? 
   
   -- 
   You received this message because you are subscribed to the Google 
   Groups 
   Puppet Users group. 
   To unsubscribe from this group and stop receiving emails from it, 
 send 
   an 
   email to puppet-users...@googlegroups.com. 
   To view this discussion on the web visit 
   
   
 https://groups.google.com/d/msgid/puppet-users/f4f93c97-a763-40c4-96c6-6c341893fc74%40googlegroups.com.
  

   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...@googlegroups.com javascript:. 
  To view this discussion on the web visit 
  
 https://groups.google.com/d/msgid/puppet-users/6e94f3ef-4320-4b49-b430-10f646f220cc%40googlegroups.com.
  

  
  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/ebec75a1-e06c-4931-9b31-b1955908cd02%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[Puppet Users] Agent speed - what is 'normal'?

2013-12-05 Thread Jon Yeargers
(This is actually two questions):

Running 'puppet agent --test' on a 1Ghz ARM based (Debian 6) fanless PC. 
It's pretty common to see the 'catalog run' take 120-300 seconds. Is this 
typical? 

Second (and possibly related): when I do a 'puppet agent --test (--noop)' I 
get this set of messages:

info: Retrieving plugin
info: Loading facts in facter_dot_d
info: Loading facts in pe_version
info: Loading facts in puppet_vardir
info: Loading facts in root_home
info: Loading facts in facter_dot_d
info: Loading facts in pe_version
info: Loading facts in puppet_vardir
info: Loading facts in root_home

Note the repeats. What have I misconfigured?

-- 
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/e1d50941-c0fb-44bf-aeae-923a2a8fc0d4%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[Puppet Users] Problem with report processor - undefined method

2013-12-05 Thread Jon Yeargers
After I got puppetdb working I was looking about at the various bits of 
data available. Looking at the 'nodes' option I was suprised to see this:

  report_timestamp : null

for every node. They all have this for their puppet.conf:

[main]
logdir=/var/log/puppet
vardir=/var/lib/puppet
ssldir=/var/lib/puppet/ssl
rundir=/var/run/puppet
factpath=$vardir/lib/facter
templatedir=$confdir/templates
[agent]
server=server_name
certname=client_name
pluginsync=true
report=true

so I assumed they were reporting. 

TL;DR

Looking at /var/log/messages on the server I found these messages appearing:

puppet-master[1090]: Report processor failed: undefined method `=' for 
nil:NilClass

What's up? Have I misconfigured something?

Clients: v 2.6
Server: v 3.3


-- 
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/d0e27c25-4970-4ee8-bc75-680d057ff9aa%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[Puppet Users] Re: Status of Data in modules

2013-11-27 Thread Jon Shanks
Hey, 

Just to jump in at the end, (been following the thread) and looked at the 
implementatino of data in modules, but found that the complexity 
surrounding it was a bit much for people who were not experienced. Also, 
troubleshooting issues with data, i.e. some form of outcome of a puppet run 
that didn't match what was expected, created an extra overhead in trying to 
identify where the issue lied. We also really only want to return data for 
modules which are included on a host.

I therefore wrote a wrapper function which essentially utilises the 
hierarchy but with an addition

 - modules/%{module_name}/%{klass}

It retreives the classes from the API, using the node indirection.

%{klass} gets defined in the scope as it iterates, (ephemeral_from) and 
merges the data it finds, so, if a module as a dependency on another module 
i.e. 'foreman' has sudo rules it requires, you could place those within 
modules/sudo/foreman.yaml so that you are containing data relating to a 
module, without managing different hierarchical configurations throught 
your module structure. 

For defaults, we defined that as modules/%{module_name}/defaults, which is 
the last in the hierarchy. 

This probably would haev been nicer if the data sources could utlises the 
returned classes in the hierarchy and naturally iterate over the array, to 
save the wrapper functinoaity to do it. 

Obviously this wouldn't solve all the problems faced with modules or the 
principles of the forge modules being usable easily out of the box, but it 
solved the issue we had in categorising data within modules. Thought i 
would mention our use case. 

Jon


On Friday, 11 October 2013 19:09:23 UTC+1, Eric Sorenson wrote:


 Thanks to everyone who kicked the tires on the experimental data in 
 modules feature included in Puppet 3.3.0. We got a lot of feedback, some 
 cool proof-of-concept modules, and a definitive conclusion to the 
 experiment. 

 The idea of including a module-specific hiera backend is centered around 
 one primary use case: replacing the 'params class pattern', a common idiom 
 in Puppet modules that's described in the [Using Parameterized 
 Classes][param-classes] guide. The problem that most testers ran into 
 though is that for non-trivial modules they ended up having to re-implement 
 the Puppet DSL logic encoded in their params.pp in convoluted, non-obvious 
 ways. The solutions to this led to more contortions until we'd ended up 
 with the ability to execute parser functions in the right-hand-side of a 
 yaml value. So something which started out trying to help separate data 
 from code ended up putting code back into data! 

 Additionally, even after multiple attempts to simplify the surface area 
 and user experience with the bindings system (described in ARM-9) that 
 underlay the data-in-modules implementation, users still found its 
 complexity daunting. There are some important bits of scaffolding (like an 
 actual type system for Puppet!) that will prove valuable as more of the 
 future parser and evaluator work that Henrik is building makes its way into 
 the product, but in the final analysis the data in modules feature was the 
 wrong vehicle to introduce them. 

 Refocusing on the problems users were trying to solve (and here I have to 
 give shout-outs to Ashley Penney for his [puppetlabs-ntp][] branch and the 
 dynamic duo of Spencer Krug/William van Hevelingen for their [startrek][] 
 module) and the problems with the 'params' pattern lent some clarity. We've 
 gotten into a situation of disparity with regard to hiera and data 
 bindings, because data bindings enable module _users_ to use their 
 site-wide hiera data but don't provide moduel _authors_ the same 
 affordance. But rather than introduce additional complexity, we can close 
 the gap for existing code patterns. 

 So the proposed solution at this point is: 
 - enable an implicit data-binding lookup against the hiera-puppet backend 
 for a value of 'classname::variable' in the file 
 'modules/classname/manifests/params.pp', which simplifies class definition 
 and provides consistency with other hiera backends. As a module author, 
 you'd still leave your logic for variables in params.pp, but they'd be 
 implicitly looked up via data bindings as the class is declared, after 
 consulting site-wide hiera. 
 - remove the user-facing '--binder' functionality 
 - fix known problems with the hiera-puppet lookups ([Redmine 
 15746][15746], namely, but if there are others that are important to you 
 please speak up!) 

 To show how this would work, I'll rework the ['smart parameter defaults' 
 example][param-classes] I linked above, with my commentary behind `##` 
 comments: 

 # /etc/puppet/modules/webserver/manifests/params.pp 
 
 class webserver::params {   ## nothing changes here... 
  $packages = $operatingsystem ? { 
/(?i-mx:ubuntu|debian)/= 'apache2', 
/(?i-mx:centos|fedora|redhat)/ = 'httpd

[Puppet Users] Re: Class declaration ordering causes duplicate resource error

2013-11-19 Thread Jon McKenzie
Thanks for the replies and being patient with me!

Maybe I'm thinking about this incorrectly, but it seems to me that 
announcing a dependency (I need x defined somewhere in order to work 
properly) shouldn't require a class to declare the dependency as well. It 
seems to me that the dependent class should not have to know anything about 
how a particular dependency is defined, just that it is defined.

As an analogy to RPM package dependencies, if I have a package called 
Django that requires a package which provides the python capability, the 
Django package shouldn't need to include it's own version of Python. It 
should be able to re-use any package which has the capability.


What does one have to do with the other?


You were suggesting using auto-lookups via Hiera to populate class 
parameters, but we're using Foreman to populate those parameters. AFAIK, 
there's no interoperability between Foreman's ENC and Hiera (without 
writing my own).

Jon

-- 
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/e76b49ff-70f0-4b18-8b41-ecf853acef65%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[Puppet Users] Class declaration ordering causes duplicate resource error

2013-11-15 Thread Jon McKenzie
Has anyone run into this issue before? 
http://projects.puppetlabs.com/issues/5046#note-17

Is there something obvious that I'm missing?

-- 
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/400dd448-7a55-48b3-a1ca-1cf49cfddb2e%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


[Puppet Users] Re: Class declaration ordering causes duplicate resource error

2013-11-15 Thread Jon McKenzie
Thanks John,

Unfortunately, we're using Foreman in our shop for the ENC, so using Hiera 
is currently not possible (AFAIK)

For some reason, I thought the require statement was analogous to the 
require metaparameter. But looking at the documentation, clearly that's 
not the case. Still, this seems like a bug to me. If this is a duplicate 
declaration, shouldn't it error regardless of the ordering within the 
manifest? 

Anyways, would writing something like this work?

class { foo::bar:
Class[foo:baz] - Class[foo::bar]
}

On Friday, November 15, 2013 5:27:11 PM UTC-5, jcbollinger wrote:



 On Friday, November 15, 2013 10:08:54 AM UTC-6, Jon McKenzie wrote:

 Has anyone run into this issue before? 
 http://projects.puppetlabs.com/issues/5046#note-17

 Is there something obvious that I'm missing?



 Yes.  The 'require' function is a form of class declaration, functionally 
 equivalent to 'include' + an automatic relationship.  You therefore do have 
 multiple declarations of class foo::baz: one in foo::bar and one in 
 foo::bam.  As long as the parameterized-style declaration is evaluated 
 first, all is well, but otherwise you will get a duplicate declaration 
 error.

 This general problem is one of my principal reasons for advising folks to 
 not use parameterized-style class declarations, as I have done since 
 parameterized classes were introduced.  In Puppet 3 you can usefully create 
 and use parameterized classes without using parameterized-style 
 declarations by relying on automatic parameter binding through Hiera.


 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/813a4c7c-f7b8-4d9a-9620-430a8c2f307d%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [Puppet Users] Puppet can't start service (dropbox) but init.d command works manually

2013-09-14 Thread Jon Jaroker
Ashley,

Thanks for reporting the solution. I was just struggling with the same odd 
behavior. My setup automatically inserts puppet managed comments at the 
top of all templates, but this breaks init scripts (at least in Debian).

Jon

=
Jon Jaroker
http://jaroker.com

On Monday, July 2, 2012 12:10:29 AM UTC-4, Ashley Baumann wrote:

 This was failing for me because the init.d script needed a #!/bin/sh at 
 the top 
 of it. Puppet was getting an Exec Format Error when it tried to run it. 


 11008 execve(/etc/init.d/dropbox, [/etc/init.d/dropbox, status], [/* 
 23 
 vars */]) = -1 ENOEXEC (Exec format error) 

 Ashleyb 




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


Re: [Puppet Users] MCollective Puppet plugin - runall not working

2013-07-11 Thread Jon Ward
Hi,

I had just copied the files over manually and placed them in the respective 
directories, I've now also installed the deb packages 
mcollective-puppet-agent on the agent nodes and 
mcollective-puppet-common on the client nodes from the Puppetlabs repo 
although this didn't make a difference.

I have the following files in my $libdir/mcollective/data on both the 
client and agent nodes:

agent_data.ddl
agent_data.rb
fstat_data.ddl
fstat_data.rb
puppet_data.ddl
puppet_data.rb
resource_data.ddl
resource_data.rb

I also have everything from the util, validator, aggregate and agent dirs 
on both nodes, and the application dir on the client node.

Thanks,

Jon

On Wednesday, July 10, 2013 10:40:23 PM UTC+1, R.I. Pienaar wrote:



 - Original Message - 
  From: Jon Ward jgh...@gmail.com javascript: 
  To: puppet...@googlegroups.com javascript: 
  Sent: Wednesday, July 10, 2013 5:15:59 PM 
  Subject: [Puppet Users] MCollective Puppet plugin - runall not working 
  
  Hi, 
  
  I've got the Puppet plugin for MCollective installed and working, 
 however 
  the 'runall' action always discovers 0 enabled nodes. 
  
  # mco puppet runall 2 
   2013-07-10 15:57:16: Running all nodes with a concurrency of 2 
   2013-07-10 15:57:16: Discovering enabled Puppet nodes to manage 
   2013-07-10 15:57:19: Found 0 enabled nodes 
  
  
  Looking in the server log on a node I would have expected to run I can 
 see 
  this: 
  
  D, [2013-07-10T15:03:53.137854 #9657] DEBUG -- : base.rb:25:in `lookup' 
   Doing data query puppet_data for '' 
   D, [2013-07-10T15:03:53.139202 #9657] DEBUG -- : base.rb:109:in 
   `validate_filter?' Failing based on class and fact composition 
   D, [2013-07-10T15:03:53.139318 #9657] DEBUG -- : base.rb:117:in 
   `validate_filter?' Passing based on agent puppet 
   D, [2013-07-10T15:03:53.139404 #9657] DEBUG -- : base.rb:159:in 
   `validate_filter?' Message failed the filter checks 
  
  
  As far as I can work out, the following line in util/puppetrunner.rb 
 might 
  be failing: 
  
   def find_enabled_nodes 
   
   ... 
   
   @client.compound_filter(puppet().enabled=true) 
   
   ... 
   
   end 
   
   
  If I do an 'mco puppet status' then the Summary of Applying and Summary 
 of 
  Idling work, however the Summary of enabled and Summary of 
 daemon_present 
  show: 
  
   *Could not compute summary - exception raised while processing startup 
   hook* 
   
  
   So it seems that it thinks all the nodes are disabled. However other 
  actions such as enable and disable work correctly, and runonce 
  correctly determines which nodes are enabled. 
  
  I've had a dig around the code but got completely lost so any pointers 
  would be gratefully appreciated! 
  
  I'm running Puppet 3.2.1, MCollective 2.2.4 with activemq on Debian 6. 
  

 how did you install the plugin? did you install the data plugins on the 
 node? 


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




Re: [Puppet Users] MCollective Puppet plugin - runall not working

2013-07-11 Thread Jon Ward
Ah, sorry the node I was testing was disabled, and the ones that were 
enabled were missing some of the $libdir/ directories (I had copied them up 
manually and Puppet had wiped them out without my realising.)

I'm getting an error now, but at least the nodes are being discovered:

# mco puppet -v runall 2
2013-07-11 09:56:31: Running all nodes with a concurrency of 2
2013-07-11 09:56:31: Discovering enabled Puppet nodes to manage
Discovering hosts using the mc method for 3 second(s)  2
2013-07-11 09:56:34: Found 2 enabled nodes
Discovering hosts using the mc method for 3 second(s)  0

The puppet application failed to run, use -v for full error details: Can 
only supply discovery data if direct_addressing is enabled

Can only supply discovery data if direct_addressing is enabled 
(RuntimeError)
from /usr/lib/ruby/1.8/mcollective/rpc/client.rb:467:in `discover'  

from 
/usr/share/mcollective/plugins/mcollective/util/puppetrunner.rb:82:in 
`runhost'
from 
/usr/share/mcollective/plugins/mcollective/util/puppetrunner.rb:75:in 
`runhosts'
from /usr/lib/ruby/1.8/timeout.rb:79:in `each_with_index'
from 
/usr/share/mcollective/plugins/mcollective/util/puppetrunner.rb:65:in `each'
from 
/usr/share/mcollective/plugins/mcollective/util/puppetrunner.rb:65:in 
`each_with_index'
from 
/usr/share/mcollective/plugins/mcollective/util/puppetrunner.rb:65:in 
`runhosts'
from 
/usr/share/mcollective/plugins/mcollective/util/puppetrunner.rb:59:in 
`runall_once'
from 
/usr/share/mcollective/plugins/mcollective/util/puppetrunner.rb:21:in 
`runall'
from 
/usr/share/mcollective/plugins/mcollective/application/puppet.rb:277:in 
`runall_command'
from 
/usr/share/mcollective/plugins/mcollective/application/puppet.rb:382:in 
`send'
from 
/usr/share/mcollective/plugins/mcollective/application/puppet.rb:382:in 
`main'
from /usr/lib/ruby/1.8/mcollective/application.rb:285:in `run'
from /usr/lib/ruby/1.8/mcollective/applications.rb:23:in `run'
from /usr/bin/mco:20




On Thursday, July 11, 2013 10:43:43 AM UTC+1, R.I. Pienaar wrote:



 - Original Message - 
  From: Jon Ward jgh...@gmail.com javascript: 
  To: puppet...@googlegroups.com javascript: 
  Sent: Thursday, July 11, 2013 10:37:00 AM 
  Subject: Re: [Puppet Users] MCollective Puppet plugin - runall not 
 working 
  
  Hi, 
  
  I had just copied the files over manually and placed them in the 
 respective 
  directories, I've now also installed the deb packages 
  mcollective-puppet-agent on the agent nodes and 
  mcollective-puppet-common on the client nodes from the Puppetlabs repo 
  although this didn't make a difference. 
  
  I have the following files in my $libdir/mcollective/data on both the 
  client and agent nodes: 
  
  agent_data.ddl 
  agent_data.rb 
  fstat_data.ddl 
  fstat_data.rb 
  puppet_data.ddl 
  puppet_data.rb 
  resource_data.ddl 
  resource_data.rb 
  
  I also have everything from the util, validator, aggregate and agent 
 dirs 
  on both nodes, and the application dir on the client node. 

 that certainly all seems fine, no exception logged in the servers log? We 
 do now log them - but I suspect that's only in the development series. 

 If there's no exception, put this little script on your node and just run 

ruby test.rb 

 and show us what it says http://p.devco.net/409 


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




Re: [Puppet Users] MCollective Puppet plugin - runall not working

2013-07-11 Thread Jon Ward
Ah that's working perfectly now, thanks so much for your time.

Yep, I will update my Puppet scripts to install the deb packages going 
forward.

Jon

On Thursday, July 11, 2013 11:01:33 AM UTC+1, R.I. Pienaar wrote:



 - Original Message - 
  From: Jon Ward jgh...@gmail.com javascript: 
  To: puppet...@googlegroups.com javascript: 
  Sent: Thursday, July 11, 2013 10:59:11 AM 
  Subject: Re: [Puppet Users] MCollective Puppet plugin - runall not 
 working 
  
  Ah, sorry the node I was testing was disabled, and the ones that were 
  enabled were missing some of the $libdir/ directories (I had copied them 
 up 
  manually and Puppet had wiped them out without my realising.) 

 best to install the agents using the debs yeah, takes care of all these 
 problems 

  
  I'm getting an error now, but at least the nodes are being discovered: 
  
  # mco puppet -v runall 2 
  2013-07-11 09:56:31: Running all nodes with a concurrency of 2 
  2013-07-11 09:56:31: Discovering enabled Puppet nodes to manage 
  Discovering hosts using the mc method for 3 second(s)  2 
  2013-07-11 09:56:34: Found 2 enabled nodes 
  Discovering hosts using the mc method for 3 second(s)  0 
  
  The puppet application failed to run, use -v for full error details: Can 
  only supply discovery data if direct_addressing is enabled 

 set direct_addressing=1 everywhere, you need to be using the ActiveMQ or 
 RabbitMQ connectors for this. 


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




[Puppet Users] MCollective Puppet plugin - runall not working

2013-07-10 Thread Jon Ward
Hi,

I've got the Puppet plugin for MCollective installed and working, however 
the 'runall' action always discovers 0 enabled nodes.

# mco puppet runall 2
 2013-07-10 15:57:16: Running all nodes with a concurrency of 2
 2013-07-10 15:57:16: Discovering enabled Puppet nodes to manage
 2013-07-10 15:57:19: Found 0 enabled nodes


Looking in the server log on a node I would have expected to run I can see 
this:

D, [2013-07-10T15:03:53.137854 #9657] DEBUG -- : base.rb:25:in `lookup' 
 Doing data query puppet_data for ''
 D, [2013-07-10T15:03:53.139202 #9657] DEBUG -- : base.rb:109:in 
 `validate_filter?' Failing based on class and fact composition
 D, [2013-07-10T15:03:53.139318 #9657] DEBUG -- : base.rb:117:in 
 `validate_filter?' Passing based on agent puppet
 D, [2013-07-10T15:03:53.139404 #9657] DEBUG -- : base.rb:159:in 
 `validate_filter?' Message failed the filter checks


As far as I can work out, the following line in util/puppetrunner.rb might 
be failing:

 def find_enabled_nodes

 ...

 @client.compound_filter(puppet().enabled=true)

 ...

 end


If I do an 'mco puppet status' then the Summary of Applying and Summary of 
Idling work, however the Summary of enabled and Summary of daemon_present 
show:

 *Could not compute summary - exception raised while processing startup 
 hook*


 So it seems that it thinks all the nodes are disabled. However other 
actions such as enable and disable work correctly, and runonce 
correctly determines which nodes are enabled.

I've had a dig around the code but got completely lost so any pointers 
would be gratefully appreciated!

I'm running Puppet 3.2.1, MCollective 2.2.4 with activemq on Debian 6.

Cheers,

Jon

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




Re: [Puppet Users] AD user add to local windows group?

2013-06-12 Thread Jon
Has there been any advancement with this bug?

On Friday, May 31, 2013 2:53:30 PM UTC-4, Trevor Vaughan wrote:

 This sounds like the other side of the coin to a bug that I filed: 
 https://projects.puppetlabs.com/issues/19414

 Not being able to add AD/LDAP users to a local group is a fail.

 Thanks,

 Trevor


 On Fri, May 31, 2013 at 1:19 PM, Josh Cooper 
 jo...@puppetlabs.comjavascript:
  wrote:

 Hi Vince,


 On Fri, May 31, 2013 at 8:31 AM, VinceH vince.h...@gmail.comjavascript:
  wrote:

 Pardon my noobness to this, but is anyone able to get around this 
 issuehttps://projects.puppetlabs.com/issues/15326
 ?

 group {'testgroup':

 ensure  =  present,
 members = 'DOMAIN\user',
 name = 'test'

 }  

 Yields

 OLE error code:8007056B in Active Directory   A member could not be 
 added to or removed from the local group because the member does not exist.

 I'm running v3.2.1 and the bug report is from v2.7.17 -- am I doing 
 something wrong?

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


 This is bug https://projects.puppetlabs.com/issues/17031

 Josh

 -- 
 Josh Cooper
 Developer, Puppet Labs

 *Join us at PuppetConf 2013, August 22-23 in San Francisco - *
 http://bit.ly/pupconf13*
 **Register now and take advantage of the Early Bird discount - save 25%!*
  
 -- 
 You received this message because you are subscribed to the Google Groups 
 Puppet Users group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to puppet-users...@googlegroups.com javascript:.
 To post to this group, send email to puppet...@googlegroups.comjavascript:
 .
 Visit this group at http://groups.google.com/group/puppet-users?hl=en.
 For more options, visit https://groups.google.com/groups/opt_out.
  
  




 -- 
 Trevor Vaughan
 Vice President, Onyx Point, Inc
 (410) 541-6699
 tvau...@onyxpoint.com javascript:

 -- This account not approved for unencrypted proprietary information -- 


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




Re: [Puppet Users] Issue installing on RHEL 6 (2.6.32-358.2.1.el6.x86_64)

2013-06-09 Thread Jon Stanley
On Fri, Jun 7, 2013 at 4:45 PM, Kenneth Edgar ken.ed...@gmail.com wrote:
Protected multilib versions: libselinux-2.0.94-5.3.el6.i686 !=
 libselinux-2.0.94-5.3.el6_4.1.x86_64
  You could try using --skip-broken to work around the problem
  You could try running: rpm -Va --nofiles --nodigest

Basically this indicates a problem with your yum configuration or
repos. What it's refusing to do is to install differing versions of
the same package for different architectures (i686 and x86_64)

Particularly, the libselinux package has an issue. What this error
means is that you attempted to install libselinux-2.0.94-5.3.el6.i686
but you have 2.0.94-5.3.el6_4.1.x86_64 already installed (or the other
way around, I forget)

If you're using the install media as a repo on an updated system, that
would explain this. The el6_4 dist tag indicates an async errata (i.e.
released between major RHEL releases) for RHEL6.4, while the .el6 is
what gets shipped on install media (overly simplifying things here,
you could have prior releases async errata, for example el6_3 in a
minor release if there were no other changes) for a minor release.

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




[Puppet Users] MSSQL Server 2012

2013-06-04 Thread Jon Mosco
I am using the MSSQL server module from puppet as a baseline for the
installation of SQL Server 2012, and am running into issues durring the
install.  It gets a lot of the way done, and issues this error:

Error: \\puppet\installs\SQLServer2012SP1\setup.exe
/CONFIGURATIONFILE=C:\sql201
2.config.ini returned 194 instead of one of [0]
Error: /Stage[main]/Erp_db2012::Mssql_2012/Exec[install_mssql2012]/returns:
chan
ge from notrun to 0 failed: \\puppet\installs\SQLServer2012SP1\setup.exe
/CONFIG
URATIONFILE=C:\sql2012.config.ini returned 194 instead of one of [0]
Notice: Finished catalog run in 1933.62 seconds
Press any key to continue . . .

The module I wrote looks like this:

class db2012::mssql_2012 {

  file { 'C:\sql2012.config.ini':
#content = template('db2012/config_2012.ini.erb'),
ensure   = present,
source   =
puppet:///modules/erp_db2012/2012ConfigurationFile.ini,
  }

  exec { 'install_mssql2012':
#command = \\\puppet\installs\SQLServer2012SP1\\setup.exe
/Action=Install /IACCEPTSQLSERVERLICENSETERMS /QS
/CONFIGURATIONFILE=C:\\sql2012.config.ini,
command  = \\\puppet\installs\SQLServer2012SP1\\setup.exe
/CONFIGURATIONFILE=C:\\sql2012.config.ini,
logoutput= true,
creates  = C:\\Program Files\\Mirosoft SQL Server,
#timeout = 1200,
timeout  = 0,
#returns  = 3,
require  = File ['C:\sql2012.config.ini'],
#Dism['NetFx3'] ],
  }
}

I can try to add the return codes, but I am not sure if this is a solid fix.

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




[Puppet Users] Re: Hiera lookups in templates

2013-05-10 Thread Jon Ward
Hi,

Have you tried doing the Hiera lookup on the command line to double check 
it can be read?

$ hiera -d -c /path/to/hiera.yaml jrs_config_server1 fqdn=hostname


Cheers,

Jon

On Friday, May 10, 2013 12:18:22 PM UTC+1, Jonathan Gazeley wrote:

 Hi, 

 I'm having a problem accessing Hiera data from within templates. Yes, I 
 know this is not the recommended way to access Hiera data, but in my use 
 case I think it will be easier overall. 

 In manifests, this code works: 

 { 
ip = hiera('jrs_config_server1'), 
 } 

 In a template, part of the same module as the manifest, this does not 
 work: 

 ipaddr = %= scope.function_hiera([jrs_config_server1]) % 

 It fails with this error: 

 Could not find data item jrs_config_server1 in any Hiera data file and 
 no default supplied 

 The value of  jrs_config_server1 is in Hiera, specific to the fqdn of 
 the node. I'm struggling to see why it would not be working. Any ideas? 

 Cheers, 
 Jonathan 


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




[Puppet Users] Re: hiera-gpg causing big increase in catalog compile time

2013-05-10 Thread Jon Ward


 If you use many parameterized classes, then Puppet 3's automatic class 
 parameter binding will tend to aggravate that problem, especially if you 
 typically allow class parameters to take default values or DSL-specified 
 values (so that hiera has lots of complete misses on the parameter names).


Yep this was what I eventually worked out was causing my massive increase 
in compile times - I wasn't aware of the new data binding stuff in Puppet 3 
and was making heavy use of default values in parameterised classes without 
realizing that each one was triggering a Hiera lookup through all of my 
yaml and then gpg data files.

I ended up changing most of my parameterised classes back to regular 
classes, and not using any default values in the remaining ones - to be 
honest with Hiera I didn't really need them any more as I put my default 
values in common.yaml - and this reduced my catalog compile time back to a 
tolerable level. That said my compile times are still a lot higher than 
they were prior to using Hiera and the GPG backend, and I was shocked when 
I ran Puppetmaster in debug mode to see it opening each file in turn for 
every single lookup. Caching the data would seem the sensible way to go.
 
On Thursday, May 9, 2013 4:18:21 PM UTC+1, Aaron Mills wrote:

 Hmm..it seems like a pretty basic use case is an accompanying gpg file for 
 each level of a hierarchy, just to store things like passwords, or 
 sensitive data. Minimizing the use of things like hiera's 3.x data bindings 
 to gain speed in hiera-gpg lookups feels like throwing the baby out with 
 the bathwater.

 I wonder how difficult (read: secure) it would be to cache the data across 
 calls. An md5sum could be used to determine whether the contents of a .gpg 
 file have changed since the last lookup. Instead of decrypting each file 
 for every call, hiera-gpg can do something like:

 - Calculate an md5sum of the .gpg files, and the data from these files 
 stored in memory, redis, or wherever.
 - When asked for a variable, do an md5sum of the .gpg file and, if the 
 values are the same, return the data from memory
 - If the hash values don't match, reload the data from the .gpg file.

 Seems like this would be slightly faster than having to fully decrypt the 
 contents of each file for every parameter lookup.


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




Re: [Puppet Users] Re: Hiera lookups in templates

2013-05-10 Thread Jon Ward
Try putting the variable in common.yaml at the bottom of the hierarchy and 
see if it gets picked up. If it does then perhaps the value of the fqdn 
fact isn't what you think it is.

You can also try running puppetmaster in the foreground in debug mode:

$ puppet master —no-daemonize —debug


Now when you run puppet you should see the Hiera lookups happening as the 
catalog is compiled, this might help you pinpoint the problem..

On Friday, May 10, 2013 3:46:28 PM UTC+1, Jonathan Gazeley wrote:

 Hi Jon, 

 Thanks for your tip. I had made a typo in my yaml which debug mode 
 picked up. I fixed it, and now your command works when run on the 
 puppetmaster but the same error persists when the variable is accessed 
 either from a manifest or from a template during a puppet agent run. 

 I'm wondering if it might be something to do with the agents not syncing 
 the hiera data store, perhaps? I'm new to hiera... 

 Cheers, 
 Jonathan 



 On 10/05/13 14:25, Jon Ward wrote: 
  Hi, 
  
  Have you tried doing the Hiera lookup on the command line to double 
  check it can be read? 
  
  $ hiera -d -c /path/to/hiera.yaml jrs_config_server1 fqdn=hostname 
  
  
  Cheers, 
  
  Jon 
  
  On Friday, May 10, 2013 12:18:22 PM UTC+1, Jonathan Gazeley wrote: 
  
  Hi, 
  
  I'm having a problem accessing Hiera data from within templates. 
  Yes, I 
  know this is not the recommended way to access Hiera data, but in 
  my use 
  case I think it will be easier overall. 
  
  In manifests, this code works: 
  
  { 
 ip = hiera('jrs_config_server1'), 
  } 
  
  In a template, part of the same module as the manifest, this does 
  not work: 
  
  ipaddr = %= scope.function_hiera([jrs_config_server1]) % 
  
  It fails with this error: 
  
  Could not find data item jrs_config_server1 in any Hiera data file 
  and 
  no default supplied 
  
  The value of  jrs_config_server1 is in Hiera, specific to the 
  fqdn of 
  the node. I'm struggling to see why it would not be working. Any 
  ideas? 
  
  Cheers, 
  Jonathan 
  
  -- 
  You received this message because you are subscribed to the Google 
  Groups Puppet Users group. 
  To unsubscribe from this group and stop receiving emails from it, send 
  an email to puppet-users...@googlegroups.com javascript:. 
  To post to this group, send email to 
  puppet...@googlegroups.comjavascript:. 

  Visit this group at http://groups.google.com/group/puppet-users?hl=en. 
  For more options, visit https://groups.google.com/groups/opt_out. 
  
  



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




Re: [Puppet Users] Can I exec a bash function?

2013-03-19 Thread Jon Stanley
On Tue, Mar 19, 2013 at 6:03 PM, Steffen Vulpius
steffen.vulp...@gmail.com wrote:

 I have a file foo.sh which is basically a library of various bash functions.
 Is there a way to execute these functions from puppet

Correct me if I'm wrong, but you have a file foo.sh, that defines a
bash function called bar, and you want to execute bar from inside a
puppet exec resource?

I don't think that as such is possible. One creative thing that you
might be able to do (I haven't tested this at all) is to make a bunch
of symlinks to foo.sh (bar, baz, whatever) for the functions in your
library, and in the main part, look at $0 to see what you should do.

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




[Puppet Users] Using $name in resources?

2013-02-28 Thread Jon Stanley
Using 2.6.17, I have something like this:

class yumrepos {
   yumrepo { ['a',
   'b']:
   descr=yum repo $name,
   baseurl=http://someurl/$name;;
 }
}

Instead of using the names 'a' and 'b', like I'd expect (so a baseurl
of http://someurl/a), it creates .repo files with those names, and
repos inside of them, but everywhere the name should get substituted,
it substitutes the name of the class instead. Any pointers in how to
make it substitute the name of the resource instead? I have about 20
repos to define, and would rather just do it this way.

I've tried making it a resource type default in the class, as well as
specifying at the end of the array, like above. Both yield the same
results. Am I being completely dense and missing something here?

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




[Puppet Users] Hiera always looks up class params, even if they are not hiera('vars')

2013-02-21 Thread Jon Ward
Hi,

I've been trying to debug my slow Puppet runs since using hiera-gpg 
(https://groups.google.com/d/topic/puppet-users/CRu_RolrX_8/discussion) and 
found some unexpected (by me) behaviour in hiera.

It seems that hiera does a lookup for any class parameters, even if they 
are not hiera functions.

e.g. say I have a class:

class hieratest($default_value=default) {
 file { /tmp/hieratest.txt:
 ensure = present,
 content = $default_value,
 }
 }


and in my nodes.pp I have

include hieratest


If I run puppetmaster in the foreground and do a 'puppet agent -t' I can 
see that hiera is looking through my entire hierarchy for 
hieratest::default_value. I would not expect hiera to do this unless I had 
put:

class hieratest($default_value=hiera('default_value', default)) { ... }


I noticed that if I include the 'default_value' var in my hiera common.yaml 
it is not found / used, however if I put 'hieratest::default_value' in then 
it is used. Is this the expected behaviour? If so is there any way to 
include a default parameter in a class without it doing a hiera lookup? 
This seems to have quite a major impact on my catalog compile time once I 
add the gpg backend.


Cheers,

Jon

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




[Puppet Users] Re: Hiera always looks up class params, even if they are not hiera('vars')

2013-02-21 Thread Jon Ward
Ah I missed that, thanks Craig.



On Thursday, February 21, 2013 12:43:12 PM UTC, Jon Ward wrote:

 Hi,

 I've been trying to debug my slow Puppet runs since using hiera-gpg (
 https://groups.google.com/d/topic/puppet-users/CRu_RolrX_8/discussion) 
 and found some unexpected (by me) behaviour in hiera.

 It seems that hiera does a lookup for any class parameters, even if they 
 are not hiera functions.

 e.g. say I have a class:

 class hieratest($default_value=default) {
 file { /tmp/hieratest.txt:
 ensure = present,
 content = $default_value,
 }
 }


 and in my nodes.pp I have

 include hieratest


 If I run puppetmaster in the foreground and do a 'puppet agent -t' I can 
 see that hiera is looking through my entire hierarchy for 
 hieratest::default_value. I would not expect hiera to do this unless I had 
 put:

 class hieratest($default_value=hiera('default_value', default)) { ... }


 I noticed that if I include the 'default_value' var in my hiera 
 common.yaml it is not found / used, however if I put 
 'hieratest::default_value' in then it is used. Is this the expected 
 behaviour? If so is there any way to include a default parameter in a class 
 without it doing a hiera lookup? This seems to have quite a major impact on 
 my catalog compile time once I add the gpg backend.


 Cheers,

 Jon



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




[Puppet Users] hiera-gpg causing big increase in catalog compile time

2013-02-20 Thread Jon Ward
Hi,

I've been using hiera for a little while and have started using the 
hiera-gpg back-end for passwords etc.

The problem is, I am seeing a massive increase in catalog compile time when 
using hiera-gpg. On one particular node where there is quite a lot going 
on, catalog compile time jumped from 5s to 90s. My typical compile times 
have gone from around 2s to around 30s.

I have the gpg backend listed underneath yaml in my hiera.yaml file, so 
from what I understand my .gpg config files should only be interrogated if 
no answer is found in the .yaml files. I only have half a dozen or so vars 
stored in the .gpg files.

By simply removing the gpg backend from hiera.yaml the compile times go 
back down to normal.

I'm using Puppet 3.1.0 installed from apt.puppetlabs.com on Debian Squeeze 
 hiera-gpg 1.1.0 installed from Rubygems.

Would appreciate any tips for debugging this problem, thanks in advance.

Jon

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




[Puppet Users] Re: Can Puppet interact with perl script user input fields?

2012-10-08 Thread Jon Skarpeteig
It was less then a dozen commands to setup. A bit longer than that
once put into puppet.

Is this code available anywhere?

On Oct 5, 12:55 pm, Steven Nemetz snem...@hotmail.com wrote:
 The centrify script may be thousands of lines, but it doesn't do that much. A 
 lot of it is for user interaction and multiple OS stuff. At my last company 
 we used centrify for authentication. It was less then a dozen commands to 
 setup. A bit longer than that once put into puppet.

 If you really want to interact with the script instead, Linux has programs 
 for doing this. There is no reason to duplicate this in the puppet core, when 
 this is not the recommended way of doing things. If the script is installing 
 things and puppet doesn't know about everything that is installed and 
 modified, it can't manage them. Goes against the primary design.

 Steven







  Date: Thu, 4 Oct 2012 23:55:55 -0700
  Subject: [Puppet Users] Re: Can Puppet interact with perl script user input 
  fields?
  From: jon.skarpet...@gmail.com
  To: puppet-users@googlegroups.com

  The script is several thousand lines of code. Definitely not easier
  than Guzman Braso's suggestion :-)

  Although I'm surprised that Puppet doesn't have any supported way of
  shell interaction with scripts?

  On Oct 5, 4:01 am, Peter Brown rendhal...@gmail.com wrote:
   It's probably easier in the long run to work out what that script does
   and replicate those settings in your samba puppet class.

   On 4 October 2012 19:34, Jon Skarpeteig jon.skarpet...@gmail.com wrote:

I'm trying to automate deployment of centrify-samba, which has a
adbindproxy.pl setup script attached. This script expects user input
(where 9 out of 10 options can be defaulted). Is there any way for
Puppet to preconfigure the inputs for this scripts, and mimic user
behavior by supplying this information?

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

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

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



[Puppet Users] Re: Can Puppet interact with perl script user input fields?

2012-10-05 Thread Jon Skarpeteig
The script is several thousand lines of code. Definitely not easier
than Guzman Braso's suggestion :-)

Although I'm surprised that Puppet doesn't have any supported way of
shell interaction with scripts?

On Oct 5, 4:01 am, Peter Brown rendhal...@gmail.com wrote:
 It's probably easier in the long run to work out what that script does
 and replicate those settings in your samba puppet class.

 On 4 October 2012 19:34, Jon Skarpeteig jon.skarpet...@gmail.com wrote:







  I'm trying to automate deployment of centrify-samba, which has a
  adbindproxy.pl setup script attached. This script expects user input
  (where 9 out of 10 options can be defaulted). Is there any way for
  Puppet to preconfigure the inputs for this scripts, and mimic user
  behavior by supplying this information?

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

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



[Puppet Users] Can Puppet interact with perl script user input fields?

2012-10-04 Thread Jon Skarpeteig
I'm trying to automate deployment of centrify-samba, which has a
adbindproxy.pl setup script attached. This script expects user input
(where 9 out of 10 options can be defaulted). Is there any way for
Puppet to preconfigure the inputs for this scripts, and mimic user
behavior by supplying this information?

-- 
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] Using Exported Resources in nginx loadbalancer conf

2012-09-25 Thread Jon Ward
Hi all,

I'm attempting to use exported resources to dynamically generate an nginx 
config file. What I'd like to do if have all my web servers export their 
hostname inside a file resource, and have these collected by my 
loadbalancer and used in the config file, restarting nginx if anything has 
changed.

There is an example of something very similar in Pro Puppet on pages 
145-146 using Apache. In the example the individual hostnames are gathered 
by apache inside the balancer block using an include statement, however it 
doesn't seem possible to do this in an upstream block in nginx.

So I think I need to somehow gather the hostnames into an array which I 
then use inside my conf file erb template to create the upstream server 
entries. My problem is how to do this. If I create a custom fact this will 
get evaluated before (I think) the resources are exported and gathered. If 
I use a custom function or some ruby inside the erb template that's 
evaluated on the master, not the agent. I do have a puppet agent running on 
the master server so I could collect the exported resources there and use a 
function, that's the best solution I can think of at the moment, just 
wondering if anyone else out there has had any success doing something like 
this?

Thanks,

Jon
 

-- 
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/-/aSxa1uTDCAcJ.
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] Using Exported Resources in nginx loadbalancer conf

2012-09-25 Thread Jon Ward
Hi Greg,

Yeah that's what I'd hoped - my balancer.conf.erb template had this:

upstream %= balancer_name %_balancer {
  include /etc/nginx/conf.d.upstream_servers/*.conf;
}

However when I try to start nginx I get:

Starting nginx: [emerg]: include directive is not allowed here

A bit of googling (e.g. 
http://stackoverflow.com/questions/4165116/can-include-directive-be-used-within-upstream-block-of-nginx)
 
seemed to suggest it's not possible.

On Tuesday, September 25, 2012 12:47:37 PM UTC+1, Greg Sutcliffe wrote:

 On 25 September 2012 12:03, Jon Ward jgh...@gmail.com javascript: 
 wrote: 
  Hi all, 
  
  I'm attempting to use exported resources to dynamically generate an 
 nginx 
  config file. What I'd like to do if have all my web servers export their 
  hostname inside a file resource, and have these collected by my 
 loadbalancer 
  and used in the config file, restarting nginx if anything has changed. 

 Nginx can do include directives, right? Can you do something like: 

 upstream 
 include conf.d/upstream/*.conf 
 /upstream 

 and then have each host export a file in 
 conf.d/upstream/$hostname.conf containing $hostname:$port (or whatever 
 is needed). 

 Not sure if that will work, my nginx is a little rusty... 


-- 
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/-/j8WLZrkYOSgJ.
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] Using Exported Resources in nginx loadbalancer conf

2012-09-25 Thread Jon Ward
Thanks Bill - looks like concat provides a potential solution, will give 
that a go.

Jon

On Tuesday, September 25, 2012 1:50:39 PM UTC+1, Bill Fraser wrote:

 Hi Jon, 

 I have seen something similar done with Puppet Labs' haproxy module: 

 https://github.com/puppetlabs/puppetlabs-haproxy 

 Essentially the balancer members export information about themselves 
 (hostname, port, listening service, etc) which is collected by a 
 balancer server. The configuration is then pieced together using the 
 concat module. 

 I believe that is what you are trying to accomplish here, and hopefully 
 you find it useful to see how it is done in another module. 

 Regards, 
 Bill 

 On 12-09-25 07:03 AM, Jon Ward wrote: 
  Hi all, 
  
  I'm attempting to use exported resources to dynamically generate an 
 nginx 
  config file. What I'd like to do if have all my web servers export their 
  hostname inside a file resource, and have these collected by my 
  loadbalancer and used in the config file, restarting nginx if anything 
 has 
  changed. 
  
  There is an example of something very similar in Pro Puppet on pages 
  145-146 using Apache. In the example the individual hostnames are 
 gathered 
  by apache inside the balancer block using an include statement, however 
 it 
  doesn't seem possible to do this in an upstream block in nginx. 
  
  So I think I need to somehow gather the hostnames into an array which I 
  then use inside my conf file erb template to create the upstream server 
  entries. My problem is how to do this. If I create a custom fact this 
 will 
  get evaluated before (I think) the resources are exported and gathered. 
 If 
  I use a custom function or some ruby inside the erb template that's 
  evaluated on the master, not the agent. I do have a puppet agent running 
 on 
  the master server so I could collect the exported resources there and 
 use a 
  function, that's the best solution I can think of at the moment, just 
  wondering if anyone else out there has had any success doing something 
 like 
  this? 
  
  Thanks, 
  
  Jon 

  



-- 
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/-/CI4CJG3-hBoJ.
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: hello world application

2012-09-25 Thread Jon Ward
Could you try changing your if statement to:

if $server_role =~ /app/

If that returns the result you want, it could be that you have an unwanted 
newline character at the end of your fact value. (If that's the case a 
little chomp in your fact code will sort you out.)

On Tuesday, September 25, 2012 2:47:18 PM UTC+1, tetlika wrote:

 P.S. 

 when I'm executing  puppet code: 

 case $server_role  { 
 'app':  { notice(server is app)  } 
 default: { notice(role is not set) } 
 } 


 I receive: 

 $ puppet apply manifests/init.pp 
 notice: Scope(Class[main]): role is not set 
 notice: Finished catalog run in 0.25 seconds 

 while I expect to get server is app 

 so, what is wrong here? 




 On 25 Вер, 16:25, tetlika tetl...@gmail.com wrote: 
  hi! 
  
  I have added custom fact server_role: 
  
  $ facter | grep server_role 
  server_role = app 
  
  than wrote a code: 
  
  if $server_role == app { 
  notice(Welcome) 
  
  } 
  
  when I'm executing this puppet code I got no notice, if I'm executing 
  just the code: 
  
   notice(Welcome) 
  
  everything's fine 
  
  what am I doing wrong? 
  
  thanks 


-- 
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/-/NJ4PKDDunlgJ.
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] Strange Behavior In Recursive File Transfer

2012-09-15 Thread Jon Forrest

I have the following resource definition:

class itbuilder
{
file
{
/home/itbuilder:
ensure  = directory,
recurse = true,
source  = puppet:///itbuilder/home/itbuilder,
require = User [itbuilder],
owner = itbuilder,
group = itbuilder,
ignore  = .svn;
}
}

In the modules/itbuilder/files/home/itbuilder directory I
have a whole bunch of files and directories. The directories
have protections like

drwxr-xr-x 4 jforrest jforrest4096 Sep 15 16:21 licensing
drwxr-xr-x 4 jforrest jforrest4096 Sep 15 16:21 login

However, when I run the class above, these directories are
created as

drwxr-sr-x 3 itbuilder itbuilder4096 Sep 15 17:48 licensing
drwxr-sr-x 3 itbuilder itbuilder4096 Sep 15 17:48 login

Note the setguid bit. I don't know where this is coming from.
The protection of the directory containing these files is

$ ls -ld .
drwxr-x--- 22 itbuilder itbuilder 4096 Sep 15 17:48 .

which is correct.

I can manually change the directory permission to 0755

$ chmod g-s l*
$ ls -ld l*
drwxr-xr-x 4 jforrest jforrest 4096 Sep 15 16:21 licensing
drwxr-xr-x 4 jforrest jforrest 4096 Sep 15 16:21 login

But when I run puppet again, the permissions are
set back to 02755. What is setting the setguid bit?
I don't understand this at all. I thought this might
be set by something in a higher scope but I couldn't find it.

Adding

File
{
mode  = 644,
}

to the class makes the problem go away but this really
isn't a solution.

Any ideas what might be causing this?

Cordially,
Jon Forrest




--
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] Node collecting its own exported resource

2012-09-14 Thread Jon McKenzie
I'm writing a module in which nodes export a concat::fragment, collect all 
other nodes' analogous resource, and populate a config file (in this case, 
the krb5.conf for MIT Kerberos).

It seems that nodes are not able to collect their own resource, but they 
can collect every other resource, with a given tag. I've validated that all 
of the appropriate resources exist 
in the storeconfigs database.

I've been doing some searching, and have read some things that suggest 
there might be a regression in this area, but I haven't found anything 
definitive.

I know the documentation states that nodes can in fact collect their own 
exported resources, but I haven't been able to get this working.

I've also tried it with just a plain file resource (rather than a 
concat::fragment), e.g. inside a given class:

   @@file { /tmp/export-${::fqdn}: 
  tag = testexport,
   }
   File | tag == testexport |

This also produces the same behavior.

Thanks!

-- 
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/-/huzwZYKfZs4J.
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: Could not render to pson: undefined method 'merge' for []:Array

2012-09-09 Thread Jon McKenzie
I'm having this issue as well, with a nearly identical stack trace (I'm 
running on RHEL, however).

Anyone have any ideas?

I stuck some debugs inside my provider methods, but they don't ever seem to 
get executed.

On Wednesday, July 11, 2012 4:08:42 PM UTC-4, Micah Martin wrote:

 This ones got me absolutely scratching my head. I'm trying to created a 
 custom type for managing couchbase. It may not be the right approach but 
 I'm a total noob and I'm trying to figure this thing out. Here's what I 
 have:

 */Puppet/manifests/site.pp*

 node 'qamachine' {

 include webserver

 }



 */Puppet/modules/webserver/init.pp*

 class webserver {

 couchbase { 'test': }

 }


 */Puppet/modules/couchbase/lib/puppet/type/couchbase.rb*

 Puppet::Type.newtype(:couchbase) do

  newparam(:name) do

 isnamevar

 end

 end


 */Puppet/modules/couchbase/lib/puppet/provider/couchbase/couchbase.rb*

 Puppet::Type.type(:couchbase).provide(:couchbase) do



 end



 When I try to update the machine this is what I get:

 info: Loading downloaded plugin 
 C:/ProgramData/PuppetLabs/puppet/var/lib/puppet/type/couchbase.rb
 info: Loading downloaded plugin 
 C:/ProgramData/PuppetLabs/puppet/var/lib/puppet/provider/couchbase/couchbase.rb
 debug: Reloading couchbase couchbase provider
 debug: catalog supports formats: b64_zlib_yaml dot pson raw yaml; using 
 pson
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/indirector/rest.rb:56:in `deserialize'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/indirector/rest.rb:120:in `find'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/indirector/indirection.rb:196:in `find'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/configurer.rb:240:in `retrieve_new_catalog'
 C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/util.rb:490:in 
 `thinmark'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/sys/ruby/lib/ruby/1.8/benchmark.rb:308:in `realtime'
 C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/util.rb:489:in 
 `thinmark'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/configurer.rb:239:in `retrieve_new_catalog'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/configurer.rb:86:in `retrieve_catalog'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/configurer.rb:112:in 
 `retrieve_and_apply_catalog'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/configurer.rb:152:in `run'
 C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/agent.rb:43:in 
 `run'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/agent/locker.rb:21:in `lock'
 C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/agent.rb:43:in 
 `run'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/sys/ruby/lib/ruby/1.8/sync.rb:230:in `synchronize'
 C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/agent.rb:43:in 
 `run'
 C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/agent.rb:95:in 
 `with_client'
 C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/agent.rb:41:in 
 `run'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/application.rb:172:in `call'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/application.rb:172:in `controlled_run'
 C:/Program Files (x86)/Puppet Labs/Puppet/puppet/lib/puppet/agent.rb:39:in 
 `run'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/application/agent.rb:337:in `onetime'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/application/agent.rb:311:in `run_command'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/application.rb:309:in `run'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/application.rb:416:in `hook'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/application.rb:309:in `run'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/application.rb:407:in `exit_on_fail'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/application.rb:309:in `run'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/util/command_line.rb:69:in `execute'
 C:/Program Files (x86)/Puppet Labs/Puppet/puppet/bin/puppet:4
 err: Could not retrieve catalog from remote server: Error 400 on SERVER: 
 Could not render to pson: undefined method `mer
 ge' for []:Array

 when I remove the call to couchbase in the init.pp file it works fine. 


-- 
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/-/5nFH3c0T45oJ.
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: Could not render to pson: undefined method 'merge' for []:Array

2012-09-09 Thread Jon McKenzie
I restarted my puppetmaster and this seemed to resolve the issue. Very 
strange message, though. I suppose if I've defined a new type, but haven't 
restarted puppetmaster it throws a message like this? I will need to test 
that though

On Sunday, September 9, 2012 4:16:53 PM UTC-4, Jon McKenzie wrote:

 I'm having this issue as well, with a nearly identical stack trace (I'm 
 running on RHEL, however).

 Anyone have any ideas?

 I stuck some debugs inside my provider methods, but they don't ever seem 
 to get executed.

 On Wednesday, July 11, 2012 4:08:42 PM UTC-4, Micah Martin wrote:

 This ones got me absolutely scratching my head. I'm trying to created a 
 custom type for managing couchbase. It may not be the right approach but 
 I'm a total noob and I'm trying to figure this thing out. Here's what I 
 have:

 */Puppet/manifests/site.pp*

 node 'qamachine' {

 include webserver

 }



 */Puppet/modules/webserver/init.pp*

 class webserver {

 couchbase { 'test': }

 }


 */Puppet/modules/couchbase/lib/puppet/type/couchbase.rb*

 Puppet::Type.newtype(:couchbase) do

  newparam(:name) do

 isnamevar

 end

 end


 */Puppet/modules/couchbase/lib/puppet/provider/couchbase/couchbase.rb*

 Puppet::Type.type(:couchbase).provide(:couchbase) do



 end



 When I try to update the machine this is what I get:

 info: Loading downloaded plugin 
 C:/ProgramData/PuppetLabs/puppet/var/lib/puppet/type/couchbase.rb
 info: Loading downloaded plugin 
 C:/ProgramData/PuppetLabs/puppet/var/lib/puppet/provider/couchbase/couchbase.rb
 debug: Reloading couchbase couchbase provider
 debug: catalog supports formats: b64_zlib_yaml dot pson raw yaml; using 
 pson
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/indirector/rest.rb:56:in `deserialize'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/indirector/rest.rb:120:in `find'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/indirector/indirection.rb:196:in `find'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/configurer.rb:240:in `retrieve_new_catalog'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/util.rb:490:in `thinmark'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/sys/ruby/lib/ruby/1.8/benchmark.rb:308:in `realtime'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/util.rb:489:in `thinmark'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/configurer.rb:239:in `retrieve_new_catalog'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/configurer.rb:86:in `retrieve_catalog'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/configurer.rb:112:in 
 `retrieve_and_apply_catalog'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/configurer.rb:152:in `run'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/agent.rb:43:in `run'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/agent/locker.rb:21:in `lock'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/agent.rb:43:in `run'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/sys/ruby/lib/ruby/1.8/sync.rb:230:in `synchronize'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/agent.rb:43:in `run'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/agent.rb:95:in `with_client'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/agent.rb:41:in `run'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/application.rb:172:in `call'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/application.rb:172:in `controlled_run'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/agent.rb:39:in `run'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/application/agent.rb:337:in `onetime'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/application/agent.rb:311:in `run_command'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/application.rb:309:in `run'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/application.rb:416:in `hook'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/application.rb:309:in `run'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/application.rb:407:in `exit_on_fail'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/application.rb:309:in `run'
 C:/Program Files (x86)/Puppet 
 Labs/Puppet/puppet/lib/puppet/util/command_line.rb:69:in `execute'
 C:/Program Files (x86)/Puppet Labs/Puppet/puppet/bin/puppet:4
 err: Could not retrieve catalog from remote server: Error 400 on SERVER: 
 Could not render to pson: undefined method `mer
 ge' for []:Array

 when I remove the call to couchbase in the init.pp file it works fine. 



-- 
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/-/aD2AXUCkWhMJ.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe

Re: [Puppet Users] Question: Custom puppet type for semanage, converting inputs to flags?

2012-09-09 Thread Jon McKenzie
Hi Dan, 

Thanks for the input. If I were to implement this in the provider, what 
would be the proper way to do that? Is there a validation/conversion hook I 
can override?

On Sunday, September 9, 2012 1:55:17 PM UTC-4, Dan Bode wrote:



 On Sun, Sep 9, 2012 at 10:46 AM, Jon McKenzie jcm...@gmail.comjavascript:
  wrote:

 Hi,

 I'm just trying to get an idea about the best way to implement this:

 I want a type that uses the 'semanage' binary to manage targeted policy 
 (in this case for files).

 So for example to create a targeted policy, I might do something like:

 semanage fcontext -a -f -d -t some_domain_t /path/to/files(/.*)?

 ... which would add a target policy that sets 'some_domain_t' on all 
 directories in /path/to/files/

 The question I have is about the -d, which is a parameter to -f, that 
 directs policy to only cover directories (e.g. -d is for directories,  
 -- is for regular files, -s is for sockets, etc. -- see the help for 
 semanage for the rest).

 I want a property called :filetype that can have a value of :file, 
 :directory, :all, :socket, :character, :block, etc. Once I get valid input, 
 I want to convert the value to the appropriate flag for the command. What's 
 the best way to do this?

 My current idea is to accept any input, and then have a case switch 
 inside of a munge block, e.g.:

 munge do |value|
   case value
   when file
 value = --
   when directory
 value = -d
   ... etc..
   end
 end

 Is this the correct way to implement this?


 The syntax here looks correct. You may also want to use newvalues to 
 restrict the values that are allowed.
  

 Should this even be in the type definition (since these are details of 
 the provider)?


 That is a really good point. It would be more consistent with the model if 
 this munging was done in the provider. Of coarse in only really 'matters' 
 if you think the type will have multiple providers.
  


 Thanks for your help,
 Jon

 -- 
 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/-/1PVDZB_Cw2QJ.
 To post to this group, send email to puppet...@googlegroups.comjavascript:
 .
 To unsubscribe from this group, send email to 
 puppet-users...@googlegroups.com javascript:.
 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 view this discussion on the web visit 
https://groups.google.com/d/msg/puppet-users/-/5nVGbDoO7bAJ.
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: Manually creating class resource in site.pp works, calling same class from ENC silently fails

2012-08-24 Thread Jon McKenzie
I altered my ENC script to get rid of the {} on empty params, and instead 
follow what's prescribed in the documentation. Still no good.

Also, if I run the puppet node command you gave me on the master, the 
classes appear correct. When I run 'puppet --test --noop' on the client, 
though, it still is only getting a subset of the defined ENC classes.

I've tried stopping and restarting the web server as well, which doesn't 
appear to have any effect.

I'm not sure what's going on

On Thursday, August 23, 2012 8:37:24 PM UTC-4, Jon McKenzie wrote:


 It should be:

 ---
 classes: 
   foobar: 


  
 I thought the {} might be the issue too, however that* is* valid YAML (my 
 ENC is a ruby script that just calls .to_yaml on a constructed hash). If 
 that's indeed the issue, I think
 that should probably be considered a bug. I think whatever's taking the 
 output of the ENC should not get confused between a nil and an empty hash 
 (what happened to duck typing? :-))

 I will try it tomorrow. However if I remember correctly (I was bogged down 
 with other things yesterday as well), I did try passing dummy parameters 
 too, e.g.

 ---
 classes:
   foobar:
  foo: bar

 ... and this also did not work.

 And thanks for the puppet node command! I did not know about that. I'll 
 give that a go as well

 On Thursday, August 23, 2012 7:40:46 PM UTC-4, Nick Fagerlund wrote:

 Oh wait, also!

 On Thursday, August 23, 2012 1:12:03 PM UTC-7, Jon McKenzie wrote:


 Is there a way on the server side to validate the ENC - class 
 transformation for clients? I can see in the logs when the ENC script gets 
 run, but there's not much other detail



 Yeah, get the node object at the command line on your puppet master.

 $ sudo puppet node find screech.magpie.lan --mode master --render-as yaml

 ...where  screech.magpie.lan is the node name. It'll have a 'classes' key 
 which will be either an array or a hash depending on how your ENC was 
 rigged. 



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



  1   2   >