NAL-i5K / Organism_Onboarding

A workflow to make organism onboarding pipeline easy to handle as an I/O pipeline
4 stars 1 forks source link

create new command line tool with add_OGS_track.py #66

Closed mpoelchau closed 4 years ago

mpoelchau commented 5 years ago

Two scripts to convert:

I think we would eventually need to make 2-3 separate 'final' workflows, depending on the OGS type that we're loading. Would be nice if we could use an argument instead though. Whichever way it's done, the new command line tool would substitute flow_apollo2/flatfile-to-json.cwl in the current implementation

This issue might require updating the original add_OGS_track.py script to play better with cwl.

Related to #26.

r06942072 commented 5 years ago

I think it might have two options to manage the cwl directory structure


I think it might be more elegant and wrangler-friendly to keep only single final-workflow.cwl file, because it is no need to choose between which commands to use.

So, we should add some condition in cwl, to let cwl smart enough to choose script in step flow_apollo2

mpoelchau commented 5 years ago

We discussed how to 1) autodetect whether the gff file is from NCBI or an OGS, and 2) whether this should be re-written from python to CWL.

1) @mpoelchau will connect with NCBI to see if there's a standard pragma line for the eukaryotic annotation pipeline; 2) @mpoelchau will review https://github.com/NAL-i5K/ColorByType/blob/master/scripts/add_NCBI_annotation_track.py to see if it can be rewritten.

Also, we agree that it would be better to have multiple workflow scripts than multiple folders (option 2 from above comment)

mpoelchau commented 4 years ago

@childers can you share a flatfile-to-json command that you've been using to load multi-type tracks to Apollo 2.6+ so we can start planning how to modify this issue?

mpoelchau commented 4 years ago

@childers says the main change is to specify "className": "{type}". We'll update add_OGS_track.py to reflect this and will test it.

mpoelchau commented 4 years ago

After discussions with @childers, sounds like we need to:

mpoelchau commented 4 years ago

@childers can you link to an example track where "className": "{type}" is already implemented? That way I can try to move this issue forward.

childers commented 4 years ago

here is an example track, taken from a Varroa browser config file ...Vdes_3.0/jbrowse/data/trackList.json

Here is the track

        {
         "category" : "TEST",
         "compress" : 0,
         "key" : "TEST_feature_by_type",
         "label" : "TEST_feature_by_type",
         "storeClass" : "JBrowse/Store/SeqFeature/NCList",
         "style" : {
            "className": "{type}",
            "description" : "product, note, description",
            "subfeatureClasses" : {
               "CDS" : "gnomon_CDS",
               "exon" : "container-100pct",
               "wholeCDS" : null
            }
         },
         "trackType" : "WebApollo/View/Track/DraggableNeatHTMLFeatures",
         "type" : "WebApollo/View/Track/DraggableNeatHTMLFeatures",
         "urlTemplate" : "tracks/NCBI_Annotation_Release_100_Gene/{refseq}/trackData.json"
      }
Screen Shot 2020-05-20 at 10 17 37 AM
mpoelchau commented 4 years ago

Thanks @childers !

mpoelchau commented 4 years ago

replaced by #99, closing.