Monthly Archive for January, 2012

Polling Subversion with Jenkins

There are many advantages Jenkins can offer Apache Subversion users, one of which is the option of automatically polling Subversion repositories for changes, and creating a new build whenever changes are detected. Implementing this functionality is made easy with our free, open ALM platform for Subversion, uberSVN. In this tutorial, we show you how to configure Jenkins to poll a Subversion repository once every five minutes.

1. To automatically poll a Subversion repository, you must first have created at least one Jenkins job. To get started, click on the desired Jenkins job from within uberSVN’s ‘Jenkins’ tab.

2. On the next screen, click ‘Configure.’

3. Select ‘Subversion modules’ and enter the URL of the repository you want Jenkins to poll.

4. Under the ‘Build Triggers’ heading, select ‘Poll SCM Schedule.’ A new text box will open, where you can enter how often you want Jenkins to poll the repository. In this example, Jenkins will poll the Subversion repository every five minutes. Alternatively, you can specify particular dates and times, using the following formula:

MINUTE HOUR DOM MONTH DOW

MINUTE: Minutes within the hour (0-59)
HOUR: The hour of the day (0-23)
DOM: The day of the month (1-31)
MONTH: The month (1-12)
DOW: The day of the week (0-7) where 0 and 7 are Sunday.

Note that each item must be separated by TAB or whitespace.

5. When you have entered all this information, click ‘Save’ and Jenkins will begin automatically polling Subversion.

6. If you want to check the polling process is working, make some changes to your working copy and then commit them back to the repository as normal. Now go back to your Jenkins job and select the ‘Subversion Polling Log’ option.

7. You will see that Jenkins has detected the changes and automatically created a new build (in this example, Build 6.)

8. If you need to check exactly what has changed in this build, click on the build’s link in the ‘Build History’ box.

9. Click on the ‘Detail’ link to be taken to the ‘Changes Summary’ page.

10. On this page, you will see the list of changes made in this build, including files that have been added, deleted, or modified. You have now successfully set Jenkins to poll your repository!

Jenkins is available for free through uberSVN. Visit http://www.ubersvn.com/ now to download uberSVN. A professional support option for Jenkins is also available.

Using uberAPPS? Have your say on uberAPPS at the official forum!

Jenkins Professional Support Comes to uberSVN

At WANdisco, we are always interested in hearing your feedback, especially when it’s related to our award-winning, open ALM platform, uberSVN. With uberSVN, we’re aiming to give users exactly what they want: the freedom to build their own, customized ALM platform made from their open and closed source components of choice. After listening to your feedback, we are pleased to announce we are now offering a professional support option for Jenkins, the world’s number one open source continuous integration (build) server.

We have been offering Jenkins through uberSVN since last year, giving users the option of downloading a version of Jenkins that comes pre-integrated to work with Subversion. Now, uberSVN users will have the option of adding Jenkins professional support to their existing uberSVN support contract.

At WANdisco, we have plenty of experience providing professional support for Apache Subversion to a global customer base, including many Fortune 500 companies. Now, as a partner of CloudBees – the home of founder Kohsuke Kawaguchi and Enterprise Jenkins by CloudBees – we offer a range of Jenkins support options. Our Jenkins support includes:

  • 24-by-7 worldwide coverage, guaranteeing that Jenkins is working when you need it
  • Email support
  • Named support contacts
  • Online case tracking
  • Access to highly experienced Subversion and Jenkins support staff
  • Up to 1 hour of support SLA, with a Platinum or Platinum Plus package

This is good news for uberSVN customers, who now have even more freedom when building their own, unique ALM experience. uberSVN users can choose from:

  • The completely free Jenkins app.
  • Professional uberSVN support.
  • Professional uberSVN support, with Jenkins support as an extra.

uberSVN is free to download and easy to install, and is available from http://www.ubersvn.com/download Jenkins can be downloaded for free through uberSVN’s integrated app store, alongside professional support for both uberSVN and Jenkins.

Need more information? Check out our Top 10 Reasons to Try uberSVN post, or our step-by-step guide to Getting Started with Jenkins in uberSVN.

Using uberAPPS? Have your say on uberAPPS at the official forum!

Subversion Tip of the Week

Subversion Insider Tips

So, you’ve got to grips with using Subversion in your day-to-day development; you’ve read up on best practices, and even branching and merging is no longer giving you nightmares – but are you taking full advantage of everything Subversion has to offer? In this post, we look at some useful, but frequently overlooked, Subversion features.

Revert Command

The Subversion repository remembers every change that’s made to the files and directories, which is useful when reviewing the history of changes made within your project, but it also allows users to recover older versions of their code.

The ‘svn revert’ command can be used to overwrite any local changes made to the working copy, with the code held in the repository. This includes any property changes, and any scheduling operations that may have been set on the working copy. Note that the revert command replaces all changes made to your working copy – once they are gone, there is no way to recover them; you will lose all the changes made since the last commit.

Reverse Merge

