annotate fetch_latest_pangolearn.py @ 1:de3ceb419d91 draft

"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
author iuc
date Sun, 25 Apr 2021 20:16:28 +0000
parents
children 3eb349ea33a6
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
1 #!/usr/bin/env python
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
2
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
3 import json
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
4 import os
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
5 import tarfile
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
6
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
7 # rely on the fact that pangolin itself uses the requests module
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
8 import requests
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
9
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
10 response = requests.get(
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
11 "https://api.github.com/repos/cov-lineages/pangoLEARN/releases/latest"
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
12 )
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
13 if response.status_code == 200:
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
14 details = json.loads(response.text)
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
15 response = requests.get(details["tarball_url"])
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
16 if response.status_code == 200:
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
17 with open("pangolearn.tgz", "wb") as handle:
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
18 handle.write(response.content)
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
19 tf = tarfile.open("pangolearn.tgz")
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
20 pl_path = tf.next().name
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
21 tf.extractall()
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
22 tf.close()
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
23 os.rename(os.path.join(pl_path, "pangoLEARN"), "datadir")
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
24 else:
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
25 response.raise_for_status()
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
26 else:
de3ceb419d91 "planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pangolin commit 1522bdb834ffab157d1ca25e6e74db21f62e3aae"
iuc
parents:
diff changeset
27 response.raise_for_status()