Skip to content

fix(settings): have an injector-relevant version of ConfigLoaderCollector #347

Description

@guzmud

Description

When dumping the configuration of injectors in order to produce the manifest for the OAEV platform, a period parameter is added to the configuration although never explicitly mentioned in the injectors.

This seems to be due to the injectors using ConfigLoaderCollector, in a manner similar to the collectors. This class is useful since it provides basic elements like id, author, log_level, etc., but it also enforces period.

period makes sense for collectors (that are basically a daemon looking for orders at a regular time) but not for injectors (that are more one-shot interactions).

Expected output

Have a common config loader-like object that provides elements required for both collectors and injectors, and have a separate one (probably a children class inheriting from the common one) for specific elements (such as a collector-specific one adding only the period to the elements in common).

Example:

  • ConfigLoaderCommon(BaseConfigModel): id, name, log_level, icon_filepath, author
  • ConfigLoaderCollector(ConfigLoaderCommon): period, platform_description, platform_tags
  • ConfigLoaderInjector(ConfigLoaderCommon): ...

Actual output

Single class that enforces both common and collector-specific parameters for both collectors and injectors:

  • ConfigLoaderCollector(BaseConfigModel): id, name, log_level, icon_filepath, author, period, platform_description, platform_tags

Additional information

cf. OpenAEV-Platform/openaev#7103 (comment) : ending up with an unwanted phantom INJECTOR_PERIOD variable

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugType: something isn't working (fix:).needs triageNeeds triage from the Filigran product team.

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions