Tag Archive for 'OSS'

Extending Jenkins with uberSVN

Installing Jenkins is made easy with our free, open ALM platform for Apache Subversion, uberSVN. But when installed through uberSVN, your Jenkins installation contains only the bare minimum; at some point you will want to extend your uberSVN and Jenkins installation with additional plugins. Thankfully, this is made easy with uberSVN, as any number of new plugins can be added without ever leaving your installation.

Start by going to the ‘Jenkins’ tab, followed by the ‘Manage Jenkins’ option on the left side of the screen, and finally selecting the ‘Manage Plugins’ link.

From here, click on the ‘Available’ tab, which will bring up a list of all the plugins you can add to Jenkins.

Scroll down to see the list of available plugins. If you need some more information on a particular plugin, clicking on the name of the plugin will take you to a product page where you can browse all the relevant information about the plugin in question, including the changelog, maintainers, and the date of the most current release.

If you wish to install the plugin, go back to the ‘Available’ page and select the tickbox on the left. When you have finished selecting plugins to install, scroll to the bottom of the screen and hit the ‘Install’ button.

The plugin will now be downloaded. Note that Jenkins will need to be restarted for these changes to take effect.

Once you have restarted Jenkins, go to the ‘Installed’ tab in the ‘Manage Plugins’ screen. You will see that the plugin you have just downloaded has been added to the Installed list.

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!

Apache Subversion 1.7.3 Released

The first Apache Subversion release of 2012 is now available! Subversion 1.7.3 builds on the long-awaited enhancements of the recent Subversion 1.7 release, by introducing even more improvements. Subversion 1.7.3 improves the SASL error messages, allows committing the result of some copy operations, and fixes a source of possible FSFS corruption.

More information on what’s new and noteworthy in this release, is available at the Changes file. The latest binaries can be downloaded for free from the WANdisco website. As ever, our 1.7.3 binaries undergo the same rigorous quality assurance process as our Enterprise Subversion products.

Congratulations to Apache Subversion’s community of developers, contributors and users, on another great release!

Subversion Tip of the Week

Moving a Subversion Repository

Need to move your Apache Subversion repository? In Subversion, the recommended cause of action is to collect all of the data contained within your repository into a single, portable dump file, and then load the data from the dump file into a new repository. To create the dump file, either run:

svnadmin dump

Or, specify a particular revision to dump, or a range of revisions:

svnadmin dump myrepos –revision

Once you have dumped the data from the original repository, you will need to load the data from the dump file into your new repository. To load the dump file, run the following command in the new location:

svnadmin load {REPOS_PATH}

All your data will now be available in the new repository!

It’s useful to keep in mind that dump files are typically larger than the original repository. This can cause the shell to timeout when loading a dump file into a new repository. If this occurs, you can change the bash shell timeout to load indefinitely, with the following command:

export TMOUT =0

Subversion Tip of the Week

Recovering Deleted Items

If you delete an item from your Apache Subversion repository and need to recover it at a later date, a useful tip is to locate the desired file in a revision before it was removed, and copy it back into the repository. The first step, is to run a search in the directory that used to contain the deleted item:

svn log -verbose

This will list all of the changed items in each revision, allowing you to pinpoint the revision where you deleted the file.

Now you have located the file, you can perform a reverse merge, which will re-add the desired file to your working copy:

svn merge {revision number}

Perform a commit, and the file will once again exist in the repository. Alternatively, the ‘svn copy’ command can be used, along with the revision number you located earlier:

svn copy {revision number}

WANdisco’s January Roundup

At WANdisco HQ we’re staring 2012 as we mean to go on: with a string of announcements and releases! Firstly, we are excited to announce two great new additions to uberSVN and uberAPPS: professional support for the Jenkins continuous integration server, and crowdsourcing functionality from the world’s largest marketplace for software testing services: uTest.

Just before the holiday season, the Apache Incubator gained a new addition, with Bloodhound being voted into the incubator. WANdisco are sponsoring some of the initial Bloodhound committers, so we’re excited to see Bloodhound taking its first steps to becoming a fully-fledged Apache project. Want to get involved? Head over to the Apache Bloodhound incubator page now, for more info.

Also this month, team WANdisco had a great night at the Sheffield Business Awards, where we were shortlisted for the Digital Industries Award. As a Sheffield-based company, it was an honour for our Made In Sheffield product, uberSVN, to be shortlisted for another prestigious award from our own city. We’d like to thank the Sheffield Chamber of Commerce for putting on such a fantastic awards show, and for award sponsors Highlander for shortlisting WANdisco.

Some of the core developers of Apache Subversion also paid a visit to WANdisco’s Sheffield office this month. To celebrate, we hosted a one off, free ‘Apache in the Pub’ event for the local software developer community. The event featured talks by Subversion’s release manager Hyrum Wright, and Greg Stein, director and former chairman of the Apache Software Foundation, where they covered everything from Apache Bloodhound, to Python, and even Greg Stein’s experiences at Google. Thank you to the Apache Software Foundation and our local GIST Foundation, for helping us out with this great event.

Finally, to celebrate the success of uberSVN ‘Blake,’ we decided a return trip to the Blake pub in Walkley, Sheffield, was in order. We presented the Blake’s staff with a special uberSVN plaque, so they never forget they have award-winning software named after their pub.

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 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!

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!