Note, this concept is about the implementation of creating configuration via a file, whereas the format of the files is concepted here:Config By X -File format discussions
Purpose
Goals
Developers like working with files and have a lot of familiarity with tools and workflows there. It would be a benefit if configuration could be worked on the same as resources, templates and code.
In the ConfigByX document we explore the benefits of a "Volatile Configuration" over bootstraps that persist configuration to the repo. ConfigByFile is how non-java developers can take advantage of this. It also has the benefit of a clean hierarchical format.
Analysis
Why might some developers prefer to work on resources and templates as files (in an IDE or text editor) rather then in adminCentral?
AdminCentral | In files | |
---|---|---|
Easy to find Everything in context Anyone can access and change running instance | Multiple files at a time |
Requirements
- Have a clean, human readable syntax (Not JCR “system view”) Maybe xml like "JCR document view", json, ...
- The format has to come with a schema so we can e.g. offer autosuggest in editors
- Configuration changes are considered without restart of the system
Implementation
- Note: We'll have to implement BeanBuilders for the chosen format
- Node2Bean might be reused to some extend
- ...