Re: [Puppet Users] Re: RFC: Deprecate defined() function for Telly.

2012-01-20 Thread Felix Frank
But this is begging for trouble:

On 01/19/2012 09:22 PM, Ashley Penney wrote:
 An example:
 
 if ! defined(Mysql_user [${user}@${host}]) {
   mysql_user { ${user}@${host}:
 password_hash = mysql_password($password),
 require = File[/root/.my.cnf],
   }
 }

If your master processes this before the *other* declaration of that
mysql_user{}, you're back to square one and get errors about multiple
resource declaration.

I can see only pain down this road.

Nick's example on the other hand is quite enticing, I think. We want to
keep that (and include it in some Best Practices ;-)

-- 
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] RFC: Deprecate defined() function for Telly.

2012-01-20 Thread Dan Bode
I wind up using defined more than I should probably admit. yes it is
dangerous/confusing b/c of parse order dependencies, but it is also really
useful for a few use cases

* static resources in a defined resource type (avoids having to use classes
to store all static dependencies)

* the big reason I keep on leaning on it is for package dependencies. Often
something needs an additional package installed (and it is possible that
other modules may have that same package dependency, and I don't want to
have to create a new class every time that I need another package
(especially for something complicated that may have tons of package
dependencies)

puppet-apt has a relevant pull request where someone wants to wrap a
defined? around python-software-properties for this exact reason

https://github.com/puppetlabs/puppet-apt/pull/10

On Thu, Jan 19, 2012 at 9:18 AM, Nigel Kersten ni...@puppetlabs.com wrote:

 I'm looking for strong opinions on whether we should or shouldn't
 deprecate the defined() function for Telly, the next major Puppet release
 this year.

 jcbollinger put it quite well in another thread:

 Use of the defined function introduces a parse-order dependency, and
 the additional work you need to do to ensure that that dependency is always
 fulfilled overcomes any simplicity advantage that might otherwise exist.



 --
 Nigel Kersten
 Product Manager, Puppet Labs


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


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



Re: [Puppet Users] RFC: Deprecate defined() function for Telly.

2012-01-20 Thread Dan Bode
How about deprecating defined?(Type['title']), but allowing it to accept a
resource hash? This would definitely satisfy my use cases while alleviating
concerns about resource attribute conflicts/parse order dependencies

if defined?(
 {
package['foo'] = { ensure = present }
  }
) {
  package { 'foo': ensure = present }
}

On Fri, Jan 20, 2012 at 1:00 AM, Dan Bode d...@puppetlabs.com wrote:

 I wind up using defined more than I should probably admit. yes it is
 dangerous/confusing b/c of parse order dependencies, but it is also really
 useful for a few use cases

 * static resources in a defined resource type (avoids having to use
 classes to store all static dependencies)

 * the big reason I keep on leaning on it is for package dependencies.
 Often something needs an additional package installed (and it is possible
 that other modules may have that same package dependency, and I don't want
 to have to create a new class every time that I need another package
 (especially for something complicated that may have tons of package
 dependencies)

 puppet-apt has a relevant pull request where someone wants to wrap a
 defined? around python-software-properties for this exact reason

 https://github.com/puppetlabs/puppet-apt/pull/10


 On Thu, Jan 19, 2012 at 9:18 AM, Nigel Kersten ni...@puppetlabs.comwrote:

 I'm looking for strong opinions on whether we should or shouldn't
 deprecate the defined() function for Telly, the next major Puppet release
 this year.

 jcbollinger put it quite well in another thread:

 Use of the defined function introduces a parse-order dependency, and
 the additional work you need to do to ensure that that dependency is always
 fulfilled overcomes any simplicity advantage that might otherwise exist.



 --
 Nigel Kersten
 Product Manager, Puppet Labs


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




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



Re: [Puppet Users] RFC: Deprecate defined() function for Telly.

2012-01-20 Thread Felix Frank
Hi Dan,

sorry if I come around bluntly about this, but:

On 01/20/2012 10:00 AM, Dan Bode wrote:
 * static resources in a defined resource type (avoids having to use
 classes to store all static dependencies)
 
 * the big reason I keep on leaning on it is for package dependencies.
 Often something needs an additional package installed (and it is
 possible that other modules may have that same package dependency, and I
 don't want to have to create a new class every time that I need another
 package (especially for something complicated that may have tons of
 package dependencies)

I disagree. The coding overhead for a simple wrapper class is not much
larger than adding if defined(); of course, there is the matter of
organizing those wrappers in your modules, though.
Still, endorsing defined() abuse in such a manner will lead to bad (and
ugly) code all over the place (how do you protect against redeclaration
outside your own defined type?)

 puppet-apt has a relevant pull request where someone wants to wrap a
 defined? around python-software-properties for this exact reason
 
 https://github.com/puppetlabs/puppet-apt/pull/10

Again, I find the endorsement of clumsy design questionable. Common
dependencies should be isolated and exported into a mutual dependency
(module).

If there are real life difficulties that make such workflows impossible
at the moment, I still think that it's a bad idea to root flaw-prone
workarounds ever deeper into the module pool.

 How about deprecating defined?(Type['title']), but allowing it to accept
 a resource hash? This would definitely satisfy my use cases while
 alleviating concerns about resource attribute conflicts/parse order
 dependencies

 if defined?(
  {
 package['foo'] = { ensure = present }
   }
 ) {
   package { 'foo': ensure = present }
 }

Interesting. This will add some complexity to the DSL, which I'd be wary
of, but if there are truly compelling use cases, this might be
worthwile? I'm not sure. Does this not suffer from the same problems the
current defined() has?

Sincerely,
Felix

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



Re: [Puppet Users] Re: RFC: Deprecate defined() function for Telly.

2012-01-20 Thread Nan Liu
On Thu, Jan 19, 2012 at 12:17 PM, Nick Fagerlund
nick.fagerl...@puppetlabs.com wrote:


 On Jan 19, 11:01 am, R.I.Pienaar r...@devco.net wrote:
 - Original Message -
  Defined() doesn't suck! It's a 100% reliable way to check what
  classes and defined types are available to the autoloader. I challenge 
  anyone
  to find me an example of this usage that fails.

 can you give an example of this use case pls?

 Well... that's something I realized after I posted that, is I'm not
 sure if anyone WANTS a reliable way to test the autoloader. (Obviously
 people do want a way to check for resource instances, which is why
 defined() keeps getting used for that...)

 But anyway! Say you make a module for a network service and you want
 it to be able to manage its own firewall rule. You know of a defined
 type for firewall rules, and you're using it, but you want your module
 to be portable and you know of good reasons why someone wouldn't be
 using your iptables module.

 So, you can conditionally declare the rule if the defined type is
 available to the autoloader, and otherwise you don't attempt to manage
 the firewall and expect that the user has read the documentation and
 will make a hole for the service themselves.

 if defined(firewall::iptables::rule) {
  firewall::iptables::rule {'mysql_server':
    ...etc. etc.
  }
 }

 See? It's just a way to peek around at what the user has installed.

 Which... maybe implies that it should be renamed to installed().
 Dunno.

So there is a patch for your specific use case. We should at least
differentiate defined vs. declared and a patch was written to split
off defined() vs. declared():

http://projects.puppetlabs.com/issues/3124

The warning is simply:

Puppet.warning Detecting puppet resource via defined() function is
deprecated, use declared(). Detecting whether a class or resource type
is defined is still supported.

I think this part of the functionality makes sense to retain. For
those who care, feel free to take a peak at the code:
https://github.com/nanliu/puppet/tree/ticket/2.7.x/3124

Thanks,

Nan

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



[Puppet Users] Re: How to handle multiple modules requiring the same packages

2012-01-20 Thread Alessandro Franceschi
I add my 2 cents.
The alternatives proposed in the replies are ok for me, just would like to 
express an alternative approach that I''ve used in some situations.
It's due to different factors:
- Many packages to manage (but not necessarily)
- Option to include a module in an existing module set, where you don't 
know if and how the packages you want to use are already defined as 
resources.
- The fact that these packages generally don't need extra management 
(service or configuration files) and they do not harm if they are just 
installed and forgotten 
So the approach is to install them not as Puppet resources but via an exec:

class oracle::packages {

require oracle::params

file { install_oracle_dependency.sh:
mode= 750, owner = root, group = root,
content = $operatingsystem ? { 
centos = template(oracle/install_oracle_dependency.sh-redhat),
redhat = template(oracle/install_oracle_dependency.sh-redhat),
debian = template(oracle/install_oracle_dependency.sh-debian),
ubuntu = template(oracle/install_oracle_dependency.sh-debian),
suse   = template(oracle/install_oracle_dependency.sh-suse),
},
path= ${oracle::params::workdir}/install_oracle_dependency.sh,
}

exec { install_oracle_dependency.sh:
subscribe   = File[install_oracle_dependency.sh],
refreshonly = true,
timeout = 3600,
command = 
${oracle::params::workdir}/install_oracle_dependency.sh,
}

}

where  the template install_oracle_dependency.sh-redhat is something like

#!/bin/sh
# File Managed by Puppet
# Installs the packages required for installing Oracle applications
% if $architecture==i386 %
yum install -y binutils compat-db compat-libstdc++ compat-libstdc++-33 
elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ 
glibc glibc-common glibc-devel glibc-headers kernel-headers ksh libaio 
libaio-devel libgcc libgomp libstdc++ libstdc++-devel make numactl-devel pdksh 
sysstat unixODBC unixODBC-devel
yum groupinstall -y X Window System
% else %
yum install -y binutils compat-db compat-libstdc++ compat-libstdc++.i386 
compat-libstdc++-33 compat-libstdc++-33.i386  elfutils-libelf 
elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc.i386 
glibc-common glibc-devel glibc-devel.i386 glibc-headers kernel-headers ksh 
libaio libaio.i386 libaio-devel libaio-devel.i386 libgcc libgcc.i386 libgomp 
libstdc++ libstdc++.i386 libstdc++-devel make numactl-devel pdksh sysstat 
unixODBC unixODBC.i386 unixODBC-devel.i386
yum groupinstall -y X Window System
% end %

Opinions on this approach?

al

-- 
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/-/MtdH7nObxNQJ.
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] any cobbler management modules out there?

2012-01-20 Thread Nick
Hi,

I've been looking for a module for Cobbler, one which allows me to install a
kickstart mirror, configure the repos, distros, profiles and systems, as well
the basic settings.

I found:

  - A very old thread started by Sven Muller about writing a cobbler provider

http://groups.google.com/group/puppet-users/browse_thread/thread/b128386cab3a8d3e

 - A couple of existing, but quite basic modules:
  https://github.com/actionjack/puppet-cobbler
  http://forge.puppetlabs.com/ghoneycutt/cobbler

Unfortunately these seem to attempt only to manage /etc/cobbler/settings, and
nothing else.

Does anyone know of something I could use or build upon?

Cheers,

N

-- 
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] Scaling Puppet ?

2012-01-20 Thread Luke Bigum

Hi Dan,

A lot of people use a revision control system like SVN or Git, and each 
Puppet Master independently pulls a revision of Puppet code from this 
repository. You could manually control or setup some automatic method of 
upgrading your QA and prod machines to certain revisions. Your Dev 
puppet master then 'decides' what revision your QA and Prod puppet 
masters need to have checked out. There's a few Puppet modules around 
that handle checking out from repositories, or it wouldn't be difficult 
to write your own.


Depending on how many people you have committing to your Puppet 
repository though this could get troublesome, as if I wanted to push my 
revision 10 code to QA, i've also pushed my colleague's revision 7, 8 
and 9 code which has made changes I wasn't expecting. This is where we 
are at the moment, it's only started to become an issue as more and more 
people get comfortable with puppet. Our next evolution might be to have 
branches for each environment, so if I want to push my code from Dev to 
QA I just have to merge my change from Dev to QA in the Puppet 
repository and (hopefully) not have to worry about anything anyone else 
has been committing to Dev.


On 20/01/12 04:34, Dan White wrote:

I have questions about Puppet's scalability.
I am looking for info about how one might have multiple cooperating 
PuppetMasters on a network.

I have found old links that talk about merging Puppet and Func, but they all 
seem out of date.

My questions go more toward delegated puppet-mastering rather than data volume 
as I will attempt to explain:

Picture a three-tier operations set-up with development, QA, and production 
environments.

I have set up a Puppet Master in the development environment.
I would like to expand the use of Puppet to cover all three environments, but 
the practice is to minimize cross-traffic as much as possible.

So, what I would like to be able to do is have a Master PuppetMaster in dev 
which feeds two Deputy PuppetMasters in QA and production.
Each of the three PuppetMasters would manage the clients in their environment,
and the cross-traffic would be minimized to only between PuppetMasters.

I have brain-stormed on my own and I have a couple of possibilities, but they 
all feel like messy hacks so far.
So, I thought I'd ask here before trying any of my ideas.

--
Luke Bigum
Information Systems
+44 (0) 20 3192 2520
luke.bi...@lmax.com | http://www.lmax.com
LMAX, Yellow Building, 1A Nicholas Road, London W11 4AN


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

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



[Puppet Users] Re: pass values to puppet-lvm

2012-01-20 Thread Luke
I am finding the documentation pretty poor on this. Can someone please
help?

I don't understand why I can't pass my variables.

On Jan 17, 10:56 am, Luke lutay...@gmail.com wrote:
 i would like to use the module puppet-lvm and would like to pass
 values to it.

 I have it setup properly as a module but I can't for the lfe of me get
 it to take any values that I put in my baseconfig.pp in my home
 folder.

 like shouldn't something like this work??

 puppet-lvm {'setvolume':
         vg = 'myvg',
         pv = '/dev/sdb',
         fstype = 'ext3',
         name = 'mylv',
         size ='8G',
         }

 https://github.com/puppetlabs/puppet-lvm

-- 
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] any cobbler management modules out there?

