Mercurial > repos > rplanel > data_manager_defense_finder
annotate data_manager/defense_finder_models_fetcher.py @ 1:e661b9ac3223 draft
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit 891873c6565ff772da78e2ac606ef723eb1f9f04
| author | rplanel |
|---|---|
| date | Wed, 11 Oct 2023 07:33:01 +0000 |
| parents | a04c5659aac3 |
| children | 6dd2220e0a1c |
| rev | line source |
|---|---|
|
0
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
1 #!/usr/bin/env python |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
2 |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
3 import argparse |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
4 import json |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
5 |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
6 import subprocess |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
7 import sys |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
8 from pathlib import Path |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
9 |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
10 |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
11 def main(args): |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
12 dataset_basename = "defense-finder-models" |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
13 models_version = args.version |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
14 output_file = args.output |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
15 dataset_value = f"{dataset_basename}_{models_version}" |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
16 with open(output_file) as fh: |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
17 params = json.load(fh) |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
18 target_directory = Path(params["output_data"][0]["extra_files_path"]) |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
19 target_directory.mkdir(parents=True, exist_ok=True) |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
20 # download models with macsydata |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
21 args = [ |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
22 "defense-finder", |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
23 "update", |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
24 "--models-dir", |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
25 dataset_value, |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
26 ] |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
27 |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
28 proc = subprocess.Popen(args=args, shell=False, cwd=target_directory) |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
29 return_code = proc.wait() |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
30 if return_code: |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
31 print("Error building index.", file=sys.stderr) |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
32 sys.exit(return_code) |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
33 |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
34 data_table_entry = dict( |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
35 value=dataset_value, |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
36 dbkey=dataset_basename, |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
37 version=models_version, |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
38 name=f"Defense Finder models (version {models_version})", |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
39 description="MacSyFinder models allowing for a systematic search of anti-phage systems", |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
40 path=dataset_value, |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
41 ) |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
42 |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
43 data_manager_json = dict(data_tables={"defense-finder": data_table_entry}) |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
44 |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
45 # move dir to final target dir |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
46 # shutil.move(workdir / dataset_name, target_directory_tax) |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
47 # data_manager_json = dict(data_tables=dict(pasteurqtl=data_table_entry)) |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
48 with open(output_file, "w") as fh: |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
49 json.dump(data_manager_json, fh, sort_keys=True) |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
50 |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
51 |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
52 if __name__ == "__main__": |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
53 parser = argparse.ArgumentParser(description="Create data manager json.") |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
54 parser.add_argument("--out", dest="output", action="store", help="JSON filename") |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
55 parser.add_argument( |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
56 "--version", dest="version", action="store", default="1", help="dataset version" |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
57 ) |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
58 |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
59 args = parser.parse_args() |
|
a04c5659aac3
planemo upload for repository https://gitlab.pasteur.fr/galaxy-team/galaxy-tools/-/tree/master/data_managers/data_manager_defense_finder commit cd90d22094f1128738ca4614b51d81af00a83d50
rplanel
parents:
diff
changeset
|
60 main(args) |
