Arnau Bria
2008-Nov-19 12:35 UTC
[Puppet Users] dependency cycles in the following relationships
Hi,
after reading Paul''s reply to one of my questions:
http://groups.google.com/group/puppet-users/browse_thread/thread/4753569f04aee731?hl=en
I tried to redefine all types dependencies and trasnform them
into definiton dependencies (trying to simplify all my conf).
So, my wn_class looks like:
class worker_node {
#aufs conf
autofs_master {"pic": before => Fstab["pic"] }
#adding some static resource
fstab { "pic": require =>Autofs_master["pic"] }
#adding local conf: ganglia/snmp
local_conf { "pic": require => Fstab["pic"] }
#copy host key
ssh_conf { "pic": require => Local_conf["pic"] }
#adding repos
repos { "pic": require => Ssh_conf["pic"] }
#install basic packages
packages { "pic": require => Repos["pic"] }
#configure YAIM
yaim { "pic": require => Packages["pic"] }
#add local groups
local_groups { "pic": require => Yaim["pic"] }
#add local user
local_users { "pic": require => Local_groups["pic"] }
#configure PBS
pbs_client { "pic": require => Local_users["pic"] }
}
I need this the order because there''s some initial dependecny between
definitions that after first execution will disappear:
i.e: I need yaim to be confgiured so it will create some groups that
local_users will use, or I need PBS to be configured at the end so
ensure the host won''t be conected to server before it''s plenty
configured... etc...
But, I get the error:
err: Could not apply complete catalog: Found dependency cycles in the
following relationships: Group[edginfo] => User[cafuser6],
Group[biocomp] => User[cafuser6], Group[ct] => User[cafuser6],
Group[cdfsoft] => User[cafuser6], Group[form] => User[cafuser6],
Group[gridmount] => User[cafuser6], Group[medimg] => User[cafuser6],
Group[atlifae] => User[cafuser6], Group[cvsdevel] => User[cafuser6],
Group[arpon] => User[cafuser6], Group[st] => User[cafuser6],
Group[infosys] => User[cafuser6], Group[grid] => User[cafuser6],
Group[ecaes] => User[cafuser6], Group[paus] => User[cafuser6],
Group[cborrego] => User[cafuser6], Group[ams] => User[cafuser6]
[...]
Yumrepo[dag] => Package[lcg-CA], Yumrepo[jpackage-3] =>
Package[lcg-CA], Yumrepo[jpackage-2] => Package[lcg-CA], Yumre
po[glite-TORQUE] => Package[lcg-CA], Service[yum] => Package[lcg-CA],
Yumrepo[lcg-CA] => Package[lcg-CA], Yumrepo[glite-wn] => Package[lcg-CA],
Yumrepo[jpackage-1] => Package[
java-1.5.0-sun-devel], Yumrepo[pic] => Package[java-1.5.0-sun-devel],
Yumrepo[dag] => Package[java-1.5.0-sun-devel], Yumrepo[jpackage-3] =>
Package[java-1.5.0-sun-devel], Yumr
epo[jpackage-2] => Package[java-1.5.0-sun-devel], Yumrepo[glite-TORQUE]
[...]
I have a 458K err file complainig about dependencies.
Is my syntax a complet mess? Am I falling in miss understanding of
puppet basics? I have about 2000 users and 100 groups... is puppet
trying to solve the dependencies user by user (which causes the error)
and not type by type? How is puppet solving dependencies?
PS: I have a previous dependency tree which worked, but not as
"human simple" as this one.
TIA,
Arnau
--~--~---------~--~----~------------~-------~--~----~
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+unsubscribe@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/puppet-users?hl=en
-~----------~----~----~----~------~----~------~--~---
Arnau Bria
2008-Nov-19 15:40 UTC
[Puppet Users] Re: dependency cycles in the following relationships
On Wed, 19 Nov 2008 13:35:12 +0100 Arnau Bria wrote:> Hi, > > after reading Paul''s reply to one of my questions: > http://groups.google.com/group/puppet-users/browse_thread/thread/4753569f04aee731?hl=en > > I tried to redefine all types dependencies and trasnform them > into definiton dependencies (trying to simplify all my conf).Following Paul''s advice, I''ve recreated all my definition and now are blocks of services, so dependencies are inside "modules". Then, in wn.pp: class worker_node { include autofs_master include fstab include local_conf include ssh_conf include repos include yaim_conf } and dependencies are correctly evaluted. I still wonder if old syntax: class worker_node { #aufs conf autofs_master {"pic": before => Fstab["pic"] } #adding some static resource fstab { "pic": require =>Autofs_master["pic"] } #adding local conf: ganglia/snmp local_conf { "pic": require => Fstab["pic"] } ... is completly wrong. Thanks, Arnau --~--~---------~--~----~------------~-------~--~----~ 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+unsubscribe@googlegroups.com For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en -~----------~----~----~----~------~----~------~--~---