2012-01-20 Thread Dan White
I am running Cobbler and Puppet together and I am not sure that a Puppet Module 
is appropriate for more than just the base settings.

Cobbler manages all its internal info.  To get Puppet to manage it would, IMO, 
either involve hacking Cobbler or wrapping Cobbler command line calls in Puppet 
exec resources.

Sounds messy to me.

I keep both Cobbler and Puppet in a Subversion repository.  I used this as a 
model to start from:
http://consultancy.edvoncken.net/index.php/HOWTO_Set_up_a_Subversion_repository_for_provisioning
and modified things to fit my environment.

If you want to preserve the contents of Cobbler, just back up 
/var/lib/cobbler/config/
Everything is in the JSON files.

“Sometimes I think the surest sign that intelligent life exists elsewhere in 
the universe is that none of it has tried to contact us.”
Bill Waterson (Calvin  Hobbes)

- Nick oinksoc...@letterboxes.org wrote:
 Hi,
 
 I've been looking for a module for Cobbler, one which allows me to install a
 kickstart mirror, configure the repos, distros, profiles and systems, as well
 the basic settings.
 
 I found:
 
   - A very old thread started by Sven Muller about writing a cobbler provider
 
 http://groups.google.com/group/puppet-users/browse_thread/thread/b128386cab3a8d3e
 
  - A couple of existing, but quite basic modules:
   https://github.com/actionjack/puppet-cobbler
   http://forge.puppetlabs.com/ghoneycutt/cobbler
 
 Unfortunately these seem to attempt only to manage /etc/cobbler/settings, and
 nothing else.
 
 Does anyone know of something I could use or build upon?
 
 Cheers,
 
 N
 
 -- 
 You received this message because you are subscribed to the Google Groups 
 Puppet Users group.
 To post to this group, send email to puppet-users@googlegroups.com.
 To unsubscribe from this group, send email to 
 puppet-users+unsubscr...@googlegroups.com.
 For more options, visit this group at 
 http://groups.google.com/group/puppet-users?hl=en.
 

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



[Puppet Users] Re: How to handle multiple modules requiring the same packages

2012-01-20 Thread jcbollinger


On Jan 20, 4:34 am, Alessandro Franceschi a...@lab42.it wrote:
 I add my 2 cents.
 The alternatives proposed in the replies are ok for me, just would like to
 express an alternative approach that I''ve used in some situations.
 It's due to different factors:
 - Many packages to manage (but not necessarily)
 - Option to include a module in an existing module set, where you don't
 know if and how the packages you want to use are already defined as
 resources.
 - The fact that these packages generally don't need extra management
 (service or configuration files) and they do not harm if they are just
 installed and forgotten
 So the approach is to install them not as Puppet resources but via an exec:

 class oracle::packages {

     require oracle::params

     file { install_oracle_dependency.sh:
         mode    = 750, owner = root, group = root,
         content = $operatingsystem ? {
             centos = template(oracle/install_oracle_dependency.sh-redhat),
             redhat = template(oracle/install_oracle_dependency.sh-redhat),
             debian = template(oracle/install_oracle_dependency.sh-debian),
             ubuntu = template(oracle/install_oracle_dependency.sh-debian),
             suse   = template(oracle/install_oracle_dependency.sh-suse),
             },
         path    = ${oracle::params::workdir}/install_oracle_dependency.sh,
     }

     exec { install_oracle_dependency.sh:
         subscribe   = File[install_oracle_dependency.sh],
         refreshonly = true,
         timeout     = 3600,
         command     = 
 ${oracle::params::workdir}/install_oracle_dependency.sh,
     }

 }

 where  the template install_oracle_dependency.sh-redhat is something like

 #!/bin/sh
 # File Managed by Puppet
 # Installs the packages required for installing Oracle applications
 % if $architecture==i386 %
 yum install -y binutils compat-db compat-libstdc++ compat-libstdc++-33 
 elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc 
 gcc-c++ glibc glibc-common glibc-devel glibc-headers kernel-headers ksh 
 libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel make 
 numactl-devel pdksh sysstat unixODBC unixODBC-devel
 yum groupinstall -y X Window System
 % else %
 yum install -y binutils compat-db compat-libstdc++ compat-libstdc++.i386 
 compat-libstdc++-33 compat-libstdc++-33.i386  elfutils-libelf 
 elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc 
 glibc.i386 glibc-common glibc-devel glibc-devel.i386 glibc-headers 
 kernel-headers ksh libaio libaio.i386 libaio-devel libaio-devel.i386 libgcc 
 libgcc.i386 libgomp libstdc++ libstdc++.i386 libstdc++-devel make 
 numactl-devel pdksh sysstat unixODBC unixODBC.i386 unixODBC-devel.i386
 yum groupinstall -y X Window System
 % end %

 Opinions on this approach?


1) Many of the packages you mention are pretty fundamental.  If you
want to manage them then it would be better to group them into a
module for your standard environment, instead of allowing various
other modules to manage them.

2) It would be better to let the package management system handle
finding and installing depenencies.  Where the software you want to
install is not available pre-packaged and cannot easily be packaged
locally, it would still be better to build a requirements-only package
(e.g. oracle-dependencies) and manage that.

3) If you want to name the packages explicitly in your Puppet
configuration, then it would be better to declare them in some central
place as virtual Package resources.  Modules that want them would then
*realize* them instead of declaring them.  It is not a problem for a
virtual resource to be realized many times for the same node.


John

-- 
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] Scaling Puppet ?

2012-01-20 Thread Dan White
Thanks for responding.

This approach is similar to one of the (messy) ideas I have.

It seems to me that there are no built-in features that will let me do this, so 
I am (once again) trail-blazing.

I like the idea of the Dev/Overlord PM using Puppet/(revision control) to run 
the Deputy PM's.  That keeps everything in the revision control system.

Thank you for sharing that.

He who receives an idea from me, receives instruction himself without 
lessening mine; as he who lights his taper at mine, receives light without 
darkening me.”
Thomas Jefferson

