diff modules/mysql/manifests/db.pp @ 389:668df4711671

Update MySQL modules
author IBBoard <dev@ibboard.co.uk>
date Mon, 03 Jan 2022 17:16:21 +0000
parents 48d3a1948e4d
children c6c9a2cfcfbd
line wrap: on
line diff
--- a/modules/mysql/manifests/db.pp	Mon Jan 03 17:15:14 2022 +0000
+++ b/modules/mysql/manifests/db.pp	Mon Jan 03 17:16:21 2022 +0000
@@ -40,7 +40,7 @@
 #
 define mysql::db (
   $user,
-  $password,
+  Variant[String, Sensitive[String]] $password,
   $tls_options                                = undef,
   $dbname                                     = $name,
   $charset                                    = 'utf8',
@@ -53,21 +53,26 @@
   Enum['absent', 'present'] $ensure           = 'present',
   $import_timeout                             = 300,
   $import_cat_cmd                             = 'cat',
-  $mysql_exec_path                            = $mysql::params::exec_path,
+  $mysql_exec_path                            = undef,
 ) {
-
   $table = "${dbname}.*"
 
   $sql_inputs = join([$sql], ' ')
 
-  include '::mysql::client'
+  include 'mysql::client'
+
+  if ($mysql_exec_path) {
+    $_mysql_exec_path = $mysql_exec_path
+  } else {
+    $_mysql_exec_path = $mysql::params::exec_path
+  }
 
   $db_resource = {
     ensure   => $ensure,
     charset  => $charset,
     collate  => $collate,
     provider => 'mysql',
-    require  => [ Class['mysql::client'] ],
+    require  => [Class['mysql::client']],
   }
   ensure_resource('mysql_database', $dbname, $db_resource)
 
@@ -94,12 +99,12 @@
     $refresh = ! $enforce_sql
 
     if $sql {
-      exec{ "${dbname}-import":
+      exec { "${dbname}-import":
         command     => "${import_cat_cmd} ${sql_inputs} | mysql ${dbname}",
         logoutput   => true,
         environment => "HOME=${::root_home}",
         refreshonly => $refresh,
-        path        => "/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:${mysql_exec_path}",
+        path        => "/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:${_mysql_exec_path}",
         require     => Mysql_grant["${user}@${host}/${table}"],
         subscribe   => Mysql_database[$dbname],
         timeout     => $import_timeout,