[Puppet Users] Re: Failed to realize virtual resources

2021-06-23 Thread Edward Ned Harvey
Hi slpas...

I realize it's 7 years later, but I'm struggling to do exactly what you 
were talking about back then. What was your solution? Could you post 
working code? Thanks.

On Friday, March 28, 2014 at 11:38:30 AM UTC-4 slpas...@gmail.com wrote:

> i've moduiles/virtualuser/manifests/init.pp
>
> class virtualuser ( $allusers = hiera('users'))
> {
>   include virtualuser::virtual
>   $allusers.each |$key,$value|
>   {
> #not showing code to extract all variables from hiera
>   
> if $virtual == true {
> @virtualuser::virtual::localuser { $key:
>   key=> $key,
>   value  => $value,
>   gid=> $gid,
>   uid=> $uid,
>   homedir=> $homedir,
>   expire => $expire,
>   ensure => $ensure,
>   shell  => $shell,
>   groups => $groups,
>   password   => $password,
>   managehome => $managehome,
>   system => $system,
>   managekeys => $managekeys
> }
> }
> }
>
> same dir i've puppet class virtual.pp
>
> class virtualuser::virtual
> {
>   define localuser 
> ($key,$value,$gid,$uid,$homedir,$expire,$ensure,$shell,$groups,$password,$managehome,$system,$managekeys)
>   {
> #create or remove virtual user
> group { $key:
>  ensure => $ensure,
>  tag=> 'allgroups',
>  gid=> $gid,
> }
>
> user { $key:
>   ensure => $ensure,
>   shell  => $shell,
>   uid=> $uid,
>   allowdupe  => false,
>   expiry => $expire,
>   gid=> $gid,
>   groups => $groups,
>   password   => $password,
>   managehome => $managehome,
>   home   => $homedir,
>   tag=> 'allusers',
> }
>
> file { "$homedir":
> ensure => directory,
> mode   => 700,
> owner  => $key,
> group  => $key
>   }
>
>   file { "$homedir/.ssh":
> ensure => directory,
> mode   => 700,
> owner  => $key,
> group  => $key,
> tag=> 'sshdir',
>   }
>
> in another puppet class,  i try to realize a user
>
>realize (Virtualuser::Virtual::Localuser['virtualuser'])
>
>
> and Error: Could not retrieve catalog from remote server: Error 400 on 
> SERVER: Failed to realize virtual resources 
> Virtualuser::Virtual::Localuser[virtualuser] on node n1.xx
>
> Please help!  Its been 4 days I'm struggling to get this working.
>
> SL
>
>

-- 
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/5ad44960-324d-49f2-9ef5-a120b9833af6n%40googlegroups.com.


RE: [Puppet Users] Basic syntax and learning problems

2016-06-17 Thread Edward Ned Harvey (puppet)
> From: puppet-users@googlegroups.com [mailto:puppet-
> us...@googlegroups.com] On Behalf Of Peter Bukowinski
> 
> Fortunately, facter has separate facts for most items in the os fact hash.
> Keep in mind you can see all the facts available to your client by running
> ‘sudo facter -p’

Thanks. That was very helpful.  :-)

 
> The easiest way to install files into a particular user’s home directory (if 
> the
> path to that directory is consistent across all your machines) is to create a
> package that does it for you. Then you can use puppet to ensure that the
> package is installed without it having to worry about the particulars.

Hmmm... If the directory is consistent across all the machines, I can just 
hard-code the path into puppet. For now, that's what I've done, but I look 
forward to learning a better way (or look forward to upgrading our environment, 
so I can hopefully use $facts in the future. But I'm not entirely sure $facts 
would contain the info I want anyway).

Thanks for your help.

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


RE: [Puppet Users] Basic syntax and learning problems

2016-06-17 Thread Edward Ned Harvey (puppet)
> From: puppet-users@googlegroups.com [mailto:puppet-
> us...@googlegroups.com] On Behalf Of Peter Bukowinski
> 
> Hi Edward,
> 
> With puppet 3.7, all facts are "stringified" by default, meaning hashes are
> flattened to strings. If you've got facter 2.0 or greater, you can change this
> behavior do you can access hash keys individually.

Thanks very much for the help. Unfortunately, I'm learning, and working, in an 
environment with several hundred machines in production using puppet. I can't 
really expect to upgrade or reconfigure the environment. All I'm trying to do 
is ensure some ssh files exist in a particular user's home directory, so I 
thought I would use $facts to determine if the user exists, and get their home 
directory path, and create the files in there.

Is there a way to parse the $os string into a hash, so I can access its 
members? (Besides wanting to access users' home directories, it would also be 
useful to just get the OS major number, for a different purpose.) I tried 
parsejson(), but it doesn't like the => instead of :, and it didn't seem right 
to substitute : for =>. I figured there *should* be a way to parse the string 
the right way.

If not via $facts, how else would puppet put some files into a user's home 
directory?

-- 
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/BY1PR0401MB1255B6B060E898E3A5B23A8DDC570%40BY1PR0401MB1255.namprd04.prod.outlook.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Basic syntax and learning problems

2016-06-17 Thread Edward Ned Harvey (puppet)
Running puppet 3.7.4

I am new to puppet, and learning the syntax. For learning, I open up two 
terminals, where I "vi foo.pp" in one terminal, and I "puppet apply foo.pp" on 
the other terminal.
 
Using this:
node default {
notify{"syntax1":
message => $facts['osfamily']
}
}

I got this result:
Error: facts is not a hash or array when accessing it with osfamily at 
/root/foo.pp:3 on node...

So then, using this:
node default {
notify{"syntax1":
message => $facts
}
}

I get this result:
Notice: /Stage[main]/Main/Node[default]/Notify[syntax1]/message: defined 
'message' as 'syntax1'

Question 1: Why can't I access $facts?

So I wondered if maybe facts weren't available because I'm running "puppet 
apply" instead of "puppet agent -t" but when I look here:
https://docs.puppet.com/puppet/3.7/reference/lang_facts_and_builtin_vars.html

They say "Before requesting a catalog (or compiling one with puppet apply), 
Puppet will collect system information with Facter. Puppet receives this 
information as facts..."

So I would expect $facts to be available.

Using this:
node default {
notify{"syntax1":
message => $os
}
}

I get this result:
Notice: /Stage[main]/Main/Node[default]/Notify[syntax1]/message: defined 
'message' as '{"name"=>"RedHat", "family"=>"RedHat", "release"=>{"major"=>"7", 
"minor"=>"2", "full"=>"7.2"}}'

So it seems, yes, at least *some* facts are available.

Using this:
node default {
notify{"syntax1":
message => $os['name']
}
}

I get this:
Error: os is not a hash or array when accessing it with name at /root/foo.pp:3 
on node ...

Question #2: What's wrong with my syntax to access the OS name? I would expect 
to be able to access $os['release']['major'] to get the result "7"

-- 
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/BY1PR0401MB1255B576DD0E2274E7825A2EDC570%40BY1PR0401MB1255.namprd04.prod.outlook.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Edit a XML configuration file with templates

2014-04-08 Thread Edward
Hello,

