File size: 967 Bytes
c6017a8
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import argparse
import sys


class ArgParser(argparse.ArgumentParser):
    def __init__(self, app_envs={}, *args, **kwargs):
        super().__init__(*args, **kwargs)

        self.host = app_envs.get("host", "127.0.0.1")
        self.port = app_envs.get("port", 19898)
        self.app_name = app_envs.get("app_name", f"App on {self.host}")

        self.add_argument(
            "-s",
            "--host",
            type=str,
            default=self.host,
            help=f"Host ({self.host}) for {self.app_name}",
        )
        self.add_argument(
            "-p",
            "--port",
            type=int,
            default=app_envs["port"],
            help=f"Port ({self.port}) for {self.app_name}",
        )
        self.add_argument(
            "-r",
            "--reload",
            action="store_true",
            help="Reload server on code change",
        )

        self.args, self.unknown_args = self.parse_known_args(sys.argv[1:])