A reverse merge rolls back a change that has already been committed to the repository, and then applies it to the local working copy. A reverse merge can be performed with the following commands:

1) svn merge –dry-run – (optional) displays what the merge will produce.
2) svn merge -r (revision number) – rolls the working copy back to the specified revision. Note that a reverse merge is like any other merge operation, so ‘svn status’ and ‘svn diff’ can be used to inspect and approve the changes.
3) svn commit – the merge command will only change files in the working copy, so remember to commit the changes to the repository.

External Files and Folders

Occasionally, it’s useful to construct a working copy that consists of several different checkouts. To help with this, Subversion supports external definitions, which allow users to map a local directory to the URL of a versioned resource. External definitions are declared with the ‘svn:externals’ property.

Once ‘svn externals’ is set on a versioned directory, everyone who checks out a working copy from that directory, also checks out the definitions, so only one person needs to define the nested working copy checkout per repository.

To edit the externals definition, use the following subcommand:

svn propedit (target)

When anyone runs ‘svn update,’ Subversion will automatically synchronize the checked out items against the changed externals definition. Similarly, when other team members update their working copy, they will automatically receive any changes made to the externals definition.

The ‘svn status’ command can be used to print the status of working copies and directories with ‘svn:externals’ properties, as ‘svn status’ recognizes externals definitions.

WANdisco Celebrate Success of uberSVN ‘Blake’

uberSVN fans may remember that we announced our codenaming strategy for uberSVN last month. For those not already in the know: Apple name their releases after big cats (Mac OS X Snow Leopard, Lion) and Google name their releases after desserts (Honeycomb, Ice Cream Sandwich) but since uberSVN is developed entirely in Sheffield, UK, we decided to show our support for the local area, and name our releases after all our favourite Sheffield pubs.

The current release of uberSVN is codenamed Blake, after the Blake pub in Walkley, Sheffield, and to commemorate the release, we had a great night out at the Blake just before the holiday season. But, after the success of uberSVN Blake (we’ve now had over 50,000 downloads!) we felt we had to do something extra special, so we nipped back to the Blake and presented the owners with a very special, uberSVN plaque, as a “thank you” for letting us use their name.

Check out this photo of Kevin Walke, head of support at WANdisco, presenting the Blake staff with their uberSVN plaque (just before it took pride of place behind the bar!)

We’re looking forward to the next release!

WANdisco Host Apache Meetup for Local Developer Community

This week, core members of the Apache Software Foundation, Greg Stein and Hyrum Wright, have been visiting WANdisco at our offices in Sheffield, UK. To celebrate, we hosted a special, one-off ‘Apache in the Pub’ event at the Rutland Arms, giving the local developer community the opportunity to meet these prominent ASF members, in the local pub!

The event was a great success, with a packed room of developers all debating open source topics: Subversion, Apache, Python, and of course the brand-new Apache Bloodhound project. We even got to hear some of Greg’s tales from his time at Google!

The event attracted much attention on Twitter. Here’s a selection of our favourite tweets from Apache in the Pub attendees:

  • Looking forward to a pint @RutlandArms with @gstein & @hyrumwright of @theasf tonight courtesy of @wandisco & @gistwire
  • @WANdisco @rutlandarms Apache in the Pub was a good event with a great turnout. Big thanks to you both for organising and hosting.
  • Good beer @RutlandArms and interesting people did fix bad day. Met a bunch of new bods from @WANdisco and talked about #bloodhound :)
  • @WANdisco @dchetwynd Hope everyone who came had a good time – those who didn’t missed out!

Thank you to our local GIST Foundation, and the ASF, for helping us host this free event for the local developer community. After receiving some great feedback, and being overwhelmed by the full attendance, we’re convinced the local community wants to see more of these sorts of events. If you have any ideas or feedback on community events you would like to see in the local area, please don’t hesitate to leave us a comment at the blog, or alternatively Tweet or email us.

We hope you all had a great time at Apache in the Pub, and we hope to see you at another WANdisco-hosted event soon!

WANdisco Host Apache in the Pub

Fancy an evening in the pub with core members of the Apache Software Foundation? This week, director and former chairman of the Apache Software Foundation, Greg Stein, and Apache Subversion release manager Hyrum Wright, will be paying a visit to WANdisco’s Sheffield office. To celebrate, WANdisco and the Apache Software Foundation, in cooperation with the GIST Foundation, will be hosting a very special, one-off Apache in the Pub event at the Rutland Arms pub in Sheffield, UK, giving the local developer community the opportunity to meet these prominent Apache Software Foundation members, and discuss all things open source, including the new Apache Bloodhound project, Python, and Apache Subversion.

If there’s time, maybe we’ll even hear how Greg launched Google Code, or some of his other war stories from the cutting edge.

This event is completely free, simply visit the Apache in the Pub Eventbrite page. And as an extra bonus, they’ll be a free pint for everyone who arrives on time!

Like WANdisco on Facebook and Win an Amazon Voucher