I am automating with Puppet the installation of a software on a Windows 
puppet agent. At a moment I need to edit a configuration file (xml file). I 
need to change the value of the address property in this bean:

bean id=IMFactory class=org.apache.cxf.jaxws.JaxWsProxyFactoryBean
property name=serviceClass 
value=com.nano.imcommunication.IMWebServiceAPI /
property name=address value=http://10.126.81.152:8088/MockIM; /
/bean

I searched for documentation and found out that Augeas can only be used for 
Unix puppet agents.. I'm new to Puppet but I wonder if I can use templates 
to solve my problem, and if yes, how I have to do it.

Thanks by advance
Edward

-- 
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/4638453f-537e-4b6a-a203-e4dfb46782d8%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[Puppet Users] Hiera parameter lookup, nesting variables and Puppet 3

2013-01-30 Thread Edward Sargisson
Hi,

I'm trying to reconcile the advice in the Puppet 3 class doc with our 
current use of Hiera. We currently retrieve variables from Hiera in one big 
collection while the Puppet 3 doc seems to indicate storing variables 
without the collection. 

For example, we have a module to manage a log indexer. In its init.pp it 
says:

class log_indexer(
  $log_indexer_conf = hiera_hash('log_indexer_conf'),
){

  class {'log_indexer::config':
log_indexer_conf = $log_indexer_conf}
}

One of the templates used says:

cluster.name: %= @log_indexer_conf['elasticsearch_cluster_name'] %

The associated log_indexer.yaml for Hiera is:

log_indexer_conf:
  elasticsearch_cluster_name: 'van-test-elasticsearch-cluster'

The Puppet 3 
Class(http://docs.puppetlabs.com/puppet/3/reference/lang_classes.html#assigning-classes-from-an-enc)
 
docs say, 
Be sure to use 3.0-compatible lookup keys (class name::parameter). 
This will let 2.x users declare the class with include, and their Hiera 
data will continue to work without changes once they upgrade to Puppet 3.

This suggests that we should do the following in the template:

cluster.name: %= @elasticsearch_cluster_name %

and that the Hiera yaml should be:

elasticsearch_cluster_name: 'van-test-elasticsearch-cluster'

Should we move that the module::variable style? What about when we have a 
very large number of parameters - do we have to declare them in the class 
definition (which is shy the _conf style might be nice) or does auto-lookup 
mean you don't have to reference them anywhere until you actually do the 
lookup?

Many thanks,
Edward

-- 
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] Help! A simple question but always distrubs me .

2012-08-30 Thread Edward Tuan
When I start my puppetmaster on my master server with this 
:/etc/init.d/puppetmaster start, There are always these messages shown: 

etc/init.d/puppetmaster start
Starting puppetmaster: 
*/usr/lib/ruby/site_ruby/1.8/puppet/network/server.rb:101:in 
`register_xmlrpc': uninitialized constant Puppet::Network::Handler 
(NameError)*
   
from /usr/lib/ruby/site_ruby/1.8/puppet/network/server.rb:100:in `each'
from /usr/lib/ruby/site_ruby/1.8/puppet/network/server.rb:100:in 
`register_xmlrpc'
from /usr/lib/ruby/site_ruby/1.8/puppet/network/server.rb:68:in 
`initialize'
from /usr/lib/ruby/site_ruby/1.8/puppet/application/master.rb:102:in 
`new'
from /usr/lib/ruby/site_ruby/1.8/puppet/application/master.rb:102:in 
`main'
from /usr/lib/ruby/site_ruby/1.8/puppet/application/master.rb:46:in 
`run_command'
from /usr/lib/ruby/site_ruby/1.8/puppet/application.rb:305:in `run'
from /usr/lib/ruby/site_ruby/1.8/puppet/application.rb:420:in `hook'
from /usr/lib/ruby/site_ruby/1.8/puppet/application.rb:305:in `run'
from /usr/lib/ruby/site_ruby/1.8/puppet/application.rb:411:in 
`exit_on_fail'
from /usr/lib/ruby/site_ruby/1.8/puppet/application.rb:305:in `run'
from /usr/sbin/puppetmasterd:4
  * [FAILED]*

I have checked my ruby version,It's the latest version(ruby 1.8.7 
(2011-06-30 patchlevel 352) [i386-linux]) and what my server installed 
about ruby are:

ruby-libs-1.8.7.352-7.el6_2.i686

libselinux-ruby-2.0.94-5.3.el6.i686

ruby-1.8.7.352-7.el6_2.i686

ruby-augeas-0.4.1-1.el6.i686

ruby-rdoc-1.8.7.352-7.el6_2.i686

ruby-shadow-1.4.1-13.el6.i686

ruby-irb-1.8.7.352-7.el6_2.i686
 
who knows what'r wrong with my server and help me?

-- 
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/-/VS8fbUZuXaoJ.
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: Help! A simple question but always distrubs me .

2012-08-30 Thread Edward Tuan
ps: when I start with : puppet master . then I check with: service 
puppetmaster status ,show: *the puppetmaster is running *.orz...

在 2012年8月31日星期五UTC+8上午10时08分05秒,Edward Tuan写道:

 When I start my puppetmaster on my master server with this 
 :/etc/init.d/puppetmaster start, There are always these messages shown: 

 etc/init.d/puppetmaster start
 Starting puppetmaster: 
 */usr/lib/ruby/site_ruby/1.8/puppet/network/server.rb:101:in 
 `register_xmlrpc': uninitialized constant Puppet::Network::Handler 
 (NameError)*

 from /usr/lib/ruby/site_ruby/1.8/puppet/network/server.rb:100:in `each'
 from /usr/lib/ruby/site_ruby/1.8/puppet/network/server.rb:100:in 
 `register_xmlrpc'
 from /usr/lib/ruby/site_ruby/1.8/puppet/network/server.rb:68:in 
 `initialize'
 from /usr/lib/ruby/site_ruby/1.8/puppet/application/master.rb:102:in 
 `new'
 from /usr/lib/ruby/site_ruby/1.8/puppet/application/master.rb:102:in 
 `main'
 from /usr/lib/ruby/site_ruby/1.8/puppet/application/master.rb:46:in 
 `run_command'
 from /usr/lib/ruby/site_ruby/1.8/puppet/application.rb:305:in `run'
 from /usr/lib/ruby/site_ruby/1.8/puppet/application.rb:420:in `hook'
 from /usr/lib/ruby/site_ruby/1.8/puppet/application.rb:305:in `run'
 from /usr/lib/ruby/site_ruby/1.8/puppet/application.rb:411:in 
 `exit_on_fail'
 from /usr/lib/ruby/site_ruby/1.8/puppet/application.rb:305:in `run'
 from /usr/sbin/puppetmasterd:4
   * [FAILED]*

 I have checked my ruby version,It's the latest version(ruby 1.8.7 
 (2011-06-30 patchlevel 352) [i386-linux]) and what my server installed 
 about ruby are:

 ruby-libs-1.8.7.352-7.el6_2.i686

 libselinux-ruby-2.0.94-5.3.el6.i686

 ruby-1.8.7.352-7.el6_2.i686

 ruby-augeas-0.4.1-1.el6.i686

 ruby-rdoc-1.8.7.352-7.el6_2.i686

 ruby-shadow-1.4.1-13.el6.i686

 ruby-irb-1.8.7.352-7.el6_2.i686
  
 who knows what'r wrong with my server and help me?



