Apache Taverna Command-line Tool provides a shell command for executing Apache Taverna workflows, defined using either the Taverna Language API in the SCUFL2
.wfbundle format, or in the
.t2flow format from Taverna Workbench 2.5.
Workflow inputs can be provided as parameters or files, while outputs can be saved either to a folder or a Research Object bundle including detailed provenance, which can be inspected using Taverna Language's DataBundle support.
Note that, except for command-line handling, this module relies on other Apache Taverna components for the actual workflow execution.
This product includes software developed at The Apache Software Foundation.
The file NOTICE contains any additional attributions and details about embedded third-party libraries and source code.
Please subscribe to and contact the dev@taverna mailing list mailing list for any questions, suggestions and discussions about Apache Taverna.
To suggest changes to this source code, feel free to raise a GitHub pull request.
Apache Taverna Command-line Tool product relies on other Taverna components which have their own source code repositories.
Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision-making process have stabilized in a manner consistent with other successful ASF projects.
While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
Please see the
<properties> of this pom.xml to find the correct versions to build.
To build, use
mvn clean install
This will build each module and run its tests.
Note that this repository relies on other Apache Taverna modules which will be downloaded from Maven repositories if they are not already present in the equivalent of your
~/.m2/repository in the correct version.
If you are building on Windows, ensure you unpack this source code to a folder with a short path name lenght, e.g.
C:\src - as Windows has a limitation on the total path length which might otherwise prevent this code from building successfully.
To skip the tests (these can be time-consuming), use:
mvn clean install -DskipTests
If you are modifying this source code independent of the Apache Taverna project, you may not want to run the Rat Maven plugin that enforces Apache headers in every source file - to disable it, try:
mvn clean install -Drat.skip=true
If you are building a non-released version of this repository, (e.g. the
pom.xml declares a
-SNAPSHOT version), then Maven might download unreleased snapshot builds for other
-SNAPSHOT Taverna dependencies.
If you are developing one of the Apache Taverna modules and want to test it with the Taverna Command-line Tool, make sure you build it locally first with
mvn clean install to avoid downloading it from the snapshot repository.
Then check that the the
<properties> section of the
pom.xml matches the
<version> of the module you are developing. See also
taverna-commandline-product/pom.xml to hard-code versions of other dependencies.
The default SNAPSHOT update policy for
mvn is daily - you can modify this behaviour with
To build a binary distribution ZIP file that includes third-party dependencies as JAR files, build with the
-Prelease option, which would make
taverna-commandline-product/target/apache-taverna-commandline-3.1.0-incubating-release.zip or equivalent.
After building, see the file
target/maven-shared-archive-resources/META-INF/DEPENDENCIES for details of the licenses of the third-party dependencies. All dependencies should be compatible with Apache License 2.0.
After building, see the
taverna-commandline-product/target directory. Inside you should find a folder like
apache-taverna-commandline-3.1.0-incubating/ which contains the built Apache Taverna Command-line Tool product.
If you prefer a ZIP file, then instead build with the Maven
-Prelease option. You can then unzip at a location of your choice.
If you are running on Windows you may need to put Taverna Command-line Tool in a folder high in the disk hierarchy (e.g.
C:\Taverna), this helps avoid problems with Windows path-length restrictions.
executeworkflow.bat) without arguments will show the help:
$ ./executeworkflow.sh usage: executeworkflow [options] [workflow] -bundle <bundle> Save outputs to a new Workflow Run Bundle (zip). -clientserver Connect as a client to a derby server instance. -cmdir <directory path> Absolute path to a directory where Credential Manager's files (keystore and truststore) are located. ...
examples contains a Hello World type example workflow in SCUFL2 format.
$ ./executeworkflow.sh examples/helloworld.wfbundle Outputs will be saved to the directory: /home/johndoe/apache-taverna-commandline-3.1.0/Hello_World_output Workflow completed. $ cat Hello_World_output/greeting ; echo Hello, World!
C:\home\apache-taverna-commandline-3.1.0>executeworkflow.bat examples\helloworld.wfbundle Outputs will be saved to the directory: C:\home\apache-taverna-commandline-3.1.0\Hello_World_output Workflow completed. C:\home\apache-taverna-commandline-3.1.0>type Hello_World_output\greeting Hello, World!
This distribution includes cryptographic software. The country in which you currently reside may have restrictions on the import, possession, use, and/or re-export to another country, of encryption software. BEFORE using any encryption software, please check your country's laws, regulations and policies concerning the import, possession, or use, and re-export of encryption software, to see if this is permitted. See http://www.wassenaar.org/ for more information.
The U.S. Government Department of Commerce, Bureau of Industry and Security (BIS), has classified this software as Export Commodity Control Number (ECCN) 5D002.C.1, which includes information security software using or performing cryptographic functions with asymmetric algorithms. The form and manner of this Apache Software Foundation distribution makes it eligible for export under the License Exception ENC Technology Software Unrestricted (TSU) exception (see the BIS Export Administration Regulations, Section 740.13) for both object code and source code.
The following provides more details on the included cryptographic software:
libfolder includes BouncyCastle bcprov encryption library, Apache HttpComponents Core and Client, Apache Derby, Jetty, Apache WSS4J, Apache XML Security for Java, Open SAML Java, Apache Taverna Language, Apache Taverna OSGi, Apache Taverna Engine, and Apache Taverna Common Activities.