- Luke Bigum luke.bi...@lmax.com wrote:
 Hi Dan,
 
 A lot of people use a revision control system like SVN or Git, and each 
 Puppet Master independently pulls a revision of Puppet code from this 
 repository. You could manually control or setup some automatic method of 
 upgrading your QA and prod machines to certain revisions. Your Dev 
 puppet master then 'decides' what revision your QA and Prod puppet 
 masters need to have checked out. There's a few Puppet modules around 
 that handle checking out from repositories, or it wouldn't be difficult 
 to write your own.
 
 Depending on how many people you have committing to your Puppet 
 repository though this could get troublesome, as if I wanted to push my 
 revision 10 code to QA, i've also pushed my colleague's revision 7, 8 
 and 9 code which has made changes I wasn't expecting. This is where we 
 are at the moment, it's only started to become an issue as more and more 
 people get comfortable with puppet. Our next evolution might be to have 
 branches for each environment, so if I want to push my code from Dev to 
 QA I just have to merge my change from Dev to QA in the Puppet 
 repository and (hopefully) not have to worry about anything anyone else 
 has been committing to Dev.
 
 On 20/01/12 04:34, Dan White wrote:
  I have questions about Puppet's scalability.
  I am looking for info about how one might have multiple cooperating 
  PuppetMasters on a network.
 
  I have found old links that talk about merging Puppet and Func, but they 
  all seem out of date.
 
  My questions go more toward delegated puppet-mastering rather than data 
  volume as I will attempt to explain:
 
  Picture a three-tier operations set-up with development, QA, and production 
  environments.
 
  I have set up a Puppet Master in the development environment.
  I would like to expand the use of Puppet to cover all three environments, 
  but the practice is to minimize cross-traffic as much as possible.
 
  So, what I would like to be able to do is have a Master PuppetMaster in dev 
  which feeds two Deputy PuppetMasters in QA and production.
  Each of the three PuppetMasters would manage the clients in their 
  environment,
  and the cross-traffic would be minimized to only between PuppetMasters.
 
  I have brain-stormed on my own and I have a couple of possibilities, but 
  they all feel like messy hacks so far.
  So, I thought I'd ask here before trying any of my ideas.
 -- 
 Luke Bigum
 Information Systems
 +44 (0) 20 3192 2520
 luke.bi...@lmax.com | http://www.lmax.com
 LMAX, Yellow Building, 1A Nicholas Road, London W11 4AN
 
 
 The information in this e-mail and any attachment is confidential and is 
 intended only for the named recipient(s). The e-mail may not be disclosed or 
 used by any person other than the addressee, nor may it be copied in any way. 
 If you are not a named recipient please notify the sender immediately and 
 delete any copies of this message. Any unauthorized copying, disclosure or 
 distribution of the material in this e-mail is strictly forbidden. Any view 
 or opinions presented are solely those of the author and do not necessarily 
 represent those of the company.
 
 -- 
 You received this message because you are subscribed to the Google Groups 
 Puppet Users group.
 To post to this group, send email to puppet-users@googlegroups.com.
 To unsubscribe from this group, send email to 
 puppet-users+unsubscr...@googlegroups.com.
 For more options, visit this group at 
 http://groups.google.com/group/puppet-users?hl=en.
 

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



Re: [Puppet Users] Re: RFC: Deprecate defined() function for Telly.

2012-01-20 Thread Ashley Penney
What would you recommend as an alternative way to handle these cases?  I
suppose the mysql lib could be extended to be able to check for users (not
easily, but it could be done), but what about in the second case where I
want to check for various roles being set as classes and then use those to
decide the configuration of foreman.  Volcane said that setting variables
in the other classes and checking for those isn't going to cut it either.
 What's a good pattern for this?

On Fri, Jan 20, 2012 at 3:39 AM, Felix Frank 
felix.fr...@alumni.tu-berlin.de wrote:

 But this is begging for trouble:

 On 01/19/2012 09:22 PM, Ashley Penney wrote:
  An example:
 
  if ! defined(Mysql_user [${user}@${host}]) {
mysql_user { ${user}@${host}:
  password_hash = mysql_password($password),
  require = File[/root/.my.cnf],
}
  }

 If your master processes this before the *other* declaration of that
 mysql_user{}, you're back to square one and get errors about multiple
 resource declaration.

 I can see only pain down this road.

 Nick's example on the other hand is quite enticing, I think. We want to
 keep that (and include it in some Best Practices ;-)

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



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



[Puppet Users] Re: RFC: Deprecate defined() function for Telly.

2012-01-20 Thread jcbollinger


On Jan 19, 2:17 pm, Nick Fagerlund nick.fagerl...@puppetlabs.com
wrote:
 On Jan 19, 11:01 am, R.I.Pienaar r...@devco.net wrote:

  - Original Message -
   Defined() doesn't suck! It's a 100% reliable way to check what
   classes and defined types are available to the autoloader. I challenge 
   anyone
   to find me an example of this usage that fails.

  can you give an example of this use case pls?

 Well... that's something I realized after I posted that, is I'm not
 sure if anyone WANTS a reliable way to test the autoloader. (Obviously
 people do want a way to check for resource instances, which is why
 defined() keeps getting used for that...)

 But anyway! Say you make a module for a network service and you want
 it to be able to manage its own firewall rule. You know of a defined
 type for firewall rules, and you're using it, but you want your module
 to be portable and you know of good reasons why someone wouldn't be
 using your iptables module.

 So, you can conditionally declare the rule if the defined type is
 available to the autoloader, and otherwise you don't attempt to manage
 the firewall and expect that the user has read the documentation and
 will make a hole for the service themselves.

 if defined(firewall::iptables::rule) {
   firewall::iptables::rule {'mysql_server':
     ...etc. etc.
   }

 }

 See? It's just a way to peek around at what the user has installed.

 Which... maybe implies that it should be renamed to installed().
 Dunno.


I don't think I would ever write code like that myself.  I would
rather document module and class dependencies, and expect to have
catalog compilation fail if I try to use classes or other module
features whose documented dependencies are not available.  That's a
style and best practices position, however.  I would be satisfied to
have only defined()'s support for resource references be deprecated.

Alternatively, defined() could be wholly deprecated, but a new
function (e.g. installed()) introduced that is a work-alike except
for not accepting resource references.


John

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



[Puppet Users] Re: RFC: Deprecate defined() function for Telly.

2012-01-20 Thread jcbollinger


On Jan 20, 3:00 am, Dan Bode d...@puppetlabs.com wrote:
 * the big reason I keep on leaning on it is for package dependencies. Often
 something needs an additional package installed (and it is possible that
 other modules may have that same package dependency, and I don't want to
 have to create a new class every time that I need another package
 (especially for something complicated that may have tons of package
 dependencies)


You describe one of the core use cases for virtual resources.  Instead
of relying on the defined() function, you can
1) define virtual Package resources in some central place(s) for all
the packages your nodes might want to manage,
2) include that class wherever needed, and
3) *realize* Packages as appropriate wherever you know you need
certain ones.

That avoids parse-order issues, doesn't require you to keep multiple
definitions of the same resource synchronized, and makes it easier to
find specific Package definitions among your manifests.  In some cases
you might even be able to leverage collections with selection
predicates to simplify and clarify your manifests.  I don't see a
single reason to prefer use of 'defined' for this case.


John

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



[Puppet Users] Re: RFC: Deprecate defined() function for Telly.

2012-01-20 Thread jcbollinger


On Jan 20, 3:38 am, Nan Liu n...@puppetlabs.com wrote:
 So there is a patch for your specific use case. We should at least
 differentiate defined vs. declared and a patch was written to split
 off defined() vs. declared():

 http://projects.puppetlabs.com/issues/3124

 The warning is simply:

 Puppet.warning Detecting puppet resource via defined() function is
 deprecated, use declared(). Detecting whether a class or resource type
 is defined is still supported.

 I think this part of the functionality makes sense to retain. For
 those who care, feel free to take a peak at the 
 code:https://github.com/nanliu/puppet/tree/ticket/2.7.x/3124


So perhaps declared() should be deprecated, with the suggestion to use
it being removed from the warning message emitted by defined().


John

-- 
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] Scaling Puppet ?

2012-01-20 Thread Doug Chapman
There are some good write ups on this topic at:

http://docs.puppetlabs.com/guides/environment.html
http://puppetlabs.com/blog/git-workflow-and-puppet-environments/

You are certainly not the first to use this type of workflow.

On Fri, Jan 20, 2012 at 6:10 AM, Dan White y...@comcast.net wrote:
 Thanks for responding.

 This approach is similar to one of the (messy) ideas I have.

 It seems to me that there are no built-in features that will let me do this, 
 so I am (once again) trail-blazing.

 I like the idea of the Dev/Overlord PM using Puppet/(revision control) to run 
 the Deputy PM's.  That keeps everything in the revision control system.

 Thank you for sharing that.

 He who receives an idea from me, receives instruction himself without 
 lessening mine; as he who lights his taper at mine, receives light without 
 darkening me.”
 Thomas Jefferson

 - Luke Bigum luke.bi...@lmax.com wrote:
 Hi Dan,

 A lot of people use a revision control system like SVN or Git, and each
 Puppet Master independently pulls a revision of Puppet code from this
 repository. You could manually control or setup some automatic method of
 upgrading your QA and prod machines to certain revisions. Your Dev
 puppet master then 'decides' what revision your QA and Prod puppet
 masters need to have checked out. There's a few Puppet modules around
 that handle checking out from repositories, or it wouldn't be difficult
 to write your own.

 Depending on how many people you have committing to your Puppet
 repository though this could get troublesome, as if I wanted to push my
 revision 10 code to QA, i've also pushed my colleague's revision 7, 8
 and 9 code which has made changes I wasn't expecting. This is where we
 are at the moment, it's only started to become an issue as more and more
 people get comfortable with puppet. Our next evolution might be to have
 branches for each environment, so if I want to push my code from Dev to
 QA I just have to merge my change from Dev to QA in the Puppet
 repository and (hopefully) not have to worry about anything anyone else
 has been committing to Dev.

 On 20/01/12 04:34, Dan White wrote:
  I have questions about Puppet's scalability.
  I am looking for info about how one might have multiple cooperating 
  PuppetMasters on a network.
 
  I have found old links that talk about merging Puppet and Func, but they 
  all seem out of date.
 
  My questions go more toward delegated puppet-mastering rather than data 
  volume as I will attempt to explain:
 
  Picture a three-tier operations set-up with development, QA, and 
  production environments.
 
  I have set up a Puppet Master in the development environment.
  I would like to expand the use of Puppet to cover all three environments, 
  but the practice is to minimize cross-traffic as much as possible.
 
  So, what I would like to be able to do is have a Master PuppetMaster in 
  dev which feeds two Deputy PuppetMasters in QA and production.
  Each of the three PuppetMasters would manage the clients in their 
  environment,
  and the cross-traffic would be minimized to only between PuppetMasters.
 
  I have brain-stormed on my own and I have a couple of possibilities, but 
  they all feel like messy hacks so far.
  So, I thought I'd ask here before trying any of my ideas.
 --
 Luke Bigum
 Information Systems
 +44 (0) 20 3192 2520
 luke.bi...@lmax.com | http://www.lmax.com
 LMAX, Yellow Building, 1A Nicholas Road, London W11 4AN


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

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


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


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

