From c4b099ead1eea11ab6008691336e2fb4a22565c2 Mon Sep 17 00:00:00 2001 From: Marco Bettini Date: Wed, 22 Nov 2023 10:42:23 +0100 Subject: [PATCH] quota-clone: Update settings --- source/admin_manual/obox/user_delete.rst | 2 +- .../quota_clone_plugin.rst | 27 ++++++++------ source/settings/plugin/quota-clone-plugin.rst | 35 +++++++++++-------- 3 files changed, 38 insertions(+), 26 deletions(-) diff --git a/source/admin_manual/obox/user_delete.rst b/source/admin_manual/obox/user_delete.rst index 10c1188c85..bb52232ebb 100644 --- a/source/admin_manual/obox/user_delete.rst +++ b/source/admin_manual/obox/user_delete.rst @@ -43,7 +43,7 @@ After end user has ended contract with the service provider providing mailbox se which wasn't cleaned. These metacaches should become cleaned when disk space pressure pushes them out. * Any other dict data that is not deleted automatically while folders or - mails are deleted (e.g. :dovecot_plugin:ref:`quota_clone_dict`, + mails are deleted (e.g. :dovecot_plugin:ref:`quota_clone`, :dovecot_plugin:ref:`last_login_dict`) #. After the user's data is deleted the user can be removed from userdb. diff --git a/source/configuration_manual/quota_clone_plugin.rst b/source/configuration_manual/quota_clone_plugin.rst index 59feadf074..1e40d97726 100644 --- a/source/configuration_manual/quota_clone_plugin.rst +++ b/source/configuration_manual/quota_clone_plugin.rst @@ -43,20 +43,27 @@ Example .. code-block:: none - mail_plugins = $mail_plugins quota quota_clone - plugin { - quota_clone_dict = redis:host=127.0.0.1:port=6379 - } + mail_plugins { + quota = yes + quota_clone = yes + } + quota_clone { + dict_driver = redis + dict_redis_host = 127.0.0.1 + dict_redis_port = 6379 + dict_redis_password = testpass + } More complex example using SQL: .. code-block:: none - dict { - mysql = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext - } + dict { + mysql = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext + } - plugin { - quota_clone_dict = proxy::mysql - } + quota_clone { + dict_driver = proxy + dict_proxy_name = mysql + } diff --git a/source/settings/plugin/quota-clone-plugin.rst b/source/settings/plugin/quota-clone-plugin.rst index 3d6fdf6889..df1c9e77e2 100644 --- a/source/settings/plugin/quota-clone-plugin.rst +++ b/source/settings/plugin/quota-clone-plugin.rst @@ -11,28 +11,33 @@ quota-clone plugin Settings ======== -.. dovecot_plugin:setting:: quota_clone_dict +.. dovecot_plugin:setting_filter:: quota_clone + :filter: quota_clone :plugin: quota-clone - :values: @string + :setting: dict_driver + :values: @named_filter + :added: 2.4.0,3.0.0 - The dictionary to update with quota clone information. This must be set for - the plugin to be active. + Named filter for initializing dictionary used to update with quota clone + information. See :ref:`dict` for dictionary configuration. - Example: + Options: - .. code-block:: none + ``unset`` - plugin { - quota_clone_dict = redis:host=127.0.0.1:port=6379 - } + Unset quota information before updating. This is needed with some dict + backends that do not support upserting, such as SQL with older SQLite. + Example: -.. dovecot_plugin:setting:: quota_clone_unset - :plugin: quota-clone - :values: @boolean - :added: 2.4.0,3.0.0 + .. code-block:: none - Unset quota information before updating. This is needed with some dict backends - that do not support upserting, such as SQL with older SQLite. + quota_clone { + dict_driver = redis + dict_redis_host = 127.0.0.1 + dict_redis_port = 6379 + dict_redis_password = testpass + unset = yes + }