From 4635b346e182aeda7608bbcb21295d65d006a591 Mon Sep 17 00:00:00 2001 From: Tube <7u83@mail.ru> Date: Mon, 23 Oct 2023 02:47:29 +0200 Subject: [PATCH] FreeBSD/Fedora fixes --- mysql.cf | 31 +++++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/mysql.cf b/mysql.cf index f3a90fe..1f752cc 100644 --- a/mysql.cf +++ b/mysql.cf @@ -25,9 +25,8 @@ vars: "cfg_dir" string => "/usr/local/etc/mysql"; "cfg_file" string => "/usr/local/etc/mysql/my.cnf"; "bin_dir" string => "/usr/local/bin"; - "install_db_cmd" string => "$(bin_dir)/mariadb-install-db --user=$(user) > /dev/null"; "default_datadir" string => "/var/db/mysql"; - + "mysqld_cmd" string => "/usr/local/libexec/mysqld"; debian:: "user" string => "mysql"; "server_pkgs" slist => {"mariadb-server"}; @@ -37,8 +36,8 @@ vars: "cfg_dir" string => "/etc/mysql"; "cfg_file" string => "/etc/mysql/my.cnf"; "bin_dir" string => "/usr/bin"; - "install_db_cmd" string => "$(bin_dir)/mariadb-install-db --user=$(user) > /dev/null "; "default_datadir" string => "/var/lib/mysql"; + "mysqld_cmd" string => "/usr/sbin/mysqld"; fedora:: "user" string => "mysql"; @@ -49,15 +48,13 @@ vars: "cfg_dir" string => "/etc/mysql"; "cfg_file" string => "/etc/my.cnf"; "bin_dir" string => "/usr/bin"; - "install_db_cmd" string => "$(bin_dir)/mariadb-install-db --user=$(user) > /dev/null"; "default_datadir" string => "/var/lib/mysql"; + "mysqld_cmd" string => "/usr/sbin/mysqld"; any:: "mysql_cmd" string => "$(bin_dir)/mysql"; "mysqldump_cmd" string => "$(bin_dir)/mysqldump"; - "datadir" string => ifelse(isvariable("cfg[settings][mysqld][datadir]"), - "$(cfg[settings][mysqld][datadir])", - "$(default_datadir)"); + files: freebsd:: @@ -99,12 +96,27 @@ reports: bundle agent install_mysql_server(cfg) { +classes: + "type_$(mysql.type)" ; + vars: "mysqld_idx" slist => getindices(@(cfg[settings][mysqld])); "settings[mysqld][$(mysqld_idx)]" string => "$(cfg[settings][mysqld][$(mysqld_idx)])"; + "datadir" string => ifelse(isvariable("cfg[settings][mysqld][datadir]"), + "$(cfg[settings][mysqld][datadir])", + "$(mysql.default_datadir)"); + + type_mariadb:: + "install_db_cmd" string => "if [ ! -d $(datadir)/mysql ]; then $(mysql.bin_dir)/mariadb-install-db --user=$(mysql.user)>/dev/null ; fi"; + type_mysql8:: + "install_db_cmd" string => "if [ ! -d $(datadir)/mysql ]; then $(mysql.mysqld_cmd) --initialize-insecure --user=$(mysql.user); fi"; + + + + "j" string => storejson(@(cfg)); methods: "any" usebundle => wmde_install_packages(@(mysql.server_pkgs),"mysql_server"); @@ -124,8 +136,11 @@ files: handle => "myslq_server_cfg_edited", classes => if_repaired("mysql_server_repaired"); + + + commands: - "$(mysql.install_db_cmd)" + "$(install_db_cmd)" handle=>"mysql_datadir_initialized", contain => wmde_cmd_useshell, inform => "false",