Re: [Puppet Users] any cobbler management modules out there?

2012-01-20 Thread Nick
On 20/01/12 13:57, Dan White wrote:
 I am running Cobbler and Puppet together and I am not sure that a Puppet
 Module is appropriate for more than just the base settings.
 
 Cobbler manages all its internal info.  To get Puppet to manage it would,
 IMO, either involve hacking Cobbler or wrapping Cobbler command line calls in
 Puppet exec resources.

Yes - I had imagined the latter.

 Sounds messy to me.

Yes again.  But then that's nothing new in this field.

 I keep both Cobbler and Puppet in a Subversion repository.  I used this as a
 model to start from: 
 http://consultancy.edvoncken.net/index.php/HOWTO_Set_up_a_Subversion_repository_for_provisioning

 and modified things to fit my environment.

Interesting; although there's a big blank there when it gets to Puppet.

 If you want to preserve the contents of Cobbler, just back up
 /var/lib/cobbler/config/ Everything is in the JSON files.

I keep Puppet in Git.  However, it is not documented and wasn't obvious to me
that you can version control the entirety of Cobbler and not tread on its toes.
 However, if you are doing that, obviously it is possible, and this seems a good
way to sidestep the problem. For now, anyway.

I'll see if I can shoehorn the cobbler directories into my puppet repository
somewhere, perhaps under modules/cobbler/files...

Then the Puppet bit would just need to deploy that.  (Ignoring SCM tracking,
which won't play nicely with a scheme like this, by default.) Actually since I'm
currently using a masterless Puppet config and checking the source out
everywhere, deployment would just be a matter of symlinking.

However, this is only able to cut and paste a working cobbler system, right?  So
far as I can see, I can't use it to drive things from Puppet.  What I was hoping
might be possible is to have one manifest defining a node's parameters, and use
external references within it (or a masterless equivalent along the lines of
[1]) to import these into Cobbler.



Thanks,

Nick

1. http://current.workingdirectory.net/posts/2011/puppet-without-masters/

-- 
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] any cobbler management modules out there?

2012-01-20 Thread Ashley Penney
While this isn't what you want to hear, exactly, there's a bootstrapping
tool that
works fantastic with Puppet at http://www.theforeman.org/ - it's probably
why
you don't see many cobbler modules.  People like me who used cobbler when
starting out with Puppet migrated off to Foreman with time.

On Fri, Jan 20, 2012 at 12:25 PM, Nick oinksoc...@letterboxes.org wrote:

 On 20/01/12 13:57, Dan White wrote:
  I am running Cobbler and Puppet together and I am not sure that a Puppet
  Module is appropriate for more than just the base settings.
 
  Cobbler manages all its internal info.  To get Puppet to manage it would,
  IMO, either involve hacking Cobbler or wrapping Cobbler command line
 calls in
  Puppet exec resources.

 Yes - I had imagined the latter.

  Sounds messy to me.

 Yes again.  But then that's nothing new in this field.

  I keep both Cobbler and Puppet in a Subversion repository.  I used this
 as a
  model to start from:
  
 http://consultancy.edvoncken.net/index.php/HOWTO_Set_up_a_Subversion_repository_for_provisioning
 
 
  and modified things to fit my environment.

 Interesting; although there's a big blank there when it gets to Puppet.

  If you want to preserve the contents of Cobbler, just back up
  /var/lib/cobbler/config/ Everything is in the JSON files.

 I keep Puppet in Git.  However, it is not documented and wasn't obvious to
 me
 that you can version control the entirety of Cobbler and not tread on its
 toes.
  However, if you are doing that, obviously it is possible, and this seems
 a good
 way to sidestep the problem. For now, anyway.

 I'll see if I can shoehorn the cobbler directories into my puppet
 repository
 somewhere, perhaps under modules/cobbler/files...

 Then the Puppet bit would just need to deploy that.  (Ignoring SCM
 tracking,
 which won't play nicely with a scheme like this, by default.) Actually
 since I'm
 currently using a masterless Puppet config and checking the source out
 everywhere, deployment would just be a matter of symlinking.

 However, this is only able to cut and paste a working cobbler system,
 right?  So
 far as I can see, I can't use it to drive things from Puppet.  What I was
 hoping
 might be possible is to have one manifest defining a node's parameters,
 and use
 external references within it (or a masterless equivalent along the lines
 of
 [1]) to import these into Cobbler.



 Thanks,

 Nick

 1. http://current.workingdirectory.net/posts/2011/puppet-without-masters/

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



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



Re: [Puppet Users] any cobbler management modules out there?

2012-01-20 Thread Garrett Honeycutt
On 1/20/12 2:34 AM, Nick wrote:
 Hi,
 
 I've been looking for a module for Cobbler, one which allows me to install a
 kickstart mirror, configure the repos, distros, profiles and systems, as well
 the basic settings.
 
 I found:
 
   - A very old thread started by Sven Muller about writing a cobbler provider
 
 http://groups.google.com/group/puppet-users/browse_thread/thread/b128386cab3a8d3e
 
  - A couple of existing, but quite basic modules:
   https://github.com/actionjack/puppet-cobbler
   http://forge.puppetlabs.com/ghoneycutt/cobbler
 
 Unfortunately these seem to attempt only to manage /etc/cobbler/settings, and
 nothing else.
 
 Does anyone know of something I could use or build upon?
 
 Cheers,
 
 N
 

My cobbler module[1] is pretty old and I imagine crusty by now. You
mentioned that the module was basic and implied you wanted to manage
other things.

What other things should a cobbler module be managing? Perhaps we could
work together on updating this module to offer more functionality and
flexibility.

[1] - http://forge.puppetlabs.com/ghoneycutt/cobbler

-g

-- 
Garrett Honeycutt

206.414.8658
http://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-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.



[Puppet Users] client not getting updates no error message

2012-01-20 Thread bhagyesh
whenever i run a test from client it finishes sucessfully but client
is not getting any configuration changes from server

[root@PROXY-02 tmp]# puppetd --noop --test
notice: Ignoring --listen on onetime run
info: Caching catalog for proxy-02.carnation.in
info: Applying configuration version '1327091881'
notice: Finished catalog run in 0.02 seconds

[root@PROXY-03 modules]# puppet apply  file/manifests/init.pp -d
debug: Creating default schedules
debug: Failed to load library 'ldap' for feature 'ldap'
debug: Puppet::Type::User::ProviderLdap: feature ldap is missing
debug: Puppet::Type::User::ProviderDirectoryservice: file /usr/bin/
dscl does not exist
debug: Puppet::Type::User::ProviderUser_role_add: file roledel does
not exist
debug: Puppet::Type::User::ProviderPw: file pw does not exist
debug: Failed to load library 'rubygems' for feature 'rubygems'
debug: Puppet::Type::File::ProviderMicrosoft_windows: feature
microsoft_windows is missing
debug: /File[/var/log/puppet/http.log]: Autorequiring File[/var/log/
puppet]
debug: /File[/var/lib/puppet/client_data]: Autorequiring File[/var/lib/
puppet]
debug: /File[/var/lib/puppet/ssl/certs/proxy-03.carnation.in.pem]:
Autorequiring File[/var/lib/puppet/ssl/certs]
debug: /File[/var/lib/puppet/ssl/private_keys/
proxy-03.carnation.in.pem]: Autorequiring File[/var/lib/puppet/ssl/
private_keys]
debug: /File[/var/lib/puppet/ssl]: Autorequiring File[/var/lib/puppet]
debug: /File[/var/lib/puppet/state/last_run_summary.yaml]:
Autorequiring File[/var/lib/puppet/state]
debug: /File[/var/lib/puppet/ssl/crl.pem]: 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/ssl/certificate_requests]: Autorequiring
File[/var/lib/puppet/ssl]
debug: /File[/var/lib/puppet/state/graphs]: Autorequiring File[/var/
lib/puppet/state]
debug: /File[/var/lib/puppet/ssl/certs/ca.pem]: Autorequiring File[/
var/lib/puppet/ssl/certs]
debug: /File[/var/lib/puppet/facts]: Autorequiring File[/var/lib/
puppet]
debug: /File[/var/lib/puppet/state]: Autorequiring File[/var/lib/
puppet]
debug: /File[/var/lib/puppet/ssl/private]: Autorequiring File[/var/lib/
puppet/ssl]
debug: /File[/var/lib/puppet/client_yaml]: Autorequiring File[/var/lib/
puppet]
debug: /File[/var/lib/puppet/ssl/public_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]: Autorequiring File[/var/lib/
puppet/ssl]
debug: /File[/var/lib/puppet/state/state.yaml]: Autorequiring File[/
var/lib/puppet/state]
debug: /File[/var/lib/puppet/ssl/public_keys/
proxy-03.carnation.in.pem]: Autorequiring File[/var/lib/puppet/ssl/
public_keys]
debug: /File[/var/lib/puppet/lib]: Autorequiring File[/var/lib/puppet]
debug: Finishing transaction 23780377254580
debug: Loaded state in 0.00 seconds
debug: Loaded state in 0.00 seconds
info: Applying configuration version '1327090832'
debug: Finishing transaction 23780377878220
debug: Storing state
debug: Stored state in 0.01 seconds
notice: Finished catalog run in 0.03 seconds

[root@PROXY-02 tmp]# puppetd --server PROXY-03.carnation.in --test --
noop --evaltrace
notice: Ignoring --listen on onetime run
info: Caching catalog for proxy-02.carnation.in
info: Applying configuration version '1327092221'
info: /Schedule[weekly]: valuated in 0.00 seconds
info: /Schedule[monthly]: valuated in 0.00 seconds
info: /Schedule[hourly]: valuated in 0.00 seconds
info: /Schedule[puppet]: valuated in 0.00 seconds
info: /Filebucket[puppet]: valuated in 0.00 seconds
info: /Schedule[daily]: valuated in 0.00 seconds
info: /Schedule[never]: valuated in 0.00 seconds
notice: Finished catalog run in 0.02 seconds


