aboutsummaryrefslogtreecommitdiffstats
path: root/moon_wrapper/moon_wrapper/api/slaveupdate.py
diff options
context:
space:
mode:
Diffstat (limited to 'moon_wrapper/moon_wrapper/api/slaveupdate.py')
-rw-r--r--moon_wrapper/moon_wrapper/api/slaveupdate.py87
1 files changed, 0 insertions, 87 deletions
diff --git a/moon_wrapper/moon_wrapper/api/slaveupdate.py b/moon_wrapper/moon_wrapper/api/slaveupdate.py
deleted file mode 100644
index b2ce22f0..00000000
--- a/moon_wrapper/moon_wrapper/api/slaveupdate.py
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 2015 Open Platform for NFV Project, Inc. and its contributors
-# This software is distributed under the terms and conditions of the 'Apache-2.0'
-# license which can be found in the file 'LICENSE' in this package distribution
-# or at 'http://www.apache.org/licenses/LICENSE-2.0'.
-"""
-Authz is the endpoint to get authorization response
-"""
-
-import logging
-import json
-import flask
-from flask import request
-from flask_restful import Resource
-import requests
-from python_moonutilities import exceptions
-
-__version__ = "0.1.0"
-
-LOGGER = logging.getLogger("moon.wrapper.api." + __name__)
-
-
-class SlaveUpdate(Resource):
- """
- Endpoint for authz requests
- """
-
- __urls__ = (
- "/update",
- "/update/",
- )
-
- def __init__(self, **kwargs):
- self.port = kwargs.get("port")
- self.CACHE = kwargs.get("cache", {})
- self.TIMEOUT = 5
-
- def put(self):
- LOGGER.warning("PUT {}".format(request.form))
- response = flask.make_response("False")
- try:
- if self.update_slave():
- response = flask.make_response("True")
- except Exception as exception:
- LOGGER.error(exception, exc_info=True)
-
- response.headers['content-type'] = 'application/octet-stream'
- return response
-
- def get_interface_url(self, pdp_id):
- LOGGER.debug("pdp_id {}".format(pdp_id))
- for containers in self.CACHE.containers.values():
- LOGGER.info("containers0 {}".format(containers))
- for container in containers:
- if container.get("pdp_id") == pdp_id:
- if "pipeline" in container['name']:
- yield "http://{}:{}".format(
- container['name'],
- container['port'])
- self.CACHE.update()
- # Note (asteroide): test an other time after the update
- for containers in self.CACHE.containers.values():
- LOGGER.info("containers1 {}".format(containers))
- for container in containers:
- if container.get("pdp_id") == pdp_id:
- if "pipeline" in container['name']:
- yield "http://{}:{}".format(
- container['name'],
- container['port'])
-
- def update_slave(self):
- result = {}
- result_list = []
- for _pdp_id in self.CACHE.pdp:
- result[_pdp_id] = {}
- for interface_url in self.get_interface_url(_pdp_id):
-
- req = requests.put("{}/update".format(interface_url), request.form)
-
- if req.status_code == 200:
- if req.json().get("result", False):
- result[_pdp_id][interface_url] = True
- result_list.append(True)
- continue
- LOGGER.warning("Error in {} {}: {}".format(_pdp_id, interface_url, req.text))
- result[_pdp_id][interface_url] = False
- result_list.append(False)
- return all(result_list)