Op 05-10-2021 om 15:03 schreef dovecot@ptld.com:
It looks like dovecot is trying to save the compiled active script to the same directory as the source file, instead of to bindir. Am I missing something?
sieve = file:/usr/local/etc/mail/%{domain}/%{username}/sieve; active=/usr/local/etc/mail/%{domain}/%{username}/sieve/.active.sieve; bindir=/var/cache/mail/%{domain}/%{username}/sieve
Active= tells where to save the complied active script. In the above config it is being told to save to
/usr/local/etc/mail/%{domain}/%{username}/sieve/.active.sieve;
I thought active was where to read the active source script from? I'm not using managesieve, so I wouldn't expect dovecot to try writing to that file. I don't see anything in https://doc.dovecot.org/configuration_manual/sieve/configuration/ about active pointing at a compiled file, just stuff about it pointing at a source file.
Which is the same directory as the scripts set with file:
/usr/local/etc/mail/%{domain}/%{username}/sieve
If you want the compiled to save in same path as bindir then change active to match
active=/var/cache/mail/%{domain}/%{username}/sieve/.active.sieve;
Yup, I did that and it worked, but it doesn't seem to match the documentation. It's also slightly (but only slightly) annoying to have to write to the cache dir from my configuration management system, instead of writing to the source dir.