my server configuration looks like this
[root@PROXY-03 puppet]# tree
.
|-- auth.conf
|-- files
|-- fileserver.conf
|-- manifests
|   |-- nodes.pp
|   |-- sites.pp
|   `-- templates.pp
|-- modules
|   |-- file
|   |   `-- manifests
|   |   `-- init.pp
|   `-- networking
|   |-- files
|   |   `-- resolv.conf
|   `-- manifests
|   `-- init.pp
`-- puppet.conf

8 directories, 9 files

[root@PROXY-03 puppet]# cat manifests/nodes.pp
node 'basenode' {
  include baseclass
}

node 'PROXY-02.carnation.in' inherits basenode {
}

[root@PROXY-03 puppet]# cat manifests/sites.pp
import nodes
import templates

filebucket { main: server = puppet }

[root@PROXY-03 puppet]# cat manifests/templates.pp
class baseclass {
include networking::resolver
}

node default {
include baseclass
}

[root@PROXY-03 puppet]# cat modules/networking/manifests/init.pp
class networking {
# Here you can add stuff to be inhereted by your networking
classes
# We won't bother for this demonstration, but just for show!
}

class networking::resolver inherits networking {
  file { /tmp/resolv.conf:
  ensure = present,
  #source = puppet:///modules/networking/resolv.conf,

Re: [Puppet Users] client not getting updates no error message

2012-01-20 Thread Christopher McCoy
--noop means no operation
On Jan 20, 2012 3:50 PM, bhagyesh vision2...@gmail.com wrote:

 whenever i run a test from client it finishes sucessfully but client
 is not getting any configuration changes from server

 [root@PROXY-02 tmp]# puppetd --noop --test
 notice: Ignoring --listen on onetime run
 info: Caching catalog for proxy-02.carnation.in
 info: Applying configuration version '1327091881'
 notice: Finished catalog run in 0.02 seconds

 [root@PROXY-03 modules]# puppet apply  file/manifests/init.pp -d
 debug: Creating default schedules
 debug: Failed to load library 'ldap' for feature 'ldap'
 debug: Puppet::Type::User::ProviderLdap: feature ldap is missing
 debug: Puppet::Type::User::ProviderDirectoryservice: file /usr/bin/
 dscl does not exist
 debug: Puppet::Type::User::ProviderUser_role_add: file roledel does
 not exist
 debug: Puppet::Type::User::ProviderPw: file pw does not exist
 debug: Failed to load library 'rubygems' for feature 'rubygems'
 debug: Puppet::Type::File::ProviderMicrosoft_windows: feature
 microsoft_windows is missing
 debug: /File[/var/log/puppet/http.log]: Autorequiring File[/var/log/
 puppet]
 debug: /File[/var/lib/puppet/client_data]: Autorequiring File[/var/lib/
 puppet]
 debug: /File[/var/lib/puppet/ssl/certs/proxy-03.carnation.in.pem]:
 Autorequiring File[/var/lib/puppet/ssl/certs]
 debug: /File[/var/lib/puppet/ssl/private_keys/
 proxy-03.carnation.in.pem]: Autorequiring File[/var/lib/puppet/ssl/
 private_keys]
 debug: /File[/var/lib/puppet/ssl]: Autorequiring File[/var/lib/puppet]
 debug: /File[/var/lib/puppet/state/last_run_summary.yaml]:
 Autorequiring File[/var/lib/puppet/state]
 debug: /File[/var/lib/puppet/ssl/crl.pem]: 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/ssl/certificate_requests]: Autorequiring
 File[/var/lib/puppet/ssl]
 debug: /File[/var/lib/puppet/state/graphs]: Autorequiring File[/var/
 lib/puppet/state]
 debug: /File[/var/lib/puppet/ssl/certs/ca.pem]: Autorequiring File[/
 var/lib/puppet/ssl/certs]
 debug: /File[/var/lib/puppet/facts]: Autorequiring File[/var/lib/
 puppet]
 debug: /File[/var/lib/puppet/state]: Autorequiring File[/var/lib/
 puppet]
 debug: /File[/var/lib/puppet/ssl/private]: Autorequiring File[/var/lib/
 puppet/ssl]
 debug: /File[/var/lib/puppet/client_yaml]: Autorequiring File[/var/lib/
 puppet]
 debug: /File[/var/lib/puppet/ssl/public_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]: Autorequiring File[/var/lib/
 puppet/ssl]
 debug: /File[/var/lib/puppet/state/state.yaml]: Autorequiring File[/
 var/lib/puppet/state]
 debug: /File[/var/lib/puppet/ssl/public_keys/
 proxy-03.carnation.in.pem]: Autorequiring File[/var/lib/puppet/ssl/
 public_keys]
 debug: /File[/var/lib/puppet/lib]: Autorequiring File[/var/lib/puppet]
 debug: Finishing transaction 23780377254580
 debug: Loaded state in 0.00 seconds
 debug: Loaded state in 0.00 seconds
 info: Applying configuration version '1327090832'
 debug: Finishing transaction 23780377878220
 debug: Storing state
 debug: Stored state in 0.01 seconds
 notice: Finished catalog run in 0.03 seconds

 [root@PROXY-02 tmp]# puppetd --server PROXY-03.carnation.in --test --
 noop --evaltrace
 notice: Ignoring --listen on onetime run
 info: Caching catalog for proxy-02.carnation.in
 info: Applying configuration version '1327092221'
 info: /Schedule[weekly]: valuated in 0.00 seconds
 info: /Schedule[monthly]: valuated in 0.00 seconds
 info: /Schedule[hourly]: valuated in 0.00 seconds
 info: /Schedule[puppet]: valuated in 0.00 seconds
 info: /Filebucket[puppet]: valuated in 0.00 seconds
 info: /Schedule[daily]: valuated in 0.00 seconds
 info: /Schedule[never]: valuated in 0.00 seconds
 notice: Finished catalog run in 0.02 seconds


 my server configuration looks like this
 [root@PROXY-03 puppet]# tree
 .
 |-- auth.conf
 |-- files
 |-- fileserver.conf
 |-- manifests
 |   |-- nodes.pp
 |   |-- sites.pp
 |   `-- templates.pp
 |-- modules
 |   |-- file
 |   |   `-- manifests
 |   |   `-- init.pp
 |   `-- networking
 |   |-- files
 |   |   `-- resolv.conf
 |   `-- manifests
 |   `-- init.pp
 `-- puppet.conf

 8 directories, 9 files

 [root@PROXY-03 puppet]# cat manifests/nodes.pp
 node 'basenode' {
  include baseclass
 }

 node 'PROXY-02.carnation.in' inherits basenode {
 }

 [root@PROXY-03 puppet]# cat manifests/sites.pp
 import nodes
 import templates

 filebucket { main: server = puppet }

 [root@PROXY-03 puppet]# cat manifests/templates.pp
 class baseclass {
include networking::resolver
 }

 node default {
include baseclass
 }

 [root@PROXY-03 puppet]# cat modules/networking/manifests/init.pp
 class networking {
# Here you can add stuff to be inhereted by your networking
 classes
# We won't bother for this demonstration, but 

[Puppet Users] Re: client not getting updates no error message

2012-01-20 Thread bhagyesh
y a i know that ! but it should show what it will do if --noop is not
applied.

On Jan 21, 1:58 am, Christopher McCoy c.mcco...@gmail.com wrote:
 --noop means no operation
 On Jan 20, 2012 3:50 PM, bhagyesh vision2...@gmail.com wrote:



  whenever i run a test from client it finishes sucessfully but client
  is not getting any configuration changes from server

  [root@PROXY-02 tmp]# puppetd --noop --test
  notice: Ignoring --listen on onetime run
  info: Caching catalog for proxy-02.carnation.in
  info: Applying configuration version '1327091881'
  notice: Finished catalog run in 0.02 seconds

  [root@PROXY-03 modules]# puppet apply  file/manifests/init.pp -d
  debug: Creating default schedules
  debug: Failed to load library 'ldap' for feature 'ldap'
  debug: Puppet::Type::User::ProviderLdap: feature ldap is missing
  debug: Puppet::Type::User::ProviderDirectoryservice: file /usr/bin/
  dscl does not exist
  debug: Puppet::Type::User::ProviderUser_role_add: file roledel does
  not exist
  debug: Puppet::Type::User::ProviderPw: file pw does not exist
  debug: Failed to load library 'rubygems' for feature 'rubygems'
  debug: Puppet::Type::File::ProviderMicrosoft_windows: feature
  microsoft_windows is missing
  debug: /File[/var/log/puppet/http.log]: Autorequiring File[/var/log/
  puppet]
  debug: /File[/var/lib/puppet/client_data]: Autorequiring File[/var/lib/
  puppet]
  debug: /File[/var/lib/puppet/ssl/certs/proxy-03.carnation.in.pem]:
  Autorequiring File[/var/lib/puppet/ssl/certs]
  debug: /File[/var/lib/puppet/ssl/private_keys/
  proxy-03.carnation.in.pem]: Autorequiring File[/var/lib/puppet/ssl/
  private_keys]
  debug: /File[/var/lib/puppet/ssl]: Autorequiring File[/var/lib/puppet]
  debug: /File[/var/lib/puppet/state/last_run_summary.yaml]:
  Autorequiring File[/var/lib/puppet/state]
  debug: /File[/var/lib/puppet/ssl/crl.pem]: 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/ssl/certificate_requests]: Autorequiring
  File[/var/lib/puppet/ssl]
  debug: /File[/var/lib/puppet/state/graphs]: Autorequiring File[/var/
  lib/puppet/state]
  debug: /File[/var/lib/puppet/ssl/certs/ca.pem]: Autorequiring File[/
  var/lib/puppet/ssl/certs]
  debug: /File[/var/lib/puppet/facts]: Autorequiring File[/var/lib/
  puppet]
  debug: /File[/var/lib/puppet/state]: Autorequiring File[/var/lib/
  puppet]
  debug: /File[/var/lib/puppet/ssl/private]: Autorequiring File[/var/lib/
  puppet/ssl]
  debug: /File[/var/lib/puppet/client_yaml]: Autorequiring File[/var/lib/
  puppet]
  debug: /File[/var/lib/puppet/ssl/public_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]: Autorequiring File[/var/lib/
  puppet/ssl]
  debug: /File[/var/lib/puppet/state/state.yaml]: Autorequiring File[/
  var/lib/puppet/state]
  debug: /File[/var/lib/puppet/ssl/public_keys/
  proxy-03.carnation.in.pem]: Autorequiring File[/var/lib/puppet/ssl/
  public_keys]
  debug: /File[/var/lib/puppet/lib]: Autorequiring File[/var/lib/puppet]
  debug: Finishing transaction 23780377254580
  debug: Loaded state in 0.00 seconds
  debug: Loaded state in 0.00 seconds
  info: Applying configuration version '1327090832'
  debug: Finishing transaction 23780377878220
  debug: Storing state
  debug: Stored state in 0.01 seconds
  notice: Finished catalog run in 0.03 seconds

