From 229e4c6729a57b0a73d0822d6a678b5343946523 Mon Sep 17 00:00:00 2001 From: drebs <drebs@riseup.net> Date: Mon, 20 Nov 2023 14:56:55 -0300 Subject: [PATCH] Default WordPress databases do utf8mb3 charset and collation --- profile/manifests/mysql/db.pp | 4 ++++ profile/manifests/wordpress/instance.pp | 10 +++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/profile/manifests/mysql/db.pp b/profile/manifests/mysql/db.pp index a5e3c8b6..110be54f 100644 --- a/profile/manifests/mysql/db.pp +++ b/profile/manifests/mysql/db.pp @@ -4,6 +4,8 @@ define profile::mysql::db ( String $pass = 'password', String $host = $::fqdn, Array[String] $grant = ['ALL'], + String $charset = 'utf8', + String $collate = 'utf8_general_ci', ) { mysql::db { "${title}_${host}": @@ -12,6 +14,8 @@ define profile::mysql::db ( dbname => $title, host => $host, grant => $grant, + charset => $charset, + collate => $collate, } } diff --git a/profile/manifests/wordpress/instance.pp b/profile/manifests/wordpress/instance.pp index 1d74d7d2..c3ba59f6 100644 --- a/profile/manifests/wordpress/instance.pp +++ b/profile/manifests/wordpress/instance.pp @@ -3,15 +3,19 @@ define profile::wordpress::instance ( String $db_pass, String $domain = $name, String $db_name = join(['wp_', regsubst($domain, /[^a-z0-9_]/, '_', 'G')]), + String $charset = 'utf8mb3', + String $collate = 'utf8mb3_general_ci', ) { if $domain !~ /[a-z0-9_.]+/ { fail("Invalid domain: ${domain}") } profile::mysql::db { $db_name: - user => $db_name, - host => 'localhost', - pass => $db_pass, + user => $db_name, + host => 'localhost', + pass => $db_pass, + charset => $charset, + collate => $collate, } $php_socket = "/var/run/php-fpm/${db_name}" -- GitLab