File: settings.py

package info (click to toggle)
pytds 1.16.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 868 kB
  • sloc: python: 12,831; makefile: 199; sh: 8
file content (61 lines) | stat: -rw-r--r-- 1,880 bytes parent folder | download
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
50
51
52
53
54
55
56
57
58
59
60
61
import os
import json

CONNECT_ARGS = []
CONNECT_KWARGS = {}

connection_json_path = os.path.join(os.path.dirname(__file__), ".connection.json")

if os.path.exists(connection_json_path):
    conf = json.load(open(connection_json_path, "rb"))
    default_host = conf["host"]
    default_database = conf["database"]
    default_user = conf["sqluser"]
    default_password = conf["sqlpassword"]
    default_use_mars = conf["use_mars"]
    default_auth = conf.get("auth")
    default_cafile = conf.get("cafile")
else:
    default_host = None
    default_database = "test"
    default_user = "sa"
    default_password = "sa"
    default_use_mars = True
    default_auth = None
    default_cafile = None

LIVE_TEST = "HOST" in os.environ or default_host
if LIVE_TEST:
    HOST = os.environ.get("HOST", default_host)
    DATABASE = os.environ.get("DATABASE", default_database)
    USER = os.environ.get("SQLUSER", default_user)
    PASSWORD = os.environ.get("SQLPASSWORD", default_password)
    USE_MARS = bool(os.environ.get("USE_MARS", default_use_mars))
    SKIP_SQL_AUTH = bool(os.environ.get("SKIP_SQL_AUTH"))

    import pytds

    CONNECT_KWARGS = {
        "server": HOST,
        "database": DATABASE,
        "user": USER,
        "password": PASSWORD,
        "use_mars": USE_MARS,
        "bytes_to_unicode": True,
        "pooling": True,
        "timeout": 30,
        "cafile": default_cafile,
    }
    if default_auth:
        CONNECT_KWARGS["auth"] = getattr(pytds.login, default_auth)()

    if "tds_version" in os.environ:
        CONNECT_KWARGS["tds_version"] = getattr(pytds, os.environ["tds_version"])

    if "auth" in os.environ:
        import pytds.login

        CONNECT_KWARGS["auth"] = getattr(pytds.login, os.environ["auth"])()

    if "bytes_to_unicode" in os.environ:
        CONNECT_KWARGS["bytes_to_unicode"] = bool(os.environ.get("bytes_to_unicode"))