Fancy winning a $20 Amazon voucher? All this week, if you ‘Like’ the WANdisco Facebook page, not only will you be signing up for all the latest news on Apache Subversion, useful tutorials and our handy Subversion Tip of the Week, but you’ll also be entered into our free prize draw.

One new Facebook fan signing up between January 23rd and January 27th, will be selected at random. Simply head over to our Facebook page now and click ‘Like’ to enter. Good luck!

Subversion Tip of the Week

Resolving Conflicts in Subversion

Merge conflicts may be dreaded by developers, but Apache Subversion has all the tools you need to quickly resolve such conflicts when they do occur. Whenever Subversion warns of a merge conflict, the first step is to run an update on your working copy:

svn update {path}

This could be all that’s needed to sort out the conflict! But, in the worst case scenario where you’ve modified the exact same part of the exact same file as your teammate, Subversion will flag the file as being in ‘conflict’ and it will be down to you to manually resolve the problem.

To resolve the conflict, open the corresponding folder in your working copy. You will see some new versions of the conflicted file:

  • The file with the highest numbered extension is the repository’s most recent file.
  • The file with the lower revision number is your local file.

From here, you can manually merge the changes between the repository’s version and the local version (or simply select one version over the other!) When you have finished, replace the working file with the finished item, and delete the duplicates. You will now be able to successfully complete your commit!

Adding uTest to uberSVN

Earlier this week we announced an exciting addition to uberSVN and the uberAPPS store: uTest, offering a range of crowdsourced testing services for web, desktop and mobile applications. uTest covers all the major operating systems, and is backed by a community of over 45,000 on-demand professional testers from 180 countries. Available in two packages, uTest services can be purchased through uberSVN’s built-in uberAPPS app store, making crowdsourced software testing easy and convenient for all uberSVN users. In this tutorial, we’ll show you exactly how to bring uTest’s functionality into your uberSVN installation.

  • To get started, select the ‘uberApps’ tab from within uberSVN to be taken to the app store, where you will see the uTest option. Click on the ‘More info’ button.

  • On this page, you can find out more about the uTest services offered through WANdisco. To purchase uTest, click the ‘Buy’ button.

  • On this page, select which package you wish to purchase. You can can choose from two packages:

Bronze

1) 5 professional testers located throughout the US and Canada.
2) Testing across the most popular OS versions, browsers or devices relevant to your app.
3) Real-time communication with your testing team.

Silver

1) 10 professional testers located throughout the US and Canada.
2) Testing across the most popular OS versions, browsers or devices relevant to your app.
3) Real-time communication with your testing team.
4) Online technical support from a uTest project manager.

When you are ready, click ‘Proceed.’

  • You will now be taken to the purchase confirmation page. When you are ready, click the ‘Pay Now’ button.

  • Following successful payment, you will notice an ‘Active’ tab next to uTest in the Manage Apps page. You have successfully subscribed to uTest services!

  • From the Manage APPS tab, select uTest. You will be able to configure user access from this screen. Select whether you wish uTest services to be available to all users, or only visible to a named few.

  • Once you have logged into the uTest app, you will be taken to the following uTest iFrame tab generation and login area. (Note that your login details will be sent to you via email.)

  • You are now logged into uTest. From this screen, you can place orders, and see an overview of previously ordered tests. You are now ready to start recruiting testers for your app!

Ready to get started with uberSVN? Download the open, free ALM platform from http://www.ubersvn.com/download

Using uberAPPS? Have your say on uberAPPS at the official forum!

Crowdsourcing Comes to uberSVN

You may remember we announced a new release of uberSVN at the end of 2011, bringing a major update to the integrated uberAPPS store that was designed to make adding new apps easier and quicker. Today, we are announcing the first of our new additions to the revamped app store: uTest’s range of testing types for web, desktop and mobile applications.

uTest covers all the major operating systems, and is backed by a community of over 45,000 on-demand professional testers from 180 countries. uTest enables development teams to launch higher quality products quicker, and to control the cost of testing. At WANdisco, we’re proud to announce this partnership with uTest, and will be offering uberSVN users two packages of uTest services:

Bronze

  • 5 professional testers located throughout the US and Canada
  • Testing across a selection of the most popular OS versions, browsers or devices relevant to your particular app
  • Real-time communication with your testing team

Silver

  • 10 professional testers located throughout the US and Canada
  • Testing across a selection of the most popular OS versions, browsers or devices relevant to your app
  • Real-time communication with your testing team
  • Online technical support from a uTest project manager

New to uberSVN? The free-to-download, easy-to-install open ALM platform can be downloaded from http://www.ubersvn.com/download. Existing uberSVN users can easily purchase uTest from within the integrated uberAPPS store. Ready to get started? Check out our step-by-step guide to adding uTest to uberSVN.

We’ll be making another exciting, uberAPPS announcement soon. Keep checking back for the latest news!

Using uberAPPS? Have your say on uberAPPS at the official forum!