Open Jako opened 3 years ago
It could be implemented with some parts of #13472. The list in distribution.tpl could be filled with some YAML files in an upload field for an own YAML file.{core_path}/config/workspace
and
All of this configuration and everything else associated with such a feature needs to be implemented in an external service that can be modified as needed. Such lists of extras should not be part of the core distribution.
Even when the configuration files itself are not part of the core, the import of such configurations should be part of it. I suggest to use the {core_path}/config/workspace
folder for the place of such configuration files, that are used to preset the core installation (system settings, extras, menus etc.). And the same thing with the namespace of an installable extra {core_path}/config/<namespace>
. If i.e. a setup.yaml
is available in those folders, the workspace and the extra setup could use the files.
That way an automatic predefined installation of MODX with own settings is possible by injecting one/many configuration file(s). And the setup should also contain a file upload for the workspace configuration file.
And of course, we need an export button for those files.
Feature request
Summary
It would be nice to implement a method, that would automatically install new extras, predefine settings of extras etc.
Why is it needed?
To improve the MODX setup.
Suggested solution(s)
The folder
core/config
would be used to contain folders by namespace. Those folders contain the settings, that are installed automatically on MODX setup or during installing an extra. I suggest to use YAML based files, since they are human readable. But other filetypes should be possible too.The
core/config/workspace
folder would contain a YAML that contains all extras, that have to be installed in a setup.json file with the extra namespace + version constraints.In every namespace folder there are several default files possible (
setup.yaml
,update.yaml
,replace.yaml
,append.yaml
) that would modify settings, install data etc. Installing/changing the extra settings and data would be part of an extra resolver.We can prepare some default demo workspace configurations, that can be selected during the setup i.e. aworkspace/blog.setup.yaml
.Related issue(s)/PR(s)
14364, #13472