What I did was that I modularized the lot, split the environment property files, added logging, added OSB 12c support, based on the config jar tool, etc.
One thing I ran into this week was that at first deployment from our team to the test environment using my framework, the running instances for the BPM projects were aborted.
Now, if you take a look at the deploy.sarLocation target in Edwin's article about deploying soa suite composites you'll find that he also supported the overwrite and forceDefault properties.
When re-deploying a composite from JDeveloper you're probably familiar with the 'keep running instances' checkbox. I was looking for the ANT alternative in the ${oracle.home}/bin/ant-sca-deploy.xml scripting. First I looked in the 12c docs (see 47.9.4 How to Use ant to Deploy a SOA Composite Application), but it is not documented there.
But when I opened the particular ant-sca-deploy.xml script I read:
<condition property="overwrite" value="false"> <not> <isset property="overwrite"/> </not> </condition> <condition property="forceDefault" value="true"> <not> <isset property="forceDefault"/> </not> </condition> <condition property="keepInstancesOnRedeploy" value="false"> <not> <isset property="keepInstancesOnRedeploy"/> </not> </condition> ... <target name="deploy"> <input message="Please enter server URL:" addproperty="serverURL"/> <input message="Please enter sar location:" addproperty="sarLocation"/> <input message="Please enter username:" addproperty="user"/> <input message="Please enter password:" addproperty="password"> <handler classname="org.apache.tools.ant.input.SecureInputHandler" /> </input> <deployComposite serverUrl="${serverURL}" sarLocation="${sarLocation}" realm="${realm}" user="${user}" password="${password}" overwrite="${overwrite}" forceDefault="${forceDefault}" keepInstancesOnRedeploy="${keepInstancesOnRedeploy}" regenerateRuleBase="${regenerateRuleBase}" configPlan="${configplan}" scope="${scope}" sysPropFile="${sysPropFile}" failOnError="${failOnError}" timeout="${timeout}" folder="${folder}"/> </target>
So, the script kindly supports the keepInstancesOnRedeploy property. And thus I implemented a deploy.keepInstancesOnRedeploy property the same way as the deploy.forceDefault/deploy.overwrite properties.
This probably is usefull for Maven based (re-)deployments.
No comments:
Post a Comment