Skip to content

Commit 13148cb

Browse files
committed
addressed reviews
1 parent 6ca6360 commit 13148cb

File tree

19 files changed

+24
-40
lines changed

19 files changed

+24
-40
lines changed

nodescraper/cli/cli.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ def build_parser(
148148
"--gen-reference-config",
149149
dest="reference_config",
150150
action="store_true",
151-
help="Path to store generated reference config. Defaults to ./reference_config.json.",
151+
help="Generate reference config. File will be written to ./reference_config.json.",
152152
)
153153

154154
subparsers = parser.add_subparsers(dest="subcmd", help="Subcommands")

nodescraper/cli/helper.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -301,7 +301,7 @@ def generate_reference_config(
301301
for obj in results:
302302
data_model = obj.result_data.system_data
303303

304-
plugin = plugin_reg.plugins.get(obj.result_data.collection_result.parent)
304+
plugin = plugin_reg.plugins.get(obj.source)
305305
if not plugin.ANALYZER_ARGS:
306306
logger.warning(
307307
"Plugin: %s does not support reference config creation. No analyzer args defined.",
@@ -315,7 +315,6 @@ def generate_reference_config(
315315
except NotImplementedError as nperr:
316316
logger.info(nperr)
317317
continue
318-
args.build_from_model(data_model)
319318
plugins[obj.source] = {"analysis_args": {}}
320319
plugins[obj.source]["analysis_args"] = args.model_dump(exclude_none=True)
321320
plugin_config.plugins = plugins

nodescraper/interfaces/__init__.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@
2323
# SOFTWARE.
2424
#
2525
###############################################################################
26-
from .analyzerargs import AnalyzerArgs
2726
from .connectionmanager import ConnectionManager
2827
from .dataanalyzertask import DataAnalyzer
2928
from .datacollectortask import DataCollector
@@ -34,7 +33,6 @@
3433
from .taskresulthook import TaskResultHook
3534

3635
__all__ = [
37-
"AnalyzerArgs",
3836
"ConnectionManager",
3937
"Task",
4038
"DataPlugin",

nodescraper/interfaces/dataplugin.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,13 @@
3131
from nodescraper.interfaces.dataanalyzertask import DataAnalyzer
3232
from nodescraper.interfaces.datacollectortask import DataCollector
3333
from nodescraper.interfaces.plugin import PluginInterface
34-
from nodescraper.models import DataPluginResult, PluginResult, SystemInfo, TaskResult
34+
from nodescraper.models import (
35+
AnalyzerArgs,
36+
DataPluginResult,
37+
PluginResult,
38+
SystemInfo,
39+
TaskResult,
40+
)
3541

3642
from .connectionmanager import TConnectArg, TConnectionManager
3743
from .task import SystemCompatibilityError
@@ -51,6 +57,8 @@ class DataPlugin(
5157

5258
ANALYZER: Optional[Type[DataAnalyzer]] = None
5359

60+
ANALYZER_ARGS: Optional[Type[AnalyzerArgs]] = None
61+
5462
def __init__(
5563
self,
5664
system_info: SystemInfo,

nodescraper/models/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
# SOFTWARE.
2424
#
2525
###############################################################################
26+
from .analyzerargs import AnalyzerArgs
2627
from .datamodel import DataModel
2728
from .datapluginresult import DataPluginResult
2829
from .event import Event
@@ -33,6 +34,7 @@
3334
from .timerangeargs import TimeRangeAnalysisArgs
3435

3536
__all__ = [
37+
"AnalyzerArgs",
3638
"DataModel",
3739
"TaskResult",
3840
"Event",
Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -23,20 +23,16 @@
2323
# SOFTWARE.
2424
#
2525
###############################################################################
26-
from abc import ABC, abstractmethod
27-
from typing import Optional
26+
from abc import ABC
2827

29-
from pydantic import BaseModel, Field
30-
31-
from nodescraper.models.datamodel import DataModel
28+
from pydantic import BaseModel
3229

3330

3431
class AnalyzerArgs(BaseModel, ABC):
35-
data_model: Optional["DataModel"] = Field(default=None)
32+
# data_model: Optional["DataModel"] = Field(default=None)
3633
model_config = {"extra": "forbid", "exclude_none": True}
3734

3835
@classmethod
39-
@abstractmethod
4036
def build_from_model(cls, datamodel):
4137
raise NotImplementedError(
4238
"Setting analyzer args from datamodel is not implemented for class: %s", cls.__name__

nodescraper/plugins/inband/bios/analyzer_args.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
###############################################################################
2626
from pydantic import Field, field_validator
2727

28-
from nodescraper.interfaces import AnalyzerArgs
28+
from nodescraper.models import AnalyzerArgs
2929
from nodescraper.plugins.inband.os.osdata import OsDataModel
3030

3131

nodescraper/plugins/inband/cmdline/analyzer_args.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
###############################################################################
2626
from pydantic import Field, field_validator
2727

28-
from nodescraper.interfaces import AnalyzerArgs
28+
from nodescraper.models import AnalyzerArgs
2929
from nodescraper.plugins.inband.cmdline.cmdlinedata import CmdlineDataModel
3030

3131

nodescraper/plugins/inband/dimm/dimm_plugin.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,5 +35,3 @@ class DimmPlugin(InBandDataPlugin[DimmDataModel, None, None]):
3535
DATA_MODEL = DimmDataModel
3636

3737
COLLECTOR = DimmCollector
38-
39-
ANALYZER_ARGS = None

nodescraper/plugins/inband/dkms/analyzer_args.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727

2828
from pydantic import Field, field_validator
2929

30-
from nodescraper.interfaces import AnalyzerArgs
30+
from nodescraper.models import AnalyzerArgs
3131
from nodescraper.plugins.inband.dkms.dkmsdata import DkmsDataModel
3232

3333

0 commit comments

Comments
 (0)