-- 
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/-/fERkqdzkBK0J.
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] Error 400 on SERVER: Could not write /var/lib/puppet/ssl/ca/requests/agent1.pem to csrdir: undefined method `exists?' for nil:NilClass

2012-08-28 Thread Edward Tuan
I've been confused by this question for near two days ...my puppet master 
version is 2.7.9-1.el6  and client versiong is 2.6.16-2.el5. This is what 
my command lines shows:


*[root@agent1 ~]# puppet agent --server=edward --test --waitforce 30*
info: Creating a new SSL key for agent1
warning: peer certificate won't be verified in this SSL session
info: Caching certificate for ca
warning: peer certificate won't be verified in this SSL session
warning: peer certificate won't be verified in this SSL session
info: Creating a new SSL certificate request for agent1
info: Certificate Request fingerprint (md5): 
4C:03:FE:BD:B8:68:4A:AB:F8:DC:BA:36:38:38:9C:8E
warning: peer certificate won't be verified in this SSL session
err: Could not request certificate: Error 400 on SERVER: Could not write 
/var/lib/puppet/ssl/ca/requests/agent1.pem to csrdir: undefined method 
`exists?' for nil:NilClass

then,I make run that with debug options and the result is :

*[root@agent1 ~]# puppet agent --server=edward --debug --waitforce 30*
debug: Failed to load library 'rubygems' for feature 'rubygems'
debug: Puppet::Type::User::ProviderPw: file pw does not exist
debug: Puppet::Type::User::ProviderDirectoryservice: file /usr/bin/dscl 
does not exist
debug: Puppet::Type::User::ProviderLdap: true value when expecting false
debug: Puppet::Type::User::ProviderUser_role_add: file roleadd does not 
exist
debug: Puppet::Type::File::ProviderMicrosoft_windows: feature 
microsoft_windows is missing
debug: Failed to load library 'ldap' for feature 'ldap'
debug: /File[/var/lib/puppet/ssl/private_keys/agent1.pem]: Autorequiring 
File[/var/lib/puppet/ssl/private_keys]
debug: /File[/var/lib/puppet/ssl/certificate_requests]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/ssl/certs]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/lib]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/lib/puppet/ssl]: Autorequiring File[/var/lib/puppet]
debug: /File[/etc/puppet/puppet.conf]: Autorequiring File[/etc/puppet]
debug: /File[/var/lib/puppet/ssl/public_keys/agent1.pem]: Autorequiring 
File[/var/lib/puppet/ssl/public_keys]
debug: /File[/var/lib/puppet/state]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/lib/puppet/ssl/public_keys]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/client_data]: Autorequiring 
File[/var/lib/puppet]
debug: /File[/var/lib/puppet/facts]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/lib/puppet/client_yaml]: Autorequiring 
File[/var/lib/puppet]
debug: /File[/var/lib/puppet/state/graphs]: Autorequiring 
File[/var/lib/puppet/state]
debug: /File[/var/lib/puppet/ssl/private]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/ssl/private_keys]: Autorequiring 
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/clientbucket]: Autorequiring 
File[/var/lib/puppet]
debug: /File[/var/lib/puppet/ssl/certs/ca.pem]: Autorequiring 
File[/var/lib/puppet/ssl/certs]
debug: /File[/var/lib/puppet/ssl/private_keys/agent1.pem]/mode: mode 
changed '640' to '600'
debug: /File[/var/lib/puppet/ssl/public_keys/agent1.pem]/mode: mode changed 
'640' to '644'
debug: Finishing transaction -606807388

Can somebody help me solve my problem? 

Hope your response sinceryly!

-- 
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/-/plfJBjR9FPQJ.
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] Error 400 on SERVER: Could not write /var/lib/puppet/ssl/ca/requests/agent1.pem to csrdir: undefined method `exists?' for nil:NilClass

2012-08-28 Thread Edward Tuan
Much thanks for your reply. Is this your meaning:
[edward@edward ~]$* cd /var/lib/puppet/*
[edward@edward puppet]$ ls
bucket   clientbucket  client_yaml  lib  rrd  sslyaml
classes.txt  client_data   factsreports  server_data  state
[edward@edward puppet]$ cd ssl
*[edward@edward ssl]$ ls
ls: cannot open directory .: Permission denied*
[edward@edward ssl]$ 

As a regular user I can't open this directory,otherwise I am a root user. I 
deleted this directory with rm -rf when I install puppet,then let it create 
a new ssl in a root. Is that question?How can I do?

在 2012年8月29日星期三UTC+8上午12时15分07秒,Ashish Jaiswal写道:

 Hi,

 To me it seems to be permission issue on SSL directory on master .. can 
 you let me what is the permission on SSL directory ..

 This is just a wild guess.. 

 Regards,
 Ashish Jaiswal
 On Aug 28, 2012 12:53 PM, Edward Tuan duany...@gmail.com javascript: 
 wrote:

 I've been confused by this question for near two days ...my puppet master 
 version is 2.7.9-1.el6  and client versiong is 2.6.16-2.el5. This is what 
 my command lines shows:


 *[root@agent1 ~]# puppet agent --server=edward --test --waitforce 30*
 info: Creating a new SSL key for agent1
 warning: peer certificate won't be verified in this SSL session
 info: Caching certificate for ca
 warning: peer certificate won't be verified in this SSL session
 warning: peer certificate won't be verified in this SSL session
 info: Creating a new SSL certificate request for agent1
 info: Certificate Request fingerprint (md5): 
 4C:03:FE:BD:B8:68:4A:AB:F8:DC:BA:36:38:38:9C:8E
 warning: peer certificate won't be verified in this SSL session
 err: Could not request certificate: Error 400 on SERVER: Could not write 
 /var/lib/puppet/ssl/ca/requests/agent1.pem to csrdir: undefined method 
 `exists?' for nil:NilClass

 then,I make run that with debug options and the result is :

 *[root@agent1 ~]# puppet agent --server=edward --debug --waitforce 30*
 debug: Failed to load library 'rubygems' for feature 'rubygems'
 debug: Puppet::Type::User::ProviderPw: file pw does not exist
 debug: Puppet::Type::User::ProviderDirectoryservice: file /usr/bin/dscl 
 does not exist
 debug: Puppet::Type::User::ProviderLdap: true value when expecting false
 debug: Puppet::Type::User::ProviderUser_role_add: file roleadd does not 
 exist
 debug: Puppet::Type::File::ProviderMicrosoft_windows: feature 
 microsoft_windows is missing
 debug: Failed to load library 'ldap' for feature 'ldap'
 debug: /File[/var/lib/puppet/ssl/private_keys/agent1.pem]: Autorequiring 
 File[/var/lib/puppet/ssl/private_keys]
 debug: /File[/var/lib/puppet/ssl/certificate_requests]: Autorequiring 
 File[/var/lib/puppet/ssl]
 debug: /File[/var/lib/puppet/ssl/certs]: Autorequiring 
 File[/var/lib/puppet/ssl]
 debug: /File[/var/lib/puppet/lib]: Autorequiring File[/var/lib/puppet]
 debug: /File[/var/lib/puppet/ssl]: Autorequiring File[/var/lib/puppet]
 debug: /File[/etc/puppet/puppet.conf]: Autorequiring File[/etc/puppet]
 debug: /File[/var/lib/puppet/ssl/public_keys/agent1.pem]: Autorequiring 
 File[/var/lib/puppet/ssl/public_keys]
 debug: /File[/var/lib/puppet/state]: Autorequiring File[/var/lib/puppet]
 debug: /File[/var/lib/puppet/ssl/public_keys]: Autorequiring 
 File[/var/lib/puppet/ssl]
 debug: /File[/var/lib/puppet/client_data]: Autorequiring 
 File[/var/lib/puppet]
 debug: /File[/var/lib/puppet/facts]: Autorequiring File[/var/lib/puppet]
 debug: /File[/var/lib/puppet/client_yaml]: Autorequiring 
 File[/var/lib/puppet]
 debug: /File[/var/lib/puppet/state/graphs]: Autorequiring 
 File[/var/lib/puppet/state]
 debug: /File[/var/lib/puppet/ssl/private]: Autorequiring 
 File[/var/lib/puppet/ssl]
 debug: /File[/var/lib/puppet/ssl/private_keys]: Autorequiring 
 File[/var/lib/puppet/ssl]
 debug: /File[/var/lib/puppet/clientbucket]: Autorequiring 
 File[/var/lib/puppet]
 debug: /File[/var/lib/puppet/ssl/certs/ca.pem]: Autorequiring 
 File[/var/lib/puppet/ssl/certs]
 debug: /File[/var/lib/puppet/ssl/private_keys/agent1.pem]/mode: mode 
 changed '640' to '600'
 debug: /File[/var/lib/puppet/ssl/public_keys/agent1.pem]/mode: mode 
 changed '640' to '644'
 debug: Finishing transaction -606807388

 Can somebody help me solve my problem? 

 Hope your response sinceryly!

  -- 
 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/-/plfJBjR9FPQJ.
 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/-/KCLcnqxmvHcJ.
