File size: 1,052 Bytes
4464055
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import os

from dotenv import load_dotenv
from dotenv.main import DotEnv


class EnvironmentManager(object):
    def __init__(self, filename, override=False):
        self.filename = filename

        load_dotenv(
            dotenv_path=filename,
            override=override
        )

    def open_dotenv(self, filename: str = None):
        filename = filename or self.filename
        dotenv = DotEnv(
            dotenv_path=filename,
            stream=None,
            verbose=False,
            interpolate=False,
            override=False,
            encoding="utf-8",
        )
        result = dotenv.dict()
        return result

    def get(self, key, default=None, dtype=str):
        result = os.environ.get(key)
        if result is None:
            if default is None:
                result = None
            else:
                result = default
        else:
            result = dtype(result)
        return result


def main():
    return


if __name__ == '__main__':
    main()