[Puppet Users] Passing exe switches on Windows

2014-12-10 Thread cko
Hi,

I'm trying to get the following manifest to work on a Windows Server 2008R2 
node:

*package { 'signotec WinUSB':*
* ensure   = '1.0.4',*
* source   = E:/signotec_WinUSB_1.0.4_64Bit.exe,*
* install_options  = ['/S', '/vn'],*
*}*

Running 'puppet agent -t --debug' shows that the following command is 
executed:

*Debug: Executing 'cmd.exe /c start puppet-install /w 
E:\signotec_WinUSB_1.0.4_64Bit.exe /S /vn'*

About a second later, the MSI help pops up ( http://i.imgur.com/PpW5zVB.png 
).

When i manually run the command *E:\signotec_WinUSB_1.0.4_64Bit.exe /S 
/vn* the package Installation works as expected.

Note that the /S /vn switches are mandatory with this particular package to 
perform a silent installation.


What Puppet actually does is probably something like this:

*msiexec.exe /qn /norestart /i E:/signotec_WinUSB_1.0.4_64Bit.exe /S /vn*


Which fails because the past two parameters are not supported my msiexec.



Any ideas how to work around this issue?

-- 
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/625500ec-db79-4564-ae25-883747c7ae54%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Client self-deregistration from PuppetDB

2014-12-10 Thread Ryan Anderson
You could try a hack like having the system going away call a cgi on the puppet 
master (via wget) that in-turn does the 'puppet node deactivate' command.

-- 
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/b4794db5-1544-4d67-a307-ad7a547d53b3%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Installing puppet on OSX

2014-12-10 Thread Felix Frank
Hi,

is this a new thread? Are you referring to some earlier post that I missed?

If you are just inquiring about the error - that trace you shared is
likely inconclusive. The most important part is the very top.

Thanks,
Felix

