Browse Source

[Conf] Add more ways to extend Rspamd configuration

+ Add examples of all that we can do
pull/5214/head
Vsevolod Stakhov 1 year ago
parent
commit
2fa3f26eff
No known key found for this signature in database GPG Key ID: 7647B6790081437
  1. 20
      conf/local.d/module.conf.example
  2. 3
      conf/modules.conf
  3. 21
      conf/modules.local.d/module.conf.example
  4. 18
      conf/override.d/module.conf.example

20
conf/local.d/module.conf.example

@ -0,0 +1,20 @@
# Define local parameters that you need to merge with the main configuration from
# either modules.d (for the modules shipped with Rspamd) or modules.local.d (for
# the modules that you have written).
#
# !!! Ensure NOT to enclose your configuration in the outer block with the module
# DON'T DO THIS:
# module_name { <--- Don't do this
# param = "other_value";
# }
# Just define your parameters here:
param = "other_value";
# Merge with the default complex param
complex_param {
key = "new_value";
}

3
conf/modules.conf

@ -14,4 +14,5 @@
#
# See https://rspamd.com/doc/tutorials/writing_rules.html for details
.include(glob=true) "${CONFDIR}/modules.d/*.conf"
.include(glob=true) "${CONFDIR}/modules.d/*.conf"
.include(glob=true) "${CONFDIR}/modules.local.d/*.conf"

21
conf/modules.local.d/module.conf.example

@ -0,0 +1,21 @@
# This directory is scanned for *.conf files to define configuration for the
# modules that are not shipped by Rspamd by default.
# So you can add your own configuration for the modules you have written.
# Please bear in mind, that each file *MUST* have the outer block with
# the actual module name, e.g.:
module_name {
param = "value";
complex_param = {
key = "value";
other_key = "other value";
flag = false;
};
limit = 10;
duration = 10d;
# If you want to redefine something alternatively
.include(try=true,priority=5) "${DBDIR}/dynamic/module_name.conf"
.include(try=true,priority=1,duplicate=merge) "$LOCAL_CONFDIR/local.d/module_name.conf"
.include(try=true,priority=10) "$LOCAL_CONFDIR/override.d/module_name.conf"
}

18
conf/override.d/module.conf.example

@ -0,0 +1,18 @@
# Define local parameters that you need to override the main configuration from
# either modules.d (for the modules shipped with Rspamd) or modules.local.d (for
# the modules that you have written).
#
# !!! Ensure NOT to enclose your configuration in the outer block with the module
# DON'T DO THIS:
# module_name { <--- Don't do this
# complex_param = null;
# }
# Just define your parameters here:
# Redefine the whole complex param instead of merging like in `local.d`
# All other keys in `complex_param` will be removed
complex_param {
key = "new_value";
}
Loading…
Cancel
Save