changeset 3:304873c2530b draft default tip

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_fetch_busco/ commit 688b85175eeaf9b7790d4d7f337cbfb7d3dfde30
author iuc
date Thu, 20 Feb 2025 20:14:38 +0000
parents 2b4526fdf7fb
children
files data_manager/busco_fetcher.xml data_manager/data_manager.py
diffstat 2 files changed, 22 insertions(+), 54 deletions(-) [+]
line wrap: on
line diff
--- a/data_manager/busco_fetcher.xml	Mon Apr 24 12:26:46 2023 +0000
+++ b/data_manager/busco_fetcher.xml	Thu Feb 20 20:14:38 2025 +0000
@@ -1,19 +1,34 @@
 <tool id="busco_fetcher" name="Busco" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" tool_type="manage_data" profile="20.01">
     <description>dataset dowloader</description>
         <macros>
-        <token name="@TOOL_VERSION@">5.4.6</token>
+        <token name="@TOOL_VERSION@">5.8.0</token>
         <token name="@VERSION_SUFFIX@">0</token>
     </macros>
     <requirements>
         <requirement type="package" version="@TOOL_VERSION@">busco</requirement>
     </requirements>
     <command detect_errors="exit_code"><![CDATA[
-        python '$__tool_directory__/data_manager.py'
-            --database '$lineage'
-            --name $lineage+\$(date +'%Y-%m-%d-%H%M%S')
-            --json '$out_file'
-            --version '@TOOL_VERSION@'
+        mkdir '$out_file.extra_files_path' &&
+        busco --download_path '$out_file.extra_files_path' --download '$lineage' &&
+        cp '$dmjson' '$out_file' 
     ]]></command>
+    <configfiles>
+        <configfile name="dmjson"><![CDATA[
+#from datetime import datetime
+    {
+      "data_tables":{
+        "busco_database":[
+          {
+            "value":"$lineage #echo datetime.now().strftime('%Y-%m-%d-%H%M%S')#",
+            "name":"$lineage #echo datetime.now().strftime('%Y-%m-%d-%H%M%S')#",
+            "version":"@TOOL_VERSION@",
+            "path":"$out_file.extra_files_path"
+          }
+        ]
+      }
+    }]]>
+            </configfile>
+        </configfiles>
     <inputs>
         <param name="lineage" type="select" label="Select the lineage to be downloaded">
             <option value="all">All</option>
@@ -31,7 +46,7 @@
             <output name="out_file">
                 <assert_contents>
                     <has_text text="virus"/>
-                    <has_text text="5.4.6"/>
+                    <has_text text="5.8.0"/>
                 </assert_contents>
             </output>
         </test>
--- a/data_manager/data_manager.py	Mon Apr 24 12:26:46 2023 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,47 +0,0 @@
-#!/usr/bin/env python
-#
-# Data manager for reference data for the 'BUSCO' Galaxy tools
-import argparse
-import datetime
-import json
-import os
-import shutil
-import subprocess
-from pathlib import Path
-
-
-def main(args):
-    workdir = os.path.join(os.getcwd(), "busco_downloads")
-    cmd = "busco --download %s" % args.database
-    subprocess.check_call(cmd, shell=True)
-    with open(args.json) as fh:
-        params = json.load(fh)
-    target_directory = params["output_data"][0]["extra_files_path"]
-    data_manager_entry = {}
-    data_manager_entry["value"] = args.name.lower()
-    data_manager_entry["name"] = args.name
-    data_manager_entry["version"] = args.version
-    data_manager_entry["path"] = str(Path(target_directory))
-    data_manager_json = dict(data_tables=dict(busco_database=data_manager_entry))
-
-    os.mkdir(target_directory)
-    output_path = os.path.abspath(os.path.join(os.getcwd(), "busco_downloads"))
-    for filename in os.listdir(workdir):
-        shutil.move(os.path.join(output_path, filename), target_directory)
-    with open(args.json, "w") as fh:
-        json.dump(data_manager_json, fh, sort_keys=True)
-
-
-if __name__ == "__main__":
-
-    # Read command line
-    parser = argparse.ArgumentParser(description="Download BUSCO database")
-    parser.add_argument("--database", help="Database name")
-    parser.add_argument(
-        "--name", default=str(datetime.date.today()), help="Data table entry unique ID"
-    )
-    parser.add_argument("--version", help="BUSCO version")
-    parser.add_argument("--json", help="Path to JSON file")
-    args = parser.parse_args()
-
-    main(args)