Brian Schonecker
03/12/2026, 7:01 PM[mariadb]
plugin-load-add=auth_ed25519
plugin-load-add=disks
plugin-load-add=server_audit
plugin-load-add=simple_password_check
plugin_maturity = stable
server_audit=FORCE_PLUS_PERMANENT
server_audit_logging=OFF
simple_password_check_digits = 1
simple_password_check_letters_same_case = 1
simple_password_check_minimal_length = 8
simple_password_check_other_characters = 1
but I haven't found a way to have multiple "plugin-load-add" sections as Puppet and Hiera complain about duplicate definitions. I tried to trick hiera by specifying a (what I thought would have been) invalid variable name:
mariadb:
plugin-maturity: stable
plugin-load-add=auth_ed25519: 'auth_ed25519.so'
plugin-load-add=disks: 'disks.so'
plugin-load-add=server_audit: 'server_audit2.so'
plugin-load-add=simple_password_check: 'simple_password_check.so'
Note that the variable name contains and equals sign. This almost works but the Puppet module puts spaces around the equals sign in the resulting server.cnf file:
[mariadb]
plugin-load-add=auth_ed25519 = auth_ed25519.so
plugin-load-add=disks = disks.so
plugin-load-add=server_audit = server_audit2.so
plugin-load-add=simple_password_check = simple_password_check.so
Mysql/Mariadb don't like those spaces around the second equals sign so those parameters are ignored.
In addition, I've not found a way to configure the plugins without just blindly adding lines to the hash:
simple_password_check_digits = 1
simple_password_check_letters_same_case = 1
simple_password_check_minimal_length = 8
simple_password_check_other_characters = 1
Of course, if I remove the plugin from Puppet, I also have to remember to remove the configuration of the plugin, too. Is there an easier way to load and configure the plugins that I'm missing? Thank you.