Issue #1276 - v1.0 of multiple WA deployment support
Change-Id: I2468458fdf690f05841124300c166d217b81f6b5 Former-commit-id:7ecbbdfdbb
[formerlycae04523db
] [formerly9263a0ac57
] [formerly4fd43ee45c
[formerly9263a0ac57
[formerly 2d35b221dca2248da68ae1d11f20b40dfb11052c]]] Former-commit-id:4fd43ee45c
Former-commit-id: 16e7831852267916f15c8ff6963b429fd72ee1c5 [formerly2c14ea1bb7
] Former-commit-id:d928e2f257
This commit is contained in:
parent
977450cdfb
commit
4f02bbc98e
3 changed files with 155 additions and 102 deletions
|
@ -4,7 +4,7 @@
|
|||
<property file="${basedir}/edex/common.properties" />
|
||||
<property file="${basedir}/edex/developer.properties" />
|
||||
<condition property="wa.enabled">
|
||||
<not><equals arg1="${wa.root.directory}" arg2="" /></not>
|
||||
<not><equals arg1="${wa.to.deploy}" arg2="" /></not>
|
||||
</condition>
|
||||
|
||||
<!-- Determine where we are. -->
|
||||
|
@ -52,20 +52,26 @@
|
|||
</then>
|
||||
</if>
|
||||
|
||||
<!-- add the associated wa directory if it exists. -->
|
||||
<if><isset property="wa.enabled" />
|
||||
<!-- Loop through the WA directories, if they exist. -->
|
||||
<if>
|
||||
<isset property="wa.enabled" />
|
||||
<then>
|
||||
<var name="wa.base.directory"
|
||||
value="${wa.root.directory}/${variable.name}" />
|
||||
<for list="${wa.to.deploy}" param="wa"
|
||||
delimiter="${path.separator}">
|
||||
<sequential>
|
||||
<var name="wa.base.directory"
|
||||
value="@{wa}/${variable.name}" />
|
||||
|
||||
<if>
|
||||
<available file="${wa.base.directory}"
|
||||
type="dir" />
|
||||
<then>
|
||||
<var name="basedirectories"
|
||||
value="${wa.base.directory};${basedirectories}" />
|
||||
</then>
|
||||
</if>
|
||||
<if>
|
||||
<available file="${wa.base.directory}"
|
||||
type="dir" />
|
||||
<then>
|
||||
<var name="basedirectories"
|
||||
value="${wa.base.directory};${basedirectories}" />
|
||||
</then>
|
||||
</if>
|
||||
</sequential>
|
||||
</for>
|
||||
</then>
|
||||
</if>
|
||||
</sequential>
|
||||
|
|
|
@ -25,7 +25,48 @@
|
|||
</then>
|
||||
</if>
|
||||
<!-- deploy edex plugins -->
|
||||
<antcall target="deploy.feature" />
|
||||
<!-- which feature do we want to deploy? -->
|
||||
<if>
|
||||
<isset property="wa.enabled" />
|
||||
<then>
|
||||
<!--
|
||||
Find the feature associated with
|
||||
Work Assignments.
|
||||
-->
|
||||
<var name="feature.to.find"
|
||||
value="${wa.edex.feature}" />
|
||||
</then>
|
||||
<else>
|
||||
<!--
|
||||
Find the standard AWIPS II
|
||||
Baseline feature.
|
||||
-->
|
||||
<var name="feature.to.find"
|
||||
value="${edex.feature}" />
|
||||
</else>
|
||||
</if>
|
||||
|
||||
<var name="feature" value="" />
|
||||
<!--
|
||||
find the feature file: we may deploy multiple features
|
||||
if multiple Work Assignment directories have been
|
||||
specified.
|
||||
-->
|
||||
<for list="${basedirectories}" param="directory"
|
||||
delimiter=";">
|
||||
<sequential>
|
||||
<if>
|
||||
<available file="@{directory}/${feature.to.find}" />
|
||||
<then>
|
||||
<var name="feature"
|
||||
value="@{directory}/${feature.to.find}" />
|
||||
<deploy.feature
|
||||
feature="${feature}" />
|
||||
</then>
|
||||
</if>
|
||||
</sequential>
|
||||
</for>
|
||||
|
||||
<!-- optionally: deploy raytheon python -->
|
||||
<if>
|
||||
<equals arg1="${deploy.python}" arg2="true" />
|
||||
|
@ -43,98 +84,101 @@
|
|||
</then>
|
||||
</if>
|
||||
|
||||
<!--
|
||||
Search for WA-specific Non-Spring
|
||||
Web Applications to deploy.
|
||||
-->
|
||||
<if>
|
||||
<and>
|
||||
<isset property="wa.enabled" />
|
||||
<!-- TODO: A way to make this pathing lookup better? -->
|
||||
<available file="${wa.root.directory}/edexOsgi/build.edex/wa-build.xml" type="file" />
|
||||
</and>
|
||||
<then>
|
||||
<ant antfile="${wa.root.directory}/edexOsgi/build.edex/wa-build.xml" inheritall="true" inheritrefs="true"/>
|
||||
<isset property="wa.enabled" />
|
||||
<then>
|
||||
<for list="${wa.to.deploy}" param="wa"
|
||||
delimiter="${path.separator}">
|
||||
<sequential>
|
||||
<if>
|
||||
<available file="@{wa}/edexOsgi/build.edex/wa-build.xml"
|
||||
type="file" />
|
||||
<then>
|
||||
<ant
|
||||
antfile="@{wa}/edexOsgi/build.edex/wa-build.xml"
|
||||
inheritall="true" inheritrefs="true"/>
|
||||
</then>
|
||||
</if>
|
||||
</sequential>
|
||||
</for>
|
||||
</then>
|
||||
</if>
|
||||
</target>
|
||||
|
||||
<!-- public -->
|
||||
<!-- Targets specific to the developer deployment. -->
|
||||
<target name="deploy.feature">
|
||||
<!-- prepare to run includegen -->
|
||||
<var name="includes.directory" value="${basedir}/tmp/includes" />
|
||||
<if>
|
||||
<available file="${includes.directory}" type="dir" />
|
||||
<then>
|
||||
<delete verbose="true" includeemptydirs="true">
|
||||
<fileset dir="${includes.directory}"
|
||||
includes="*/**" />
|
||||
</delete>
|
||||
</then>
|
||||
</if>
|
||||
<mkdir dir="${includes.directory}" />
|
||||
<macrodef name="deploy.feature">
|
||||
<attribute name="feature" />
|
||||
|
||||
<var name="feature" value="" />
|
||||
<!-- find the feature file -->
|
||||
<for list="${basedirectories}" param="directory"
|
||||
delimiter=";">
|
||||
<sequential>
|
||||
<if>
|
||||
<available file="@{directory}/${edex.feature}" />
|
||||
<then>
|
||||
<var name="feature"
|
||||
value="@{directory}/${edex.feature}" />
|
||||
</then>
|
||||
</if>
|
||||
</sequential>
|
||||
</for>
|
||||
<!-- run includegen -->
|
||||
<echo message="Generating deployment list for feature: ${edex.feature}" />
|
||||
<!--
|
||||
TODO: need to update the includegen ant task to recognize
|
||||
plugin architecture restrictions. Plugins that should only
|
||||
be deployed for a 64-bit system should not be deployed for
|
||||
a 32-bit system, etc.
|
||||
-->
|
||||
<includegen providerfilter="${includegen.filter}"
|
||||
basedirectories="${basedirectories}"
|
||||
featurefile="${feature}"
|
||||
cotsout="${includes.directory}/cots.includes"
|
||||
plugsout="${includes.directory}/plugins.includes"
|
||||
coreout="${includes.directory}/core.includes" />
|
||||
<sequential>
|
||||
<!-- prepare to run includegen -->
|
||||
<var name="includes.directory" value="${basedir}/tmp/includes" />
|
||||
<if>
|
||||
<available file="${includes.directory}" type="dir" />
|
||||
<then>
|
||||
<delete verbose="true" includeemptydirs="true">
|
||||
<fileset dir="${includes.directory}"
|
||||
includes="*/**" />
|
||||
</delete>
|
||||
</then>
|
||||
</if>
|
||||
<mkdir dir="${includes.directory}" />
|
||||
|
||||
<var name="destination.directory"
|
||||
value="${edex.root.directory}/lib/plugins" />
|
||||
<mkdir dir="${destination.directory}" />
|
||||
<processPlugins
|
||||
includes.file="${includes.directory}/plugins.includes"
|
||||
plugin.type="plugins"
|
||||
plugin.directories="${basedirectories}"
|
||||
destination.directory="${destination.directory}" />
|
||||
<processPlugins
|
||||
includes.file="${includes.directory}/core.includes"
|
||||
plugin.type="core"
|
||||
plugin.directories="${basedirectories}"
|
||||
destination.directory="${destination.directory}" />
|
||||
<!-- run includegen -->
|
||||
<echo message="Generating deployment list for feature: ${feature}" />
|
||||
<!--
|
||||
TODO: need to update the includegen ant task to recognize
|
||||
plugin architecture restrictions. Plugins that should only
|
||||
be deployed for a 64-bit system should not be deployed for
|
||||
a 32-bit system, etc.
|
||||
-->
|
||||
<includegen providerfilter="${includegen.filter}"
|
||||
basedirectories="${basedirectories}"
|
||||
featurefile="${feature}"
|
||||
cotsout="${includes.directory}/cots.includes"
|
||||
plugsout="${includes.directory}/plugins.includes"
|
||||
coreout="${includes.directory}/core.includes" />
|
||||
|
||||
<var name="destination.directory"
|
||||
value="${edex.root.directory}/lib/dependencies" />
|
||||
<mkdir dir="${destination.directory}" />
|
||||
<processPlugins
|
||||
includes.file="${includes.directory}/cots.includes"
|
||||
plugin.type="cots"
|
||||
plugin.directories="${basedirectories}"
|
||||
destination.directory="${destination.directory}" />
|
||||
<var name="destination.directory"
|
||||
value="${edex.root.directory}/lib/plugins" />
|
||||
<mkdir dir="${destination.directory}" />
|
||||
<processPlugins
|
||||
includes.file="${includes.directory}/plugins.includes"
|
||||
plugin.type="plugins"
|
||||
plugin.directories="${basedirectories}"
|
||||
destination.directory="${destination.directory}" />
|
||||
<processPlugins
|
||||
includes.file="${includes.directory}/core.includes"
|
||||
plugin.type="core"
|
||||
plugin.directories="${basedirectories}"
|
||||
destination.directory="${destination.directory}" />
|
||||
|
||||
<!-- cleanup the temporary directories -->
|
||||
<if>
|
||||
<available file="${basedir}/tmp"
|
||||
type="dir" />
|
||||
<then>
|
||||
<delete includeemptydirs="true">
|
||||
<fileset dir="${basedir}"
|
||||
includes="tmp/**" />
|
||||
</delete>
|
||||
</then>
|
||||
</if>
|
||||
</target>
|
||||
<var name="destination.directory"
|
||||
value="${edex.root.directory}/lib/dependencies" />
|
||||
<mkdir dir="${destination.directory}" />
|
||||
<processPlugins
|
||||
includes.file="${includes.directory}/cots.includes"
|
||||
plugin.type="cots"
|
||||
plugin.directories="${basedirectories}"
|
||||
destination.directory="${destination.directory}" />
|
||||
|
||||
<!-- cleanup the temporary directories -->
|
||||
<if>
|
||||
<available file="${basedir}/tmp"
|
||||
type="dir" />
|
||||
<then>
|
||||
<delete includeemptydirs="true">
|
||||
<fileset dir="${basedir}"
|
||||
includes="tmp/**" />
|
||||
</delete>
|
||||
</then>
|
||||
</if>
|
||||
</sequential>
|
||||
</macrodef>
|
||||
|
||||
<target name="deploy.python">
|
||||
<property name="site-package.directory"
|
||||
|
|
|
@ -1,12 +1,9 @@
|
|||
#-----------------------------------------------------------------------------#
|
||||
# developer configurable properties.
|
||||
|
||||
# the root directory of the work assignment repository when one
|
||||
# exists. TODO: is this the only way???
|
||||
wa.root.directory=
|
||||
# the edex feature to deploy; when working a work assignment, this
|
||||
# will occasionally become: com.raytheon.edex.wa.feature/feature.xml
|
||||
edex.feature=com.raytheon.edex.feature.uframe/feature.xml
|
||||
# the root directories of the work assignment(s) to deploy.
|
||||
# delimited by colon (:)
|
||||
wa.to.deploy=
|
||||
|
||||
# deploy the raytheon ufpy, dynamicserialize, and pypies site-packages
|
||||
deploy.python=true
|
||||
|
@ -32,4 +29,10 @@ gfesuite.project=com.raytheon.uf.tools.gfesuite.servicebackup
|
|||
|
||||
# static properties dependent on the current versions of the foss libraries
|
||||
# we are utilizing - should only be modified by CM.
|
||||
python.version.dir=python2.7
|
||||
python.version.dir=python2.7
|
||||
|
||||
# the Common Baseline EDEX feature
|
||||
edex.feature=com.raytheon.edex.feature.uframe/feature.xml
|
||||
# the name of the Work Assignment EDEX feature -
|
||||
# this feature must exist in a Work Assignment to deploy it.
|
||||
wa.edex.feature=com.raytheon.edex.wa.feature/feature.xml
|
Loading…
Add table
Reference in a new issue