summaryrefslogtreecommitdiffstats
path: root/osdfapp.py
diff options
context:
space:
mode:
Diffstat (limited to 'osdfapp.py')
-rwxr-xr-xosdfapp.py20
1 files changed, 19 insertions, 1 deletions
diff --git a/osdfapp.py b/osdfapp.py
index a83adb7..b8afbf4 100755
--- a/osdfapp.py
+++ b/osdfapp.py
@@ -21,6 +21,7 @@ OSDF Manager Main Flask Application
"""
import json
+import ssl
import sys
import traceback
from optparse import OptionParser
@@ -34,6 +35,7 @@ from schematics.exceptions import DataError
import osdf.adapters.aaf.sms as sms
import osdf.operation.responses
from osdf.adapters.policy.interface import get_policies
+from osdf.adapters.policy.interface import upload_policy_models
from osdf.config.base import osdf_config
from osdf.logging.osdf_logging import MH, audit_log, error_log, debug_log
from osdf.models.api.pciOptimizationRequest import PCIOptimizationAPI
@@ -101,6 +103,15 @@ def do_osdf_health_check():
return "OK"
+@app.route("/api/oof/loadmodels/v1", methods=["GET"])
+def do_osdf_load_policies():
+ audit_log.info("Uploading policy models")
+ """Upload policy models"""
+ response = upload_policy_models()
+ audit_log.info(response)
+ return "OK"
+
+
@app.route("/api/oof/v1/placement", methods=["POST"])
@auth_basic.login_required
def do_placement_opt():
@@ -192,6 +203,13 @@ def get_options(argv):
return opts
+def build_ssl_context():
+ ssl_context = ssl.SSLContext(ssl.PROTOCOL_TLSv1_2)
+ ssl_context.set_ciphers('ECDHE-RSA-AES128-SHA256:EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH')
+ ssl_context.load_cert_chain(sys_conf['ssl_context'][0], sys_conf['ssl_context'][1])
+ return ssl_context
+
+
if __name__ == "__main__":
sys_conf = osdf_config['core']['osdf_system']
@@ -203,7 +221,7 @@ if __name__ == "__main__":
ssl_opts = sys_conf.get('ssl_context')
if ssl_opts:
- common_app_opts.update({'ssl_context': tuple(ssl_opts)})
+ common_app_opts.update({'ssl_context': build_ssl_context()})
opts = get_options(sys.argv)
# Load secrets from SMS