1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
# 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'.
from moon_utilities.security_functions import call
class Status(object):
"""
Retrieve the current status of all components.
"""
__version__ = "0.1.0"
def __get_status(self, ctx, args={}):
return {"status": "Running"}
def get_status(self, ctx, args={}):
status = dict()
if "component_id" in ctx and ctx["component_id"] == "security_router":
return {"security_router": self.__get_status(ctx, args)}
elif "component_id" in ctx and ctx["component_id"]:
# TODO (dthom): check if component exist
status[ctx["component_id"]] = call(ctx["component_id"], ctx, "get_status", args=args)
else:
# TODO (dthom): must get the status of all containers
status["orchestrator"] = call("orchestrator", ctx, "get_status", args=args)
status["security_router"] = self.__get_status(ctx, args)
return status
class Logs(object):
"""
Retrieve the current status of all components.
"""
__version__ = "0.1.0"
def get_logs(self, ctx, args={}):
logs = dict()
logs["orchestrator"] = call("orchestrator", ctx, "get_logs", args=args)
# TODO (dthom): must get the logs of all containers
logs["security_router"] = {"error": "Not implemented", "ctx": ctx, "args": args}
return logs
|