muesli / beehive

A flexible event/agent & automation system with lots of bees 🐝
GNU Affero General Public License v3.0
6.28k stars 319 forks source link

Proposal: abstract interface for loading/saving configuration #291

Closed rubiojr closed 4 years ago

rubiojr commented 4 years ago

The intention is to abstract the configuration interface in cfg so we can implement multiple configuration backends, including an encrypted backend that would address https://github.com/muesli/beehive/issues/226. As a secondary objective, I'd like to experiment with loading beehive's config from a networked endpoint, like an S3 bucket, so this abstraction should make that implementation cleaner.

This would build on top of https://github.com/muesli/beehive/pull/286 which exposes a smaller and cleaner public interface, with Lookup, Save and Load as the only public functions to be abstracted.