ANT Deployment Script

Please find below a little ANT build script to deploy your application to your local Roku box.
The actual deploy task requires a few 3rd party libraries as ANT provides no standard task for HTTP post.
I only tested this with a small sample application, but you might find it useful anyhow.
Cheers
–Henning

build.xml


<project name="roku-test" default="deploy" basedir=".">
	<description>
        A simple ANT build file that bundles the source and images folders into a zip 
    	and pushes it to your Roku (see local.properties for configuration).    	
    </description>

	<!-- deploy task requires fikin-ant tasks and dependent libraries -->
	<taskdef name="httpmpost" classname="net.sf.fikin.ant.httpclientanttask.AntMultipartPostMethod">
		<!-- requires the following JARs: 
	     fikin-ant-1.7.3.jar
	     commons-httpclient-3.1.jar
	     commons-logging-1.1.1.jar
	     commons-codec-1.4.jar -->
	</taskdef>

	<!-- set global properties for this build -->
	<property name="source" location="source" />
	<property name="images" location="images" />
	<property name="build" location="target" />
	<property name="dist" location="out" />
	<property name="distfile" location="${dist}/${ant.project.name}.zip" />
	<!-- load environment specific properties -->
	<property file="local.properties" />

	<target name="init">
		<tstamp />
	</target>

	<!-- "compile" all resources, possibly do some filtering etc -->
	<target name="compile" depends="init">
		<mkdir dir="${build}" />
		<copy todir="${build}/source">
			<fileset dir="${source}" />
		</copy>
		<copy todir="${build}/images">
			<fileset dir="${images}" />
		</copy>
	</target>

	<target name="dist" depends="compile">
		<mkdir dir="${dist}" />
		<zip basedir="${build}" destfile="${distfile}" />
	</target>

	<target name="deploy" depends="dist">
		<echo message="Deploying Application to Roku at http://${ROKU_DEV_TARGET}" />
		<httpmpost url="http://${ROKU_DEV_TARGET}/plugin_install">
			<postFile name="archive" file="${distfile}" />
			<poststring name="mysubmit" value="Install" />
		</httpmpost>
	</target>

	<target name="clean">
		<delete dir="${build}" />
		<delete dir="${dist}" />
	</target>
</project>

local.properties


# IP address of your Roku, see Settings->player info
ROKU_DEV_TARGET=10.0.1.4