New

What's new in QuickBuild 4.0

Customizable user dashbaords. Grid resource management. Grid partition between projects. Metrics aggregation in configuration tree. User activities auditing. CollabNet TeamForge integration. Google Repo integration. Redmine integration. Boost test report rendering. RESTful APIs to access changes, issues and various reports. Plugin API for integrating additional reports and issue tracking systems. Improved reports for changes, issues, unit tests, code coverage and inspection.

Customizable user dashboards to organize build information

In case there are many configurations set up in QuickBuild, it is very convenient for users to create their own dashboards to organize noteworthy configurations in a single page along with interesting build information. Gadgets for all kind of build information are available for dashboard composition, including configuration subtree, artifacts, changes, issues, and various kind of reports and statistics. Dashboards can be shared with other groups to create group dashboard, and can be shared with anonymous group to create public dashboards.

Grid resource management and partition

Resource means any physical or virtual component of limited availability within the grid, and is provided by grid node. A build step can declare to require certain resources to run. If some nodes are found with desired resources, the step will run on the fastest node; otherwise, the step will wait until a node with free resource is available. This way, the resource contention problem between builds and steps can be solved efficiently.

Grid partition between projects

For a given configuration subtree, QuickBuild can assign eligible nodes to the tree. All builds happen under this tree can only run on assigned nodes regardless how the node selection setting of the build is configured. With this feature, nodes in the grid can be divided between different departments/projects so that build of one project never occupy grid resources of other projects..

Metrics aggregation for instant overview of metrics at each level of configuration tree

By defining a metrics aggregation at a high level configuration, all child configurations will inherit the setting and will automatically collect relevant metrics from child configurations to form metrics overview at every level. For instance, a JUnit aggregation will display success rate, duration, and test number for all JUnit tests executed for all configurations under the tree.

Audit user activities to provide traceability

QuickBuild audits all user activities in the system such as configuration modification, build triggering/cancelling. Authorized users may open the audit log to find out what has been changed in the system during a certain time period, and can compare the changes if necessary.

Improved SCM changes and issues reports

A lot of improvements have been made in SCM changes and issues report to make it fast and easier. Major improvements including:

  • Polish commit information.
  • Group commits, files and related issues by build when compare changes and issues between different builds.
  • Display all commits in history with the ability to group by build, by day, or by user in SCM changes statistics page.
  • Enhance source code view/diff page.

Report system has been re-designed

The whole report system has been re-designed and performance has been improved significantly (5x faster than before). Other improvements include:

Display metrics trends in build overview and you can easily get to know that whether a performance indicator is increased or decreased compared to previous build.
Display history of each unit test.
Display code inspection message or code coverage information when viewing the source code.

CollabNet TeamForge integration

Now, QuickBuild can integrate with CollabNet TeamForge seamlessly. This integration enables:

  • Hyperlink TeamForge artifacts in commit message to corresponding TeamForge pages.
  • Generate issues report for a build which can be used as release notes.
  • Associate SCM commits with TeamForge artifacts and display the commits of each artifact.
  • Update TeamForge tracker artifacts based on:
    • commit commands in the commit messages.
    • a list specified manually.
    • a specified query based on lucene search syntax.
  • Generate TeamForge tracker artifacts based on the build or step status.
  • Create a release to TeamForge File Releases along with:
    • updating "Fix in Release" fields of the related artifacts.
    • updating specified fields of the related artifacts.
    • publishing files to TeamForge release.
  • Upload files to TeamForge documents.
  • User TeamForge user database to authenticate QuickBuild users.

Redmine integration

Redmine is a popular open source project management tool. QuickBuild integrates with Redmine to do the following:

  • Hyperlink all issue id mentioned in commit messages.
  • Generate issue reports for a build which can be used as release notes.
  • Associate SCM commits with the issues and display the commits of each issue.

Google Repo Integration

For Android users, QuickBuild now integrates with Google Repo to detect changes from Repo, check out files from repo repository, and create tags in repo.

Boost Test Integration

Boost test is a popular C++ test framework. QuickBuild now integrates with it out of box with below features:

  • Test report to display test result by suites and by tests.
  • Error report to display all failed tests with error messages.
  • Collect test metrics to display trends of success rate, total tests and failed tests.
  • Display history of each test.

RESTful API for changes, issues and various reports

You can now access all reports supported by QuickBuild via RESTful API, including changes, issues, unit tests, code coverage, code inspections. Now nearly every piece of information in QuickBuild can be accessed and controlled via RESTful API.

Plugin API for unit test report

QuickBuild supports some common unit test frameworks. For other unit test frameworks not supported out of the box, now it is a breeze to create a custom plugin to render the test report by leveraging the new unit test integration API. With just about 200 lines of code, a lot of features can be implemented including:

  • Display tests by failed tests, by test suites, and by tests.
  • Display history of each test.
  • Collect and display test metrics, including success rate, failed tests, total tests, test duration.
  • Expose report data via RESTful API.
  • Aggregate test report to parent configurations.
  • Provide report gadgets to dashboard.

Plugin API for issue tracker

QuickBuild supports some common issue tracking systems. For other issue trackers not supported out of the box, now it is a breeze to create a custom plugin to do the integration with the new issue tracker integration API. In the custom plugin, you only need to fetch issue information from your issue tracking system and provide some helper classes. Then, you will get below features:

  • Collect issues from commit messages.
  • Display issue report for a build which can be used as release notes.
  • Associate SCM commits with issues and display commits of each issue.

Information

Message