diff data_manager/omamer.py @ 1:57db282ca204 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_omamer commit 67067cd7917545904b3a9980948abdd19f0576bd
author iuc
date Thu, 07 Mar 2024 14:28:42 +0000
parents e1502e4f8725
children f8d72275878e
line wrap: on
line diff
--- a/data_manager/omamer.py	Wed Feb 21 19:26:53 2024 +0000
+++ b/data_manager/omamer.py	Thu Mar 07 14:28:42 2024 +0000
@@ -4,7 +4,6 @@
 import json
 import os
 import sys
-from pathlib import Path
 
 import requests
 
@@ -19,7 +18,6 @@
     "LUCA": "LUCA-v0.2.5.h5",
 }
 
-
 DEFAULT_OUTPUT_DIR = "database_omamer"
 
 
@@ -37,12 +35,14 @@
 
 
 def main(args):
-    # Set output directory to default
-    output_dir = DEFAULT_OUTPUT_DIR
+
+    with open(args.json) as fh:
+        params = json.load(fh)
+    target_directory = params["output_data"][0]["extra_files_path"]
 
     # Create output directory if none exists
-    if not os.path.exists(output_dir):
-        os.makedirs(output_dir)
+    if not os.path.exists(target_directory):
+        os.makedirs(target_directory)
 
     # Check if the selected dataset exists
     if args.name not in OMAMER_DATASETS:
@@ -53,18 +53,18 @@
     dataset = OMAMER_DATASETS[args.name]
     url = OMAMER_DATASETS_URL.format(dataset=dataset)
     base_name = os.path.splitext(dataset)[0]
-    destination_path = os.path.join(output_dir, base_name)
+    destination_path = os.path.join(target_directory, dataset)
     download_file(url, destination_path)
 
     data_manager_entry = {
-        "value": os.path.splitext(os.path.basename(base_name))[0],
-        "name": os.path.splitext(os.path.basename(base_name))[0],
-        "version": "2.0.2",
-        "path": str(Path(output_dir)),
+        "value": dataset,
+        "name": base_name,
+        "version": args.version,
+        "path": dataset,
     }
 
     # Creates a JSON dictionary representing the Data Manager configuration
-    data_manager_json = {"data_tables": {"omamer_data": [data_manager_entry]}}
+    data_manager_json = {"data_tables": {"omamer": [data_manager_entry]}}
 
     # Writes this JSON dictionary to the specified output file
     with open(args.json, "w") as fh:
@@ -76,6 +76,7 @@
     parser = argparse.ArgumentParser(description='Download data for OMAmer')
     parser.add_argument('--name', default='Primates', choices=OMAMER_DATASETS.keys(), help='Select dataset to download')
     parser.add_argument('--json', help='Path to JSON file')
+    parser.add_argument("--version", help="Omamer version")
 
     args = parser.parse_args()