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.

Reply via email to