From b54e4bf00b191633c74baad143c552bfb478fff3 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Tue, 29 Jan 2019 10:03:42 +0100 Subject: [PATCH] update galera_new_cluster to use environment file Now that the systemd unit files use an environment file to pass _WSREP_START_POSITION we have to update galera_new_cluster as well. --- scripts/CMakeLists.txt | 15 +++++++++++++++ scripts/galera_new_cluster.sh | 4 ++-- support-files/mariadb.service.in | 3 +++ 3 files changed, 20 insertions(+), 2 deletions(-) mode change 100755 => 100644 scripts/galera_new_cluster.sh diff --git a/scripts/CMakeLists.txt b/scripts/CMakeLists.txt index 358045c17ab..e41c4fce68f 100644 --- a/scripts/CMakeLists.txt +++ b/scripts/CMakeLists.txt @@ -190,6 +190,9 @@ ELSE() SET(localstatedir ${MYSQL_DATADIR}) ENDIF() +get_filename_component(MYSQL_UNIX_DIR ${MYSQL_UNIX_ADDR} DIRECTORY) +SET(mysqlunixdir ${MYSQL_UNIX_DIR}) + SET(resolveip_locations "$basedir/${INSTALL_BINDIR} $basedir/bin") SET(mysqld_locations "$basedir/${INSTALL_SBINDIR} $basedir/libexec $basedir/sbin $basedir/bin") SET(errmsg_locations "$basedir/${INSTALL_MYSQLSHAREDIR}/english $basedir/share/english $basedir/share/mysql/english") @@ -207,6 +210,18 @@ INSTALL_SCRIPT( DESTINATION ${INSTALL_SCRIPTDIR} COMPONENT Server ) + +CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/galera_new_cluster.sh + ${CMAKE_CURRENT_BINARY_DIR}/galera_new_cluster ESCAPE_QUOTES @ONLY) + EXECUTE_PROCESS( + COMMAND chmod +x ${CMAKE_CURRENT_BINARY_DIR}/galera_new_cluster + ) + +INSTALL_SCRIPT( + "${CMAKE_CURRENT_BINARY_DIR}/galera_new_cluster" + DESTINATION ${INSTALL_SCRIPTDIR} + COMPONENT Server + ) ENDIF() SET(prefix "${CMAKE_INSTALL_PREFIX}") diff --git a/scripts/galera_new_cluster.sh b/scripts/galera_new_cluster.sh old mode 100755 new mode 100644 index ac9dcf42102..b6617378b90 --- a/scripts/galera_new_cluster.sh +++ b/scripts/galera_new_cluster.sh @@ -21,11 +21,11 @@ EOF exit 0 fi -systemctl set-environment _WSREP_NEW_CLUSTER='--wsrep-new-cluster' && \ +echo _WSREP_NEW_CLUSTER='--wsrep-new-cluster' > @mysqlunixdir@/"wsrep-new-cluster-${1:-mariadb}" && \ systemctl restart ${1:-mariadb} extcode=$? -systemctl set-environment _WSREP_NEW_CLUSTER='' +rm -f @mysqlunixdir@/"wsrep-new-cluster-${1:-mariadb}" exit $extcode diff --git a/support-files/mariadb.service.in b/support-files/mariadb.service.in index 2f990df4a15..19e2e16abeb 100644 --- a/support-files/mariadb.service.in +++ b/support-files/mariadb.service.in @@ -70,6 +70,9 @@ ProtectSystem=full # Prevent accessing /home, /root and /run/user ProtectHome=true +# Use an environment file to pass variable _WSREP_NEW_CLUSTER +EnvironmentFile=-@mysqlunixdir@/wsrep-new-cluster-%N + # Use an environment file to pass variable _WSREP_START_POSITION EnvironmentFile=-@mysqlunixdir@/wsrep-start-position