]> git.armaanb.net Git - bin.git/blob - upl
signal-finder: add script
[bin.git] / upl
1 #!/usr/bin/env python3
2
3 import argparse
4 from os import path, makedirs
5 from pathlib import Path
6 from shutil import copyfile 
7
8 def parse_args():
9     parser = argparse.ArgumentParser(
10         description="Copy file to Wasabi-mounted directory")
11     parser.add_argument("input", type=str, nargs=1, help="input file")
12     parser.add_argument("output", type=str, nargs="*", help="output path")
13     parser.add_argument("-p", "--private", action="store_true",
14                         help="Copy to private directory")
15     parser.add_argument("-m", "--mkdir", action="store_true",
16                         help="Create parent directories if necesary")
17
18     return parser.parse_args()
19
20 def outp(args):
21     if not args.output:
22         out = path.basename(args.input[0])
23     else:
24         out = args.output[0]
25     return out
26
27 def main(args):
28     out = outp(args)
29     inp = args.input[0]
30
31     if args.private:
32         s3path = priv_path
33         s3bin = priv_bin
34     else:
35         s3path = pub_path
36         s3bin = pub_bin
37
38     fpath = s3path + out
39     if args.mkdir and not path.exists(fpath):
40         makedirs(Path(fpath).parent)
41
42     copyfile(inp, fpath)
43     print(endp + s3bin + "/" + out)
44
45 if __name__ == "__main__":
46     endp = "https://s3.us-east-2.wasabisys.com/"
47     pub_path = "/home/armaa/.local/mnt/public/"
48     pub_bin = "armaan-public"
49     priv_path = "/home/armaa/.local/mnt/private/"
50     priv_bin = "armaan-private"
51     main(parse_args())