Allow logger configuration ingestion from environment

Related-PROD: PRODX-11433
Change-Id: Ib7b9940d097cf5a6d1c774fa5b6c51feb684d660
diff --git a/Dockerfile b/Dockerfile
index 91fdcb1..377a7f7 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -3,23 +3,31 @@
 WORKDIR /app
 
 # explicitly set user/group IDs
-RUN groupadd -r -g 999 sfnotifier && \
-    useradd -r -g sfnotifier -u 999 -m -s /sbin/nologin -d /app -c "sf-notifier user" sfnotifier
+RUN groupadd -r -g 999 sfnotifier \
+ && useradd -r -g sfnotifier -u 999 -m -s /sbin/nologin -d /app -c "sf-notifier user" sfnotifier
 
-# Install system requirements
-RUN apt-get update -qq && apt-get upgrade -y && \
-    apt-get install --no-install-recommends -y -q \
-      build-essential \
+# Install runtime requirements
+RUN export DEBIAN_FRONTEND=noninteractive \
+ && apt-get update -qq \
+ && apt-get upgrade -y \
+ && apt-get install --no-install-recommends -y -q \
+      curl \
       python2.7 \
-      python2.7-dev \
       python-pip \
       python-wheel \
       python-setuptools \
-      curl git && \
-    apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
+ && apt-get clean \
+ && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
 
 COPY requirements.txt ./
-RUN pip install -r /app/requirements.txt
+RUN buildDeps="build-essential git python2.7-dev" \
+ && export DEBIAN_FRONTEND=noninteractive \
+ && apt-get update -qq \
+ && apt-get install --no-install-recommends -y -q ${buildDeps} \
+ && CRYPTOGRAPHY_DONT_BUILD_RUST=1 pip install --no-cache-dir -r /app/requirements.txt \
+ && apt-get purge -y ${buildDeps} \
+ && apt-get clean \
+ && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
 
 COPY . .
 CMD ./entrypoint.sh
diff --git a/requirements.txt b/requirements.txt
index 7644c16..6a957c7 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -5,7 +5,7 @@
 cffi==1.14.4
 chardet==3.0.4
 Click==7.0
-cryptography==3.3.1
+cryptography<3.4
 enum34==1.1.6
 Flask==1.0.2
 idna==2.7
diff --git a/sf_notifier/settings/development.py b/sf_notifier/settings/development.py
index 06d3065..876a671 100644
--- a/sf_notifier/settings/development.py
+++ b/sf_notifier/settings/development.py
@@ -13,14 +13,10 @@
         'formatter': 'default'
     }},
     'loggers': {
-        'sf_notifier.server': {
-            'level': 'INFO',
+        logger: {
+            'level': os.getenv('LOGGER_LEVEL', 'INFO').upper(),
             'handlers': ['wsgi']
-        },
-        'sf_notifier.salesforce.client': {
-            'level': 'INFO',
-            'handlers': ['wsgi']
-        }
+        } for logger in ['sf_notifier.server', 'sf_notifier.salesforce.client']
     }
 }
 
diff --git a/sf_notifier/settings/production.py b/sf_notifier/settings/production.py
index dfc9639..e0450c8 100644
--- a/sf_notifier/settings/production.py
+++ b/sf_notifier/settings/production.py
@@ -23,14 +23,10 @@
         }
     },
     'loggers': {
-        'sf_notifier.server': {
-            'level': 'INFO',
+        logger: {
+            'level': os.getenv('LOGGER_LEVEL', 'INFO').upper(),
             'handlers': ['file', 'wsgi']
-        },
-        'sf_notifier.salesforce.client': {
-            'level': 'INFO',
-            'handlers': ['file', 'wsgi']
-        }
+        } for logger in ['sf_notifier.server', 'sf_notifier.salesforce.client']
     }
 }