I am interested in this. This would be usefull for building and deploying Java 
webapps also. If the commiters are not interested in adding this functionality 
to ant (which I would guess is the case), a sourceforge project may be the best 
option.

-Rob Anderson

> -----Original Message-----
> From: Robert Smith [mailto:[EMAIL PROTECTED]
> Sent: Monday, March 08, 2004 12:30 PM
> To: [EMAIL PROTECTED]
> Subject: Any interest in a remote Ant server?
> 
> 
> Hi all,
> 
> I've written an add-on for Ant that allows for remote builds. 
> It consists of
> an RMI based server application and a handful of custom Ant 
> tasks on the
> client side. My motivation for this was to allow C/C++ code 
> to be built on
> remote machines for multiple architectures from the comfort of the
> developer's Eclipse IDE on Windows. I tried Rant, but found 
> it too limiting,
> so I've done my own version, complete with file transfers and 
> synchronous
> logging (which took some work to make it all 
> serialize/deserialize properly
> across RMI!)
> 
> Now that I've got it working, the question is, what do I do 
> with it? Is
> there even any interest out there for such a thing? Who 
> should I talk to at
> apache? Should I just throw it up on my own web page?
> 
> Here's how it works from the user's perspective. Please let 
> me know how to
> proceed. By the way, I have a new set of Ant tasks for 
> Eclipse that allow
> you to use the .classpath file from inside *or* outside the 
> IDE. I needed
> this to allow our continuous integration server to use the same build
> process as the developer's IDE. Any interest there?
> 
> Cheers,
> 
> Robert
> 
> ---------------------------------------
> 
> Successful build log from client:
> 
> 
> Buildfile: C:\Program Files\eclipse\workspace\RemoteAnt2\build.xml
> 
> c-all:
>         [echo] Begining remote build
> [createSession] Created remote session: clare:192.168.1.97:20042872453
>     [putFiles] Transfering 1 files to clare
>     [putFiles] Transfering 3 files to clare
>  [remoteBuild] Building on clare using SolarisCBuild.xml
> 
> clare.test:
>   [clare.echo] Building C code for Sun Sparc Solaris
>     [clare.cc] 2 total files to be compiled.
>     [clare.cc] Starting link
> 
> c-all:
>      [getFile] Recieving ctjava from clare
>      [getFile] Copied ctjava from clare to C:\Program
> Files\eclipse\workspace\RemoteAnt2/Configuration/bin/ctjava
> [closeSession] Session clare:192.168.1.97:20042872453 closed.
> BUILD SUCCESSFUL
> Total time: 11 seconds
> 
> 
> -----------------------------------------
> 
> 
> Failed build log from client:
> 
> Buildfile: C:\Program Files\eclipse\workspace\RemoteAnt2\build.xml
> 
> c-all:
>         [echo] Begining remote build
> [createSession] Created remote session: clare:192.168.1.97:2004287186
>     [putFiles] Transfering 1 files to clare
>     [putFiles] Transfering 3 files to clare
>  [remoteBuild] Building on clare using SolarisCBuild.xml
> 
> clare.test:
>   [clare.echo] Building C code for Sun Sparc Solaris
>     [clare.cc] 2 total files to be compiled.
> BUILD FAILED: 
> /tmp/builds/192.168.1.97/2004287186/SolarisCBuild.xml:6: Could
> not launch gcc: java.io.IOException: gcc: not found
> BUILD FAILED: file:C:/Program
> Files/eclipse/workspace/RemoteAnt2/build.xml:89: Build failed 
> on host clare.
> Total time: 8 seconds
> 
> 
> -----------------------------------------
> 
> 
> Failed build log from server:
> 
> 
> 0    [main] INFO  com.rjmpsmith.ant.RemoteAntServer  - 
> Starting server on
> host clare port 2020.
> 1641 [main] INFO  com.rjmpsmith.ant.RemoteAntServer  - Bound
> rmi://clare:2020/RemoteBuildServices
> 10439 [RMI TCP Connection(2)-192.168.1.97] INFO
> com.rjmpsmith.ant.RemoteBuildServices  - Created remote session:
> clare:192.168.1.97:200428713
> 10606 [RMI TCP Connection(2)-192.168.1.97] DEBUG
> com.rjmpsmith.ant.RemoteBuildServices  - Recieving
> /tmp/builds/192.168.1.97/200428713/SolarisCBuild.xml
> 10840 [RMI TCP Connection(2)-192.168.1.97] DEBUG
> com.rjmpsmith.ant.RemoteBuildServices  - Recieving
> /tmp/builds/192.168.1.97/200428713/c/ctjava/src/ctext.c
> 10858 [RMI TCP Connection(2)-192.168.1.97] DEBUG
> com.rjmpsmith.ant.RemoteBuildServices  - Recieving
> /tmp/builds/192.168.1.97/200428713/c/ctjava/src/ctext.h
> 10876 [RMI TCP Connection(2)-192.168.1.97] DEBUG
> com.rjmpsmith.ant.RemoteBuildServices  - Recieving
> /tmp/builds/192.168.1.97/200428713/c/ctjava/src/ctjexec.c
> 10903 [RMI TCP Connection(2)-192.168.1.97] INFO
> com.rjmpsmith.ant.RemoteBuildServices  - Beggining Ant build 
> for session
> clare:192.168.1.97:200428713 using SolarisCBuild.xml
> 17602 [RMI TCP Connection(2)-192.168.1.97] ERROR
> com.rjmpsmith.ant.RemoteBuildServices  - Build failed for session
> clare:192.168.1.97:200428713
> /tmp/builds/192.168.1.97/200428713/SolarisCBuild.xml:6: Could 
> not launch
> gcc: java.io.IOException: gcc: not found
>         at net.sf.antcontrib.cpptasks.CUtil.runCommand(CUtil.java:476)
>         at
> net.sf.antcontrib.cpptasks.compiler.CommandLineCompiler.runCom
> mand(CommandLi
> neCompiler.java:269)
>         at
> net.sf.antcontrib.cpptasks.compiler.CommandLineCompiler.compil
> e(CommandLineC
> ompiler.java:226)
> 
> -----------------------------------------
> 
> Ant task usage:
> 
> 
>     <!--========================================-->
>     <!--=                 c-all                =-->
>     <!--========================================-->
> 
>     <target name="c-all"
>             description="Build C code for Sun Solaris">
>         <property name="remotebuild.c.solaris.host" value="clare"/>
>         <property name="remotebuild.c.solaris.port" value="2020"/>
> 
>         <taskdef resource="remoteant.taskdefs" classpath="classes"/>
> 
>         <echo message="Begining remote build"/>
> 
>         <createSession host="${remotebuild.c.solaris.host}" 
>                        port="${remotebuild.c.solaris.port}" 
>                        property="session.c.solaris"/>
> 
>         <putFiles session="${session.c.solaris}">
>             <fileset dir="cfg">
>                     <include name="SolarisCBuild.xml"/>
>             </fileset>
>             <fileset dir="${basedir}"
>                      includes="**/c/**"
>                      excludes="**/Makefile"/>
>         </putFiles>
>                     
>         <remoteBuild session="${session.c.solaris}" 
>                      buildfile="SolarisCBuild.xml"
>                      targets="test"/>
>                 
>         <getFile session="${session.c.solaris}" 
>                  remoteFile="ctjava"
>                  localFile="${basedir}/Configuration/bin/ctjava"/>
>                 
>         <closeSession session="${session.c.solaris}"/>
>     </target>
> 
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to