Continuous Integration
- Run proof build to test changes on server before checkin.
- Run builds concurrently to get fast feedback.
- Run builds upon commit, use a schedule, or upon dependency finish.
- Report build progress and log in real time.
- Monitor/trigger build and receive build notifications through tray monitor without opening browser.
- Send failure notifications to committed users to ensure responsibility.
- Use queues to divide server resource between different teams.
Tight SCM Integration
- Flexible checkout strategy, either from server, or from agents.
- View/diff build changes by commits or files.
- Quiet period support to reduce the risk of triggering build against partial work.
- Exclude certain directories/files when detect changes from SCM.
- Optionally label source code as part of build workflow.
- User and file activities in SCM.
- Supported SCM systems: Subversion, CVS, Perforce, ClearCase, StarTeam, Visual SourceSafe, and Accurev.
Build and Release Management
- Produce QA build and optionally have the generated artifacts deployed into test servers.
- Be able to mark a good build as recommended to make it stand out of other builds.
- Promote good QA build as release build and optionally get it published on company web site.
- Compare different QA builds or release builds to get source changes.
- Flexible version strategy for QA and release builds.
- Access build artifacts and project documents.
- Customizable statistics chart of key performance indicators.
- Build auto cleanup strategy to reduce disk space usage.
Issue Tracker Integration
- Transform issue keys in SCM commit messages into issue links.
- An issue panel to display all resolved and related issues of a build.
- Create/assign issues under certain conditions during build.
- Manage build versions either at issue tracker side, or at QuickBuild side.
- Update issue status based on issue commands in SCM commit messages.
- Update relevant issue fields to reflect fixed build.
- View related SCM changes and builds for selected issues or projects at issue tracker side.
- Currently supports JIRA, Trac and Bugzilla.
Advanced Build Grid
- Scale to support massive builds simply by adding more nodes.
- Run and test on multiple platforms.
- Run steps of a single build parallelly on multiple nodes to accelerate build speed.
- Flexible node selection mechanism to enable build step running on one or more compatible nodes, with load balancing.
- Auto-update agents when server is upgraded.
Test Insight
- Test results at a glance in build overview page.
- Access details of failed tests, with the ability to find out who broke the tests.
- Analyze and group test results by packages, test suites, namespaces, and more...
- Statistics of the test results
- Analyze history data of test results to know which tests failed often, which tests spent more time, and more.
Code Quality
- Native support for mainstream code inspection and coverage tools, including checkstyle, findbugs, emma, pmd, and cobertura.
- Code quality at a glance in build overview page.
- Analyze the inspection, coverage results to find code problems quickly and easily.
- Display source code in QuickBuild with detected problems marked.
- Generate statistics chart for inspection/coverage results.
- Analyze history data of inspection/coverage results to know which files/classes causing most of the problems.
Build Setup and Workflow Design
- Organize projects hierarchically for easy management and navigation.
- Design complex build workflow visually, with drag and drop support.
- Repeat execution of steps, either sequentially or parallelly.
- Reuse build workflows between projects through inheritance and achieve workflow diversity by using variables.
- Transitive build dependency support and artifacts resolving.
- Parameterized manual builds.
Supported Build Tools
- Apache Ant
- Apache Maven2
- NAnt (used to build .NET projects)
- Rake (used to build Ruby projects)
- Any other command line based build tools.
Extensible via Plugins and RESTful API
- QuickBuild can be extended to support new SCM systems, steps, reports, statistics, notifiers and authentication systems with custom plugins.
- External system can operate QuickBuild programmatically via the RESTful API.