support for plugin config dir in automated deployment
Since recently DMX has the notion of a plugin config directory. These are out of sourcetree resources that the plugin can access (mostly reading). As this complements a deployment configuration (depending on the existance of files in the plugin config dir a plugin works differently) it is necessary to have control over this feature in automated deployments.
As someone who wants to prepare an automated deployment a source directory needs to be specified in which the complete set of files and subdirectories can be placed that comprise the plugin config dir in the installation.
Example:
-
Consider there is a directory
dmx/dev/conf.d/plugin-config
with the files:- somerandomfile.txt
- dmx-sign-up-ui/SignupMessages_fi.properties
-
and a volume entry in docker-compose.yaml like this
- ./dmx/dev/conf.d/plugin-config:/opt/dmx/conf.d/plugin-config:ro
-
then during bootstrap the files from
dmx/dev/conf.d/plugin-config
will be copied into the conf folder inside the DMX installation folder, so/opt/dmx/conf
will look like this:- config.properties
- logging.properties
- somerandomfile.txt
- dmx-sign-up-ui/SignupMessages_fi.properties
Not important for now but worth knowing: The actual location of that directory depends on a property called "felix.system.properties". This means that if the configuration contains this value and it is set to something completely different then the simple approach explained above will not work. Instead the mechanism would need to find out the correct destination directory. The property usually has a URL as its value but points at a file, e.g file://somewhere/over/the/rainbow/config.properties. The config directory is the dirname
of the file.