To post to this group, send email to puppet

Re: [Puppet Users] Error 400 on SERVER: Could not write /var/lib/puppet/ssl/ca/requests/agent1.pem to csrdir: undefined method `exists?' for nil:NilClass

2012-08-28 Thread Edward Tuan
Hi Ashish,

1st, what on my server is this:
[root@edward ~]# ls -ld /var/lib/puppet/ssl/
drwxrwx--x. 8 puppet root 4096 Aug 27 17:21 /var/lib/puppet/ssl/
[root@edward ~]# 

2nd, I debug on my server with puppet cert --list --debug, and the result 
is(not far only this,I just show 5 lines):

debug: Puppet::Type::User::ProviderUser_role_add: file roleadd does not 
exist
debug: Puppet::Type::User::ProviderLdap: true value when expecting false
debug: Puppet::Type::User::ProviderDirectoryservice: file /usr/bin/dscl 
does not exist
debug: Puppet::Type::User::ProviderPw: file pw does not exist
debug: /File[/var/lib/puppet/ssl/ca/requests]/seluser: Found seluser 
default 'system_u' for /var/lib/puppet/ssl/ca/requests

3rd, I read what you have linked to me: there is one sentence(under the *
Certificates*):
*You can manually copy the master certificate through a secure channel to 
the client if you want to*,
does I do that can solve my question? How can I do?


--Edward.
在 2012年8月29日星期三UTC+8上午10时22分41秒,Ashish Jaiswal写道:

 Hi Edward, 

 You won't be able to access as normal user, you need to be root for 
 that. 
 If you have deleted your ssl directory, nothing much to worry it will 
 generate again, what I was asking the permission on ssl directory.? 
 On my server it has something like this 

 # ls 
 drwxrwx--x   8 puppet root   4096 2012-05-15 01:08 ssl/ 

 You can refer to this link 
 http://projects.puppetlabs.com/projects/1/wiki/certificates_and_security 


 -Ashish 

 On Wednesday 29 August 2012 07:40:06 AM IST, Edward Tuan wrote: 
  Much thanks for your reply. Is this your meaning: 
  [edward@edward ~]$*cd /var/lib/puppet/* 
  [edward@edward puppet]$ ls 
  bucket   clientbucket  client_yaml  lib  rrd  ssl   
  yaml 
  classes.txt  client_data   factsreports  server_data  state 
  [edward@edward puppet]$ cd ssl 
  *[edward@edward ssl]$ ls 
  ls: cannot open directory .: Permission denied* 
  [edward@edward ssl]$ 
  
  As a regular user I can't open this directory,otherwise I am a root 
  user. I deleted this directory with rm -rf when I install puppet,then 
  let it create a new ssl in a root. Is that question?How can I do? 
  
  在 2012年8月29日星期三UTC+8上午12时15分07秒,Ashish Jaiswal写道: 
  
  Hi, 
  
  To me it seems to be permission issue on SSL directory on master 
  .. can you let me what is the permission on SSL directory .. 
  
  This is just a wild guess.. 
  
  Regards, 
  Ashish Jaiswal 
  
  On Aug 28, 2012 12:53 PM, Edward Tuan duany...@gmail.com 
  javascript: wrote: 
  
  I've been confused by this question for near two days ...my 
  puppet master version is 2.7.9-1.el6  and client versiong is 
  2.6.16-2.el5. This is what my command lines shows: 
  
  
  *[root@agent1 ~]# puppet agent --server=edward --test 
  --waitforce 30* 
  info: Creating a new SSL key for agent1 
  warning: peer certificate won't be verified in this SSL session 
  info: Caching certificate for ca 
  warning: peer certificate won't be verified in this SSL session 
  warning: peer certificate won't be verified in this SSL session 
  info: Creating a new SSL certificate request for agent1 
  info: Certificate Request fingerprint (md5): 
  4C:03:FE:BD:B8:68:4A:AB:F8:DC:BA:36:38:38:9C:8E 
  warning: peer certificate won't be verified in this SSL session 
  err: Could not request certificate: Error 400 on SERVER: Could 
  not write /var/lib/puppet/ssl/ca/requests/agent1.pem to 
  csrdir: undefined method `exists?' for nil:NilClass 
  
  then,I make run that with debug options and the result is : 
  
  *[root@agent1 ~]# puppet agent --server=edward --debug 
  --waitforce 30* 
  debug: Failed to load library 'rubygems' for feature 'rubygems' 
  debug: Puppet::Type::User::ProviderPw: file pw does not exist 
  debug: Puppet::Type::User::ProviderDirectoryservice: file 
  /usr/bin/dscl does not exist 
  debug: Puppet::Type::User::ProviderLdap: true value when 
  expecting false 
  debug: Puppet::Type::User::ProviderUser_role_add: file roleadd 
  does not exist 
  debug: Puppet::Type::File::ProviderMicrosoft_windows: feature 
  microsoft_windows is missing 
  debug: Failed to load library 'ldap' for feature 'ldap' 
  debug: /File[/var/lib/puppet/ssl/private_keys/agent1.pem]: 
  Autorequiring File[/var/lib/puppet/ssl/private_keys] 
  debug: /File[/var/lib/puppet/ssl/certificate_requests]: 
  Autorequiring File[/var/lib/puppet/ssl] 
  debug: /File[/var/lib/puppet/ssl/certs]: Autorequiring 
  File[/var/lib/puppet/ssl] 
  debug: /File[/var/lib/puppet/lib]: Autorequiring 
  File[/var/lib/puppet] 
  debug: /File[/var/lib/puppet/ssl]: Autorequiring 
  File[/var/lib/puppet

Re: [Puppet Users] Puppet can't successfully restart puppetd

2012-07-04 Thread Edward Savage
On Wed, Jun 27, 2012 at 7:13 PM, Martin Alfke tux...@gmail.com wrote:

 On 27.06.2012, at 11:01, Felix Frank wrote:

 On 06/27/2012 10:51 AM, Matthew Burgess wrote:
 is there something special about
 the puppet service that it issuing the equivalent of 'service puppet
 restart' doesn't actually work?

 Oh, it works, but think of what you're having puppet do: By calling the
 initscript and telling it to restart, it first has to stop puppet,
 i.e., send TERM to the agent process. So the agent is committing suicide
 mid-run, taking the invocation of the initscript with it. Now nobody's
 there to start puppet up again.

 I've worked around this using exec { echo service puppet restart | at
 now+5min } in the past, but this is quite the hack. Personally I have
 found the cron model much more convenient that the long-running agent.

 We redefined the restart command:

 restart = '/usr/bin/nohup /etc/init.d/puppet restart '

 - Martin