  [root@PROXY-02 tmp]# puppetd --server PROXY-03.carnation.in --test --
  noop --evaltrace
  notice: Ignoring --listen on onetime run
  info: Caching catalog for proxy-02.carnation.in
  info: Applying configuration version '1327092221'
  info: /Schedule[weekly]: valuated in 0.00 seconds
  info: /Schedule[monthly]: valuated in 0.00 seconds
  info: /Schedule[hourly]: valuated in 0.00 seconds
  info: /Schedule[puppet]: valuated in 0.00 seconds
  info: /Filebucket[puppet]: valuated in 0.00 seconds
  info: /Schedule[daily]: valuated in 0.00 seconds
  info: /Schedule[never]: valuated in 0.00 seconds
  notice: Finished catalog run in 0.02 seconds

  my server configuration looks like this
  [root@PROXY-03 puppet]# tree
  .
  |-- auth.conf
  |-- files
  |-- fileserver.conf
  |-- manifests
  |   |-- nodes.pp
  |   |-- sites.pp
  |   `-- templates.pp
  |-- modules
  |   |-- file
  |   |   `-- manifests
  |   |       `-- init.pp
  |   `-- networking
  |       |-- files
  |       |   `-- resolv.conf
  |       `-- manifests
  |           `-- init.pp
  `-- puppet.conf

  8 directories, 9 files

  [root@PROXY-03 puppet]# cat manifests/nodes.pp
  node 'basenode' {
   include baseclass
  }

  node 'PROXY-02.carnation.in' inherits basenode {
  }

  [root@PROXY-03 puppet]# cat manifests/sites.pp
  import nodes
  import templates

  filebucket { main: server = puppet }

  [root@PROXY-03 puppet]# cat manifests/templates.pp
  class baseclass {
         include 

Re: [Puppet Users] any cobbler management modules out there?

2012-01-20 Thread Dan White
You are correct.  I do not want to hear about another tool.

I am currently working in a pro-Microsoft-anti-Anything-Else environment that 
still uses a boatload of Linux servers to do all the Ditch Digging.  I have 
had a tough time convincing them to use this.

I have looked at Foreman.  My first impression is that it has a much bigger 
footprint than what I am using now.

I could be convinced to give it a serious try, but the People Who Pay The Bills 
are another story.

Thanks for offering, anyway.

“Sometimes I think the surest sign that intelligent life exists elsewhere in 
the universe is that none of it has tried to contact us.”
Bill Waterson (Calvin  Hobbes)

- Ashley Penney apen...@gmail.com wrote:
 While this isn't what you want to hear, exactly, there's a bootstrapping
 tool that
 works fantastic with Puppet at http://www.theforeman.org/ - it's probably
 why
 you don't see many cobbler modules.  People like me who used cobbler when
 starting out with Puppet migrated off to Foreman with time.

-- 
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] any cobbler management modules out there?

2012-01-20 Thread Nick
On 20/01/12 19:05, Ashley Penney wrote:
 While this isn't what you want to hear, exactly, there's a bootstrapping tool 
 that
 works fantastic with Puppet at http://www.theforeman.org/ - it's probably why
 you don't see many cobbler modules.  People like me who used cobbler when
 starting out with Puppet migrated off to Foreman with time.

Yes - in fact, I looked at Foreman first.   The main reason I then looked at
Cobbler was that Foreman appeared to be very GUI/RDBMS oriented, and ideally I'm
looking for a way to keep everything in version control and generate our
deployment system via Puppet from there.

Can Foreman do that now?  If so, I may go back and look again later.


Thanks,

N

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



[Puppet Users] Re: RFC: Deprecate defined() function for Telly.

2012-01-20 Thread Cody


On Jan 20, 6:39 am, jcbollinger john.bollin...@stjude.org wrote:
 On Jan 20, 3:00 am, Dan Bode d...@puppetlabs.com wrote:

  * the big reason I keep on leaning on it is for package dependencies. Often
  something needs an additional package installed (and it is possible that
  other modules may have that same package dependency, and I don't want to
  have to create a new class every time that I need another package
  (especially for something complicated that may have tons of package
  dependencies)

 You describe one of the core use cases for virtual resources.  Instead
 of relying on the defined() function, you can
 1) define virtual Package resources in some central place(s) for all
 the packages your nodes might want to manage,
 2) include that class wherever needed, and
 3) *realize* Packages as appropriate wherever you know you need
 certain ones.

 That avoids parse-order issues, doesn't require you to keep multiple
 definitions of the same resource synchronized, and makes it easier to
 find specific Package definitions among your manifests.  In some cases
 you might even be able to leverage collections with selection
 predicates to simplify and clarify your manifests.  I don't see a
 single reason to prefer use of 'defined' for this case.

Defining all somewhat common packages in a central location becomes
unrealistic when you no longer control the code that is in every
module you use.  If you obtain five modules from the forge and they
all require a specific package and so all define that package your not
going to convince, nor is it a good design to require everyone to move
the package definitions from that collection of modules.  They need to
function as a collection out of the box.

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



Re: [Puppet Users] client not getting updates no error message

2012-01-20 Thread Christopher McCoy
Ok, so I'm looking at this again.

what is in file/manifests/init.pp?
you ran a puppet apply on it, but never showed us what is in it, so it
could just be class file { }

And lastly, does the file /tmp/resolv.conf already exist? If so you won't
see anything output.

On Fri, Jan 20, 2012 at 3:50 PM, bhagyesh vision2...@gmail.com wrote:

 whenever i run a test from client it finishes sucessfully but client
 is not getting any configuration changes from server

 [root@PROXY-02 tmp]# puppetd --noop --test
 notice: Ignoring --listen on onetime run
 info: Caching catalog for proxy-02.carnation.in
 info: Applying configuration version '1327091881'
 notice: Finished catalog run in 0.02 seconds

 [root@PROXY-03 modules]# puppet apply  file/manifests/init.pp -d
 debug: Creating default schedules
 debug: Failed to load library 'ldap' for feature 'ldap'
 debug: Puppet::Type::User::ProviderLdap: feature ldap is missing
 debug: Puppet::Type::User::ProviderDirectoryservice: file /usr/bin/
 dscl does not exist
 debug: Puppet::Type::User::ProviderUser_role_add: file roledel does
 not exist
 debug: Puppet::Type::User::ProviderPw: file pw does not exist
 debug: Failed to load library 'rubygems' for feature 'rubygems'
 debug: Puppet::Type::File::ProviderMicrosoft_windows: feature
 microsoft_windows is missing
 debug: /File[/var/log/puppet/http.log]: Autorequiring File[/var/log/
 puppet]
 debug: /File[/var/lib/puppet/client_data]: Autorequiring File[/var/lib/
 puppet]
 debug: /File[/var/lib/puppet/ssl/certs/proxy-03.carnation.in.pem]:
 Autorequiring File[/var/lib/puppet/ssl/certs]
 debug: /File[/var/lib/puppet/ssl/private_keys/
 proxy-03.carnation.in.pem]: Autorequiring File[/var/lib/puppet/ssl/
 private_keys]
 debug: /File[/var/lib/puppet/ssl]: Autorequiring File[/var/lib/puppet]
 debug: /File[/var/lib/puppet/state/last_run_summary.yaml]:
 Autorequiring File[/var/lib/puppet/state]
 debug: /File[/var/lib/puppet/ssl/crl.pem]: 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/ssl/certificate_requests]: Autorequiring
 File[/var/lib/puppet/ssl]
 debug: /File[/var/lib/puppet/state/graphs]: Autorequiring File[/var/
 lib/puppet/state]
 debug: /File[/var/lib/puppet/ssl/certs/ca.pem]: Autorequiring File[/
 var/lib/puppet/ssl/certs]
 debug: /File[/var/lib/puppet/facts]: Autorequiring File[/var/lib/
 puppet]
 debug: /File[/var/lib/puppet/state]: Autorequiring File[/var/lib/
 puppet]
 debug: /File[/var/lib/puppet/ssl/private]: Autorequiring File[/var/lib/
 puppet/ssl]
 debug: /File[/var/lib/puppet/client_yaml]: Autorequiring File[/var/lib/
 puppet]
 debug: /File[/var/lib/puppet/ssl/public_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]: Autorequiring File[/var/lib/
 puppet/ssl]
 debug: /File[/var/lib/puppet/state/state.yaml]: Autorequiring File[/
 var/lib/puppet/state]
 debug: /File[/var/lib/puppet/ssl/public_keys/
 proxy-03.carnation.in.pem]: Autorequiring File[/var/lib/puppet/ssl/
 public_keys]
 debug: /File[/var/lib/puppet/lib]: Autorequiring File[/var/lib/puppet]
 debug: Finishing transaction 23780377254580
 debug: Loaded state in 0.00 seconds
 debug: Loaded state in 0.00 seconds
 info: Applying configuration version '1327090832'
 debug: Finishing transaction 23780377878220
 debug: Storing state
 debug: Stored state in 0.01 seconds
 notice: Finished catalog run in 0.03 seconds

 [root@PROXY-02 tmp]# puppetd --server PROXY-03.carnation.in --test --
 noop --evaltrace
 notice: Ignoring --listen on onetime run
 info: Caching catalog for proxy-02.carnation.in
 info: Applying configuration version '1327092221'
 info: /Schedule[weekly]: valuated in 0.00 seconds
 info: /Schedule[monthly]: valuated in 0.00 seconds
 info: /Schedule[hourly]: valuated in 0.00 seconds
 info: /Schedule[puppet]: valuated in 0.00 seconds
 info: /Filebucket[puppet]: valuated in 0.00 seconds
 info: /Schedule[daily]: valuated in 0.00 seconds
 info: /Schedule[never]: valuated in 0.00 seconds
 notice: Finished catalog run in 0.02 seconds


 my server configuration looks like this
 [root@PROXY-03 puppet]# tree
 .
 |-- auth.conf
 |-- files
 |-- fileserver.conf
 |-- manifests
 |   |-- nodes.pp
 |   |-- sites.pp
 |   `-- templates.pp
 |-- modules
 |   |-- file
 |   |   `-- manifests
 |   |   `-- init.pp
 |   `-- networking
 |   |-- files
 |   |   `-- resolv.conf
 |   `-- manifests
 |   `-- init.pp
 `-- puppet.conf

 8 directories, 9 files

 [root@PROXY-03 puppet]# cat manifests/nodes.pp
 node 'basenode' {
  include baseclass
 }

 node 'PROXY-02.carnation.in' inherits basenode {
 }

 [root@PROXY-03 puppet]# cat manifests/sites.pp
 import nodes
 import templates

 filebucket { main: server = puppet }

 [root@PROXY-03 puppet]# cat manifests/templates.pp
 class baseclass {
include networking::resolver
 }

 node 

