Quantcast
Viewing latest article 15
Browse Latest Browse All 30

Provides a wrapper script to download a Snakemake Blob, and then extract to a location. This should be moved to be packaged alongside snakemake

download.py
#!/usr/bin/env python
importargparse
importdatetime
fromgoogle.cloudimportstorage
defdownload_blob(bucket_name, source_blob_name, destination_file_name):
"""Downloads a blob from the bucket."""
storage_client=storage.Client()
bucket=storage_client.get_bucket(bucket_name)
blob=bucket.blob(source_blob_name)
blob.download_to_filename(destination_file_name)
print('Blob {} downloaded to {}.'.format(
source_blob_name,
destination_file_name))
defblob_commands(args):
ifargs.command=='download':
download_blob(
args.bucket_name,
args.source_blob_name,
args.destination_file_name)
defmain():
parser=argparse.ArgumentParser(
formatter_class=argparse.RawDescriptionHelpFormatter)
subparsers=parser.add_subparsers(dest='command')
download_parser=subparsers.add_parser(
'download', help=download_blob.__doc__)
download_parser.add_argument(
'bucket_name', help='Your cloud storage bucket.')
download_parser.add_argument('source_blob_name')
download_parser.add_argument('destination_file_name')
args=parser.parse_args()
blob_commands(args)
if__name__=='__main__':
main()

Viewing latest article 15
Browse Latest Browse All 30

Trending Articles