Dashboard > Pulse v2.1 > ... > Projects > Built-in Projects
  Pulse v2.1 Log In | Sign Up   View a printable version of the current page.  
  Built-in Projects
Added by Jason Sankey, last edited by Jason Sankey on Dec 20, 2009  (view change)
Labels: 
(None)

Pulse Manual Index

Overview

Built-in projects are a class of pulse™ projects that are configured completely via the web interface. They offer the full flexibility of the pulse™ build core through the web interface. When creating a new project via the add project wizard, two types of built-in project are listed as choices:

Project Type Description
Single-Step Projects Projects that run a single command in a single recipe.
Multi-Step Projects Projects that run multiple commands, and/or include multiple recipes.

Note that both choices actually create the same type of project, but single-step projects are handled specially by the wizard to make them easier to configure.

Advantages

Built-in projects have the following advantages over pulse file projects:

  • They are easier to configure, especially when you first start using a new pulse™ server.
  • You can configure your project in a few simple steps and without checking in any additional files to your SCM.
  • They can take full advantage of templated configuration to share configuration (other sharing mechanisms may be used in pulse files).

As of version 2.1, built-in projects expose the full flexibility of the pulse™ build core, so configuration of a pulse file project should never be necessary. Rather, you can choose to configure via the web interface or a pulse file according to your preference.

Configuration

Both single- and multi-step projects use the same project type to configure their recipes. This type allows any number of recipes, commands and artifacts to be configured for your project. To access this configuration, go to the configuration view for the project, then select the "recipes, commands and artifacts" tree item.

Recipes

Recipes are sequences of commands used to build a project. All projects must include at least one recipe that describes how the project is to be built. Multiple recipes may be used to describe variations of the build which may be used in different build stages.

Commands

Commands are single units of work in a build. All non-trivial recipes include at least one command. Commands are frequently used to run external build tools such as make or ant. Popular tools are supported via specialised commands, although any tool can be executed using the executable command. Supported commands include:

Command Description
Ant Command Command to run the Apache Ant build tool.
BJam Command Command to run the Boost variant of the Jam build tool.
Executable Command Runs an arbitrary external command, such as a custom build script.
Make Command Command to run GNU make, or a compatible make tool.
Maven Command Command to run the Apache Maven build tool, version 1.
Maven 2 Command Command to run the Apache Maven build tool, version 2.
MsBuild Command Command to run Microsoft's MsBuild build tool.
NAnt Command Command to run the NAnt build tool.
Xcode Command Command to run Apples's Xcode development tool.

Artifacts

Artifacts are used to capture important output from the build. Common examples of artifacts include command output (standard out and error), binary files (executables, libraries, JAR files) and reports (unit test reports, test coverage reports). Artifacts are configured for each command, and are captured just after that command completes.

In addition to capturing artifacts, you may also apply post-processing to them. Post-processing is used to extract features such as errors and warnings, as well as capture the output of test results.

Pulse supports the following types of artifact:

Type Description
Directory A collection of files nested underneath a directory, e.g. a directory of test reports.
File A single file, e.g. a binary produced by the build.
Link A link to an external artifact, e.g. a file published on an external server.
Output Output (standard output and error) from the build command. This artifact is implicit, and post-processing is configured as part of the command.

Migrating to Pulse File Projects

Built-in projects are implemented on top of the same core as pulse file projects. In fact, a pulse file is created based on the project configuration whenever a built-in project is built. This pulse file may be viewed via the web interface in the results for the build. This provides a starting point for you to create your own pulse file for the project. If you wish to migrate your project from a built-in type to a pulse file project, you can use the "convert to custom project" or "convert to versioned project" link on the hierarchy view for the project.

Ant Command (Pulse v2.1)
BJam Command (Pulse v2.1)
Executable Command (Pulse v2.1)
Make Command (Pulse v2.1)
Maven 2 Command (Pulse v2.1)
Maven Command (Pulse v2.1)
MsBuild Command (Pulse v2.1)
Multi-Step Projects (Pulse v2.1)
NAnt Command (Pulse v2.1)
Project Directory Artifacts (Pulse v2.1)
Project File Artifacts (Pulse v2.1)
Project Link Artifacts (Pulse v2.1)
Single-Step Projects (Pulse v2.1)
XCode Command (Pulse v2.1)

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