plus3it / watchmaker

:watch: Applied Configuration Management
https://watchmaker.cloudarmor.io/
Apache License 2.0
39 stars 30 forks source link

Use plugins to load workers and expose cli options #1044

Open lorengordon opened 4 years ago

lorengordon commented 4 years ago

Right now, any cli argument is managed directly in the cli.py module. It passes all unknown arguments directly through to all workers. This was good for rapid iteration on worker functionality, but means that exposing arguments for a given worker requires modifying the cli.py module directly (as well as the worker itself).

Instead, consider an approach that is more modular, where the cli config for a worker is managed entirely in the worker. Where workers are "registered" as plugins with watchmaker, and that registration informs watchmaker how to expose the cli options for that worker. Look to pytest and pytest plugins for an example.

ferricoxide commented 1 year ago

This issue is pretty old: can it be closed?