[Anthill] Projects not building in default schedule

Jonathan Holloway jonathan.holloway at gmail.com
Fri Apr 22 03:07:41 CDT 2005


This is fine if you have temporary directories that are used to build
classes but if you actually have files (e.g. config files) that are
required to be copied to a  particular place because class files
depend on them then it all goes to pot.  I don't think there is a way
to specify exclude directories to the cvs log command so we're in a
bit of a muddle here with anthill, is there anyway around this
problem?

Cheers,
Jon.

On 4/22/05, Priest, Mark <mpriest at 3eti.com> wrote:
> I'm afraid the original post was correct.  The proble he is describing I
> have also experienced with Anthill.  The problem is that the cvs log command
> fails if the build process creates any new directories in the working
> directory during the build.  For example, if I create a classes directory
> for compilation and I leave it there after the build then the next Anthill
> build will with this error.
> This is actually the default behavior of cvs log.  You would see the same
> error if you ran cvs directly.
> 
> The work-around is that your build script must delete any directories that
> it creates as part of the build process.  What I do is clean up after every
> build so that when the ant script completes there is nothing left in the
> working directory that is not already in cvs.  Typically, I create a
> temporary directory and all of my intermediate build products go there.  The
> only safe thing to "permanently" create is something in the publish
> directory that Anthill passes to you since that is outside of the working
> directory.
> 
> This is actually a pretty annoying aspect of Anthill since every build takes
> a long time.  I cannot keep intermediate build products between builds
> because of this so I have to recompile classes that have not changed.
> 
> -Mark
> 
> 
> -----Original Message-----
> From: Erik Husby [mailto:mhusby at broad.mit.edu]
> Sent: Thursday, April 21, 2005 2:38 PM
> To: Jonathan Holloway; Anthill user list
> Subject: Re: [Anthill] Projects not building in default schedule
> 
> Jonathan Holloway wrote:
> 
> >I've solved the problem here, it relates to the getRevisionsSince.sh
> >script under conf/profiles which has the following:
> >
> >#!/bin/bash
> >echo "Executing: cd $1"
> >cd $1
> >echo "Executing: cvs -d $2 log $3\"$4 $5 $6\" $7 $8"
> >cvs -d $2 log $3"$4 $5 $6" $7 $8
> >
> >If I comment this out I obviously don't get the revisons (hence the
> >original email).  However if this is left as default (like the above)
> >then when the anthill build finishes for the project the following
> >exception is thrown:
> >
> >17:26:29:690 [Thread - AnthillBuildDaemon] INFO
> >com.urbancode.anthill.adapter.CVSRepositoryAdap
> >ter  - Get revisions since command:
> >
> >sh /var/progs/anthill2/conf/profiles/Unix/unix_cvs/getRevisionsSince.sh
> >/var/progs/anthill2/work
> >/pcas-core /home/cvs  -d >2005-02-23 12:43:24 GMT -rHEAD -N
> >
> >cvs log: Logging .
> >cvs log: Logging config
> >cvs log: Logging dist
> >cvs log: in directory dist:
> >cvs [log aborted]: there is no version here; do 'cvs checkout' first
> >17:26:30:171 [Thread - AnthillBuildDaemon] ERROR
> >com.urbancode.anthill.BuildManager  - cvs log f
> >ailed.  Exit code: 1
> >com.urbancode.anthill.adapter.RepositoryException: cvs log failed.  Exit
> code: 1
> >        at
> com.urbancode.anthill.adapter.CVSRepositoryAdapter.getRevisionsSince(CVSRepo
> sitoryAda
> >pter.java:232)
> >        at
> com.urbancode.anthill.BuildManager.loadRevisions(BuildManager.java:287)
> >        at com.urbancode.anthill.BuildManager.build(BuildManager.java:215)
> >        at
> com.urbancode.anthill.AnthillProject.releaseProject(AnthillProject.java:231)
> >        at
> com.urbancode.anthill.AnthillProject.releaseProject(AnthillProject.java:217)
> >        at
> com.urbancode.anthill.AnthillProject.releaseProject(AnthillProject.java:195)
> >        at
> com.urbancode.anthill.AnthillProject.run(AnthillProject.java:187)
> >        at com.urbancode.anthill.BuildDaemon.run(BuildDaemon.java:73)
> >
> >I believe this relates to the fact that some files don't have
> >revisions under the work directory since they are not within cvs, they
> >are produced as part of the build, this means that when cvs tries to
> >get a revision for the file it fails.
> >
> >I'm using version 1.8.0.264 of anthill, we upgraded frmo version 1.5.x
> >something where we didn't get the problem originally.  This is causing
> >some issues at the mo, would be grateful is somebody could recommend a
> >fix or workaround.
> >
> >Many thanks,
> >
> >
> No the problem is that you have a directory that is supposed to be under
> CVS control but the CVS control files are missing from it. I've had this
> problem when the build script "cleans" a directory of everything
> including the CVS directory.
> 
> --
> Erik Husby
> Senior Software Engineer
> Broad Institute of MIT and Harvard
> Rm. 2192  320 Charles St, Cambridge, MA 02141-2023
> mobile: 781.354.6669, office: 617.258.9227,
> email: mhusby at broad.mit.edu  AIM: ErikAtBroad
> 
> _______________________________________________
> Anthill mailing list
> Anthill at lists.urbancode.com
> http://lists.urbancode.com/mailman/listinfo/anthill
>



More information about the Anthill mailing list