|
| 1 | +import os |
| 2 | +import re |
| 3 | + |
| 4 | +from parser import parse_extra_bind_settings |
| 5 | + |
| 6 | +# envvar |
| 7 | +DEFAULT_SSL_CERT = os.getenv("DEFAULT_SSL_CERT") or os.getenv("SSL_CERT") |
| 8 | +EXTRA_SSL_CERT = os.getenv("EXTRA_SSL_CERTS") |
| 9 | +DEFAULT_CA_CERT = os.getenv("CA_CERT") |
| 10 | +MAXCONN = os.getenv("MAXCONN", "4096") |
| 11 | +MODE = os.getenv("MODE", "http") |
| 12 | +OPTION = os.getenv("OPTION", "redispatch, httplog, dontlognull, forwardfor") |
| 13 | +RSYSLOG_DESTINATION = os.getenv("RSYSLOG_DESTINATION", "127.0.0.1") |
| 14 | +SSL_BIND_CIPHERS = os.getenv("SSL_BIND_CIPHERS") |
| 15 | +SSL_BIND_OPTIONS = os.getenv("SSL_BIND_OPTIONS") |
| 16 | +STATS_AUTH = os.getenv("STATS_AUTH", "stats:stats") |
| 17 | +STATS_PORT = os.getenv("STATS_PORT", "1936") |
| 18 | +TIMEOUT = os.getenv("TIMEOUT", "connect 5000, client 50000, server 50000") |
| 19 | +HEALTH_CHECK = os.getenv("HEALTH_CHECK", "check inter 2000 rise 2 fall 3") |
| 20 | +EXTRA_GLOBAL_SETTINGS = os.getenv("EXTRA_GLOBAL_SETTINGS") |
| 21 | +EXTRA_DEFAULT_SETTINGS = os.getenv("EXTRA_DEFAULT_SETTINGS") |
| 22 | +EXTRA_BIND_SETTINGS = parse_extra_bind_settings(os.getenv("EXTRA_BIND_SETTINGS")) |
| 23 | +HTTP_BASIC_AUTH = os.getenv("HTTP_BASIC_AUTH") |
| 24 | +MONITOR_URI = os.getenv("MONITOR_URI") |
| 25 | +MONITOR_PORT = os.getenv("MONITOR_PORT") |
| 26 | +BALANCE = os.getenv("BALANCE", "roundrobin") |
| 27 | +HAPROXY_CONTAINER_URI = os.getenv("DOCKERCLOUD_CONTAINER_API_URI") |
| 28 | +HAPROXY_SERVICE_URI = os.getenv("DOCKERCLOUD_SERVICE_API_URI") |
| 29 | +API_AUTH = os.getenv("DOCKERCLOUD_AUTH") |
| 30 | +DEBUG = os.getenv("DEBUG", False) |
| 31 | + |
| 32 | +# const |
| 33 | +CERT_DIR = "/certs/" |
| 34 | +CACERT_DIR = "/cacerts/" |
| 35 | +HAPROXY_CONFIG_FILE = "/haproxy.cfg" |
| 36 | +HAPROXY_RUN_COMMAND = ['/usr/sbin/haproxy', '-f', HAPROXY_CONFIG_FILE, '-db', '-q'] |
| 37 | +API_RETRY = 10 # seconds |
| 38 | +PID_FILE = "/tmp/dockercloud-haproxy.pid" |
| 39 | + |
| 40 | +SERVICE_NAME_MATCH = re.compile(r"(.+)_\d+$") |
| 41 | +BACKEND_MATCH = re.compile(r"(?P<proto>tcp|udp):\/\/(?P<addr>[^:]*):(?P<port>.*)") |
| 42 | +SERVICE_ALIAS_MATCH = re.compile(r"_PORT_\d{1,5}_(TCP|UDP)$") |
| 43 | +DETAILED_SERVICE_ALIAS_MATCH = re.compile(r"_\d+_PORT_\d{1,5}_(TCP|UDP)$") |
| 44 | +ENV_SERVICE_ALIAS_MATCH = re.compile(r"_ENV_") |
| 45 | +ENV_DETAILED_SERVICE_ALIAS_MATCH = re.compile(r"_\d+_ENV") |
0 commit comments