Sauce OnDemand Plugin

Plugin Information

Plugin ID sauce-ondemand
Latest Release 1.14
Latest Release Date Mar 28, 2012
Plugin Central Plugin Central 3.2
Sources Subversion
Support Eclipse Hudson Forum
Issue Tracking Eclipse Bugzilla
Hudson Core (latest) 3.3.3

This plugin allows you to integrate Sauce OnDemand to Hudson. Specifically, you can:

  • Automate the setup and tear down of SSH tunnels
  • Allocate unique host name per each build so that you can run the same test suite multiple times concurrently on Hudson


After installing a plugin, specify your Sauce OnDemand access credential in the system configuration page as follows:

Once this is set, on each job configuration page, you can tell Hudson to set up an SSH tunnel for the duration of the build. In the following screenshot, before your build starts Hudson will set up a remote-to-local SSH tunnel, so that Seleinum running in the cloud can talk to the test locally running on port 8080 as "". For more details about the concept of SSH tunnel in the context of Sauce OnDemand, see the documentation.

Auto-allocating host name

In the above example, "" was hard-coded. In many situations, however, it is a bad idea to hard-code host names to tests like this, because it prevents multiple people from running the same tests at the same time, because Sauce OnDemand (naturally) doesn't allow you to define the same host name (like "") to be used in multiple tunnel definitions.

So if two people in the team just so happen to run the same test, or more importantly in our context, if you have two Hudson jobs that perhaps build different branches of the same codebase, or if you have enabled concurrent builds of the job, then you will encounter this limitation.

To address this problem, Hudson Sauce OnDemand plugin is capable of auto-allocating an unique host name for each build. To do this, specify "AUTO" as the domain name. This will cause Hudson to create a unique host name, set up a tunnel under that host name, and make that host name available to your build as the environment variable SAUCE_ONDEMAND_HOST.

Your test execution will need to look for this value when connecting to Selenium.


Version 1.4 (Oct 1, 2010)

  • Extended the time out (until the tunnel endpoint comes up) from 3 minutes to 5 minutes.

Version 1.3 (Sep 1, 2010)

  • Added a custom axis for the matrix projects to choose different browsers. This works in combination with selenium client factory.
  • You can now capture video and server logs into Hudson and watch them from within Hudson

Version 1.2

  • This plugin enables Hudson to manage SSH tunnels.


plugin-buildwrapper plugin-buildwrapper Delete
Enter labels to add to this page:
Wait Image 
Looking for a label? Just start typing.