annotate data_manager/nextclade_dm.py @ 1:8b7bb3c635b1 draft default tip

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 0617f25cbfdca61240f16b85ae21f3cd46b1a44e
author iuc
date Sat, 06 Aug 2022 15:43:32 +0000
parents 6e64cb3d2b1d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
1 #!/usr/bin/env python
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
2
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
3 import argparse
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
4 import datetime
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
5 import json
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
6 import operator
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
7 import pathlib
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
8 import subprocess
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
9 import sys
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
10 from typing import List
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
11
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
12
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
13 def parse_date(d: str) -> datetime.datetime:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
14 # Parses the publication date from the nextclade release tags or user input into a datetime object.
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
15 date = None
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
16 try:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
17 date = datetime.datetime.strptime(d, "%Y-%m-%dT%H:%M:%SZ")
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
18 except ValueError:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
19 date = datetime.datetime.strptime(d, "%Y-%m-%d")
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
20 return date
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
21
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
22
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
23 def entry_to_tag(entry: dict) -> str:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
24 return (
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
25 entry["attributes"]["name"]["value"] + "_" + entry["attributes"]["tag"]["value"]
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
26 )
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
27
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
28
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
29 def get_database_list() -> List[dict]:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
30 list_cmd = [
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
31 "nextclade",
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
32 "dataset",
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
33 "list",
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
34 "--json",
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
35 "--include-old",
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
36 "--include-incompatible",
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
37 ]
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
38 list_proc = subprocess.run(list_cmd, capture_output=True, check=True)
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
39 database_list = json.loads(list_proc.stdout)
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
40 entry_list = []
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
41 for db_entry in database_list:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
42 attributes = db_entry["attributes"]
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
43 entry = {
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
44 "value": entry_to_tag(db_entry),
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
45 "database_name": attributes["name"]["value"],
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
46 "description": attributes["name"]["valueFriendly"],
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
47 "date": datetime.datetime.fromisoformat(
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
48 attributes["tag"]["value"].replace("Z", "")
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
49 ),
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
50 "tag": attributes["tag"]["value"],
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
51 "min_nextclade_version": db_entry["compatibility"]["nextcladeCli"]["min"],
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
52 }
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
53 entry_list.append(entry)
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
54 return entry_list
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
55
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
56
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
57 def filter_by_date(
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
58 existing_release_tags: List[str],
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
59 name: str,
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
60 releases: list,
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
61 start_date: datetime.datetime = None,
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
62 end_date: datetime.datetime = None,
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
63 ) -> List[dict]:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
64 ret = []
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
65 for release in releases:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
66 if (
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
67 release["database_name"] != name
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
68 or release["value"] in existing_release_tags
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
69 ):
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
70 continue
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
71 if start_date and release["date"] < start_date:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
72 break
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
73 if not end_date or release["date"] <= end_date:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
74 ret.append(release)
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
75
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
76 return ret
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
77
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
78
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
79 def download_and_unpack(name: str, release: str, output_directory: str) -> pathlib.Path:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
80 download_cmd = [
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
81 "nextclade",
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
82 "dataset",
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
83 "get",
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
84 "--name",
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
85 name,
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
86 "--tag",
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
87 release,
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
88 "--output-dir",
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
89 ]
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
90 output_path = pathlib.Path(output_directory) / (
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
91 name + "_" + release.replace(":", "-")
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
92 )
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
93 download_cmd.append(str(output_path))
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
94 subprocess.run(download_cmd, check=True)
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
95 return output_path
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
96
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
97
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
98 def comma_split(args: str) -> List[str]:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
99 return args.split(",")
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
100
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
101
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
102 if __name__ == "__main__":
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
103
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
104 parser = argparse.ArgumentParser()
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
105 parser.add_argument("--testmode", default=False, action="store_true")
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
106 parser.add_argument("--latest", default=False, action="store_true")
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
107 parser.add_argument("--start_date", type=parse_date)
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
108 parser.add_argument("--end_date", type=parse_date)
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
109 parser.add_argument("--known_revisions", type=comma_split)
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
110 parser.add_argument("--datasets", type=comma_split, default=["sars-cov-2"])
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
111 parser.add_argument("datatable_name", default="nextclade")
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
112 parser.add_argument("galaxy_config")
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
113 args = parser.parse_args()
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
114
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
115 # known-revisions is populated from the Galaxy data table by the wrapper
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
116 if args.known_revisions is not None:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
117 existing_release_tags = set(args.known_revisions)
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
118 else:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
119 existing_release_tags = set()
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
120
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
121 releases_available = get_database_list()
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
122 if args.testmode:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
123 releases = []
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
124 for name in args.datasets:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
125 releases.extend(
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
126 filter_by_date(
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
127 [],
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
128 name,
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
129 releases_available,
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
130 start_date=args.start_date,
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
131 end_date=args.end_date,
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
132 )
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
133 )
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
134 for release in releases:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
135 print(
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
136 release["value"],
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
137 release["description"],
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
138 release["date"].isoformat(),
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
139 release["min_nextclade_version"],
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
140 )
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
141 sys.exit(0)
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
142
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
143 with open(args.galaxy_config) as fh:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
144 config = json.load(fh)
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
145
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
146 output_directory = config.get("output_data", [{}])[0].get("extra_files_path", None)
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
147
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
148 data_manager_dict = {"data_tables": {args.datatable_name: []}}
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
149
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
150 releases = []
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
151 if args.latest:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
152 for dataset in args.datasets:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
153 for release in releases_available:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
154 if release["database_name"] == dataset:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
155 if release["value"] not in existing_release_tags:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
156 # add the latest release for this dataset, but only if we don't already have it
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
157 releases.append(release)
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
158 break
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
159 else:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
160 for dataset in args.datasets:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
161 releases_for_ds = filter_by_date(
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
162 existing_release_tags,
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
163 dataset,
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
164 releases_available,
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
165 start_date=args.start_date,
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
166 end_date=args.end_date,
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
167 )
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
168 releases.extend(releases_for_ds)
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
169
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
170 for release in releases:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
171 fname = download_and_unpack(
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
172 release["database_name"], release["tag"], output_directory
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
173 )
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
174 if fname is not None:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
175 data_manager_dict["data_tables"][args.datatable_name].append(
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
176 {
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
177 "value": release["value"],
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
178 "database_name": release["database_name"],
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
179 "description": release["description"],
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
180 "min_nextclade_version": release["min_nextclade_version"],
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
181 "date": release["date"].isoformat(), # ISO 8601 is easily sortable
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
182 "path": str(output_directory / fname),
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
183 }
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
184 )
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
185 data_manager_dict["data_tables"][args.datatable_name].sort(
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
186 key=operator.itemgetter("value"), reverse=True
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
187 )
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
188 with open(args.galaxy_config, "w") as fh:
6e64cb3d2b1d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/data_managers/data_manager_nextclade commit 3d6dabd066dcbe31cfa38fbfac340e253d8a984d
iuc
parents:
diff changeset
189 json.dump(data_manager_dict, fh, indent=2, sort_keys=True)