[Puppet Users] windows filepath error

2012-01-20 Thread tborthwick
Hello,

I've set up a puppetmaster on red hat and a client on windows 7
(puppet version 2.7.9 on both), and I'm getting this error when I run
puppet agent --server myserver.com --waitforcert 60 --test:

info: Applying configuration version '1327098121'
err: /Stage[main]/Win_test/Package[win_test]/ensure: change from
absent to present failed: The source parameter is required when using
the MSI provider.

My manifest looks like this:

class win_test {
  package { win_test: ensure = present }
  file { c:/test/win_test_file:
 ensure = 'file',
 owner = 'Administrator',
 source = 'puppet:///modules/win_test/win_test_file',
 require = Package[win_test]
  }
}

I have a file at /etc/puppet/modules/win_test/files/win_test_file.

In bug #9607, there is a reference to the same error message when
running 'puppet resource package', but that runs fine for me.

Is there an error in my manifest or is there a problem with my windows
configuration somewhere?

Thanks,

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



Re: [Puppet Users] Re: RFC: Deprecate defined() function for Telly.

2012-01-20 Thread Aaron Grewell
On Fri, Jan 20, 2012 at 2:34 PM, Cody c.a.herri...@gmail.com wrote:
 Defining all somewhat common packages in a central location becomes
 unrealistic when you no longer control the code that is in every
 module you use.  If you obtain five modules from the forge and they
 all require a specific package and so all define that package your not
 going to convince, nor is it a good design to require everyone to move
 the package definitions from that collection of modules.  They need to
 function as a collection out of the box.


Are we sure it can't be fixed?  What makes defined() so different from
the code that implements require?  Shouldn't if  not defined be the
same as if a require would fail?  That seems to be what people are
expecting, why not give it to them?

-- 
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] windows filepath error

2012-01-20 Thread Josh Cooper
Hi,

On Fri, Jan 20, 2012 at 2:47 PM, tborthwick tborthw...@gmail.com wrote:

 Hello,

 I've set up a puppetmaster on red hat and a client on windows 7
 (puppet version 2.7.9 on both), and I'm getting this error when I run
 puppet agent --server myserver.com --waitforcert 60 --test:

 info: Applying configuration version '1327098121'
 err: /Stage[main]/Win_test/Package[win_test]/ensure: change from
 absent to present failed: The source parameter is required when using
 the MSI provider.

 My manifest looks like this:

 class win_test {
  package { win_test: ensure = present }
  file { c:/test/win_test_file:
 ensure = 'file',
 owner = 'Administrator',
 source = 'puppet:///modules/win_test/win_test_file',
 require = Package[win_test]
  }
 }

 I have a file at /etc/puppet/modules/win_test/files/win_test_file.


You need a source parameter in your package resource, from which msiexec
can install the msi. At present, this must be a local file (or mapped
drive).

Presumably, the msi you want to install, is the one you downloaded from
your module? If so, then you just need:

package { 'win_test':
  ensure = 'installed',
  source = 'c:/test/win_test_file'
}

Josh

-- 
Josh Cooper
Developer, Puppet Labs

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



Re: [Puppet Users] Re: RFC: Deprecate defined() function for Telly.

2012-01-20 Thread Aaron Grewell
On Fri, Jan 20, 2012 at 2:49 PM, Aaron Grewell aaron.grew...@gmail.com wrote:

 Are we sure it can't be fixed?  What makes defined() so different from
 the code that implements require?  Shouldn't if  not defined be the
 same as if a require would fail?  That seems to be what people are
 expecting, why not give it to them?

Never mind that last bit, it took me a second to realize the order of
operations would make that Very Hard.  A better question would be do
we have a proper replacement in the pipeline for Telly?  Perhaps
exception handling for require?  If not then something's better than
nothing IMHO.

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



Re: [Puppet Users] Re: pass values to puppet-lvm

2012-01-20 Thread Walter Heck
Judging from the things you wrote here, you need a bit more
understanding of how puppet works with modules. Also, I see that that
specific module implements a define called lvm::volume, so your
manifest should be implementing a resource like so:

 lvm::volume {'setvolume':
         vg = 'myvg',
         pv = '/dev/sdb',
         fstype = 'ext3',
         name = 'mylv',
         size ='8G',
         }

best of luck!

Walter

On Fri, Jan 20, 2012 at 14:45, Luke lutay...@gmail.com wrote:
 I am finding the documentation pretty poor on this. Can someone please
 help?

 I don't understand why I can't pass my variables.

 On Jan 17, 10:56 am, Luke lutay...@gmail.com wrote:
 i would like to use the module puppet-lvm and would like to pass
 values to it.

 I have it setup properly as a module but I can't for the lfe of me get
 it to take any values that I put in my baseconfig.pp in my home
 folder.

 like shouldn't something like this work??

 puppet-lvm {'setvolume':
         vg = 'myvg',
         pv = '/dev/sdb',
         fstype = 'ext3',
         name = 'mylv',
         size ='8G',
         }

 https://github.com/puppetlabs/puppet-lvm

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




-- 
Walter Heck

--
follow @walterheck on twitter to see what I'm up to!
--
Check out my new startup: Server Monitoring as a Service @ http://tribily.com
Follow @tribily on Twitter and/or 'Like' our Facebook page at
http://www.facebook.com/tribily

-- 
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] Trying to understand how mcollective differs from saltstack?

2012-01-20 Thread Brian Gupta
http://saltstack.org/ http://puppetlabs.com/mcollective/

I found this link that talks about Func, Rundeck, Salt and mcollective, but
it doesn't really compare and contrast.
http://www.coloandcloud.com/editorial/func-mcollective-salt-and-rundeck/(From
a 10,000 overview Saltstack and mcollective look very similar. IE:
both integrate with facter/puppet, have queuing mechanisms, allow remote
execution and introspection of node data, etc).

Thanks,
Brian

-- 
http://aws.amazon.com/solutions/solution-providers/brandorr/

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



[Puppet Users] Re: client not getting updates no error message

2012-01-20 Thread bhagyesh
file/manifest/init.pp is a class but its not yet included in the
templete so can be left alone as of now

and the file /tmp/resolve.conf dosent exist but still I am not getting
any output



