Storing full text in the pillar means that the values being saved in the file can't be determined without some trickery at highstate time.
As far as I can see, all the dovecot config files are basically the same structure as a section of the pillar, so a single template should suffice to convert YAML lists into those files. That way anything happening during the pillar merge (environments, etc.) would be reflected in the final files.
Storing full text in the pillar means that the values being saved in the file can't be determined without some trickery at highstate time.
As far as I can see, all the dovecot config files are basically the same structure as a section of the pillar, so a single template should suffice to convert YAML lists into those files. That way anything happening during the pillar merge (environments, etc.) would be reflected in the final files.