<html>
<head>
	<title>Taverna 3 update site</title>
</head>

<body>
<h1>Taverna 3 update site</h1>

<p>
This is the update and plugin site for 
<a href="http://www.taverna.org.uk/developers/work-in-progress/taverna-3/">Taverna 3</a>. 
</p>

<!-- If only this worked..! 
<form>
<input name="updateall" value="Update all" type="Button">
</form>
-->

<p>
Updates and plugins are available in three channels:
</p>

<h2>Stable</h2>

The 'stable' channels provide the official updates and plugins, verified by the 
<a href="http://www.mygrid.org.uk/about-us/">myGrid team</a>.

<pre>
http://updates.taverna.org.uk/workbench/3.0/stable/
http://updates.taverna.org.uk/workbench/3.0/stable/plugins/
http://updates.taverna.org.uk/commandline/3.0/stable/
http://updates.taverna.org.uk/commandline/3.0/stable/plugins/
</pre>



<h2>Beta</h2>

The 'beta' channels provide early access to updates and plugins that are
being tested before progressing to the 'stable' channel. 

<pre>
http://updates.taverna.org.uk/workbench/3.0/beta/
http://updates.taverna.org.uk/workbench/3.0/beta/plugins/
http://updates.taverna.org.uk/commandline/3.0/beta/
http://updates.taverna.org.uk/commandline/3.0/beta/plugins/
</pre>

<h2>Developer</h2>

The 'dev' channels provide the latest development 
from the <a href="http://build.mygrid.org.uk/ci/">nightly snapshot builds</a>. 
Products on this channel might change at any time, and could occassionally 
not work.


<pre>
http://updates.taverna.org.uk/workbench/3.0/dev/
http://updates.taverna.org.uk/workbench/3.0/dev/plugins/
http://updates.taverna.org.uk/commandline/3.0/dev/
http://updates.taverna.org.uk/commandline/3.0/dev/plugins/
</pre>

</body>


<h2>Adding your plugin</h2>

Third-party plugins are welcome to be listed on Taverna 3's plugin site,
as long as they are publically available under a permissive (and ideally open
source) license. 

In order to add your plugin, please contact <a
href="mailto:support@mygrid.org.uk">support@mygrid.org.uk</a> for further
details. 



</html>
