HOME NEWS FORUM ABOUT
   Register now on jayasoft.org    Login  
IvyCruise
Products
Login
Username:

Password:


Lost Password?

Register now!


  Get Firefox!

Reference

IvyCruise is a set of plugins for CruiseControl.

You will find below the documentation reference of the different plugins.
If your are looking for the CruiseControl documentation reference, just go there.
If you want to see an example of how to use them, just follow this roadmap.

Prerequesites

The IvyCruise plugins set requires two particular configurations :
  • ivy.jar and ivycruise.jar in the CruiseControl classpath. (see it here)
  • a multithreaded CruiseControl server configuration (can run without but in a degraded but functionnal mode).

<ivybuilder>

IvyBuilder is the plugin used to retrieve and order projects build according to the dependencies they have to each other.

Attributes

Attribute Required Description
ivyfilepattern No Pattern to access to other projects'ivy file.You can use the variable ${project} that matches each declared project into CruiseControl config file.
Example:
    ivyfilepattern="projects/${project}/ivy.xml
where ${project} is a CruiseControl project name.

Child Elements

Element Cardinality Description
<pattern> 0..* Defines some pattern child elements to retrieve other projects.
<project> 0..* Give the complete description of a project to use : name and ivyfile.

<pattern>

You can define as many pattern elements as you want to point to projects that could be into different directories. You can use the variable ${project} that matches each declared project into CruiseControl config file.

Attributes

Attribute Required Description
value Yes pattern to access to other projects'ivy file.
Example:
    ivyfilepattern="projects/${project}/ivy.xml
where ${project} is a CruiseControl project name.
Example :
<ivybuilder>
  
<pattern value="projects/apps/${project}/ivy.xml" />
  
<pattern value="projects/components/${project}/ivy.xml" />
  
<pattern value="projects/tools/${project}/ivy.xml" />
  
<pattern value="projects/misc/${project}/ivy.xml" />
</ivybuilder>

<project>

You can define as many project elements as you want to point directly to other projects. The project element is less flexible than the pattern as it points only to a specific project.

Attributes

Attribute Required Description
name Yes CruiseControl name of the project
ivyfile Yes path to project ivy file
Example :
<ivybuilder>
  
<project name="A" ivyfile="checkout/A/ivy.xml" />
  
<project name="B" ivyfile="checkout/B/ivy.xml" />
  
<project name="C" ivyfile="checkout/C/ivy.xml" />
</ivybuilder>

<ivybuildstatus>

This task goal is to tell if the project must be rebuild or not regarding of the dependencies it owns, ie the project will be built if one of its dependencies has changed.

Attributes

Attribute Required Description
ivyfile Yes the path to the ivy file of the project.

<ivyconditional>

The ivyconditional task is a meta publisher.
It publishes the result using the sub publishers only if build has failed or if real modifications occured, not only dependency ones (to use in conjunction with IvyBuildStatus or BuildStatus). This publisher is usually used with email publishers, to prevent spam when only dependency has changed.
Example:
<publishers> 
  
<ivyconditional>
    
<email mailhost="127.0.0.1" buildresultsurl="http://127.0.0.1:8080/cruisecontrol/buildresults/myproject/" returnaddress="someone@mysite.com">
    
</email>
  
</ivyconditional>
</publishers>

Child Elements

Element Cardinality Description
<antpublisher> 0 .. * Executes an Ant script which implements a custom publisher.
<artifactspublisher> 0 .. * Copies build products to a directory
<currentbuildstatuspublisher> 0 .. * Writes the time of the next build to a file
<email> 0 .. * Sends an email with a URL to the build results JSP
<execute> 0 .. * Execute a command as part of the publishing phase
<ftppublisher> 0 .. * Copies the log file and build artifacts to an FTP server
<htmlemail> 0 .. * Sends an email with the build results embedded as HTML
<jabber> 0 .. * Sends an instant message with a link to the build results via a Jabber server using XMPP
<sametimeannouncement> 0 .. * Sends Sametime announcements with the result of the build
<scp> 0 .. * Copies a file using SCP
<x10> 0 .. * Controls an x10 electronic device
<xsltlogpublisher> 0 .. * Performs a transformation of the log file



 
Copyright © 2004-2005 by jayasoft  |  Design by 7dana.com | A web site by jayasoft.fr 

Java is a trademark or registered trademark of Sun Microsystems, Inc. in the United States and other countries.
This site is independent of Sun Microsystems, Inc.