[
https://issues.apache.org/jira/browse/TAVERNA-900?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Stian Soiland-Reyes updated TAVERNA-900:
----------------------------------------
Labels: cwl docker gsoc2016 gsoc2018 java json json-ld python workflow yaml
(was: cwl docker gsoc2016 java json json-ld python workflow yaml)
> Add Common Workflow Language support to Taverna
> -----------------------------------------------
>
> Key: TAVERNA-900
> URL: https://issues.apache.org/jira/browse/TAVERNA-900
> Project: Apache Taverna
> Issue Type: Story
> Components: Taverna Language, Taverna Workbench Common Activities
> Reporter: Stian Soiland-Reyes
> Priority: Major
> Labels: cwl, docker, gsoc2016, gsoc2018, java, json, json-ld,
> python, workflow, yaml
>
> h2. GSOC: Add CWL support to Taverna
> The proposed GSOC task is to add support for [Common Workflow
> Language|http://commonwl.org/] (CWL) in [Apache
> Taverna|http://taverna.incubator.apache.org/] (incubating).
> The Apache Taverna community believe CWL support can be added to Taverna in a
> progressive fashion, and therefore the GSOC student can achieve success in
> multiple ways - and depending on her/his interests and existing skills can
> choose to pursue *one or two of these tasks* in detail, and if time permits
> can "top up" by exploring some of the remaining tasks more briefly as
> prototypes.
>
> See the underlying [Jira
> issues|https://issues.apache.org/jira/issues/?jql=project%20%3D%20TAVERNA%20AND%20labels%20%3D%20cwl]
> for further ideas.
> * Save Taverna workflows as CWL (TAVERNA-881) - basically generate YAML by
> inspecting workflows using the Taverna Language API and follow the [CWL
> specifications|https://w3id.org/cwl/].
> * Read CWL workflows (TAVERNA-877) - Add a plugin to [Taverna Language
> API|https://github.com/apache/incubator-taverna-language/] to parse CWL's YAML
> * Execute CWL tool descriptions (TAVERNA-878) - modify Taverna's [Tool
> activity|https://github.com/apache/incubator-taverna-common-activities/tree/master/taverna-external-tool-activity]
> * Browse and use CWL tool descriptions from the workbench (TAVERNA-880) -
> modify GUI plugin to select from a collection or registry of tool descriptions
> * Create a Docker tool for executing Taverna activities (TAVERNA-879) - this
> allows any Taverna steps to be used by other CWL engines
> Other Taverna or CWL-related tasks can of course also be proposed by the
> students.
> h2. CWL
> The [Common Workflow Language|http://commonwl.org/] (CWL) is a pragmatic
> approach to a standardized workflow language for executing command line
> tools on the cloud and on local servers.
> CWL is a *YAML*-based dataflow format, describing how command line tools can
> be wired together in a pipeline. An example workflow:
> https://github.com/common-workflow-language/workflows/blob/master/workflows/FestivalDemo/filtercount.cwl.yaml
> CWL has a [vibrant
> community|https://gitter.im/common-workflow-language/common-workflow-language]
> and multiple implementations, including _Rabix_, _Galaxy_ and a Python-based
> reference implementation _cwltool_.
> h2. Taverna
> [Apache Taverna|http://taverna.incubator.apache.org/] (incubating) is a
> Java-based workflow system with a graphical design interface. Taverna
> workflows can combine many different service types, including REST and WSDL
> services, command line tools, scripts (e.g. BeanShell, R) and custom plugins
> (e.g. BioMart).
> Taverna workflows can be executed on the desktop, on the command line, or on
> a Taverna server installation, which can be controlled from a web portal, a
> mobile app, or integrated into third-party applications.
> Taverna is used in a [wide range of
> sciences|http://taverna.incubator.apache.org/introduction/taverna-in-use/]
> for data analysis and processing, including bioinformatics, cheminformatics,
> biodiversity and musicology. Workflow engine features include provenance
> tracking, implicit parallelism/iterations, retry/failover and looping.
> Taverna workflows are commonly shared on
> [myExperiment|http://www.myexperiment.org], and can either be created
> graphically in the [Taverna
> workbench|http://taverna.incubator.apache.org/download/workbench/],
> programmatically using the [Taverna Language
> API|http://taverna.incubator.apache.org/download/language/] or by generating
> workflow definitions in the
> [SCUFL2|http://taverna.incubator.apache.org/documentation/scufl2/] format.
> h2. Community engagement
> Interested GSOC students are requested to engage early with the
> [dev@taverna|http://taverna.incubator.apache.org/community/lists#devtaverna]
> mailing list to describe their ideas for approaching this project, to clarify
> the tasks and for any questions and issues.
> As a first step, the prospective applicant should leave a comment on this
> Jira issue to indicate their interest, and the GSOC mentors would be happy to
> assist on any questions.
> As the project starts we are expecting the student to become part of the
> dev@taverna community to regularly discuss their progress.
> We are also hoping the student would engage with the [CWL
> community|http://common-workflow-language.github.io/#Community_and_Contributing]
> - particularly for questions on interpreting the CWL specifications and
> possibly even improving them. This engagement might include participating in
> development of the [CWL Java
> SDK|https://github.com/common-workflow-language/cwljava/] - although for GSOC
> evaluation purposes we will concentrate on your direct contributions to
> Apache Taverna.
> h2. Mentors
> An important part of GSOC is the personal mentoring from existing members of
> the open source community. Our job is not just to teach you how to
> successfully get through the GSOC programme, but also to motivate you and
> make sure you progress. We will show you how to contribute to open source,
> debug, improve, document, test and release your code as part of Apache
> Taverna.
> The GSOC mentors for Apache Taverna have experience from guiding multiple
> earlier GSOC students and local students, and can be contacted privately for
> day-to-day interaction and trouble-shooting.
> Mentors for this GSOC project:
> * Stian Soiland-Reyes
> * Alan Williams
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)