On Jan 21, 3:46 am, Christopher McCoy c.mcco...@gmail.com wrote:
 Ok, so I'm looking at this again.

 what is in file/manifests/init.pp?
 you ran a puppet apply on it, but never showed us what is in it, so it
 could just be class file { }

 And lastly, does the file /tmp/resolv.conf already exist? If so you won't
 see anything output.



 On Fri, Jan 20, 2012 at 3:50 PM, bhagyesh vision2...@gmail.com wrote:
  whenever i run a test from client it finishes sucessfully but client
  is not getting any configuration changes from server

  [root@PROXY-02 tmp]# puppetd --noop --test
  notice: Ignoring --listen on onetime run
  info: Caching catalog for proxy-02.carnation.in
  info: Applying configuration version '1327091881'
  notice: Finished catalog run in 0.02 seconds

  [root@PROXY-03 modules]# puppet apply  file/manifests/init.pp -d
  debug: Creating default schedules
  debug: Failed to load library 'ldap' for feature 'ldap'
  debug: Puppet::Type::User::ProviderLdap: feature ldap is missing
  debug: Puppet::Type::User::ProviderDirectoryservice: file /usr/bin/
  dscl does not exist
  debug: Puppet::Type::User::ProviderUser_role_add: file roledel does
  not exist
  debug: Puppet::Type::User::ProviderPw: file pw does not exist
  debug: Failed to load library 'rubygems' for feature 'rubygems'
  debug: Puppet::Type::File::ProviderMicrosoft_windows: feature
  microsoft_windows is missing
  debug: /File[/var/log/puppet/http.log]: Autorequiring File[/var/log/
  puppet]
  debug: /File[/var/lib/puppet/client_data]: Autorequiring File[/var/lib/
  puppet]
  debug: /File[/var/lib/puppet/ssl/certs/proxy-03.carnation.in.pem]:
  Autorequiring File[/var/lib/puppet/ssl/certs]
  debug: /File[/var/lib/puppet/ssl/private_keys/
  proxy-03.carnation.in.pem]: Autorequiring File[/var/lib/puppet/ssl/
  private_keys]
  debug: /File[/var/lib/puppet/ssl]: Autorequiring File[/var/lib/puppet]
  debug: /File[/var/lib/puppet/state/last_run_summary.yaml]:
  Autorequiring File[/var/lib/puppet/state]
  debug: /File[/var/lib/puppet/ssl/crl.pem]: 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/ssl/certificate_requests]: Autorequiring
  File[/var/lib/puppet/ssl]
  debug: /File[/var/lib/puppet/state/graphs]: Autorequiring File[/var/
  lib/puppet/state]
  debug: /File[/var/lib/puppet/ssl/certs/ca.pem]: Autorequiring File[/
  var/lib/puppet/ssl/certs]
  debug: /File[/var/lib/puppet/facts]: Autorequiring File[/var/lib/
  puppet]
  debug: /File[/var/lib/puppet/state]: Autorequiring File[/var/lib/
  puppet]
  debug: /File[/var/lib/puppet/ssl/private]: Autorequiring File[/var/lib/
  puppet/ssl]
  debug: /File[/var/lib/puppet/client_yaml]: Autorequiring File[/var/lib/
  puppet]
  debug: /File[/var/lib/puppet/ssl/public_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]: Autorequiring File[/var/lib/
  puppet/ssl]
  debug: /File[/var/lib/puppet/state/state.yaml]: Autorequiring File[/
  var/lib/puppet/state]
  debug: /File[/var/lib/puppet/ssl/public_keys/
  proxy-03.carnation.in.pem]: Autorequiring File[/var/lib/puppet/ssl/
  public_keys]
  debug: /File[/var/lib/puppet/lib]: Autorequiring File[/var/lib/puppet]
  debug: Finishing transaction 23780377254580
  debug: Loaded state in 0.00 seconds
  debug: Loaded state in 0.00 seconds
  info: Applying configuration version '1327090832'
  debug: Finishing transaction 23780377878220
  debug: Storing state
  debug: Stored state in 0.01 seconds
  notice: Finished catalog run in 0.03 seconds

  [root@PROXY-02 tmp]# puppetd --server PROXY-03.carnation.in --test --
  noop --evaltrace
  notice: Ignoring --listen on onetime run
  info: Caching catalog for proxy-02.carnation.in
  info: Applying configuration version '1327092221'
  info: /Schedule[weekly]: valuated in 0.00 seconds
  info: /Schedule[monthly]: valuated in 0.00 seconds
  info: /Schedule[hourly]: valuated in 0.00 seconds
  info: /Schedule[puppet]: valuated in 0.00 seconds
  info: /Filebucket[puppet]: valuated in 0.00 seconds
  info: /Schedule[daily]: valuated in 0.00 seconds
  info: /Schedule[never]: valuated in 0.00 seconds
  notice: Finished catalog run in 0.02 seconds

  my server configuration looks like this
  [root@PROXY-03 puppet]# tree
  .
  |-- auth.conf
  |-- files
  |-- fileserver.conf
  |-- manifests
  |   |-- nodes.pp
  |   |-- sites.pp
  |   `-- templates.pp
  |-- modules
  |   |-- file
  |   |   `-- manifests
  |   |       `-- init.pp
  |   `-- networking
  |       |-- files
  |       |   `-- resolv.conf
  |       `-- manifests
  |           `-- init.pp
  `-- puppet.conf

  8 directories, 9 files

  [root@PROXY-03 

Re: [Puppet Users] Re: client not getting updates no error message

2012-01-20 Thread Christopher McCoy
What happens when you run this:
puppet apply networking/manifests/init.pp -d -e 'include
networking::resolver'

On Fri, Jan 20, 2012 at 8:41 PM, bhagyesh vision2...@gmail.com wrote:

 file/manifest/init.pp is a class but its not yet included in the
 templete so can be left alone as of now

 and the file /tmp/resolve.conf dosent exist but still I am not getting
 any output



 On Jan 21, 3:46 am, Christopher McCoy c.mcco...@gmail.com wrote:
  Ok, so I'm looking at this again.
 
  what is in file/manifests/init.pp?
  you ran a puppet apply on it, but never showed us what is in it, so it
  could just be class file { }
 
  And lastly, does the file /tmp/resolv.conf already exist? If so you won't
  see anything output.
 
 
 
  On Fri, Jan 20, 2012 at 3:50 PM, bhagyesh vision2...@gmail.com wrote:
   whenever i run a test from client it finishes sucessfully but client
   is not getting any configuration changes from server
 
   [root@PROXY-02 tmp]# puppetd --noop --test
   notice: Ignoring --listen on onetime run
   info: Caching catalog for proxy-02.carnation.in
   info: Applying configuration version '1327091881'
   notice: Finished catalog run in 0.02 seconds
 
   [root@PROXY-03 modules]# puppet apply  file/manifests/init.pp -d
   debug: Creating default schedules
   debug: Failed to load library 'ldap' for feature 'ldap'
   debug: Puppet::Type::User::ProviderLdap: feature ldap is missing
   debug: Puppet::Type::User::ProviderDirectoryservice: file /usr/bin/
   dscl does not exist
   debug: Puppet::Type::User::ProviderUser_role_add: file roledel does
   not exist
   debug: Puppet::Type::User::ProviderPw: file pw does not exist
   debug: Failed to load library 'rubygems' for feature 'rubygems'
   debug: Puppet::Type::File::ProviderMicrosoft_windows: feature
   microsoft_windows is missing
   debug: /File[/var/log/puppet/http.log]: Autorequiring File[/var/log/
   puppet]
   debug: /File[/var/lib/puppet/client_data]: Autorequiring File[/var/lib/
   puppet]
   debug: /File[/var/lib/puppet/ssl/certs/proxy-03.carnation.in.pem]:
   Autorequiring File[/var/lib/puppet/ssl/certs]
   debug: /File[/var/lib/puppet/ssl/private_keys/
   proxy-03.carnation.in.pem]: Autorequiring File[/var/lib/puppet/ssl/
   private_keys]
   debug: /File[/var/lib/puppet/ssl]: Autorequiring File[/var/lib/puppet]
   debug: /File[/var/lib/puppet/state/last_run_summary.yaml]:
   Autorequiring File[/var/lib/puppet/state]
   debug: /File[/var/lib/puppet/ssl/crl.pem]: 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/ssl/certificate_requests]: Autorequiring
   File[/var/lib/puppet/ssl]
   debug: /File[/var/lib/puppet/state/graphs]: Autorequiring File[/var/
   lib/puppet/state]
   debug: /File[/var/lib/puppet/ssl/certs/ca.pem]: Autorequiring File[/
   var/lib/puppet/ssl/certs]
   debug: /File[/var/lib/puppet/facts]: Autorequiring File[/var/lib/
   puppet]
   debug: /File[/var/lib/puppet/state]: Autorequiring File[/var/lib/
   puppet]
   debug: /File[/var/lib/puppet/ssl/private]: Autorequiring File[/var/lib/
   puppet/ssl]
   debug: /File[/var/lib/puppet/client_yaml]: Autorequiring File[/var/lib/
   puppet]
   debug: /File[/var/lib/puppet/ssl/public_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]: Autorequiring File[/var/lib/
   puppet/ssl]
   debug: /File[/var/lib/puppet/state/state.yaml]: Autorequiring File[/
   var/lib/puppet/state]
   debug: /File[/var/lib/puppet/ssl/public_keys/
   proxy-03.carnation.in.pem]: Autorequiring File[/var/lib/puppet/ssl/
   public_keys]
   debug: /File[/var/lib/puppet/lib]: Autorequiring File[/var/lib/puppet]
   debug: Finishing transaction 23780377254580
   debug: Loaded state in 0.00 seconds
   debug: Loaded state in 0.00 seconds
   info: Applying configuration version '1327090832'
   debug: Finishing transaction 23780377878220
   debug: Storing state
   debug: Stored state in 0.01 seconds
   notice: Finished catalog run in 0.03 seconds
 
   [root@PROXY-02 tmp]# puppetd --server PROXY-03.carnation.in --test --
   noop --evaltrace
   notice: Ignoring --listen on onetime run
   info: Caching catalog for proxy-02.carnation.in
   info: Applying configuration version '1327092221'
   info: /Schedule[weekly]: valuated in 0.00 seconds
   info: /Schedule[monthly]: valuated in 0.00 seconds
   info: /Schedule[hourly]: valuated in 0.00 seconds
   info: /Schedule[puppet]: valuated in 0.00 seconds
   info: /Filebucket[puppet]: valuated in 0.00 seconds
   info: /Schedule[daily]: valuated in 0.00 seconds
   info: /Schedule[never]: valuated in 0.00 seconds
   notice: Finished catalog run in 0.02 seconds
 
   my server configuration looks like this
   [root@PROXY-03 puppet]# tree
   .
   |-- auth.conf
   |-- files
   |-- fileserver.conf
   |-- manifests
   |   |-- nodes.pp
   |   |-- 

Re: [Puppet Users] pass values to puppet-lvm

2012-01-20 Thread krish
 like shouldn't something like this work??

 puppet-lvm {'setvolume':
        vg = 'myvg',
        pv = '/dev/sdb',
        fstype = 'ext3',
        name = 'mylv',
        size ='8G',
        }


 https://github.com/puppetlabs/puppet-lvm

The module is has a define like this:
define lvm::volume($vg, $pv, $fstype = undef, $size = undef, $ensure) { ..

which means $ensure has no default value

also, it has a snip
default: {
  fail ( 'puppet-lvm::volume: ensure parameter can only be set to
cleaned, absent or present' )
}

So if you dont provide an $ensure, it will fail with the above error.


Adding to Walter's snip ..

lvm::volume {'setvolume':
 vg = 'myvg',
 pv = '/dev/sdb',
 fstype = 'ext3',
 name = 'mylv',
 size ='8G',
 ensure = 'present',
 }



-- 
Krish
www.toonheart.com

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



[Puppet Users] Triage-a-thon - 1/21/2012

2012-01-20 Thread James Turnbull
Hi all

We're really excited about the Triage-a-thon tomorrow.  It's going to
kick off at 7am PST and go to 4pm PST.

We're going to be in the Puppet Labs offices in Portland (Suite 500 411
NW Park), #puppethack channel on Freenode and available via email on the
various Puppet Lists and announcing progress on Twitter via the
@puppetlabs account.

For instructions and information on the event see:

http://projects.puppetlabs.com/projects/puppet/wiki/Triageathon

If you have any questions or issues or need help please don't hesitate
to get in touch!

Thanks

James

-- 
James Turnbull
Puppet Labs
1-503-734-8571
To schedule a meeting with me: http://tungle.me/jamtur01

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