Cleaning
This commit is contained in:
1 parent
12137abe0f
commit
e5ebdd59c9
18 files changed
+42
-51
No files matched your search
Generated
+6
@@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="VcsDirectoryMappings">
|
||||||
|
<mapping directory="" vcs="Git" />
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
@@ -9,6 +9,9 @@ class RoleContext:
|
|||||||
def execute(self, command, *args, **kwargs):
|
def execute(self, command, *args, **kwargs):
|
||||||
return self._network.execute(command, *args, **kwargs)
|
return self._network.execute(command, *args, **kwargs)
|
||||||
|
|
||||||
|
def execute_to_unregistered_node(self, ip, port, command, *args, **kwargs):
|
||||||
|
return self._network.execute_to_unregistered_node(ip, port, command, *args, **kwargs)
|
||||||
|
|
||||||
def peers(self):
|
def peers(self):
|
||||||
return self._network.get_all_nodes()
|
return self._network.get_all_nodes()
|
||||||
|
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ from colony.core.network.nodes import LocalNode, Node
|
|||||||
from colony.core.network.requests import CommandRequest
|
from colony.core.network.requests import CommandRequest
|
||||||
from colony.core.logger.logging import get_logger
|
from colony.core.logger.logging import get_logger
|
||||||
from colony.settings import configuration
|
from colony.settings import configuration
|
||||||
|
from colony.transport.whisperer import Whisperer
|
||||||
from colony.utils.network import get_local_ip, get_hostname
|
from colony.utils.network import get_local_ip, get_hostname
|
||||||
|
|
||||||
|
|
||||||
@@ -26,24 +27,6 @@ class Network:
|
|||||||
if not self.nodes:
|
if not self.nodes:
|
||||||
self.nodes.append(self.self_node)
|
self.nodes.append(self.self_node)
|
||||||
|
|
||||||
# @staticmethod
|
|
||||||
# def initialize():
|
|
||||||
# network = Network()
|
|
||||||
# network.logger.info("Network.initialize() called")
|
|
||||||
#
|
|
||||||
# network.self_node = LocalNode(
|
|
||||||
# hostname=get_hostname(),
|
|
||||||
# ip=get_local_ip(),
|
|
||||||
# roles=[],
|
|
||||||
# port=configuration.listener.port
|
|
||||||
# )
|
|
||||||
# network.logger.info(f"Self node created: {network.self_node.id}")
|
|
||||||
#
|
|
||||||
# if not network.nodes:
|
|
||||||
# network.nodes.append(network.self_node)
|
|
||||||
#
|
|
||||||
# return network
|
|
||||||
|
|
||||||
def get_self(self):
|
def get_self(self):
|
||||||
return self.self_node
|
return self.self_node
|
||||||
|
|
||||||
@@ -72,6 +55,13 @@ class Network:
|
|||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def execute_to_unregistered_node(ip, port, command: Enum, *args, **kwargs):
|
||||||
|
request = CommandRequest.form(command, *args, **kwargs)
|
||||||
|
|
||||||
|
return Whisperer(ip, port).send(request.collapse())
|
||||||
|
|
||||||
|
|
||||||
def load_network_from_snapshot(self, file_path: str = "storage/colony_snapshot.json"):
|
def load_network_from_snapshot(self, file_path: str = "storage/colony_snapshot.json"):
|
||||||
self.logger.info(f"Loading network snapshot from {file_path}")
|
self.logger.info(f"Loading network snapshot from {file_path}")
|
||||||
nodes = []
|
nodes = []
|
||||||
|
|||||||
@@ -17,14 +17,7 @@ class Node:
|
|||||||
def execute(self, command: Enum, *args, **kwargs):
|
def execute(self, command: Enum, *args, **kwargs):
|
||||||
request = CommandRequest.form(command, *args, **kwargs)
|
request = CommandRequest.form(command, *args, **kwargs)
|
||||||
|
|
||||||
return Whisperer(self.ip, self.port).send({
|
return Whisperer(self.ip, self.port).send(request.collapse())
|
||||||
"command": {
|
|
||||||
"role": request.role,
|
|
||||||
"name": request.name,
|
|
||||||
"args": request.args,
|
|
||||||
"kwargs": request.kwargs
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
def to_dict(self):
|
def to_dict(self):
|
||||||
return {
|
return {
|
||||||
|
|||||||
@@ -31,3 +31,12 @@ class CommandRequest:
|
|||||||
def form(cls, id: Enum, *args: Any, **kwargs: Any):
|
def form(cls, id: Enum, *args: Any, **kwargs: Any):
|
||||||
return cls(id, args, kwargs)
|
return cls(id, args, kwargs)
|
||||||
|
|
||||||
|
def collapse(self):
|
||||||
|
return {
|
||||||
|
"command": {
|
||||||
|
"role": self.role,
|
||||||
|
"name": self.name,
|
||||||
|
"args": self.args,
|
||||||
|
"kwargs": self.kwargs
|
||||||
|
}
|
||||||
|
}
|
||||||
File renamed without changes.
File renamed without changes.
@@ -1,10 +1,11 @@
|
|||||||
import datetime
|
import datetime
|
||||||
from enum import Enum
|
from enum import Enum
|
||||||
|
|
||||||
|
from colony.core.network.requests import CommandRequest
|
||||||
from colony.core.storage import DEFAULT_STORAGE_FILES
|
from colony.core.storage import DEFAULT_STORAGE_FILES
|
||||||
from colony.roles.role import Role
|
from colony.core.roles.role import Role
|
||||||
from colony.roles.unit.role import Unit
|
from colony.core.roles.unit.role import Unit
|
||||||
from colony.roles.vaultwarden.role import VaultWarden
|
from colony.core.roles.vaultwarden.role import VaultWarden
|
||||||
from colony.transport.discover import Discover
|
from colony.transport.discover import Discover
|
||||||
from colony.transport.whisperer import Whisperer
|
from colony.transport.whisperer import Whisperer
|
||||||
|
|
||||||
@@ -68,15 +69,4 @@ class Explorer(Role):
|
|||||||
return peers
|
return peers
|
||||||
|
|
||||||
def fetch_stats_from_peer(self, ip, port):
|
def fetch_stats_from_peer(self, ip, port):
|
||||||
command = Unit.COMMANDS.SHOW_STATS
|
return self.context.execute_to_unregistered_node(ip, port, Unit.COMMANDS.SHOW_STATS)
|
||||||
role_name, command_name = command.value.split('.')
|
|
||||||
request = {
|
|
||||||
"command": {
|
|
||||||
"role": role_name,
|
|
||||||
"name": command_name,
|
|
||||||
"args": [],
|
|
||||||
"kwargs": {}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return Whisperer(ip, port).send(request).get('result', {})
|
|
||||||
File renamed without changes.
@@ -1,6 +1,6 @@
|
|||||||
from enum import Enum
|
from enum import Enum
|
||||||
from colony.roles.role import Role, Command
|
from colony.core.roles.role import Role
|
||||||
from colony.roles.unit.role import Unit
|
from colony.core.roles.unit.role import Unit
|
||||||
|
|
||||||
|
|
||||||
class Foreman(Role):
|
class Foreman(Role):
|
||||||
@@ -52,7 +52,7 @@ class RoleManager:
|
|||||||
context = RoleContext(self.network, self)
|
context = RoleContext(self.network, self)
|
||||||
for role_name in roles_to_add:
|
for role_name in roles_to_add:
|
||||||
self.logger.debug(f"Creating and adding new role {role_name}")
|
self.logger.debug(f"Creating and adding new role {role_name}")
|
||||||
role_cls = available_roles[role_name]
|
role_cls = self.role_registry.get_role_class_by_name(role_name)
|
||||||
current_roles[role_name] = role_cls(context=context)
|
current_roles[role_name] = role_cls(context=context)
|
||||||
|
|
||||||
StateManager().set(StateManager.Data.Roles, list(current_roles.keys()))
|
StateManager().set(StateManager.Data.Roles, list(current_roles.keys()))
|
||||||
File renamed without changes.
File renamed without changes.
@@ -1,6 +1,6 @@
|
|||||||
from enum import Enum
|
from enum import Enum
|
||||||
from colony.core.network.hardware import HardwareStatistics
|
from colony.core.network.hardware import HardwareStatistics
|
||||||
from colony.roles.role import Role, Command
|
from colony.core.roles.role import Role, Command
|
||||||
|
|
||||||
|
|
||||||
class Unit(Role):
|
class Unit(Role):
|
||||||
File renamed without changes.
@@ -1,7 +1,7 @@
|
|||||||
from enum import Enum
|
from enum import Enum
|
||||||
|
|
||||||
from colony.core.storage import DefaultStorage
|
from colony.core.storage import DefaultStorage
|
||||||
from colony.roles.role import Role, Command
|
from colony.core.roles.role import Role, Command
|
||||||
|
|
||||||
|
|
||||||
class VaultWarden(Role):
|
class VaultWarden(Role):
|
||||||
@@ -2,10 +2,10 @@ import threading
|
|||||||
|
|
||||||
from colony.core.network.core import Network
|
from colony.core.network.core import Network
|
||||||
from colony.core.dispatcher import Dispatcher
|
from colony.core.dispatcher import Dispatcher
|
||||||
|
from colony.core.roles.manager import RoleManager
|
||||||
from colony.core.state_manager import StateManager
|
from colony.core.state_manager import StateManager
|
||||||
from colony.core.storage import DefaultStorage
|
from colony.core.storage import DefaultStorage
|
||||||
from colony.role_registry import RoleRegistry
|
from colony.role_registry import RoleRegistry
|
||||||
from colony.roles.manager import RoleManager
|
|
||||||
from colony.transport.discover import Discover
|
from colony.transport.discover import Discover
|
||||||
from colony.transport.listener import Listener
|
from colony.transport.listener import Listener
|
||||||
from role_settings import available_roles
|
from role_settings import available_roles
|
||||||
|
|||||||
+4
-4
@@ -1,8 +1,8 @@
|
|||||||
|
from colony.core.roles.explorer.role import Explorer
|
||||||
|
from colony.core.roles.unit.role import Unit
|
||||||
from colony.role_registry import RoleStats, HardwarePreferences, RolePriority, HardwareType
|
from colony.role_registry import RoleStats, HardwarePreferences, RolePriority, HardwareType
|
||||||
from colony.roles.explorer.role import Explorer
|
from colony.core.roles.foreman.role import Foreman
|
||||||
from colony.roles.foreman.role import Foreman
|
from colony.core.roles.vaultwarden.role import VaultWarden
|
||||||
from colony.roles.unit.role import Unit
|
|
||||||
from colony.roles.vaultwarden.role import VaultWarden
|
|
||||||
|
|
||||||
available_roles = [
|
available_roles = [
|
||||||
RoleStats(
|
RoleStats(
|
||||||
|
|||||||
Reference in new issue
Block a user