--- rpms/smeserver-mysql57/contribs10/smeserver-mysql57-2.0.0-bz11877-systemd.patch 2022/02/23 22:19:15 1.3 +++ rpms/smeserver-mysql57/contribs10/smeserver-mysql57-2.0.0-bz11877-systemd.patch 2022/02/24 03:11:58 1.4 @@ -1,6 +1,6 @@ diff -Nur --no-dereference smeserver-mysql57-2.0.0.old/createlinks smeserver-mysql57-2.0.0/createlinks --- smeserver-mysql57-2.0.0.old/createlinks 2022-02-23 14:04:50.137000000 -0500 -+++ smeserver-mysql57-2.0.0/createlinks 2022-02-23 17:16:10.633000000 -0500 ++++ smeserver-mysql57-2.0.0/createlinks 2022-02-23 21:24:41.808000000 -0500 @@ -31,13 +31,16 @@ $event = "bootstrap-console-save"; @@ -10,7 +10,7 @@ diff -Nur --no-dereference smeserver-mys - /var/service/mysql57-mysqld/set.password + /etc/opt/rh/rh-mysql57/my.cnf + /etc/opt/rh/rh-mysql57/sysconfig/mysqld -+ /var/opt/rh/rh-mysql57/lib/mysql/set.password ++ /var/opt/rh/rh-mysql57/lib/misc/set.password + /etc/e-smith/sql/init57/10fix_privilege_tables )) -# /root/.my.cnf @@ -65,6 +65,30 @@ diff -Nur --no-dereference smeserver-mys then for db in $(ls /home/e-smith/db/mysql57/*.dump 2> /dev/null | grep -v '/mysql.dump') do +diff -Nur --no-dereference smeserver-mysql57-2.0.0.old/root/etc/e-smith/templates/etc/e-smith/sql/init57/00_restore_dumped_dbs smeserver-mysql57-2.0.0/root/etc/e-smith/templates/etc/e-smith/sql/init57/00_restore_dumped_dbs +--- smeserver-mysql57-2.0.0.old/root/etc/e-smith/templates/etc/e-smith/sql/init57/00_restore_dumped_dbs 2022-02-23 14:04:50.158000000 -0500 ++++ smeserver-mysql57-2.0.0/root/etc/e-smith/templates/etc/e-smith/sql/init57/00_restore_dumped_dbs 2022-02-23 22:08:51.937000000 -0500 +@@ -4,7 +4,7 @@ + cat /service/mysql57-mysqld/set.password ) | /opt/rh/rh-mysql57/root/usr/bin/mysql --socket=/var/lib/mysql/mysql57.sock || exit 1 + P=$(cat /var/run/rh-mysql57-mysqld/mysqld.pid) + /bin/rm /var/run/rh-mysql57-mysqld/mysqld.pid +-kill -TERM $P ++/usr/bin/systemctl restart mysql57-mysqld.service + for i in $(seq 1 20); + do + if [ -f /var/run/rh-mysql57-mysqld/mysqld.pid ] +diff -Nur --no-dereference smeserver-mysql57-2.0.0.old/root/etc/e-smith/templates/etc/e-smith/sql/init57/10fix_privilege_tables smeserver-mysql57-2.0.0/root/etc/e-smith/templates/etc/e-smith/sql/init57/10fix_privilege_tables +--- smeserver-mysql57-2.0.0.old/root/etc/e-smith/templates/etc/e-smith/sql/init57/10fix_privilege_tables 2022-02-23 14:04:50.158000000 -0500 ++++ smeserver-mysql57-2.0.0/root/etc/e-smith/templates/etc/e-smith/sql/init57/10fix_privilege_tables 2022-02-23 22:09:07.105000000 -0500 +@@ -3,7 +3,7 @@ + #/opt/rh/rh-mysql57/root/usr/bin/mysql --socket=/var/lib/mysql/mysql57.sock -f mysql < /opt/rh/rh-mysql57/root/usr/share/rh-mysql57-mysql/mysql_system_tables.sql + P=$(cat /var/run/rh-mysql57-mysqld/mysqld.pid) + /bin/rm /var/run/rh-mysql57-mysqld/mysqld.pid +-kill -TERM $P ++/usr/bin/systemctl restart mysql57-mysqld.service + for i in $(seq 1 20); + do + if [ -f /var/run/rh-mysql57-mysqld/mysqld.pid ] diff -Nur --no-dereference smeserver-mysql57-2.0.0.old/root/etc/e-smith/templates/etc/opt/rh/rh-mysql57/my.cnf/000readme smeserver-mysql57-2.0.0/root/etc/e-smith/templates/etc/opt/rh/rh-mysql57/my.cnf/000readme --- smeserver-mysql57-2.0.0.old/root/etc/e-smith/templates/etc/opt/rh/rh-mysql57/my.cnf/000readme 1969-12-31 19:00:00.000000000 -0500 +++ smeserver-mysql57-2.0.0/root/etc/e-smith/templates/etc/opt/rh/rh-mysql57/my.cnf/000readme 2022-02-23 14:04:50.102000000 -0500 @@ -285,9 +309,39 @@ diff -Nur --no-dereference smeserver-mys @@ -1,2 +0,0 @@ -socket=/var/lib/mysql/mysql57.sock -MYSQLD_OPTIONS=--skip-networking -diff -Nur --no-dereference smeserver-mysql57-2.0.0.old/root/etc/e-smith/templates.metadata/var/opt/rh/rh-mysql57/lib/mysql/set.password smeserver-mysql57-2.0.0/root/etc/e-smith/templates.metadata/var/opt/rh/rh-mysql57/lib/mysql/set.password ---- smeserver-mysql57-2.0.0.old/root/etc/e-smith/templates.metadata/var/opt/rh/rh-mysql57/lib/mysql/set.password 1969-12-31 19:00:00.000000000 -0500 -+++ smeserver-mysql57-2.0.0/root/etc/e-smith/templates.metadata/var/opt/rh/rh-mysql57/lib/mysql/set.password 2017-02-19 09:44:53.000000000 -0500 +diff -Nur --no-dereference smeserver-mysql57-2.0.0.old/root/etc/e-smith/templates/var/opt/rh/rh-mysql57/lib/misc/set.password smeserver-mysql57-2.0.0/root/etc/e-smith/templates/var/opt/rh/rh-mysql57/lib/misc/set.password +--- smeserver-mysql57-2.0.0.old/root/etc/e-smith/templates/var/opt/rh/rh-mysql57/lib/misc/set.password 1969-12-31 19:00:00.000000000 -0500 ++++ smeserver-mysql57-2.0.0/root/etc/e-smith/templates/var/opt/rh/rh-mysql57/lib/misc/set.password 2022-02-23 14:04:50.144000000 -0500 +@@ -0,0 +1,11 @@ ++{ ++ use esmith::util; ++ ++ my $pw = esmith::util::LdapPassword(); ++ ++ $OUT .= "use mysql;\n"; ++ $OUT .= "ALTER TABLE user MODIFY authentication_string TEXT NULL default NULL;\n"; ++ $OUT .= "UPDATE user SET authentication_string=password('$pw'), password_expired='n' WHERE user='root';\n"; ++ $OUT .= "DELETE FROM user WHERE user='';\n"; ++ $OUT .= "FLUSH PRIVILEGES;\n"; ++} +diff -Nur --no-dereference smeserver-mysql57-2.0.0.old/root/etc/e-smith/templates/var/service/mysql57-mysqld/set.password smeserver-mysql57-2.0.0/root/etc/e-smith/templates/var/service/mysql57-mysqld/set.password +--- smeserver-mysql57-2.0.0.old/root/etc/e-smith/templates/var/service/mysql57-mysqld/set.password 2022-02-23 14:04:50.144000000 -0500 ++++ smeserver-mysql57-2.0.0/root/etc/e-smith/templates/var/service/mysql57-mysqld/set.password 1969-12-31 19:00:00.000000000 -0500 +@@ -1,11 +0,0 @@ +-{ +- use esmith::util; +- +- my $pw = esmith::util::LdapPassword(); +- +- $OUT .= "use mysql;\n"; +- $OUT .= "ALTER TABLE user MODIFY authentication_string TEXT NULL default NULL;\n"; +- $OUT .= "UPDATE user SET authentication_string=password('$pw'), password_expired='n' WHERE user='root';\n"; +- $OUT .= "DELETE FROM user WHERE user='';\n"; +- $OUT .= "FLUSH PRIVILEGES;\n"; +-} +diff -Nur --no-dereference smeserver-mysql57-2.0.0.old/root/etc/e-smith/templates.metadata/var/opt/rh/rh-mysql57/lib/misc/set.password smeserver-mysql57-2.0.0/root/etc/e-smith/templates.metadata/var/opt/rh/rh-mysql57/lib/misc/set.password +--- smeserver-mysql57-2.0.0.old/root/etc/e-smith/templates.metadata/var/opt/rh/rh-mysql57/lib/misc/set.password 1969-12-31 19:00:00.000000000 -0500 ++++ smeserver-mysql57-2.0.0/root/etc/e-smith/templates.metadata/var/opt/rh/rh-mysql57/lib/misc/set.password 2017-02-19 09:44:53.000000000 -0500 @@ -0,0 +1 @@ +PERMS=0400 diff -Nur --no-dereference smeserver-mysql57-2.0.0.old/root/etc/e-smith/templates.metadata/var/service/mysql57-mysqld/set.password smeserver-mysql57-2.0.0/root/etc/e-smith/templates.metadata/var/service/mysql57-mysqld/set.password @@ -366,11 +420,27 @@ diff -Nur --no-dereference smeserver-mys -exit 1 diff -Nur --no-dereference smeserver-mysql57-2.0.0.old/root/sbin/e-smith/systemd/mysql57-initialize smeserver-mysql57-2.0.0/root/sbin/e-smith/systemd/mysql57-initialize --- smeserver-mysql57-2.0.0.old/root/sbin/e-smith/systemd/mysql57-initialize 1969-12-31 19:00:00.000000000 -0500 -+++ smeserver-mysql57-2.0.0/root/sbin/e-smith/systemd/mysql57-initialize 2022-02-23 16:31:21.174000000 -0500 -@@ -0,0 +1,32 @@ ++++ smeserver-mysql57-2.0.0/root/sbin/e-smith/systemd/mysql57-initialize 2022-02-23 21:49:14.190000000 -0500 +@@ -0,0 +1,48 @@ +#!/bin/bash +datadir="/var/opt/rh/rh-mysql57/lib/mysql" + ++# We have to re-enable SCL environment, because /sbin/service ++# clears almost all environment variables. ++# Since X_SCLS is cleared as well, we lose information about other ++# collections enabled. ++. /opt/rh/rh-mysql57/service-environment ++for sclname in $RH_MYSQL57_SCLS_ENABLED ; do ++ . /opt/rh/$sclname/enable ++ export X_SCLS="$X_SCLS $sclname" ++done ++ ++# we want start daemon only inside "scl enable" invocation ++if ! scl_enabled $sclname ; then ++ echo "Collection $sclname has to be listed in /opt/rh/rh-mysql57/service-environment" ++ exit 1 ++fi ++ +if [ ! -f $datadir/mysql/user.frm ] +then + touch /var/log/mysql57-mysqld.log @@ -389,7 +459,7 @@ diff -Nur --no-dereference smeserver-mys + exit $ret + fi + # set root password -+ /opt/rh/rh-mysql57/root/usr/libexec/mysqld --bootstrap --datadir="$datadir" --user="mysql" < $datadir/set.password ++ /opt/rh/rh-mysql57/root/usr/libexec/mysqld --bootstrap --datadir="$datadir" --user="mysql" < $datadir/../misc/set.password + # upgrade does not need to be run on a fresh datadir + echo "5.7.24" >"$datadir/mysql_upgrade_info" + # In case we're running as root, make sure files are owned properly @@ -469,34 +539,10 @@ diff -Nur --no-dereference smeserver-mys +done + +exit 1 -diff -Nur --no-dereference smeserver-mysql57-2.0.0.old/root/usr/lib/systemd/system/mysql57-mysql.init.service smeserver-mysql57-2.0.0/root/usr/lib/systemd/system/mysql57-mysql.init.service ---- smeserver-mysql57-2.0.0.old/root/usr/lib/systemd/system/mysql57-mysql.init.service 1969-12-31 19:00:00.000000000 -0500 -+++ smeserver-mysql57-2.0.0/root/usr/lib/systemd/system/mysql57-mysql.init.service 2022-02-23 15:38:51.471000000 -0500 -@@ -0,0 +1,20 @@ -+[Unit] -+SourcePath=/sbin/e-smith/systemd/mysql57-mysql.init -+Description=Koozali SME Server mysql DB injector for mysql57 -+After=mysql57-mysql.service -+Requires=mysql57-mysql.service -+ -+[Service] -+Type=oneshot -+Restart=no -+TimeoutSec=10min -+IgnoreSIGPIPE=no -+KillMode=process -+GuessMainPID=no -+RemainAfterExit=yes -+ExecStart=/sbin/e-smith/systemd/mysql57-mysql.init start -+ExecStop=/sbin/e-smith/systemd/mysql57-mysql.init stop -+ -+[Install] -+WantedBy=sme-server.target -+ -diff -Nur --no-dereference smeserver-mysql57-2.0.0.old/root/usr/lib/systemd/system/mysql57-mysql.service smeserver-mysql57-2.0.0/root/usr/lib/systemd/system/mysql57-mysql.service ---- smeserver-mysql57-2.0.0.old/root/usr/lib/systemd/system/mysql57-mysql.service 1969-12-31 19:00:00.000000000 -0500 -+++ smeserver-mysql57-2.0.0/root/usr/lib/systemd/system/mysql57-mysql.service 2022-02-23 15:24:21.955000000 -0500 -@@ -0,0 +1,50 @@ +diff -Nur --no-dereference smeserver-mysql57-2.0.0.old/root/usr/lib/systemd/system/mysql57-mysqld.service smeserver-mysql57-2.0.0/root/usr/lib/systemd/system/mysql57-mysqld.service +--- smeserver-mysql57-2.0.0.old/root/usr/lib/systemd/system/mysql57-mysqld.service 1969-12-31 19:00:00.000000000 -0500 ++++ smeserver-mysql57-2.0.0/root/usr/lib/systemd/system/mysql57-mysqld.service 2022-02-23 21:48:20.005000000 -0500 +@@ -0,0 +1,53 @@ +[Unit] +Description=MySQL 5.7 database server +After=syslog.target @@ -506,10 +552,14 @@ diff -Nur --no-dereference smeserver-mys +Type=simple +User=root +Group=root ++PIDFile=/var/run/rh-mysql57-mysqld/mysqld.pid ++ ++# Load collections set to enabled for this service ++EnvironmentFile=/opt/rh/rh-mysql57/service-environment + +#ours : we need root user as + and ! are not yet supported -+ExecStartPre=-/sbin/e-smith/service-status mariadb -+ExecStartPre=-/sbin/e-smith/expand-template /var/opt/rh/rh-mysql57/lib/mysql/set.password ++ExecStartPre=-/sbin/e-smith/service-status mysql57-mysqld ++ExecStartPre=-/sbin/e-smith/expand-template /var/opt/rh/rh-mysql57/lib/misc/set.password +ExecStartPre=-/sbin/e-smith/expand-template /root/.my.cnf +ExecStartPre=-/sbin/e-smith/expand-template /etc/opt/rh/rh-mysql57/my.cnf +ExecStartPre=/sbin/e-smith/systemd/mysql57-initialize @@ -521,14 +571,13 @@ diff -Nur --no-dereference smeserver-mys + +# Note: we set --basedir to prevent probes that might trigger SELinux alarms, +# per bug #547485 -+ExecStart=/opt/rh/rh-mysql57/root/usr/libexec/mysqld-scl-helper enable $RH_MYSQL57_SCLS_ENABLED -- \ -+ /opt/rh/rh-mysql57/root/usr/libexec/mysqld \ -+ --defaults-file= /etc/opt/rh/rh-mysql57/my.cnf -+ --datadir=/var/opt/rh/rh-mysql57/lib/mysql \ -+ --user=mysql \ -+ --daemonize \ -+ --basedir=/opt/rh/rh-mysql57/root/usr \ -+ --pid-file=/var/run/rh-mysql57-mysqld/mysqld.pid ++ExecStart=/opt/rh/rh-mysql57/root/usr/libexec/mysqld-scl-helper enable $RH_MYSQL57_SCLS_ENABLED -- /opt/rh/rh-mysql57/root/usr/libexec/mysqld \ ++ --defaults-file=/etc/opt/rh/rh-mysql57/my.cnf \ ++ --datadir=/var/opt/rh/rh-mysql57/lib/mysql \ ++ --user=mysql \ ++ --daemonize \ ++ --basedir=/opt/rh/rh-mysql57/root/usr \ ++ --pid-file=/var/run/rh-mysql57-mysqld/mysqld.pid + +ExecStartPost=/usr/bin/scl enable $RH_MYSQL57_SCLS_ENABLED -- /opt/rh/rh-mysql57/root/usr/libexec/mysql-check-upgrade +ExecStopPost=/usr/bin/scl enable $RH_MYSQL57_SCLS_ENABLED -- /opt/rh/rh-mysql57/root/usr/libexec/mysql-wait-stop @@ -547,6 +596,30 @@ diff -Nur --no-dereference smeserver-mys + +[Install] +WantedBy=sme-server.target +diff -Nur --no-dereference smeserver-mysql57-2.0.0.old/root/usr/lib/systemd/system/mysql57-mysql.init.service smeserver-mysql57-2.0.0/root/usr/lib/systemd/system/mysql57-mysql.init.service +--- smeserver-mysql57-2.0.0.old/root/usr/lib/systemd/system/mysql57-mysql.init.service 1969-12-31 19:00:00.000000000 -0500 ++++ smeserver-mysql57-2.0.0/root/usr/lib/systemd/system/mysql57-mysql.init.service 2022-02-23 22:06:26.813000000 -0500 +@@ -0,0 +1,20 @@ ++[Unit] ++SourcePath=/sbin/e-smith/systemd/mysql57-mysql.init ++Description=Koozali SME Server mysql DB injector for mysql57 ++After=mysql57-mysqld.service ++Requires=mysql57-mysqld.service ++ ++[Service] ++Type=oneshot ++Restart=no ++TimeoutSec=10min ++IgnoreSIGPIPE=no ++KillMode=process ++GuessMainPID=no ++RemainAfterExit=yes ++ExecStart=/sbin/e-smith/systemd/mysql57-mysql.init start ++ExecStop=/sbin/e-smith/systemd/mysql57-mysql.init stop ++ ++[Install] ++WantedBy=sme-server.target ++ diff -Nur --no-dereference smeserver-mysql57-2.0.0.old/root/var/service/mysql57-mysqld/control/d smeserver-mysql57-2.0.0/root/var/service/mysql57-mysqld/control/d --- smeserver-mysql57-2.0.0.old/root/var/service/mysql57-mysqld/control/d 2022-02-23 14:04:50.091000000 -0500 +++ smeserver-mysql57-2.0.0/root/var/service/mysql57-mysqld/control/d 1969-12-31 19:00:00.000000000 -0500