You are viewing a plain text version of this content. The canonical link for it is here.
Posted to alexandria-dev@jakarta.apache.org by Jeff Martin <je...@synamic.co.uk> on 2000/09/27 12:31:22 UTC

Blame ML

I've started a bit of work on getting automatic builds running from
Alexandria.

Getting the build linked in is fairly easy. We just need to add the build
file and the classpath to the cvs markup.

e.g. <build file="build.xml" target="main"
classpath="/home/src/lib/junit.jar" /> 

This can than be used when creating the build.xml file. I've found the best
way is to run the building version of ant is using the java task so it can
be forked to avoid any conflicts with the main jvm.

As far as the blame side goes. I think the best thing is to create a custom
build listener for ant which listens for the build events and will and the
info to an xml blame file.

e.g.
<blame>
  <system module="module1" tag="HEAD">
    <build date="20000927 10:48:46" status="success"/>
    <build date="20000927 10:15:36" status="success"/>
  </system>
  <system module="module2" tag="HEAD">
    <build date="20000927 09:10:13" status="fail">
      <msg task="copyfile" suspect="martinj" file="something.properties">src
file does not exists</msg>
    </build>
  </system>
  <system module="module3" tag="HEAD">
    <build date="20000927 09:10:13" status="fail">
      <msg task="javac" suspect="martinj" line="8"
file="/home/httpd/staff/code/cvs/utils/HEAD/utils/src/uk/co/synamic/util/tes
t_Strings.java">
/home/httpd/staff/code/cvs/utils/HEAD/utils/src/uk/co/synamic/util/test_Stri
ngs.java:8: Superclass uk.co.synamic.util.TestCase of class
uk.co.synamic.util.test_Strings not found.
public final class test_Strings extends TestCase {
      </msg>
    </build>
    <build date="20000927 09:10:13" status="fail">
      <msg task="javac" suspect="martinj" line="8"
file="/home/httpd/staff/code/cvs/utils/HEAD/utils/src/uk/co/synamic/util/tes
t_Strings.java">
/home/httpd/staff/code/cvs/utils/HEAD/utils/src/uk/co/synamic/util/test_Stri
ngs.java:8: Superclass uk.co.synamic.util.TestCase of class
uk.co.synamic.util.test_Strings not found.
public final class test_Strings extends TestCase {
      </msg>
    </build>
  </system>
</blame>

We can then format this using XSL.