@@ -37,33 +37,33 @@ class Puppet::Provider::Mysql < Puppet::Provider
37
37
'/usr/mysql/5.7/lib64' ,
38
38
] . join ( ':' )
39
39
40
+ def self . pick_correct_binary ( mysql_variant , mariadb_variant )
41
+ version = Facter . value ( :mysqld_version )
42
+ if version . scan ( %r{mariadb}i ) && Puppet ::Util ::Package . versioncmp ( version &.scan ( %r{\d +\. \d +\. \d +} ) &.first , '11.0.0' ) >= 0
43
+ return mariadb_variant
44
+ end
45
+ mysql_variant
46
+ end
47
+
48
+ def pick_correct_binary ( mysql_variant , mariadb_variant )
49
+ self . class . pick_correct_binary ( mysql_variant , mariadb_variant )
50
+ end
51
+
40
52
# rubocop:disable Style/HashSyntax
41
- commands :mysql_client => 'mysql'
42
- commands :mariadb_client => 'mariadb'
43
- commands :mysqld_service => 'mysqld'
44
- commands :mariadbd_service => 'mariadbd'
45
- commands :mysql_admin => 'mysqladmin'
46
- commands :mariadb_admin => 'mariadb-admin'
53
+ commands :mysql_client => pick_correct_binary ( 'mysql' , 'mariadb' )
54
+ commands :mysqld_service => pick_correct_binary ( 'mysqld' , 'mariadbd' )
55
+ commands :mysql_admin => pick_correct_binary ( 'mysqladmin' , 'mariadb-admin' )
47
56
# rubocop:enable Style/HashSyntax
48
57
49
58
def self . mysql_raw ( *args )
50
- if newer_than ( 'mariadb' => '11.0.0' ) && mysqld_version_string . scan ( %r{mariadb}i )
51
- return mariadb_client ( *args )
52
- end
53
59
mysql_client ( *args )
54
60
end
55
61
56
62
def self . mysqld ( *args )
57
- if newer_than ( 'mariadb' => '11.0.0' ) && mysqld_version_string . scan ( %r{mariadb}i )
58
- return mariadb_client ( *args )
59
- end
60
63
mysqld_service ( *args )
61
64
end
62
65
63
66
def self . mysqladmin ( *args )
64
- if newer_than ( 'mariadb' => '11.0.0' ) && mysqld_version_string . scan ( %r{mariadb}i )
65
- return mariadb_client ( *args )
66
- end
67
67
mysql_admin ( *args )
68
68
end
69
69
0 commit comments