forked from p15670423/monkey
Common: Add PluginConfiguration
This commit is contained in:
parent
660c1421c0
commit
c79f62e682
|
@ -0,0 +1 @@
|
||||||
|
from .agent_configuration import PluginConfiguration, PluginConfigurationSchema
|
|
@ -0,0 +1,21 @@
|
||||||
|
from dataclasses import dataclass
|
||||||
|
|
||||||
|
from marshmallow import RAISE, Schema, fields, post_load
|
||||||
|
|
||||||
|
|
||||||
|
@dataclass(frozen=True)
|
||||||
|
class PluginConfiguration:
|
||||||
|
name: str
|
||||||
|
options: dict
|
||||||
|
|
||||||
|
|
||||||
|
class PluginConfigurationSchema(Schema):
|
||||||
|
class Meta:
|
||||||
|
unknown = RAISE
|
||||||
|
|
||||||
|
name = fields.Str()
|
||||||
|
options = fields.Mapping()
|
||||||
|
|
||||||
|
@post_load
|
||||||
|
def make_plugin_configuration(self, data, **kwargs):
|
||||||
|
return PluginConfiguration(**data)
|
|
@ -0,0 +1,12 @@
|
||||||
|
from common.configuration import PluginConfigurationSchema
|
||||||
|
|
||||||
|
|
||||||
|
def test_build_plugin_configuration():
|
||||||
|
name = "bond"
|
||||||
|
options = {"gun": "Walther PPK", "car": "Aston Martin DB5"}
|
||||||
|
pcs = PluginConfigurationSchema()
|
||||||
|
|
||||||
|
pc = pcs.load({"name": name, "options": options})
|
||||||
|
|
||||||
|
assert pc.name == name
|
||||||
|
assert pc.options == options
|
|
@ -183,6 +183,12 @@ architecture # unused variable (monkey/infection_monkey/exploit/caching_agent_r
|
||||||
|
|
||||||
response_code # unused variable (monkey/monkey_island/cc/services/aws/aws_command_runner.py:26)
|
response_code # unused variable (monkey/monkey_island/cc/services/aws/aws_command_runner.py:26)
|
||||||
|
|
||||||
|
# Agent Configuration
|
||||||
|
Meta # unused class(monkey/common/configuration/agent_configuration.py:13)
|
||||||
|
unknown # unused variable(monkey/common/configuration/agent_configuration.py:14)
|
||||||
|
make_plugin_configuration # unused method(monkey/common/configuration/agent_configuration.py:19)
|
||||||
|
|
||||||
|
|
||||||
# TODO DELETE AFTER RESOURCE REFACTORING
|
# TODO DELETE AFTER RESOURCE REFACTORING
|
||||||
NetworkMap
|
NetworkMap
|
||||||
Arc.dst_machine
|
Arc.dst_machine
|
||||||
|
|
Loading…
Reference in New Issue