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