Late reply, however if you're using Ubuntu 10.04 or greater you can
avoid the nohup:

hasrestart  = true;

Edward

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



Re: [Puppet Users] Inherited 0.2.5 installation

2011-09-02 Thread Edward Savage
On Sat, Sep 3, 2011 at 1:00 AM, genkuro genk...@gmail.com wrote:
 I'm guessing the 0.2.5 - 2.x migration must be common.  Can I expect
 this to be a slam dunk?

We recently did a large (100 nodes) migration from 0.25 to 2.6.  The
biggest issue was ensuring all our modules worked without any
unexpected changes.  Standard testing will pick up anything like this
and we only had a couple of very minor issues.

A good tip if you plan to 'upgrade puppet with puppet' like we did on
a debian platform remember to set 'hasrestart = true' on your puppet
service 'init' provider.  40 nodes had updated themselves before we
realised puppet didn't know how to start itself back up, without that
switch, after being upgraded.  This may apply to other platforms so
test for it.

Regards,

Edward

-- 
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] Passing an array to a chained provider

2011-06-16 Thread Edward Savage
Afternoon all,

I am looking to do the following using Puppet to simplify
relationships for our AD class.  I've stripped it down to the basic
relation I'd like to work.

$kerberos_packages = [winbind, krb5-config, libpam-krb5,
portmap, krb5-user, samba-common]
$kerberos_dependencies = [/etc/nsswitch.conf, /etc/samba/smb.conf,
/etc/pam.d/common-account, /etc/pam.d/common-auth, /etc/pam.d/
common-session]

package { $kerberos_packages: ensure = installed }

Package[$kerberos_packages] - File[$kerberos_dependencies]

file { files listed here with various options }

This does not generate an error for the puppet parser however the
puppet master fails to compile modules with an error.

Jun 16 14:29:25 puppetmaster puppet-master[9820]: Could not find
resource 'Package[winbind]Package[krb5-config]Package[libpam-
krb5]Package[portmap]Package[krb5-user]Package[samba-common]' for
relationship on 'File[/etc/nsswitch.conf]File[/etc/samba/
smb.conf]File[/etc/pam.d/common-account]File[/etc/pam.d/common-
auth]File[/etc/pam.d/common-session]]' on node example.domain

Please note the issue isn't in sending the array, Package[one,
two] - File[a,b] still fails.

The documentation on chaining is literally the brief post by the guy
who wrote the patch that added this functionality.  There is also
mention of the | | relationship operator however I cannot figure out
how to limit its actions to the items in my arrays.

So I'd like to know if I've made a mistake in my syntax or if the
chaining is limited to one-to-one relations? If it is limited to one-
to-one relations is there already a bug asking for many-to-many passed
via array?

Thanks,

Edward Savage

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



Re: [Puppet Users] Pushing changes to nodes

2011-06-07 Thread Edward
On 6/5/11 7:48 PM, Pavel Shevaev wrote:
[snip]
 #puppet push

 What do you think?
You can try puppet kick from the puppet master so that the puppet
agent will initiate a pull request. Each of the puppet agent would need
to be listening though.

-- 
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] mcollective for rhel 4

2011-01-21 Thread Edward Bailey
Is their a mcollective rpm for rhel4? If not, is their a src rpm for 1.0 I
can compile for rhel4? I looked around the web site and could not find
anything.

Thanks

Ed

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



Re: Re: [Puppet Users] question about custom facts and environmental variables

2010-11-09 Thread Edward Bailey
The purpose behind setting up the fact this way is that I thought it would
be an easy way to populate servers with extra metadata without having to
drop a file and then a fact with some shell code on every server.

For example, we have a number of servers that simply cannot be identified as
being part of say the dev final integration test environment without the
addition of something like a fact. Nothing native to the server such as the
host name would be of any use. By dropping a file in /etc/profile.d using
the environmental variable feature of facter looked like a real easy way to
create the metadata I need. Now that I know this approach will not work I
will use option 2 and go on with life. Its not a big deal I was just
confused for a little bit.

Thanks again

Ed

