Dashboard > Pulse v1.2 > ... > pulse Files > recipe
  Pulse v1.2 Log In | Sign Up   View a printable version of the current page.  
  recipe
Added by Jason Sankey, last edited by Jason Sankey on Oct 30, 2006  (view change)
Labels: 
(None)

Pulse Manual Index

Recipes

A recipe is a sequence of commands used to build a project. Recipes are defined in the pulse™ file and then referenced when defining build specifications in the web interface. Each pulse file project will have at least one recipe defining how that project is built. Commonly, projects will have multiple recipes for different types of builds (e.g. continous testing builds, nightly packaging builds).

Recipes contain nested properties, resource references and commands. Resource references are used to introduce properties from a named resource. Finally, the commands nested in the recipe will be executed in the sequence they are found when the recipe is executed.

Attributes

Attribute Description Required? Default
name The name of the recipe (referenced in build specifications). Yes  

Child Elements

Element Description Number
ant Defines a command for running Apache Ant. 0 or more
command Defines a command with artifacts to be captured. 0 or more
executable Defines a command for running arbitrary binaries. 0 or more
make Defines a command for running make. 0 or more
maven Defines a command for running Apache Maven version 1 0 or more
maven2 Defines a command for running Apache Maven version 2 0 or more
resource A reference to a resource, used to introduce properties from that resource. 0 or more
sleep Pause for a specified interval. 0 or more
xcodebuild Defines a command for running xcode's xcodebuild binary 0 or more

Examples

A trivial recipe that execute a single make command:

<recipe name="default">
    <make name="build" targets="clean all"/>
</recipe>

A recipe that executes a build, then packages the results with a script:

<recipe name="build-packages">
    <ant name="build" targets="build-all"/>
    <executable name="package" exe="bin/scripts/make-packages.sh"/>
</recipe>

A recipe that requires GCC version 3.2:

<recipe name="default">
    <resource name="gcc" version="3.2"/>
    <make name="build" args="CC=${gcc.bin}" targets="clean all"/>
</recipe>

The "gcc" resource must be defined on the server with version "3.2", else this recipe will fail. The example assumes that the resource defines the property "gcc.bin". For more information about resources, refer to the Resources page.

ant (Pulse v1.2)
bjam (Pulse v1.2)
command (Pulse v1.2)
executable (Pulse v1.2)
make (Pulse v1.2)
maven (Pulse v1.2)
maven2 (Pulse v1.2)
resource (Pulse v1.2)
sleep (Pulse v1.2)
version (Pulse v1.2)
xcodebuild (Pulse v1.2)

Zutubi wiki is Powered by Atlassian Confluence, the Enterprise Wiki. (Version: 2.2.10 Build:#528 Nov 29, 2006) - Bug/feature request - Contact Administrators