Mercurial > repos > galaxyp > openms_compnovocid
comparison fill_ctd_clargs.py @ 13:ea09480c5d8f draft
"planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/openms commit 020906fb54bde7fc143c356f41975c378a741315"
author | galaxyp |
---|---|
date | Wed, 09 Sep 2020 12:45:58 +0000 |
parents | |
children | 123ea5520652 |
comparison
equal
deleted
inserted
replaced
12:395b323f84e7 | 13:ea09480c5d8f |
---|---|
1 #!/usr/bin/env python3 | |
2 from argparse import ArgumentParser | |
3 from io import StringIO | |
4 | |
5 from CTDopts.CTDopts import ( | |
6 CTDModel, | |
7 ModelTypeError, | |
8 Parameters | |
9 ) | |
10 | |
11 if __name__ == "__main__": | |
12 # note add_help=False since otherwise arguments starting with -h will | |
13 # trigger an error (despite allow_abbreviate) | |
14 parser = ArgumentParser(prog="fill_ctd_clargs", | |
15 description="fill command line arguments" | |
16 "into a CTD file and write the CTD file to", | |
17 add_help=False, allow_abbrev=False) | |
18 parser.add_argument("--ctd", dest="ctd", help="input ctd file", | |
19 metavar='CTD', default=None, required=True) | |
20 args, cliargs = parser.parse_known_args() | |
21 # load CTDModel | |
22 model = None | |
23 try: | |
24 model = CTDModel(from_file=args.ctd) | |
25 except ModelTypeError: | |
26 pass | |
27 try: | |
28 model = Parameters(from_file=args.ctd) | |
29 except ModelTypeError: | |
30 pass | |
31 assert model is not None, "Could not parse %s, seems to be no CTD/PARAMS" % (args.ctd) | |
32 | |
33 # get a dictionary of the ctd arguments where the values of the parameters | |
34 # given on the command line are overwritten | |
35 margs = model.parse_cl_args(cl_args=cliargs, ignore_required=True) | |
36 | |
37 # write the ctd with the values taken from the dictionary | |
38 out = StringIO() | |
39 ctd_tree = model.write_ctd(out, margs) | |
40 print(out.getvalue()) |