-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
Currently the operators have hard-coded parameters defined as constants in the operator.py or /app/processor.py files.
They can accept some parameters from framesense command line with the -p argument (e.g. TODO).
Here's a better system:
- each operator declares all their params and default values in /operators/OPERATOR/params.json
- user can override those defaults in collections.json under meta.params.OPERATOR.P
- user can also override all of the above with environment variable OPERATOR_P
- based on the above, Operator._before_apply() will compute final values for any operator
- it will also save those values under /operators/OPERATOR/app/params.json as a way to communicate them to the container
- we can then retire the -p argument of framesense
- we can also declare pre-existing params and constants in all existing operators using this new system
- some keys can have _MULTILINES suffix to express a multiline string (which is not allowed in json) as an array of strings.
This system is superior because it is more standard across operators, it is more transparent for the users and developers and it help Operator provide functional abstractions for simpler and more consistent manipulations of params.
Metadata
Metadata
Assignees
Labels
No labels