On Tue, Nov 9, 2010 at 7:29 PM, Nigel Kersten ni...@puppetlabs.com wrote:

 On Tue, Nov 9, 2010 at 3:45 PM,  eds.mailing.list.acco...@gmail.com
 wrote:
  ok - that makes sense, but why does facter have a feature
 
 http://docs.puppetlabs.com/guides/faq.html#can-i-access-environmental-variables-with-facter
  where you can expose environmental variables as facts if puppet will not
  recognize the facts? Is the issue because of the old version of facter I
 am
  using?

 Most times I've seen people use this functionality has been with
 puppetd in non-daemon mode.

 FACTER_foo=woot puppetd --onetime --verbose --no-daemonize

 Plus, this works well with standalone puppet applying local
 manifests too. It looks like things aren't so simple in daemon mode.

 Is there a reason you're not actually doing this as a real fact?

 
  Thanks
 
  Ed
 
  On Nov 9, 2010 5:45pm, Zach Leslie z...@puppetlabs.com wrote:
  Hi Ed,
 
  You are correct that the environment will not get imported into puppet.
  When you restart the puppet daemon, you are missing your custom fact
 because
  daemon will run as its own process with its own environment, so just
  exporting the variable will only effect your current running environment
 and
  not the puppet daemon environment.  As such, the behavior your are
 seeing is
  expected.
 
 
  Looking around, I think this looks like a better way to get facts in:
  http://projects.puppetlabs.com/projects/1/wiki/Adding_Facts
 
  This will allow you to get some level of synchronization of your custom
  facts from your master to your clients in a much cleaner way.
 
 
  Hope this helps.
 
  Zach
 
 
  On Mon, Nov 8, 2010 at 5:42 PM, Edward Bailey
  eds.mailing.list.acco...@gmail.com wrote:
 
  I am having a great deal of trouble using a custom fact in a module and
 I
  am hoping someone can help me out.
 
 
  I am using  facter-1.5.0-2.el4 and  puppet-0.24.5-1.el4. I know these
 are
  really old versions.
 
  The custom fact is defined using an environmental variable
 
 
  export FACTER_VERTICAL=dev fit
 
  and I can see the fact in the output of facter
 
  [x ~]# facter | grep -i vertical
   vertical = dev fit
 
  In the module I am trying to use the fact in the following way
 
 
 
  file{ /etc/yum.repos.d/env32-envision.repo:
  ensure = present,
  mode = 0664,
  owner= root,
  group= root,
 
 
  content   = $vertical ? {
  dev fit =
  template(ads_yum2/env32-dev-fit.repo.erb),
  default =
  template(ads_yum2/env32-dev-staging.repo.erb),
 
 
  require = File[/etc/yum.repos.d/base_os.repo],
  }
  }
 
  When I restart puppet the output is the default option instead of the
 dev
  fit option. If I run puppet interactively puppetd --debug --test I
 get
  the correct output based on the custom fact. I understand that puppet
 will
  not inherent environmental variables but since the fact is present I
 thought
  this approach would work. Am I wrong?
 
 
 
  I have been banging my head against the wall over this for some time. I
  appreciate any input.
 
  Thanks
 
  Ed
 
 
 
 
 
  --
 
  You received this message because you are subscribed to the Google
 Groups
  Puppet Users group.
 
  To post to this group, send email to puppet-us...@googlegroups.com.
 
  To unsubscribe from this group, send email to
  puppet-users+unsubscr...@googlegroups.compuppet-users%2bunsubscr...@googlegroups.com
 .
 
 
  For more options, visit this group at
  http://groups.google.com/group/puppet-users?hl=en.
 
 
 
 
 
 
  --
  Zach
  z...@puppetlabs.com
 
 
 
 
 
 
 
 
  --
 
  You received this message because you are subscribed to the Google
 Groups
  Puppet Users group.
 
  To post to this group, send email to puppet-us...@googlegroups.com.
 
  To unsubscribe from this group, send email to
  puppet-users+unsubscr...@googlegroups.compuppet-users%2bunsubscr...@googlegroups.com
 .
 
 
  For more options, visit this group at
  http://groups.google.com/group/puppet-users?hl=en.
 
 
  --
  You received this message because you are subscribed to the Google Groups

Re: [Puppet Users] question about custom facts and environmental variables

2010-11-09 Thread Edward Bailey
server means the  hardware that the puppet client manages

On Tue, Nov 9, 2010 at 9:06 PM, Patrick kc7...@gmail.com wrote:


 On Nov 9, 2010, at 6:01 PM, Edward Bailey wrote:

 The purpose behind setting up the fact this way is that I thought it would
 be an easy way to populate servers with extra metadata without having to
 drop a file and then a fact with some shell code on every server.

 For example, we have a number of servers that simply cannot be identified
 as being part of say the dev final integration test environment without the
 addition of something like a fact. Nothing native to the server such as the
 host name would be of any use. By dropping a file in /etc/profile.d using
 the environmental variable feature of facter looked like a real easy way to
 create the metadata I need. Now that I know this approach will not work I
 will use option 2 and go on with life. Its not a big deal I was just
 confused for a little bit.


 Does server mean puppet server or puppet client that serving something
 not related to puppet?


 On Tue, Nov 9, 2010 at 7:29 PM, Nigel Kersten ni...@puppetlabs.comwrote:

 On Tue, Nov 9, 2010 at 3:45 PM,  eds.mailing.list.acco...@gmail.com
 wrote:
  ok - that makes sense, but why does facter have a feature
 
 http://docs.puppetlabs.com/guides/faq.html#can-i-access-environmental-variables-with-facter
  where you can expose environmental variables as facts if puppet will not
  recognize the facts? Is the issue because of the old version of facter I
 am
  using?

 Most times I've seen people use this functionality has been with
 puppetd in non-daemon mode.

 FACTER_foo=woot puppetd --onetime --verbose --no-daemonize

 Plus, this works well with standalone puppet applying local
 manifests too. It looks like things aren't so simple in daemon mode.

 Is there a reason you're not actually doing this as a real fact?

 
  Thanks
 
  Ed
 
  On Nov 9, 2010 5:45pm, Zach Leslie z...@puppetlabs.com wrote:
  Hi Ed,
 
  You are correct that the environment will not get imported into puppet.
  When you restart the puppet daemon, you are missing your custom fact
 because
  daemon will run as its own process with its own environment, so just
  exporting the variable will only effect your current running
 environment and
  not the puppet daemon environment.  As such, the behavior your are
 seeing is
  expected.
 
 
  Looking around, I think this looks like a better way to get facts in:
  http://projects.puppetlabs.com/projects/1/wiki/Adding_Facts
 
  This will allow you to get some level of synchronization of your custom
  facts from your master to your clients in a much cleaner way.
 
 
  Hope this helps.
 
  Zach
 
 
  On Mon, Nov 8, 2010 at 5:42 PM, Edward Bailey
  eds.mailing.list.acco...@gmail.com wrote:
 
  I am having a great deal of trouble using a custom fact in a module and
 I
  am hoping someone can help me out.
 
 
  I am using  facter-1.5.0-2.el4 and  puppet-0.24.5-1.el4. I know these
 are
  really old versions.
 
  The custom fact is defined using an environmental variable
 
 
  export FACTER_VERTICAL=dev fit
 
  and I can see the fact in the output of facter
 
  [x ~]# facter | grep -i vertical
   vertical = dev fit
 
  In the module I am trying to use the fact in the following way
 
 
 
  file{ /etc/yum.repos.d/env32-envision.repo:
  ensure = present,
  mode = 0664,
  owner= root,
  group= root,
 
 
  content   = $vertical ? {
  dev fit =
  template(ads_yum2/env32-dev-fit.repo.erb),
  default =
  template(ads_yum2/env32-dev-staging.repo.erb),
 
 
  require = File[/etc/yum.repos.d/base_os.repo],
  }
  }
 
  When I restart puppet the output is the default option instead of the
 dev
  fit option. If I run puppet interactively puppetd --debug --test I
 get
  the correct output based on the custom fact. I understand that puppet
 will
  not inherent environmental variables but since the fact is present I
 thought
  this approach would work. Am I wrong?
 
 
 
  I have been banging my head against the wall over this for some time. I
  appreciate any input.
 
  Thanks
 
  Ed
 
 
 
 
 
  --
 
  You received this message because you are subscribed to the Google
 Groups
  Puppet Users group.
 
  To post to this group, send email to puppet-us...@googlegroups.com.
 
  To unsubscribe from this group, send email to
  puppet-users+unsubscr...@googlegroups.compuppet-users%2bunsubscr...@googlegroups.com
 .
 
 
  For more options, visit this group at
  http://groups.google.com/group/puppet-users?hl=en.
 
 
 
 
 
 
  --
  Zach
  z...@puppetlabs.com
 
 
 
 
 
 
 
 
  --
 
  You received this message because you are subscribed to the Google
 Groups
  Puppet Users group.
 
  To post to this group, send email to puppet-us...@googlegroups.com.
 
  To unsubscribe from this group, send email to
  puppet

