Archive for the ‘Zutubi’ Category

Get More Out Of Your Continuous Integration Server With Personal Builds

Friday, November 17th, 2006

The headline new feature in Pulse 1.2 is personal builds. A personal build is a build of the current state of your working copy on the Pulse server. This allows you to test your changes before you commit them to version control. The most obvious advantage of this is that you don’t have to taint your shared source base with untested code to get a CI build. You test first, then commit when you are happy. However, there are also some less obvious advantages:

  • Multiplatform testing: Pulse supports distributing a build across multiple agents in parallel. This allows you to easily test on multiple platforms. Couple this with personal builds, and you can easily test code on platforms other than your preferred development platform while you develop. No need to struggle with slow builds over a networked file system, or to manually move the code about to test.
  • More efficient resource usage: you can submit a personal build to your Pulse build farm and still have your development machine free for other tasks. You can also make use of free developer machines as Pulse agents, but that is for another post :).
  • Full reporting: just like every other build, Pulse extracts and reports interesting information for personal builds via a rich web interface. This beats digging through hundreds of lines of build logs and scratching up test reports to find the relevant info. Pulse can also be configured to send you notifications when personal builds complete, just like a CI build. You can even customise both the information Pulse extracts from the logs and the format of the notification messages.
  • Build history: Pulse will remember your recent personal builds (as many as you choose) and keep the results available for browsing. This makes it possible to refer back to an earlier issue without scrolling frantically in your console buffer (if you’re lucky enough to have the output at all!).

Personal builds are just one way in which we are making Pulse do more than your regular continuous integration server. From the start, we have seen Pulse as not just a server that sits on the sideline, but as a tool that you can leverage during every day development. This is why we have a strong focus on the developer in Pulse: every developer has their own account with a configurable dashboard and very flexible notification settings. Adding personal builds to the mix expands on what you can do with Pulse as you develop, and it is just one of a suite of tools we have or plan to add to Pulse in the near future.

Anyhow, I hope I’ve piqued your interest in the idea. If so, check out the Early Access Page for Pulse 1.2, and enjoy!

Article: Automated Releases

Tuesday, November 14th, 2006

In this article, we look into automating the release process. We begin by reviewing the benefits of automated releases. We then take a look at common steps involved in the automation process, and some of the challenges they may present.

Read the full article at zutubi.com.

Pulse 1.2 M2

Tuesday, November 14th, 2006

Pulse 1.2 M2 has been released! This is the second milestone in the 1.2 series. New features include:

  • Project groups: manage projects by organising them into groups.
  • Change Viewers: an easier, more powerful way to link changelists and files to external viewers such as Fisheye.
  • Commit message transformers: powerful tools for transforming commit messages, for linking to external tools or highlighting details.
  • Improved remote API: new functions for managing projects, users and agents.
  • Bootstrap improvements: realtime output and the ability to cancel during bootstrapping.
  • All-in-one packaging: download agent and tools packages from your Pulse server.
  • Simpler tools configuration: configure the personal build client without editing any files.

See the early access page for M2 packages and full details.

Pulse 1.2 M1: Test Before You Commit

Tuesday, October 31st, 2006

Phew, it’s been a busy time, but finally we have the first milestone build of Pulse 1.2 ready to go! The headline feature for this release is the ability to run personal builds. A personal build takes your local changes and applies them to a pulse™ build without them being submitted to your SCM first. This allows you to test your changes before submitting them to version control.

Other major features in this release include:

  • Reports: each pulse™ project now has its own “reports” page, which displays build data for the project visually. Currently, the reports show trends over time for:
    • Build results
    • Tests run per build
    • Build time
    • Stage execution time
  • Windows System Tray Notification: a new Pulse client, Stethoscope, sits in your system tray allowing you to see your project health at a glance. You can configure Stethoscope to monitor both personal builds and project builds for your selected projects. If you like, Stethoscope will pop up a message whenever a build completes.
  • Customisable Notifications: don’t like the format of your notification emails or instant messages? In pulse™ 1.2, the notification templates can be customised using FreeMarker.
  • Automatic Agent Upgrades: we go to great effort to make pulse™ easy to install, upgrade and maintain. That is why in pulse™ 1.2 we have made the upgrade process even simpler by adding automatic upgrades for agent machines. Now, after you upgrade your main pulse™ server, your agents will be automatically upgraded for you!
  • Resource Configuration Wizard: on the same theme of keeping things simple, we have also added a new resource configuration wizard. This wizard makes it easy for you to configure common build dependencies, such as Java Development Kits and build tools (ant, make, etc). We have also improved the resource auto-discovery code to detect resource versions for you: in many cases you won’t even need the wizard!
  • Anonymous Signup: you can now optionally allow users to sign up to pulse™ themselves. This lessens the burden on the pulse™ administrator by removing the need for them to create accounts. It is also perfect for public-facing servers (e.g. open source projects) where interested parties can sign up for read-only access but with their own dashboard and preferences.

Grab a milestone build now from our Early Access Program page and try it out!

Free Small Team Licenses for Pulse!

Tuesday, August 15th, 2006

We are pleased to announce the immediate availability of free Small Team liceses for the Pulse continuous integration server. Small Team licenses are fully-featured licenses for up to two users and two projects on a single server.

We decided to make these licenses available for a few reasons:

  • During our careers we’ve worked for small teams without the budget for the best tools. Although Pulse is inexpensive, we don’t want it to be out of the reach of these teams while they are just starting out.
  • We have had interest from current users regarding a cheaper license for home use. Is free cheap enough for you? ;)
  • We drive the development of Pulse via user feedback. More users means more feedback and a better product in the long term. Adding a new class of users to the mix will help all of our customers.

So, get your Small Team license today and enjoy using Pulse!

Pulse Continuous Integration Server 1.1 Beta!

Tuesday, July 25th, 2006

Well, it’s finally here! The first public beta of pulse 1.1. This is a huge milestone for us, just take a look at what’s new to see what I mean. The biggest single feature is powerful distributed building, but as you’ll see the list is long!

Thanks so much to our private pre-release testers, your feedback has been invaluable. Now for the rest of you: bring it on!

Pulse Continuous Integration Server 1.0.6

Wednesday, June 28th, 2006

Pulse version 1.0.6 has been released. This release fixes some minor issues in 1.0.5, see the release notes for details.

Pulse Continuous Integration Server 1.0 Final!

Wednesday, June 14th, 2006

Zutubi is proud to announce the availability of the Pulse automated build (or continuous integration) server for sale from today. This is the culmination of many months of development and beta testing. We would like to thank all of our beta testers for their feedback during this period.

If you haven’t tried it yet, download pulse today and let us know what you think!

Pulse Continuous Integration Server 1.0.4

Thursday, May 25th, 2006

We are happy to announce version 1.0.4 of pulse. Highlights in this release include:

  • Support for CppUnit
  • More flexible notification conditions: you can now write arbitrary boolean expressions to configure when you get notified!
  • The ability to clone projects: simplifying setup for multiple similar projects.
  • Improvements to the test results view for large test suites: expand/collapse suites, show/hide successful tests.

Full release notes are available. Thanks to the beta testers!

Pulse Continuous Integration Server 1.0.2

Tuesday, May 9th, 2006

After a solid week of beta testing and feedback (thanks to our beta testers!) pulse version 1.0.2 is ready! You can download the new release at the pulse downloads page. Highlights in this release:

  • Much improved RSS support
  • Support for maven 2 projects
  • Improved “latest changes by me” view
  • Several other improvements and bug fixes

See the full release notes for further details. Thanks again to our beta testers, keep on stretching it!