An idea: EBB – Event Based Build

It’s a long time ago – last year think – I got an idea. It was the time where we had a discussion (again) how to parallelize Ant targets … My idea was that there is a build system running all time waiting for changed source files … and most of the stuff is available: from Ant and CruiseControl!

<build log4jconfig="build.log.config">
    <block name="update">
        <cc:modificationset ... />
        <ant:sequential/>
    </block>
</build>

The EBB framework is responsible for parsing the file and instantiating all the stuff. Output is redirected to Log4J. Its configuration file is specified in the root tag. The build contains multiple build blocks. Each block is started in a new thread. Its name is used as Log4J category. The CruiseControl-Modificationset is used for checking for changes. If a change is detected, EBB recieves its event. When recieving this event the Ant taskcontainer sequential will be executed.

<build log4jconfig="log4j.config">
    <block update="update">
        <cc:modificationset>
            <svn RepositoryLocation="http://svn.apache.org/repos/asf/ant/core/trunk/"/>
        </cc:modificationset>
        <ant:sequential xmlns:svn="antlib:org.apache.ant.svn">
            <svn:svn command="update"/>
        </ant:sequential>
    </block>
    <block update="compile">
        <cc:modificationset>
            <filesystem folder="core"/>
        </cc:modifactionset>
        <ant:sequential>
            <javac ... />
        </ant:sequential>
</build>
Explore posts in the same categories: Ant, en

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s


%d Bloggern gefällt das: