Return-Path: X-Original-To: apmail-taverna-dev-archive@minotaur.apache.org Delivered-To: apmail-taverna-dev-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 21EF918BD7 for ; Wed, 17 Feb 2016 00:13:26 +0000 (UTC) Received: (qmail 61791 invoked by uid 500); 17 Feb 2016 00:13:26 -0000 Delivered-To: apmail-taverna-dev-archive@taverna.apache.org Received: (qmail 61757 invoked by uid 500); 17 Feb 2016 00:13:26 -0000 Mailing-List: contact dev-help@taverna.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@taverna.incubator.apache.org Delivered-To: mailing list dev@taverna.incubator.apache.org Received: (qmail 61745 invoked by uid 99); 17 Feb 2016 00:13:26 -0000 Received: from Unknown (HELO spamd3-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 17 Feb 2016 00:13:26 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd3-us-west.apache.org (ASF Mail Server at spamd3-us-west.apache.org) with ESMTP id 98F24180617 for ; Wed, 17 Feb 2016 00:13:25 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd3-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -3.549 X-Spam-Level: X-Spam-Status: No, score=-3.549 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, KAM_LAZY_DOMAIN_SECURITY=1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-0.329] autolearn=disabled Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd3-us-west.apache.org [10.40.0.10]) (amavisd-new, port 10024) with ESMTP id j6DuqpJIeWsP for ; Wed, 17 Feb 2016 00:13:22 +0000 (UTC) Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with SMTP id A9FB360F19 for ; Wed, 17 Feb 2016 00:13:21 +0000 (UTC) Received: (qmail 58008 invoked by uid 99); 17 Feb 2016 00:13:18 -0000 Received: from arcas.apache.org (HELO arcas) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 17 Feb 2016 00:13:18 +0000 Received: from arcas.apache.org (localhost [127.0.0.1]) by arcas (Postfix) with ESMTP id 59AAC2C1F62 for ; Wed, 17 Feb 2016 00:13:18 +0000 (UTC) Date: Wed, 17 Feb 2016 00:13:18 +0000 (UTC) From: "Stian Soiland-Reyes (JIRA)" To: dev@taverna.incubator.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Updated] (TAVERNA-900) Add Common Workflow Language support to Taverna MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/TAVERNA-900?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Stian Soiland-Reyes updated TAVERNA-900: ---------------------------------------- Description: 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 was: h2. GSOC: Add CWL support to Taverna The proposed GSOC task is to add support for CWL within Taverna. 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 > 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 > Labels: docker, gsoc2016, 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 -- This message was sent by Atlassian JIRA (v6.3.4#6332)