Re: Re: [Puppet Users] question about custom facts and environmental variables

2010-11-09 Thread Edward Bailey
Sure I can update the wiki - I hope I can save some else time the next time
this come up.

I like your suggestion, but I cant quite visualize how I could write a fact
that will parse any files in /etc/fact.s and create separate facts from the
output. Would I use some sort of loop or will facter parse an array?

Thanks

Ed




 Ahah. So I suggest you try something different.

 * make /etc/facts.d/
 * write a fact that looks for files here, and makes real facts based
 on the file name and contents.

 Then you can just drop files there and get the same result.

 Do you feel like updating the wiki to point out the limitations with
 puppet in daemon mode and the FACTER_* environment variables Edward?

 
  Thanks again
 
  Ed
 
  On Tue, Nov 9, 2010 at 7:29 PM, Nigel Kersten ni...@puppetlabs.com
 wrote:
 
  On Tue, Nov 9, 2010 at 3:45 PM,  eds.mailing.list.acco...@gmail.com
  wrote:
   ok - that makes sense, but why does facter have a feature
  
  
 http://docs.puppetlabs.com/guides/faq.html#can-i-access-environmental-variables-with-facter
   where you can expose environmental variables as facts if puppet will
 not
   recognize the facts? Is the issue because of the old version of facter
 I
   am
   using?
 
  Most times I've seen people use this functionality has been with
  puppetd in non-daemon mode.
 
  FACTER_foo=woot puppetd --onetime --verbose --no-daemonize
 
  Plus, this works well with standalone puppet applying local
  manifests too. It looks like things aren't so simple in daemon mode.
 
  Is there a reason you're not actually doing this as a real fact?
 
  
   Thanks
  
   Ed
  
   On Nov 9, 2010 5:45pm, Zach Leslie z...@puppetlabs.com wrote:
   Hi Ed,
  
   You are correct that the environment will not get imported into
 puppet.
   When you restart the puppet daemon, you are missing your custom fact
   because
   daemon will run as its own process with its own environment, so just
   exporting the variable will only effect your current running
   environment and
   not the puppet daemon environment.  As such, the behavior your are
   seeing is
   expected.
  
  
   Looking around, I think this looks like a better way to get facts in:
   http://projects.puppetlabs.com/projects/1/wiki/Adding_Facts
  
   This will allow you to get some level of synchronization of your
 custom
   facts from your master to your clients in a much cleaner way.
  
  
   Hope this helps.
  
   Zach
  
  
   On Mon, Nov 8, 2010 at 5:42 PM, Edward Bailey
   eds.mailing.list.acco...@gmail.com wrote:
  
   I am having a great deal of trouble using a custom fact in a module
 and
   I
   am hoping someone can help me out.
  
  
   I am using  facter-1.5.0-2.el4 and  puppet-0.24.5-1.el4. I know these
   are
   really old versions.
  
   The custom fact is defined using an environmental variable
  
  
   export FACTER_VERTICAL=dev fit
  
   and I can see the fact in the output of facter
  
   [x ~]# facter | grep -i vertical
vertical = dev fit
  
   In the module I am trying to use the fact in the following way
  
  
  
   file{ /etc/yum.repos.d/env32-envision.repo:
   ensure = present,
   mode = 0664,
   owner= root,
   group= root,
  
  
   content   = $vertical ? {
   dev fit =
   template(ads_yum2/env32-dev-fit.repo.erb),
   default =
   template(ads_yum2/env32-dev-staging.repo.erb),
  
  
   require = File[/etc/yum.repos.d/base_os.repo],
   }
   }
  
   When I restart puppet the output is the default option instead of the
   dev
   fit option. If I run puppet interactively puppetd --debug --test I
   get
   the correct output based on the custom fact. I understand that puppet
   will
   not inherent environmental variables but since the fact is present I
   thought
   this approach would work. Am I wrong?
  
  
  
   I have been banging my head against the wall over this for some time.
 I
   appreciate any input.
  
   Thanks
  
   Ed
  
  
  
  
  
   --
  
   You received this message because you are subscribed to the Google
   Groups
   Puppet Users group.
  
   To post to this group, send email to puppet-us...@googlegroups.com.
  
   To unsubscribe from this group, send email to
   puppet-users+unsubscr...@googlegroups.compuppet-users%2bunsubscr...@googlegroups.com
 .
  
  
   For more options, visit this group at
   http://groups.google.com/group/puppet-users?hl=en.
  
  
  
  
  
  
   --
   Zach
   z...@puppetlabs.com
  
  
  
  
  
  
  
  
   --
  
   You received this message because you are subscribed to the Google
   Groups
   Puppet Users group.
  
   To post to this group, send email to puppet-us...@googlegroups.com.
  
   To unsubscribe from this group, send email to
   puppet-users+unsubscr...@googlegroups.compuppet-users%2bunsubscr...@googlegroups.com
 .
  
  
   For more options, visit this group

[Puppet Users] question about custom facts and environmental variables

2010-11-08 Thread Edward Bailey
I am having a great deal of trouble using a custom fact in a module and I am
hoping someone can help me out.

I am using  facter-1.5.0-2.el4 and  puppet-0.24.5-1.el4. I know these are
really old versions.

The custom fact is defined using an environmental variable

export FACTER_VERTICAL=dev fit

and I can see the fact in the output of facter

[x ~]# facter | grep -i vertical
 vertical = dev fit

In the module I am trying to use the fact in the following way

file{ /etc/yum.repos.d/env32-envision.repo:
ensure = present,
mode = 0664,
owner= root,
group= root,
content   = $vertical ? {
dev fit =
template(ads_yum2/env32-dev-fit.repo.erb),
default =
template(ads_yum2/env32-dev-staging.repo.erb),
require = File[/etc/yum.repos.d/base_os.repo],
}
}

When I restart puppet the output is the default option instead of the dev
fit option. If I run puppet interactively puppetd --debug --test I get
the correct output based on the custom fact. I understand that puppet will
not inherent environmental variables but since the fact is present I thought
this approach would work. Am I wrong?

I have been banging my head against the wall over this for some time. I
appreciate any input.

Thanks

Ed

-- 
You received this message because you are subscribed to the Google Groups 
Puppet Users group.
To post to this group, send email to puppet-us...@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] creating symlinks with wildcards

2009-05-12 Thread Edward Bailey
To explain the background behind my question

We have a number of situations where it would be great if I could have
puppet automatically maintain a symlink for a resource such as the Java JVM.


For example - we install the JDK in /usr/java so after the RPM  install, the
path to the JVM is /usr/java/jdk1.5.0_16. In order to simplify application
configuration, I like to make JAVA_HOME something generic like
/usr/java/java. I do this by creating a symlink

 ln -s /usr/java/jdk1.5.0_16/ /usr/java/java

