aboutsummaryrefslogtreecommitdiffstats
path: root/moon_manager/moon_manager/api/slaves.py
diff options
context:
space:
mode:
Diffstat (limited to 'moon_manager/moon_manager/api/slaves.py')
-rw-r--r--moon_manager/moon_manager/api/slaves.py111
1 files changed, 0 insertions, 111 deletions
diff --git a/moon_manager/moon_manager/api/slaves.py b/moon_manager/moon_manager/api/slaves.py
deleted file mode 100644
index e2928de0..00000000
--- a/moon_manager/moon_manager/api/slaves.py
+++ /dev/null
@@ -1,111 +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'.
-"""
-PDP are Policy Decision Point.
-
-"""
-
-from flask import request
-from flask_restful import Resource
-import logging
-import requests
-from python_moonutilities.security_functions import check_auth
-
-from python_moonutilities import configuration
-from python_moonutilities.security_functions import validate_input
-
-__version__ = "4.3.0"
-
-logger = logging.getLogger("moon.manager.api." + __name__)
-
-
-class Slaves(Resource):
- """
- Endpoint for pdp requests
- """
-
- __urls__ = (
- "/slaves",
- "/slaves/",
- "/slaves/<string:uuid>",
- "/slaves/<string:uuid>/",
- )
-
- def __init__(self, **kwargs):
- conf = configuration.get_configuration("components/orchestrator")
- self.orchestrator_hostname = conf["components/orchestrator"].get("hostname",
- "orchestrator")
- self.orchestrator_port = conf["components/orchestrator"].get("port",
- 80)
-
- @validate_input("get", kwargs_state=[False, False])
- @check_auth
- def get(self, uuid=None, user_id=None):
- """Retrieve all slaves
-
- :param uuid: uuid of the slave
- :param user_id: user ID who do the request
- :return: {
- "slaves": {
- "XXX": {
- "name": "...",
- "installed": True
- },
- "YYY": {
- "name": "...",
- "installed": False
- }
- }
- }
- """
- req = requests.get("http://{}:{}/slaves".format(
- self.orchestrator_hostname, self.orchestrator_port
- ))
- return {"slaves": req.json().get("slaves", dict())}
-
- @validate_input("patch", kwargs_state=[False, False],
- body_state={"op": True, "variable": True, "value": True})
- @check_auth
- def patch(self, uuid=None, user_id=None):
- """Update a slave
-
- :param uuid: uuid of the slave to update
- :param user_id: user ID who do the request
- :request body: {
- "op": "replace",
- "variable": "configured",
- "value": True,
- }
- :return: 204
- :internal_api: add_pdp
- """
- logger.info("Will made a request for {}".format(uuid))
- if request.json.get("op") == "replace" \
- and request.json.get("variable") == "configured" \
- and request.json.get("value"):
- req = requests.post("http://{}:{}/pods".format(
- self.orchestrator_hostname, self.orchestrator_port,
- ),
- json={"slave_name": uuid}
- )
- if req.status_code != 200:
- logger.warning("Get error from Orchestrator {} {}".format(
- req.reason, req.status_code
- ))
- return "Orchestrator: " + str(req.reason), req.status_code
- elif request.json.get("op") == "replace" \
- and request.json.get("variable") == "configured" \
- and not request.json.get("value"):
- req = requests.delete("http://{}:{}/pods/{}".format(
- self.orchestrator_hostname, self.orchestrator_port, uuid
- ))
- if req.status_code != 200:
- logger.warning("Get error from Orchestrator {} {}".format(
- req.reason, req.status_code
- ))
- return "Orchestrator: " + str(req.reason), req.status_code
- else:
- return "Malformed request", 400
- return {"slaves": req.json()}