Reputation: 69
I want to develop ant script which replaces application properties with environment specific properties. My requirement is that I will have all environment properties in single env.properties
file. During building the application I need to replace with whatever in env.properties
file. Ant replace works well when I have property files for each environment.
Sample : env.properties
dev.AddNETWORK_USER=devUser
dev.ADDPASS=devPass
sit.AddNETWORK_USER=situser
sit.ADDPASS=sitPass
This needs be replaced in mule.properties
as
for DEV environment:
dev.AddNETWORK_USER=devUser
dev.ADDPASS=devPass
for SIT environment:
AddNETWORK_USER=sitUser
ADDPASS=sitPass
Upvotes: 1
Views: 1582
Reputation: 764
You can use property ant task on your env.properties file. This allows to access key=value pair based on your need. You can redirect your environment specific properties to file you want or write to one specific file.
<property file="${base.dir}/env.properties"/>
<for list="dev,sit" param="value">
<sequential>
<echo message="@{value}.AddNETWORK_USER=${@{value}.AddNETWORK_USER}" append="true" file="${base.dir}/@{value}Any-File.prop"/>
<echo message="${line.separator}" append="true" file="${para.home}/@{value}Any-File.prop"/>
<echo message="@{value}.ADDPASS=${@{value}.ADDPASS}" append="true" file="${para.home}/@{value}Any-File.prop"/>
</sequential>
</for>
Upvotes: 1