I would like to have puppet maintain the symlink so that when YUM updates
the JVM, the symlink gets updated as well. I know I could do this in the RPM
or using exec but that sounds like too much work:)

Just for fun I tried to setup a file type in puppet to create the symlink
using a wildcard. I did not expect this to work given the need for shell
expansion.

file { /usr/java/java:
ensure = /usr/java/jdk1.*
}

Is their another way to do this in the puppet framework? I can do this using
exec, but I wanted to work from within puppet first.

Thanks for any ideas

Ed

--~--~-~--~~~---~--~~
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] new puppet server using passenger and having issues

2009-05-04 Thread Edward Bailey
Hello

I am working on migrating from a working mongrel based puppet server to a
passenger based puppet server and I need some help. I am still getting some
errors that I can't explain and I hope someone knows what I am doing wrong.

I have installed the following to setup passenger

gem list

*** LOCAL GEMS ***

fastthread (1.0.5)
Optimized replacement for thread.rb primitives
passenger (2.1.2)
Apache module for Ruby on Rails support.
rake (0.8.1)
Ruby based make-like utility.

I am using the following puppet rpms with 64bit RHEL5.2

 rpm -qa | grep puppet
puppet-0.24.6-1.el5
puppet-server-0.24.6-1.el5

This is my puppet.conf

[main]
vardir = /var/lib/puppet

logdir = /var/log/puppet

rundir = /var/run/puppet

ssldir = $vardir/ssl

factpath = /opt/puppet/facter

modulepath = /opt/puppet/modules

server = x-dev-puppet.xxx.com
certname = x-dev-puppet.xxx.com

pluginsync = true
factsync = true

[puppetmasterd]
certname = x-dev-puppet.xxx.com
reports = log,store

I followed the install directions on the wiki and ran puppetmaster before I
started passenger up and I also did some testing to make sure puppetmaster
works with this config.

When I do startup passenget and run the first instance of puppetd I get the
following

May  4 22:50:40 atl01osd101 puppetd[30102]: Reopening log files
May  4 22:50:40 atl01osd101 puppetd[30102]: Starting Puppet client version
0.24.6
May  4 22:50:40 atl01osd101 puppetd[30102]: Could not call fileserver.list:
#RuntimeError: HTTP-Error: 500 Internal Server Error
May  4 22:50:40 atl01osd101 puppetd[30102]: (/File[/var/lib/puppet/lib])
Failed to generate additional resources during transaction: HTTP-Error: 500
Internal Server Error
May  4 22:50:40 atl01osd101 puppetd[30102]: Could not call
fileserver.describe: #RuntimeError: HTTP-Error: 500 Internal Server Error
May  4 22:50:40 atl01osd101 puppetd[30102]: (/File[/var/lib/puppet/lib])
Failed to retrieve current state of resource: HTTP-Error: 500 Internal
Server Error Could not describe /plugins: HTTP-Error: 500 Internal Server
Error
May  4 22:50:40 atl01osd101 puppetd[30102]: Could not call fileserver.list:
#RuntimeError: HTTP-Error: 500 Internal Server Error
May  4 22:50:40 atl01osd101 puppetd[30102]: (/File[/var/lib/puppet/facts])
Failed to generate additional resources during transaction: HTTP-Error: 500
Internal Server Error
May  4 22:50:40 atl01osd101 puppetd[30102]: Could not call
fileserver.describe: #RuntimeError: HTTP-Error: 500 Internal Server Error
May  4 22:50:40 atl01osd101 puppetd[30102]: (/File[/var/lib/puppet/facts])
Failed to retrieve current state of resource: HTTP-Error: 500 Internal
Server Error Could not describe /facts: HTTP-Error: 500 Internal Server
Error
May  4 22:50:41 atl01osd101 puppetd[30102]: Could not call
puppetmaster.getconfig: #RuntimeError: HTTP-Error: 500 Internal Server
Error
May  4 22:50:41 atl01osd101 puppetd[30102]: Could not retrieve catalog:
HTTP-Error: 500 Internal Server Error
May  4 22:50:41 atl01osd101 puppetd[30102]: Starting catalog run
May  4 22:50:41 atl01osd101 puppetd[30102]:
(//Node[default]/test_class/File[/tmp/testfile]/ensure) created
May  4 22:50:41 atl01osd101 puppetd[30102]: Finished catalog run in 0.03
seconds

Notice that even with the errors the catalog still runs and the default
class executes. Any idea what is generating these errors? I dont understand
where some of the paths are coming from since these paths are not in my
puppet.conf. What  is overriding the variables I have already set?

Thanks in advance for any ideas.

Ed

--~--~-~--~~~---~--~~
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] Newbie Question.

2008-10-02 Thread Edward

Ok, I have gotten Puppet up and running. I am about to start testing
out some more of the functions but there does not appear to be any
place that describes all the options to a function.

For example File:   I have seen examples with
file { /etc/passwd: mode-777, ensure-file, owner-nobody, group-
nobody, source-puppet://xyz.com/linux-distro, target-/dev/null}

but I can not find any documentation on what are all the possible
setting for like ensure.

Now I am only using file as an example, as I am starting to look at
the commonly used modules Common, and virtual and I don't seem to
find any docs that would help me get started like

Apache Virtual Host:
Function: apache
Arguments
url: [describe argument for url and possible settings]
port:
Allow:
...
...
...


Is there anything like this or do I have to pick though the code of
ever options I want to use.

Thanks

Ed

--~--~-~--~~~---~--~~
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 [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en
-~--~~~~--~~--~--~---



[Puppet Users] Re: Newbie Question.

2008-10-02 Thread Edward

Heh, well I guess that is why I could find it. :)

Thanks that is a great start!

On Oct 2, 1:22 pm, Paul Lathrop [EMAIL PROTECTED] wrote:
 First of all, File and it's ilk are not functions, they are types
 or even better resource types. Second, the reference you are looking
 for is:

 http://reductivelabs.com/trac/puppet/wiki/TypeReference

 Hope that helps!

 --Paul

 On Thu, Oct 2, 2008 at 8:38 AM, Edward [EMAIL PROTECTED] wrote:

  Ok, I have gotten Puppet up and running. I am about to start testing
  out some more of the functions but there does not appear to be any
  place that describes all the options to a function.

  For example File:   I have seen examples with
  file { /etc/passwd: mode-777, ensure-file, owner-nobody, group-
 nobody, source-puppet://xyz.com/linux-distro, target-/dev/null}

  but I can not find any documentation on what are all the possible
  setting for like ensure.

  Now I am only using file as an example, as I am starting to look at
  the commonly used modules Common, and virtual and I don't seem to
  find any docs that would help me get started like

  Apache Virtual Host:
  Function: apache
  Arguments
  url: [describe argument for url and possible settings]
  port:
  Allow:
  ...
  ...
  ...

  Is there anything like this or do I have to pick though the code of
  ever options I want to use.

  Thanks

  Ed

--~--~-~--~~~---~--~~
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 [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en
-~--~~~~--~~--~--~---