thanks for reply,

first let me again describe my problem in detail.
I have two database server db01 and db02, on the database server (db01) i 
have to install and configure postgresql and pg_statinfo module and on 
database server(db02) i have to install and configure only postgresql.

I created postgresql module to install and configure postgresql and 
pg_statsinfo module for pg_statsinfo.
Here, "postgresql.conf" file contains the configuration for both postgresql 
and pg_statsinfo.(This is the common file which is to be edited, i use 
template to make changes),
for the pg_statsinfo module i have to add the addition contents to file 
plus change some in between contents.

I am not able to change postgresql.conf file twice in postgresql module and 
then pg_statsinfo module in case of db01, it give duplication declaration 
of file resources.
If i change the contents of postgresql.conf file in postgresql module then 
in case of db02 the postgresql not working because some addition parameters 
of pg_statsinfo in postgresql.conf.

i hope this help you to understand the scenario,  
how i maintain the modularity between to modules and change the same file 
twice for correct working.

Thanks in advance.
Rahul






  
 

On Friday, April 12, 2013 6:45:37 PM UTC+5:30, jcbollinger wrote:
>
>
>
> On Thursday, April 11, 2013 1:11:16 PM UTC-5, Rahul Khengare wrote:
>>
>> Hi all,
>>      I am writing two modules abc and xyz. In both the modules i have to 
>> change common "test.txt" file,here i use template (.erb) file to changing 
>> the contents.
>> In both abc and xyz the contents of "test.txt" file is different, if i 
>> declare file resource for "test.txt" file in two different modules it gives 
>> duplicate declaration of resource error. 
>> For the correct working of modules abc and xyz, i have to change the 
>> test.txt file twice.
>> How i overcome this situation ?       
>>
>
>
> You need to frame the problem correctly.  A File resource represents a 
> whole, specific file.  What is it even supposed to mean if you specify the 
> same target file's content differently in different places?  Your two 
> declarations cannot both be satisfied.  This sort of internal inconsistency 
> is one of the reasons for Puppet's prohibition against multiple 
> declarations of the same resource (though that prohibition applies even 
> when two or more declarations all specify exactly the same parameters).
>
> There are at least two different things you could reasonably mean:
>
>
>    1. Most likely, you mean that you want to separately describe two or 
>    more different parts of the same file.  In that case you are incorrect to 
>    model the parts as File resources, because they are not whole files.  
> There 
>    are multiple ways to handle this, but a good one would be via the Concat 
>    module, which you can find on the module forge.  It will allow you to 
> model 
>    individual pieces of a file, and to specify how they are to be assembled 
> to 
>    form the whole.
>    2. You could mean that you want to declare separate files whose 
>    contents are based on the same template.  In that case it is correct to 
> use 
>    separate File resources, but you must be declaring them wrongly.  Each one 
>    must have a unique title and a unique absolute filename (path property); 
> if 
>    not specified explicitly, the absolute filename is the same as the title.  
>    There is no inherent need for the resource title or target file name to 
>    have any particular relationship with the template file name (though you 
>    will make it easier on yourself if you choose something that helps you 
>    associate them).
>    
>
> Good luck,
>
> John
>
>

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


Reply via email to