- Inconsistency in AdminCentral In-place templates & resources behaviours:
- Resources in repository are used by default, While templates in classpath are used by default.
- In-place resources have "Bypass" checkbox, In-place templates have "Enable template" checkbox.
- Its hard to get resources into the repo. (Must reinstall). Adding new resources must be easy and obvious.
- Developers prefer to work on resources in the file-system - they are using IDE's.
- Storing templates in modules requires a java development environment.
Templates & Resources (and any other file assets) should be treated equivalently where possible.
In order to stay flexible and support different use cases - system should implement a "loading cascade": loading things in a specified way from a specified series of locations. (To a degree this is already the case.)
By default, Templates/Resources should be loaded in the following order. Items loaded later override the previous ones. The order goes from least flexible to most flexible.
- Modules (classpath).
- Directory on the filesystem.
- Repository that have "override" box checked.
- A master configuration item causes all items from repository to override.
(Alternatively, perhaps the mechanism only loads templates/resources that are not yet defined, instead of overwriting as defined above, in which case the default order would be reversed.)
- System should watch all files in configured directory and when changed
- reload them in the system
- add them to the repository, reload them to the repository
To consider -
- Maybe things should actually not be loaded to repository. This means you cannot do a clean uninstall.
- Should templates and resources really be loaded to separate locations in separate workspaces? What is the advantage of having these things scattered, instead of together?
- How to handle theme images?
- Would GIT be a fourth option for a loading cascade? Could be - but people could just use normal git to sync things on the filesystem. So maybe only the filesystem option is necessary.