On 12/08/2014 03:51 AM, Mauricio Tavares wrote:
 Do you use the .dmg from puppetlabs or, as suggested in
 https://ask.puppetlabs.com/question/67/unable-to-run-puppet-on-osx-mountain-lion/,
 do
 
 gem install puppet
 
 Reason I ask is that I installed puppet in a 10.8 box and when I looked
 in the puppet error log file, I saw
 
 from
 /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in
 `require'
 from /Library/Ruby/Site/puppet/parser/parser.rb:11
 from
 /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in
 `gem_original_require'
 from
 /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in
 `require'
 
 which makes me think it is having issues finding the right paths in ruby.

-- 
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/54883E2A.2000407%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] compare two variables via regex

2014-12-10 Thread Felix Frank
On 12/06/2014 01:43 AM, Ramin K wrote:
 On 12/5/14 3:16 PM, Lori Cho wrote:
 I have two variables and I want to compare them to each other.  However,
 the regex doesn't return true, because it seems to treat the variable in
 the // as a literal.

 Something like this:

 $variable1 = 'foo'
 $variable2 = 'foobar'

 if($variable2 =~ /$variable1/) {
  notify {it works:}
 } else {
  notify {regex did not work:}
 }

 root@test-slincsplunk1101r(~)# puppet apply /srv/tmp/test.pp
 notice: regex did not work
 notice: /Stage[main]//Notify[regex did not work]/message: defined
 'message' as 'regex did not work'


 How can I do this?
 
 The docs say it's not available.
 https://docs.puppetlabs.com/puppet/latest/reference/lang_datatypes.html#regular-expressions
 
 
 Alternate forms of regex quoting are not allowed and Ruby-style
 variable interpolation is not available.
 
 Ramin
 
 

As a workaround, you can resort to a custom function, or even
inline_template.

Please note that this is horrible and should likely not be used in real
life. Consider it a last ditch.

if inline_template('%= @variable2 =~ /#{@variable1}/ %') == 'true' { }

Be aware that inline_template carries a compiler performance penalty.
And don't use this particular example at all ;-)

Felix

-- 
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/54884095.20908%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Styling parameter and variable types

2014-12-10 Thread Daniele Sluijters
With the future parser we can now add type annotations to a whole bunch of 
things. Usually it's pretty easy, just chuck the type in front of the 
variable and you're done. But what if you have multiple variables or class 
parameters beneath each other, do we align them, how do we align them, and 
what about more complex type definitions?

An example:

class test (
  String $param1,
  String $param2,
  Integer $param3,
  Variant[String, Integer] $param4 = 80,
  Struct[{ a = Enum[hi, there, everyone], b = Optional[Variant[Enum[yo, 
lo], Integer[2]]]}] $param5 = { a = 'hi', },
) {}

So do we style it like so: align based on starting token of required and 
option parameters

class test (
  String  $param1,
  String  $param2,
  Integer $param3,
  Variant[String, Integer] 
   $param4 = 80,
  Struct[{ a = Enum[hi, there, everyone], b = Optional[Variant[Enum[yo, 
lo], Integer[2]]]}] $param5 = { a = 'hi', },
) {}

Or do we take it one step further and align everything:

class test (
  String   
   $param1,
  String   
   $param2,
  Integer   
  $param3,
  Variant[String, Integer] 
   $param4 = 80,
  Struct[{ a = Enum[hi, there, everyone], b = Optional[Variant[Enum[yo, 
lo], Integer[2]]]}] $param5 = { a = 'hi', },
) {}

Should we break up complex type definitions:

class test (
  String   $param1,
  String   $param2,
  Integer  $param3,
  Variant[String, Integer] $param4 = 80,
  Struct[{
a = Enum[hi, there, everyone]
b = Optional[Variant[
Enum[yo, lo],
Integer[2]]]
  }]   $param5 = { a = 'hi', },
) {}

I like this last one best. It limits the length of the line and by 
splitting up the type definition according to the type we're defining (a 
hash) it becomes fairly easy for a human to parse. But then, should the 
Variant after the Optional be on a new line already or only the arguments 
to Variant since that one can take multiples (like in the way you'd break 
up an array over multiple lines) etc. etc. etc. I'm still not entirely 
happy about all the white spacing between the type and the actual variable 
name but I do like the columnar view it creates.

Eventually we'll be able to create/alias our own types which should limit 
the amount of crazy before a variable or parameter definition but until 
then, what do we do? And once we have the ability to create/alias our own 
types, how do we style those?

We don't have to agree on a it must be done exactly this anal way but a 
loose consensus about what it could look like would be useful.

-- 
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/d698039a-6212-4454-a491-bcfaa8a0c360%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Re: Client self-deregistration from PuppetDB

2014-12-10 Thread Daniele Sluijters
There's no need for CGI magic through the Puppet Master, you can talk to 
PuppetDB directly. See the PuppetDB API 
documentation: 
https://docs.puppetlabs.com/puppetdb/latest/api/commands.html#examples-using-curl

On Wednesday, 10 December 2014 13:01:34 UTC+1, Ryan Anderson wrote:

 You could try a hack like having the system going away call a cgi on the 
 puppet master (via wget) that in-turn does the 'puppet node deactivate' 
 command.

-- 
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/38d9be77-5007-43c2-8324-e6d73e7041ad%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Re: what gets run when a client can't connect?

2014-12-10 Thread jcbollinger


On Tuesday, December 9, 2014 4:05:19 PM UTC-6, JonY wrote:

 Situation: client insists on ability to use a 3G modem to connect to AWS 
 servers (including puppet). I need a way to ensure that the 'wvdial' 
 process is running. It will lose the carrier and hang-up at times so I 
 wrote a piece of bash that (re)starts it from puppet.. but you see the 
 problem - if wvdial isn't running then the puppet agent will fail so the 
 exec script won't get run.

 Is there a way around this? Or do i need to use a cron to fix this?


During the catalog run is too late.  You need the network connection 
available before the catalog request is made, so that a new catalog can be 
retrieved -- not so much to get wvdial running but to ensure that you get 
an up-to-date catalog.  Otherwise, you might *never* get a fresh catalog.

A task scheduler such as cron is a good way to ensure wvdial is running.  
As long as you're doing that, you might as well use the same scheduler, and 
even the same job, to run the agent.  There are considerable advantages to 
running the agent via an external scheduler instead of as a daemon.


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/c23eb13a-3c56-447e-955b-1c7e7c545e6b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Re: puppet turning a file into a directory

2014-12-10 Thread jcbollinger


On Tuesday, December 9, 2014 3:04:39 PM UTC-6, chris smith wrote:

 Just posting a follow up. 

 On 04/12/14 01:31, jcbollinger wrote: 
  Or if you have multiple environments defined, and for some reason the 
  affected server is occasionally assigned to the wrong one, then you 
  might get a different declaration.  There are many other possibilities. 

 This was the case. I had other environments where it was declared as 
 just 'present' rather than 'file' and it was switching to one of those. 
 Since I've updated the other environments, it hasn't happened again. 

 Thanks for the help and ideas. 



Thanks for the followup.

This is still strange, however: ensuring 'present' should never modify a 
file or directory that is in fact initially present.  It certainly should 
not convert a file to a directory, for if neither file nor directory nor 
symlink is initially present, then ensuring 'present' creates an empty 
*file*.  In any case, I'm glad the issue is resolved.


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/2795d824-ceb0-4fa9-98ee-387b98af3c37%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] problem with windows client

2014-12-10 Thread Gianmarco Carrieri
Hi all,

sorry if this is a repost, i need to use a windows env in the configuration 
of puppet.

this is a piece of my conf:

file { Mozilla:
ensure = directory,
recurse = true,
path = %appdata%,
purge = true,
force = true,
source = puppet:///modules/winpc/Firefox_Profiles,
 #   source_permissions = 'ignore'
}

how i can use the env variable %appdata%

thanks in advance and sorry for my english. :)

-- 
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/3530a4eb-8277-4841-97ac-16dcdfb1d4ac%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Re: Module/Class ordering with contain()

2014-12-10 Thread jcbollinger


On Tuesday, December 9, 2014 11:06:14 AM UTC-6, lupin...@gmail.com wrote:

 Hi,

 The initial error was a typo, but the Order of execution of class is not 
 being achieve, is this possible?



Whatever behavior you observe is evidently possible, because you observe 
it.  Whether it is consistent with the manifest fragments you presented is 
cannot be judged without knowing at least what that order actually is.


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/dfdb11a9-bb0b-4179-a09e-ac0c9f09d311%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Puppet rendered system unusable because of following a dependency tree removing an RPM

2014-12-10 Thread jcbollinger


On Tuesday, December 9, 2014 8:14:03 AM UTC-6, Felix.Frank wrote:

 On 12/01/2014 11:11 PM, Clay Stuckey wrote: 
  I wrote two manifests for RHEL systems. One removed syslog. The other 
  installed rsyslog. The syslog removal followed a tragic dependency tree 
  removing RPMs such as coreutils, rpm, yum and pam. Once the servers 
  rebooted, they were left in an unusable state. I had to boot in rescue 
  mode, manually install files to get RPM going and reinstall about 300 
  RPMs that were removed. 
  
  Is there some way to blacklist the removal of certain critical RPMs that 
  might be found in a dependency tree? 

 Perhaps you could have avoided the kerfluffle by 
  - doing the replacing of syslog by rsyslog in the same manifest and 
  - making sure that the syslog package requires the rsyslog package 

 ...so that hopefully the system retains a syslog providing package. 

 This is all very theoretical - I'm not versed in RHEL operation at all. 
 This approach might also not be viable to you, for reasons that are 
 outside the scope of your request. 



I, on the other hand, am fairly well versed in RHEL-family operation 
(though mainly CentOS rather than RHEL itself).  At least in version 6.5 of 
the OS, the rsyslog package provides 'syslog' (as indeed it must to serve 
as a substitute for that package).  It should be possible to install 
rsyslog without first removing syslog, and while both are installed it 
should be possible to remove syslog without removing syslog dependencies 
(but only via ensure = absent, which uses the 'rpm' command; the 'yum 
--remove' issued with ensure = 'purged' will try to remove rsyslog, too).

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/ba4035ab-ce45-40e9-9595-ebd738f72722%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] augeas failure - any ideas?

2014-12-10 Thread James Green
  augeas { 'postfix-master-smtp-inet' :
context = /files/etc/postfix/master.cf,
changes = [
  set smtp[type = inet]/private n,
  set smtp[type = inet]/unprivileged -,
  set smtp[type = inet]/chroot n,
  set smtp[type = inet]/wakeup -,
  set smtp[type = inet]/limit 10,
  'set smtp[type = inet]/command smtpd -o
content_filter=smtptorestgw:dummy',
],
require = Package['postfix'],
notify  = Service['postfix'],
  }

On the server:

Debug: Augeas[postfix-master-smtp-inet](provider=augeas): Opening augeas
with root /, lens path , flags 32
Debug: Augeas[postfix-master-smtp-inet](provider=augeas): Augeas version
1.2.0 is installed
Debug: Augeas[postfix-master-smtp-inet](provider=augeas): Will attempt to
save and only run if files changed
Debug: Augeas[postfix-master-smtp-inet](provider=augeas): sending command
'set' with params [/files/etc/postfix/master.cf/smtp[type =
inet]/private, n]
Debug: Augeas[postfix-master-smtp-inet](provider=augeas): sending command
'set' with params [/files/etc/postfix/master.cf/smtp[type =
inet]/unprivileged, -]
Debug: Augeas[postfix-master-smtp-inet](provider=augeas): sending command
'set' with params [/files/etc/postfix/master.cf/smtp[type = inet]/chroot,
n]
Debug: Augeas[postfix-master-smtp-inet](provider=augeas): sending command
'set' with params [/files/etc/postfix/master.cf/smtp[type = inet]/wakeup,
-]
Debug: Augeas[postfix-master-smtp-inet](provider=augeas): sending command
'set' with params [/files/etc/postfix/master.cf/smtp[type = inet]/limit,
10]
Debug: Augeas[postfix-master-smtp-inet](provider=augeas): sending command
'set' with params [/files/etc/postfix/master.cf/smtp[type =
inet]/command, smtpd -o content_filter=smtptorestgw:dummy]
Debug: Augeas[postfix-master-smtp-inet](provider=augeas): Put failed on one
or more files, output from /augeas//error:
Debug: Augeas[postfix-master-smtp-inet](provider=augeas):
/augeas/files/etc/postfix/master.cf/error = put_failed
Debug: Augeas[postfix-master-smtp-inet](provider=augeas):
/augeas/files/etc/postfix/master.cf/error/path = /files/etc/postfix/
master.cf/smtp
Debug: Augeas[postfix-master-smtp-inet](provider=augeas):
/augeas/files/etc/postfix/master.cf/error/lens =
/usr/share/augeas/lenses/dist/postfix_master.aug:39.18-47.21:
Debug: Augeas[postfix-master-smtp-inet](provider=augeas):
/augeas/files/etc/postfix/master.cf/error/message = Failed to match
{ /type/ = /inet|unix|fifo|pass/ }{ /private/ = /y|n|-/ }{
/unprivileged/ = /y|n|-/ }{ /chroot/ = /y|n|-/ }{ /wakeup/ =
/([0-9]+|-)\\??/ }{ /limit/ = /([0-9]+|-)\\??/ }{ /command/ =
/[!$,-.0-:=@-Z_a-{}]([!$,-.0-:=@-Z_a-{}]|[]\/[]|
)*([!$,-.0-:=@-Z_a-{}]|[]\/[])([\t ]*\n[\t
]+[!$,-.0-:=@-Z_a-{}]([!$,-.0-:=@-Z_a-{}]|[]\/[]|
)*([!$,-.0-:=@-Z_a-{}]|[]\/[]))*/ }
  with tree
{ private = n }
Debug: Augeas[postfix-master-smtp-inet](provider=augeas): Closed the augeas
connection
Error: /Stage[main]/custom_postfix::Sasl/Augeas[postfix-master-smtp-inet]:
Could not evaluate: Saving failed, see debug

Any ideas?

Thanks,

James

-- 
You received this message because you are subscribed to the Google Groups 
Puppet Users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to puppet-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/CAMH6%2BayVPziXijP1A67rubah_iE-ryski6RF8Er3z4QfD2FR0w%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Re: Module/Class ordering with contain()

2014-12-10 Thread Mark Rosedale
I generally don't use includes. I do class declarations. If you need to 
order classes within a module I tend to use the before or require and 
subscribe for ordering. So for instance for module foo if I need class 
first to run first and two to run second I could do either of the 
following. 

class foo {
  class {'first':
before = Class['two']
  }
  class {'two':}
}

Or 
class foo {
  class {'first':  }
  class {'two':
require = Class['first']
  }  
}

Require is good if you had say a config class that requires a package be 
installed first. If you need a module to run before a second module I'll 
typically chaining (and note you could just as easily do this inside your 
init file for class ordering within a module)

class runafter {
  Class['runbefore'] - Class['runafter']
  class {'foo': }
  class {'bar': }
}

In this case module runbefore will be run before module runafter. Note that 
this assumes that you declare these modules to the node as class 
declarations (ie node foo { class {'runbefore': } }. Also note that now 
runafter depends upon runbefore. IOW if you fail to declare runbefore then 
your catalog will fail to compile if you use runafter. And the first 
example declared with this latter method would look like this. 

class foo {
  Class['first']-Class['two']
  class {'first':  }
  class {'two': }
}

Again I don't use the includes so I don't know how that changes the 
equation, but you can do most, if not all, of your ordering with either of 
these two methods. For more information check out this link 
https://docs.puppetlabs.com/learning/ordering.html.  And just to throw it 
out there if you have a module that needs to be run before all other 
modules (like a yum module or apt module) you can set run stages 
https://docs.puppetlabs.com/puppet/latest/reference/lang_run_stages.html, 
but avoid this for all but the broadest of cases like the ones already 
mentioned. 

On Tuesday, December 9, 2014 12:06:14 PM UTC-5, lupin...@gmail.com wrote:

 Hi,

 The initial error was a typo, but the Order of execution of class is not 
 being achieve, is this possible?

 Cheers

 On Tuesday, December 9, 2014 9:22:35 PM UTC+13, lupin...@gmail.com wrote:


 Hi,

  I'm struggling with Ordering/Relationship between modules classes, I 
 used this as my guide http://puppetlabs.com/blog/class-containment-puppet 
 but somehow still can't make it work correctly.

 So I have

 tail  ../../role/manifests/lbserver.pp 
 class role::lbserver {

   include profile::model
   include profile::data
   include profile::modadp
   Class['::profile::model'   ] -
   Class['::profile::data'] -
   Class['::profile::modadp']
 }


 root@puppet-m:/etc/puppetlabs/puppet/environments/development/modules/profile/manifests#
  
 cat model.pp 
 class profile::model {
   contain '::spss_model' 
 }
 root@puppet-m:/etc/puppetlabs/puppet/environments/development/modules/profile/manifests#
  
 cat data.pp 
 class profile::data {
   contain '::mod_data'
 }
 root@puppet-m:/etc/puppetlabs/puppet/environments/development/modules/profile/manifests#
  
 cat model.pp 
 class profile::model {
   contain '::mod_model' 
 }
 root@puppet-m:/etc/puppetlabs/puppet/environments/development/modules/profile/manifests#
  
 cat modadp.pp 
 class profile::modadp {
   contain '::mod_modadp'
 }
 I received the following error.

 Error: Could not retrieve catalog from remote server: Error 400 on 
 SERVER: Could not find class ::mod_modadp for node x.x.x.x

 Thanks in advance.



-- 
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/4079fac5-865b-4bd4-87ad-1117d40724da%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Re: Module/Class ordering with contain()

2014-12-10 Thread Felix Frank
On 12/10/2014 04:17 PM, Mark Rosedale wrote:
 class foo {
   Class['first']-Class['two']
   class {'first':  }
   class {'two': }
 }

Well, this should generally be avoided. It deprives you of the ability
to declare either 'first' or 'two' anywhere else in the manifest.

include really is the better option.

As for contain, that is indeed necessary. The ordering you present will
work for resources that are declared in the body of 'first' and 'two',
but not transcend to classes that either of them declares in turn
(*unless* this is done using contain).

Hope that clears things up a little.

Cheers,
Felix

-- 
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/548866BE.7050302%40alumni.tu-berlin.de.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Re: augeas failure - any ideas?

2014-12-10 Thread James Green
It's because the file doesn't yet have an uncommented smtp line. It seems
augeas cannot uncomment the line or put a new one in. I am therefore unsure
how augeas can be used to ensure the line exists.

Do people have to work around this by supplying template fragments or
something?

On 10 December 2014 at 14:59, James Green james.mk.gr...@gmail.com wrote:

   augeas { 'postfix-master-smtp-inet' :
 context = /files/etc/postfix/master.cf,
 changes = [
   set smtp[type = inet]/private n,
   set smtp[type = inet]/unprivileged -,
   set smtp[type = inet]/chroot n,
   set smtp[type = inet]/wakeup -,
   set smtp[type = inet]/limit 10,
   'set smtp[type = inet]/command smtpd -o
 content_filter=smtptorestgw:dummy',
 ],
 require = Package['postfix'],
 notify  = Service['postfix'],
   }

 On the server:

 Debug: Augeas[postfix-master-smtp-inet](provider=augeas): Opening augeas
 with root /, lens path , flags 32
 Debug: Augeas[postfix-master-smtp-inet](provider=augeas): Augeas version
 1.2.0 is installed
 Debug: Augeas[postfix-master-smtp-inet](provider=augeas): Will attempt to
 save and only run if files changed
 Debug: Augeas[postfix-master-smtp-inet](provider=augeas): sending command
 'set' with params [/files/etc/postfix/master.cf/smtp[type
 http://master.cf/smtp%5Btype = inet]/private, n]
 Debug: Augeas[postfix-master-smtp-inet](provider=augeas): sending command
 'set' with params [/files/etc/postfix/master.cf/smtp[type
 http://master.cf/smtp%5Btype = inet]/unprivileged, -]
 Debug: Augeas[postfix-master-smtp-inet](provider=augeas): sending command
 'set' with params [/files/etc/postfix/master.cf/smtp[type
 http://master.cf/smtp%5Btype = inet]/chroot, n]
 Debug: Augeas[postfix-master-smtp-inet](provider=augeas): sending command
 'set' with params [/files/etc/postfix/master.cf/smtp[type
 http://master.cf/smtp%5Btype = inet]/wakeup, -]
 Debug: Augeas[postfix-master-smtp-inet](provider=augeas): sending command
 'set' with params [/files/etc/postfix/master.cf/smtp[type
 http://master.cf/smtp%5Btype = inet]/limit, 10]
 Debug: Augeas[postfix-master-smtp-inet](provider=augeas): sending command
 'set' with params [/files/etc/postfix/master.cf/smtp[type
 http://master.cf/smtp%5Btype = inet]/command, smtpd -o
 content_filter=smtptorestgw:dummy]
 Debug: Augeas[postfix-master-smtp-inet](provider=augeas): Put failed on
 one or more files, output from /augeas//error:
 Debug: Augeas[postfix-master-smtp-inet](provider=augeas):
 /augeas/files/etc/postfix/master.cf/error = put_failed
 Debug: Augeas[postfix-master-smtp-inet](provider=augeas):
 /augeas/files/etc/postfix/master.cf/error/path = /files/etc/postfix/
 master.cf/smtp
 Debug: Augeas[postfix-master-smtp-inet](provider=augeas):
 /augeas/files/etc/postfix/master.cf/error/lens =
 /usr/share/augeas/lenses/dist/postfix_master.aug:39.18-47.21:
 Debug: Augeas[postfix-master-smtp-inet](provider=augeas):
 /augeas/files/etc/postfix/master.cf/error/message = Failed to match
 { /type/ = /inet|unix|fifo|pass/ }{ /private/ = /y|n|-/ }{
 /unprivileged/ = /y|n|-/ }{ /chroot/ = /y|n|-/ }{ /wakeup/ =
 /([0-9]+|-)\\??/ }{ /limit/ = /([0-9]+|-)\\??/ }{ /command/ =
 /[!$,-.0-:=@-Z_a-{}]([!$,-.0-:=@-Z_a-{}]|[]\/[]|
 )*([!$,-.0-:=@-Z_a-{}]|[]\/[])([\t ]*\n[\t
 ]+[!$,-.0-:=@-Z_a-{}]([!$,-.0-:=@-Z_a-{}]|[]\/[]|
 )*([!$,-.0-:=@-Z_a-{}]|[]\/[]))*/ }
   with tree
 { private = n }
 Debug: Augeas[postfix-master-smtp-inet](provider=augeas): Closed the
 augeas connection
 Error: /Stage[main]/custom_postfix::Sasl/Augeas[postfix-master-smtp-inet]:
 Could not evaluate: Saving failed, see debug

 Any ideas?

 Thanks,

 James



-- 
You received this message because you are subscribed to the Google Groups 
Puppet Users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to puppet-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/CAMH6%2Bax4yT5VZc9FBOHiLkcprCN2PixRPDoAQrGr6gbUoS-tkg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] exec statement in puppet

2014-12-10 Thread Spriya
Hi,

I tried to place a command  in exec statement. when the command is executed 
successfully can we stop getting notice message. If the command in exec 
statement fails then only i need to get notice messages. 

Is there a way we can do that?



-- 
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/ba817bf8-61e1-4908-a12d-f98651780d7a%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Notification for new Certificate request

2014-12-10 Thread David Hollinger
Is there a way to setup email notifications for Certificate Requests and 
only certificate requests? 

I'm sure tagmail would work to some extent, but I don't want notifications 
for everything, just for Certificate/Node Requests

-- 
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/52be2ebf-9f09-4094-86c2-3519b961bdf9%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Reading configuration from UI.

2014-12-10 Thread glosterj9
Hi,

I am new to puppet infrastructure.

I have a requirement where i need to read configuration from an User 
Interface and apply them dynamically to the process/application which uses
puppet framework for configuration purpose.

Could someone help me out on how to proceed on this one?

Thanks in advance. 

-- 
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/5ce46ce1-51d2-49b2-8b5d-49b3b716ab49%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] is there a way to compare one facts with all other facts in the list

2014-12-10 Thread Spriya
Hi,

I have a requirement that,

*I have list of two different facts*




*java_foundversion1_path1 java_foundversion2_path2 java_foundversion3_path3 
java_foundversion4_path4*




*and java_authorizedversion1path1 java_authorizedversion2path2 
java_authorizedversion3path3 java_authorizedversion4path4*

*and i am trying to compare each facts with all facts i.e 
java_found_version1path1 to all the list of java_authorized*. And if it 
founds any facts equal to java_found1version1path. It should notify us.*



Is anything we can do it in puppet manifests?

-- 
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/61cd8170-b4f8-4037-934e-e0bf442c82e1%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Usage of mcollective::user class in custom class

2014-12-10 Thread Ajay Kumar
Hi Team,

I am new to puppet and I am upgrading to recent release ver 2.0.0 puppet 
mcollective module from 1.2 ver mcollective module  
In one of my puppet class using mcollective::user class  please find the 
following code snippet.


mcollective::user { ${mcollective::client_user};:

certificate = ${mcollective::ssl_server_public},

private_key = ${mcollective::ssl_server_private},

}; 

while running puppet agent  I am getting the following error like to 
mcollective::user[] is not found. Later I have changed the 
mcollective::user to mcollective::user[].

This time I am getting  Syntax error  '{'; expected '}'

Please help me out of 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/e5899136-6118-4e1c-bf5c-ce08a1d4cb54%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Re: Force resigning of existing certificates

2014-12-10 Thread heeyoung kim
Hello Jake,

I found your commend in this site  while researching my company issue that 
is same as you had.
However, the below site closed, so no information :(
http://glarizza.posterous.com/managing-puppet-ssl-certificates 

Could you please let me know how you fixed the issue if you don't mind? 

I am new Linux and puppet, so it is not easy to figure out..

Thanks for your help in advance.

Thanks,

On Wednesday, 27 April 2011 14:17:24 UTC-7, jmccann wrote:

 OK, just had to post this!  I found a solution to my issues that may 
 help others. 

 http://glarizza.posterous.com/managing-puppet-ssl-certificates 

 Basically a CGI script located on you CA Server.  You can pass the 
 hostname/certname that you want to clean via http to the script and 
 have it clean it off the CA Server.  More details in the link above. 
 This is working great for me and I'll be using it until similar 
 functionality is included by default in puppet. 

 Regards, 
 Jake 

 On Apr 14, 8:50 am, Jake - USPS jacob.m.mcc...@usps.gov wrote: 
  Nevermind, looks like its in 2.7.0rc1 
  
  http://groups.google.com/group/puppet-users/browse_thread/thread/b3b5... 

  cb01221 (#3360) Add an allow_duplicate_certs option 
  
  On Apr 14, 8:45 am,Jake-USPSjacob.m.mcc...@usps.gov wrote: 
  
  
  
  
  
  
  
   Thanks for the reply.  I'm just starting to understand puppet, so I 
   would like not to mess with that ... yet.  It does look very 
   interesting though, so thanks for bringing that up. 
  
   Derek, 
  
   Thanks for the bug.  That looks like it includes some things that I 
   would like ... like the allow duplicate cert and whatnot.  It looks 
   like its status closed as of 14 hours ago.  Does that mean it is in 
   some release of puppet now, or just that code it ready to eventually 
   be implemented?  I'd like to start trying it out right away as my 
   'solution' doesn't seem to work well with dashboard. 
  
   Thanks, 
  Jake 
  
   On Apr 14, 8:41 am, Ohad Levy ohadl...@gmail.com wrote: 
  
On Thu, Apr 14, 2011 at 4:31 
PM,Jake-USPSjacob.m.mcc...@usps.govwrote: 

  
 Also, what is foreman and how could it help.  Not familiar with 
 that 
 product. 
  
Foreman takes care for the entire process, things like provisioning, 
 class 
assignments and reportings are all done though it (and many many 
 other 
features). 
  
see  http://theforeman.orgformoredetails. 
  
Ohad

-- 
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/0b5f5c53-99f1-43df-a206-bc9f198878c4%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Re: Permission problems on Windows

2014-12-10 Thread Renu Chuppala
Hi Silva , Did you able to unzip the file using 7 zip using above code.I 
was trying but it is unable to find the zip file.Please help me to fix this.

Thanks
Renu

On Monday, 1 September 2014 10:35:47 UTC-7, Armindo Silva wrote:

 Hi,

 I have a zip file that has some binaries inside, if I unzip it (with 7z) 
 manually and try to run one of the binaries and it just works, if I unzip 
 it using puppet agent:

   exec { 'eMZP':
 command = 'cmd /c 7z x c:\myfolder\my.zip -oc:\myfolder\',
 creates = 'c:/myfolder/mybin.exe',
 require = File['c:/myfolder/my.zip'],
   }

 the unziped files don't have exec permissions so I am not able to run 
 them. 
 As workaround I have been setting the folder's mode but setting the mode 
 on windows is deprecated.

 Any ideas/pointers?

 Best regards,
 Armindo


-- 
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/af40628e-65ab-4200-98b2-e2934784d54d%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] puppet parser order random

2014-12-10 Thread 巨海录
# ntp/manifests/init.pp
class ntp (
  $var_01 = '/etc/ntp.conf',
  $var_02 = 'ntp/ntp.conf.erb',
) {
  include ::ntp::params
  include ::ntp:install
}

# ntp/manifests/params.pp
class ntp::params {
  $var_03 = 'no.3'
  $var_o4 = 'no.4'
}

# ntp/manifests/install.pp
class ntp::install {
  notify {var_01 == ${ntp::var01}: }
  notify {var_01 == ${ntp::var02}: }
  notify {var_03 == ${ntp::params::var_03}: }
  notify {var_04 == ${ntp::params::var_04}: }
}

# site.pp
include ntp

and i run this cmmand:

puppet apply site.pp

how puppet program parser these code in order?

because sometime i can't get the correct value of var_03 and var_04.  and 
they would all be nil.

-- 
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/1178e436-af54-4381-bfc9-ad96ea1cedb4%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Puppet Users] Usage of mcollective::user class in custom class

2014-12-10 Thread Johan De Wit

On 10/12/14 22:40, Ajay Kumar wrote:

Hi Team,

I am new to puppet and I am upgrading to recent release ver 2.0.0 
puppet mcollective module from 1.2 ver mcollective module
In one of my puppet class using mcollective::user class  please find 
the following code snippet.



mcollective::user { ${mcollective::client_user};:

certificate = ${mcollective::ssl_server_public},

private_key = ${mcollective::ssl_server_private},

};

while running puppet agent  I am getting the following error like to 
mcollective::user[] is not found. Later I have changed the 
mcollective::user to mcollective::user[].


This time I am getting  Syntax error  '{'; expected '}'

Please help me out of 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 
mailto:puppet-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/e5899136-6118-4e1c-bf5c-ce08a1d4cb54%40googlegroups.com 
https://groups.google.com/d/msgid/puppet-users/e5899136-6118-4e1c-bf5c-ce08a1d4cb54%40googlegroups.com?utm_medium=emailutm_source=footer.

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

remove the demi-colons (;) at the end of the first and last line

Hth

--
Johan De Wit

Open Source Consultant

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

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



Next Events:
Zabbix Certified Training | 
http://www.open-future.be/zabbix-certified-specialist-training-5th-till-7th-january
Zabbix Certified Professional | 
http://www.open-future.be/zabbix-certified-professional-training-8th-till-9th-janaury
Bacula Administrator 1 | 
http://www.open-future.be/bacula-administrator-i-training-13th-till-15th-january
Puppet Fundamentals | 
http://www.open-future.be/puppet-fundamentals-training-26th-till-28th-january
Puppet Architect | 
http://www.open-future.be/puppet-architect-training-29th-till-30th-january
Subscribe to our newsletter | http://eepurl.com/BUG8H

--
You received this message because you are subscribed to the Google Groups Puppet 
Users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to puppet-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/54894796.4080503%40open-future.be.
For more options, visit https://groups.google.com/d/optout.