From f6398fbe0b5760e0b5f59e70924d4decfcb4dd6e Mon Sep 17 00:00:00 2001 From: Trey Dockendorf Date: Tue, 28 Dec 2021 15:33:45 +0000 Subject: [PATCH 1/3] Use MariaDB for Ubuntu 20.04 --- manifests/params.pp | 5 +++-- manifests/server/config.pp | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/manifests/params.pp b/manifests/params.pp index 126f2efdb..da65bc014 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -171,9 +171,10 @@ } 'Debian': { - if $::operatingsystem == 'Debian' { + if $::operatingsystem == 'Debian' or + ($::operatingsystem == 'Ubuntu' and versioncmp($::operatingsystemrelease, '20.04') >= 0) { $provider = 'mariadb' - } else { # Ubuntu + } else { $provider = 'mysql' } if $provider == 'mariadb' { diff --git a/manifests/server/config.pp b/manifests/server/config.pp index efb01f3b3..2a0f21c46 100644 --- a/manifests/server/config.pp +++ b/manifests/server/config.pp @@ -34,7 +34,7 @@ } #Debian: Creating world readable directories before installing. - case $::operatingsystem { + case $::osfamily { 'Debian': { if $managed_dirs { $managed_dirs.each | $entry | { From a1d20a71ef9bcb0e5aeab87ea8a9d5d7da48457e Mon Sep 17 00:00:00 2001 From: Trey Dockendorf Date: Tue, 26 Apr 2022 15:41:26 -0400 Subject: [PATCH 2/3] Use facts hash --- manifests/params.pp | 4 ++-- manifests/server/config.pp | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/manifests/params.pp b/manifests/params.pp index da65bc014..b7a11a31c 100644 --- a/manifests/params.pp +++ b/manifests/params.pp @@ -171,8 +171,8 @@ } 'Debian': { - if $::operatingsystem == 'Debian' or - ($::operatingsystem == 'Ubuntu' and versioncmp($::operatingsystemrelease, '20.04') >= 0) { + if $facts['os']['name'] == 'Debian' or + ($facts['os']['name'] == 'Ubuntu' and versioncmp($facts['os']['release']['major'], '20.04') >= 0) { $provider = 'mariadb' } else { $provider = 'mysql' diff --git a/manifests/server/config.pp b/manifests/server/config.pp index 2a0f21c46..0b8bb947c 100644 --- a/manifests/server/config.pp +++ b/manifests/server/config.pp @@ -34,7 +34,7 @@ } #Debian: Creating world readable directories before installing. - case $::osfamily { + case $facts['os']['family'] { 'Debian': { if $managed_dirs { $managed_dirs.each | $entry | { From 4f15b1b53346101480625a016767433084777b04 Mon Sep 17 00:00:00 2001 From: Trey Dockendorf Date: Thu, 26 May 2022 15:54:23 -0400 Subject: [PATCH 3/3] Ubuntu 20.04 using mariadb defaults to utf8 --- spec/acceptance/00_mysql_server_spec.rb | 3 +-- spec/acceptance/01_mysql_db_spec.rb | 3 --- spec/acceptance/04_mysql_backup_spec.rb | 4 ---- spec/acceptance/types/mysql_database_spec.rb | 5 ++--- spec/acceptance/types/mysql_grant_spec.rb | 4 +--- spec/spec_helper_acceptance_local.rb | 8 -------- 6 files changed, 4 insertions(+), 23 deletions(-) diff --git a/spec/acceptance/00_mysql_server_spec.rb b/spec/acceptance/00_mysql_server_spec.rb index 28fba6b8c..c9aa691ef 100644 --- a/spec/acceptance/00_mysql_server_spec.rb +++ b/spec/acceptance/00_mysql_server_spec.rb @@ -38,8 +38,7 @@ class { 'mysql::server': }, databases => { 'somedb' => { - ensure => 'present', - charset => #{fetch_charset}, + ensure => 'present', }, } } diff --git a/spec/acceptance/01_mysql_db_spec.rb b/spec/acceptance/01_mysql_db_spec.rb index 04586fe2a..15930a62f 100644 --- a/spec/acceptance/01_mysql_db_spec.rb +++ b/spec/acceptance/01_mysql_db_spec.rb @@ -14,7 +14,6 @@ class { 'mysql::server': mysql::db { 'spec1': user => 'root1', password => 'password', - charset => #{fetch_charset}, } MANIFEST end @@ -43,7 +42,6 @@ class { 'mysql::server': override_options => { 'root_password' => 'password' } } user => 'root1', password => 'password', sql => '/tmp/spec.sql', - charset => #{fetch_charset}, } MANIFEST end @@ -68,7 +66,6 @@ class { 'mysql::server': override_options => { 'root_password' => 'password' } } user => 'root1', password => 'password', dbname => 'realdb', - charset => #{fetch_charset}, } MANIFEST end diff --git a/spec/acceptance/04_mysql_backup_spec.rb b/spec/acceptance/04_mysql_backup_spec.rb index fce9c2438..0e174cb95 100644 --- a/spec/acceptance/04_mysql_backup_spec.rb +++ b/spec/acceptance/04_mysql_backup_spec.rb @@ -12,7 +12,6 @@ class { 'mysql::server': root_password => 'password' } ]: user => 'backup', password => 'secret', - charset => #{fetch_charset}, } class { 'mysql::server::backup': @@ -73,7 +72,6 @@ class { 'mysql::server': root_password => 'password' } ]: user => 'backup', password => 'secret', - charset => #{fetch_charset}, } class { 'mysql::server::backup': @@ -138,7 +136,6 @@ class { 'mysql::server': root_password => 'password' } ]: user => 'backup', password => 'secret', - charset => #{fetch_charset}, } case $facts['os']['family'] { /Debian/: { @@ -259,7 +256,6 @@ class { 'mysql::server': root_password => 'password' } ]: user => 'backup', password => 'secret', - charset => #{fetch_charset}, } case $facts['os']['family'] { /Debian/: { diff --git a/spec/acceptance/types/mysql_database_spec.rb b/spec/acceptance/types/mysql_database_spec.rb index 247eb57df..ac980fc3c 100644 --- a/spec/acceptance/types/mysql_database_spec.rb +++ b/spec/acceptance/types/mysql_database_spec.rb @@ -15,8 +15,7 @@ class { 'mysql::server': } describe 'creating database' do pp = <<-MANIFEST mysql_database { 'spec_db': - ensure => present, - charset => #{fetch_charset}, + ensure => present, } MANIFEST it 'works without errors' do @@ -38,7 +37,7 @@ class { 'mysql::server': } collate => 'latin1_swedish_ci', } mysql_database { 'spec_utf8': - charset => #{fetch_charset}, + charset => 'utf8', collate => 'utf8_general_ci', } MANIFEST diff --git a/spec/acceptance/types/mysql_grant_spec.rb b/spec/acceptance/types/mysql_grant_spec.rb index 3f362d416..4608670a3 100644 --- a/spec/acceptance/types/mysql_grant_spec.rb +++ b/spec/acceptance/types/mysql_grant_spec.rb @@ -273,8 +273,7 @@ class { 'mysql::server': $dbSubnet = '10.10.10.%' mysql_database { 'foo': - ensure => present, - charset => '#{fetch_charset}', + ensure => present, } exec { 'mysql-create-table': @@ -686,7 +685,6 @@ class { 'mysql::server': override_options => { 'root_password' => 'password' } } user => 'root1', password => 'password', sql => '/tmp/grant_spec_table.sql', - charset => #{fetch_charset}, } MANIFEST it 'creates table' do diff --git a/spec/spec_helper_acceptance_local.rb b/spec/spec_helper_acceptance_local.rb index 97381b13b..189350be4 100644 --- a/spec/spec_helper_acceptance_local.rb +++ b/spec/spec_helper_acceptance_local.rb @@ -32,14 +32,6 @@ def export_locales LitmusHelper.instance.run_shell('. ~/.bashrc') end -def fetch_charset - @charset ||= if os[:family] == 'ubuntu' && os[:release] =~ %r{^20\.04} - 'utf8mb3' - else - 'utf8' - end -end - RSpec.configure do |c| c.before :suite do if os[:family] == 'debian' || os[:family] == 'ubuntu'