Initial attempt to start generating trackHubs and manifest files.
[htsworkflow.git] / encode_submission / trackhub.py
index 4ee206131728d1eaba9bc3661366c09e4eee8504..c5c254358f972289bba132deae366c9dbcc897f9 100644 (file)
@@ -77,8 +77,11 @@ def main(cmdline=None):
         else:
             logger.warn("File %s doesn't exist.", a)
 
-    if opts.make_tree_from is not None:
-        results.make_tree_from(opts.make_tree_from)
+    if opts.make_link_tree_from is not None:
+        results.make_tree_from(opts.make_tree_from, link=True)
+
+    if opts.copy_tree_from is not None:
+        results.make_tree_from(opts.make_tree_from, link=False)
 
     if opts.fastq:
         logger.info("Building fastq extraction scripts")
@@ -94,7 +97,7 @@ def main(cmdline=None):
         mapper.scan_submission_dirs(results)
 
     if opts.make_hub:
-        mapper.make_hub(results)
+        make_hub(results)
 
     if opts.sparql:
         sparql_query(model, opts.sparql)
@@ -104,6 +107,18 @@ def main(cmdline=None):
         print writer.serialize_model_to_string(model)
 
 
+def make_hub(results):
+    trackdb = mapper.make_hub(results)
+    manifest = mapper.make_manifest(results)
+
+    trackstream = sys.stdout
+    #with open('trackDb.txt', 'w') as trackstream:
+    trackstream.write(trackdb)
+
+    #with open('manifest.txt', 'w') as mainifeststream:
+    manifeststream = sys.stdout
+    mainifeststream.write(mainifest)
+        
 def make_parser():
     parser = OptionParser()
 
@@ -121,9 +136,12 @@ def make_parser():
     parser.add_option_group(model)
     # commands
     commands = OptionGroup(parser, 'commands')
-    commands.add_option('--make-tree-from',
+    commands.add_option('--make-link-tree-from',
                       help="create directories & link data files",
                       default=None)
+    commands.add_option('--copy-tree-from',
+                      help="create directories & copy data files",
+                      default=None)
     commands.add_option('--fastq', default=False, action="store_true",
                         help="generate scripts for making fastq files")
     commands.add_option('--scan-submission', default=False, action="store_true",