Open ytti opened 7 years ago
Working on #6 now
with https://github.com/mitchellh/go-mruby we could rewrite oxidized in golang, but continue supporting ruby device models. Ship everything in single binary, but still support loading local ruby models.
I've been toying with the possible implementation of a go version of Oxidized and so far it seems to be a viable option. The models can be indeed left as ruby code and use the go-mruby to evaluate them.
Some benefits regarding the go-rewrite:
And the downsides:
I'm planning to release a PoC codebase in coming month(s) or so. So far I have the model evaluator and some basic Input modules done.
Deployment could be fixed by shipping as Docker container or providing classical pre-build packages (eg. https://github.com/jordansissel/fpm)?
Reminder for myself, what things we need to fix when/if refactoring the core.
directory/%g/%t/%n:%p
, replacement with group, type, node, port, model, command...