Hi Sans, I followed your steps, but i am getting the same error again
Apr 16 11:29:39 pil-vm-pup-01 puppet-master[8092]: Could not find class cp_jboss_conf for vm-jeeva2.aircell.prod at /etc/puppet/manifests/nodes/vm-jeeva2.aircell.prod.pp:2 on node vm-jeeva2.aircell.prod Apr 16 11:29:39 pil-vm-pup-01 puppet-master[8092]: Could not find class cp_jboss_conf for vm-jeeva2.aircell.prod at /etc/puppet/manifests/nodes/vm-jeeva2.aircell.prod.pp:2 on node vm-jeeva2.aircell.prod Apr 16 11:29:39 pil-vm-pup-01 puppet-master[8092]: (//vm-jeeva2.aircell.prod/Puppet) Could not retrieve catalog from remote server: Error 400 on SERVER: Could not find class cp_jboss_conf for vm-jeeva2.aircell.prod at /etc/puppet/manifests/nodes/vm-jeeva2.aircell.prod.pp:2 on node vm-jeeva2.aircell.prod Apr 16 11:29:39 pil-vm-pup-01 puppet-master[8092]: (//vm-jeeva2.aircell.prod/Puppet) Using cached catalog Apr 16 11:29:39 pil-vm-pup-01 puppet-master[8092]: (//vm-jeeva2.aircell.prod/Puppet) Could not retrieve catalog; skipping run @All, Just not to confuse anyone, currently my puppet server is working as expected. i have lot of modules created and it works. This is how my configuration is 1 ) my site.pp file is under /etc/puppet/manifest/site.pp and below is my content import 'nodes/*' $puppetserver = 'puppet-server.domain.com' 2) All my modules is under below path /etc/puppet/modules/ 3) under below path i have all my .pp files . eg /etc/puppet/manifests/nodes/server1.pp /etc/puppet/manifests/nodes/server2.pp /etc/puppet/manifests/nodes/server3.pp /etc/puppet/manifests/nodes/server4.pp addition to this i have a jeeva_base.pp file where i include all my modules. below is the portion of its content ----------------------------------- node jeeva_base { include all_scripts include dev_jboss_jeeva } --------------------------------------- below is the content of my server1.pp file . i have created individual .pp file for each server which inherits jeeva_base node. ------------------------------------------ node server1 inherits jeeva_base { } ------------------------------------------- As i said above, this is my requirement. we have 3 version of jboss running in our environment in different servers. eg. jboss4 in server1, jboss5 in server2 , jboss6 in server3 , and no jboss in server 4 , etc on each server, jboss config file sits under different path. eg: in server 1 it sits under /opt/jboss4/ in server 2 it sits under /opt/jboss5/ in server 3 it sits under /opt/jboss6/ in server 4 no jboss is running now i have 3 different configuration file for each version of jboss which i need to replace. eg. file1, i need to replace it to jboss4 file2 , i need to replace it to jboss5 file3 , i need to replace it to jboss6 also we need to keep in mind that it should not create a files/folder on server4 which doesnt have jboss. Now i need a module which checks the jboss path on each server and should replace the sepcific file if it finds the specific path. eg if it finds /opt/jboss4, then it should replace file1, if it finds /opt/jboss5, then replace file2 and so on. But if no jboss path is found then dont perform any thing on that server. As suggested by Gary ( initial conversation) , gary helped me to create the custom facts. but it didnt work. Not sure what went wrong. in general, my requirement is very simple. just do a check on each server for specific path. if found, then copy/replace respective file , if not found then dont perform any action on that server. I hope i didnt confuse anyone. Thanks, Jeeva On Mon, Apr 16, 2012 at 5:54 AM, Munna S <19.mu...@gmail.com> wrote: > Hi Sans > i am trying it now. will let you know the output soon. Also in my site.pp > i have the below content > > import 'nodes/*' > $puppetserver = 'puppet-server.domain.com' > > > > I do have many modules , which works as expected. > > Thanks, > Jeeva > > cat /etc/puppet/manifests/site.pp > On Mon, Apr 16, 2012 at 5:36 AM, Sans <r.santanu....@gmail.com> wrote: > >> It's definitely a class loading problem and I don't think Jeeva is using >> "modules" at all. >> >> Jeeva: >> Could you pls try the things I said in my previous post and see if that >> works? Cheers!! >> >> >> >> On Monday, April 16, 2012 1:34:31 AM UTC+1, Wil Cooley wrote: >>> >>> On Apr 13, 10:49 am, Munna S <19.mu...@gmail.com> wrote: >>> > I followed your steps. now i am getting below error >>> > >>> > Apr 13 17:42:44 pil-vm-pup-01 puppet-master[7899]: Could not find >>> class >>> > dev_jboss_jeeva for vm-jeeva2.aircell.prod at >>> >>> ... >>> >>> > i have jeeva_base.pp file under /etc/puppet/manifests/nodes and below >>> is >>> > its content >>> > ------------------------------**-- >>> > node jeeva_base { >>> > include dev_jboss_jeeva} >>> > >>> > ------------------------------**-------- >>> > >>> > also i have a another .pp file by name vm-jeeva2 under >>> > /etc/puppet/manifests/nodes and below is its content. we have seperate >>> .pp >>> > file for each server name. one server is vm-jeeva2. >>> > ------------------ >>> > node vm-jeeva2 inherits jeeva_base {} >>> > >>> > -------------------- >>> > >>> > what could be the problem ? >>> >>> Where is the class dev_jboss_jeeva defined? You mentioned above an >>> 'init.pp', which would be usual if you were using modules, but it does >>> not seem like you are using modules. >>> >>> It sounds like the problem you are having is wholly outside of the >>> complicated machinations of what you're trying to do. It looks more >>> like you have a much simpler class-loading problem. >>> >>> Here are a few things to try: >>> * Comment out all of the stuff from dev_jboss_jeeva and replace it >>> with a "warning" function call, to log that everything is working >>> right: >>> class dev_jboss_jeeva { >>> warning("dev_jboss_jeeva has successfully loaded") >>> } >>> * Copy your class dev_jboss_jeeva { ... } right before the "node >>> jeeva_base" and see if you see your warning message (I suggest warning >>> instead of info because info sometimes requires using --verbose on the >>> command line; warning will always show): >>> class dev_jboss_jeeva { >>> warning("dev_jboss_jeeva was here") >>> } >>> node jeeva_base { >>> include dev_jboss_jeeva >>> } >>> >>> If you see the message with the class defined right before the node, >>> but not wherever else you have it, then you know the problem is that >>> it is unable to actually find the class and you should give specifics >>> about that instead. >>> >>> Wil >> >> -- >> 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/-/_Puid9FxhfAJ. >> >> 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.