You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
127 lines
5.9 KiB
127 lines
5.9 KiB
<project name="VirtualFireAlarm" basedir="" default="deploy">
|
|
|
|
<import file="../common.xml"/>
|
|
|
|
<property name="sample_type" value="virtual_firealarm"/>
|
|
<property name="data_source" value="VirtualFireAlarmDM_DB"/>
|
|
<property name="package" value="org.wso2.carbon.device.mgt.iot.sample.virtual.firealarm"/>
|
|
|
|
<target name="create-db" depends="clean">
|
|
<mkdir dir="${db.dir}"/>
|
|
<property name="dbURL" value="jdbc:h2:file:${basedir}/${db.dir}/${data_source};DB_CLOSE_ON_EXIT=FALSE"/>
|
|
|
|
<sql driver="org.h2.Driver" url="${dbURL}" userid="${db.username}" password="${db.password}" autocommit="true" onerror="continue">
|
|
<classpath>
|
|
<pathelement location="${lib.dir}/h2-database-engine_1.2.140.wso2v3.jar"/>
|
|
</classpath>
|
|
<fileset file="dbscripts/${db.type}_${sample_type}.sql"/>
|
|
</sql>
|
|
<copy file="${db.dir}/${data_source}.h2.db" toDir="${target.db.dir}" overwrite="yes"/>
|
|
|
|
<xmltask source="${iot.conf}" dest="${iot.conf}" report="true">
|
|
<insert path="/IoTDeviceTypeConfigManager[1]">
|
|
<![CDATA[
|
|
<IotDeviceTypeConfig type="${sample_type}">
|
|
<DatasourceName>jdbc/${data_source}</DatasourceName>
|
|
<!--TODO: Uncomment this to work with apim @ 192.168.67.21 -->
|
|
<!--ApiApplicationName>firealarm</ApiApplicationName-->
|
|
</IotDeviceTypeConfig>
|
|
]]>
|
|
</insert>
|
|
</xmltask>
|
|
<xmltask source="${datasources.conf}" dest="${datasources.conf}" report="true">
|
|
<insert path="/datasources-configuration/datasources[1]">
|
|
<![CDATA[
|
|
<datasource>
|
|
<name>${data_source}</name>
|
|
<description>The datasource used for the Virtual-Firealarm database</description>
|
|
<jndiConfig>
|
|
<name>jdbc/${data_source}</name>
|
|
</jndiConfig>
|
|
<definition type="RDBMS">
|
|
<configuration>
|
|
<url>jdbc:h2:repository/database/${data_source};DB_CLOSE_ON_EXIT=FALSE</url>
|
|
<username>wso2carbon</username>
|
|
<password>wso2carbon</password>
|
|
<driverClassName>org.h2.Driver</driverClassName>
|
|
<maxActive>50</maxActive>
|
|
<maxWait>60000</maxWait>
|
|
<testOnBorrow>true</testOnBorrow>
|
|
<validationQuery>SELECT 1</validationQuery>
|
|
<validationInterval>30000</validationInterval>
|
|
</configuration>
|
|
</definition>
|
|
</datasource>
|
|
]]>
|
|
</insert>
|
|
</xmltask>
|
|
</target>
|
|
|
|
<target name="build">
|
|
<exec dir="src" executable="sh">
|
|
<arg line="-c 'mvn clean install'" />
|
|
</exec>
|
|
</target>
|
|
|
|
<target name="build-agent">
|
|
<echo message="Downloading agent source...." />
|
|
<exec dir="." executable="sh">
|
|
<arg line="-c 'svn checkout https://github.com/wso2-incubator/iot-server-agents/trunk/FireAlarmVirtualAgent --non-interactive --trust-server-cert'" />
|
|
</exec>
|
|
<echo message="building agent from source" />
|
|
<exec dir="FireAlarmVirtualAgent" executable="sh">
|
|
<arg line="-c 'mvn clean install'" />
|
|
</exec>
|
|
<copy file="FireAlarmVirtualAgent/target/wso2-firealarm-virtual-agent.jar" todir="sketch"/>
|
|
</target>
|
|
|
|
<target name="build-api">
|
|
<echo message="Downloading api source...."/>
|
|
<exec dir="." executable="sh">
|
|
<arg line="-c 'svn checkout https://github.com/wso2-incubator/iot-server-appliances/trunk/firealarm-webapp --non-interactive --trust-server-cert'"/>
|
|
</exec>
|
|
<echo message="building api from source"/>
|
|
<exec dir="firealarm-webapp" executable="sh">
|
|
<arg line="-c 'mvn clean install'"/>
|
|
</exec>
|
|
<copy file="firealarm-webapp/target/firealarm-webapp.war" todir="${target.webapp.dir}"/>
|
|
<copy file="firealarm-webapp/src/main/resources/firealarmApp.properties" todir="${iot.conf.dir}"/>
|
|
</target>
|
|
|
|
<target name="deploy" depends="create-db,build-agent,build-api,build">
|
|
<copy toDir="${target.sketch.dir}/${sample_type}">
|
|
<fileset dir="sketch"/>
|
|
</copy>
|
|
<mkdir dir="${target.sample.device.dir}/${sample_type}"/>
|
|
<copy toDir="${target.sample.device.dir}/${sample_type}">
|
|
<fileset dir="artifact/"/>
|
|
</copy>
|
|
|
|
<copy file="src/${package}.service.impl/target/${sample_type}.war" toDir="${target.webapp.dir}" overwrite="yes"/>
|
|
<copy file="src/${package}.plugin.impl/target/${package}.plugin.impl-${target.version}.jar" toDir="${target.dropins.dir}" overwrite="yes"/>
|
|
<copy file="page/${sample_type}.hbs" toDir="${target.page.dir}" overwrite="yes"/>
|
|
<copy toDir="${target.unit.dir}/${sample_type}">
|
|
<fileset dir="units"/>
|
|
</copy>
|
|
</target>
|
|
|
|
<target name="clean">
|
|
<delete file="${target.db.dir}/${data_source}.h2.db"/>
|
|
<delete dir="${target.sketch.dir}/${sample_type}"/>
|
|
<delete file="${target.page.dir}/${sample_type}.hbs"/>
|
|
<delete dir="${target.unit.dir}/${sample_type}"/>
|
|
<delete file="${target.page.dir}/${sample_type}.hbs"/>
|
|
<delete dir="${target.unit.dir}/${sample_type}"/>
|
|
<delete dir="${target.webapp.dir}/${sample_type}"/>
|
|
<delete file="${target.webapp.dir}/${sample_type}.war"/>
|
|
<delete dir="${target.webapp.dir}/firealarm-webapp"/>
|
|
<delete file="${target.webapp.dir}/firealarm-webapp.war"/>
|
|
<xmltask source="${iot.conf}" dest="${iot.conf}" report="true">
|
|
<remove path="/IoTDeviceTypeConfigManager/IotDeviceTypeConfig[type='${sample_type}']"/>
|
|
</xmltask>
|
|
<xmltask source="${datasources.conf}" dest="${datasources.conf}" report="true">
|
|
<remove path="/datasources-configuration/datasources/datasource[name='${data_source}']"/>
|
|
</xmltask>
|
|
</target>
|
|
|
|
</project> |