mirror of
https://github.com/MariaDB/server.git
synced 2026-10-23 18:49:29 +03:00
Generate and install sysusers and tmpfiles configuration
Using systemd we can automate creating users and directories. So generate and install the configuration files. Signed-off-by: Vicențiu Ciorbaru <vicentiu@mariadb.org> Small change in cmake/install_layout.cmake compared to original contributor patch to also install SYSTEMD_SYSUSERS and SYSTEMD_TMPFILES directories. The variables were being set, but the loop which defines the final install files was not updated.
This commit is contained in:
committed by
Vicențiu Ciorbaru
parent
c58df0cdd4
commit
7bbc6c14d1
@@ -162,6 +162,8 @@ SET(INSTALL_MYSQLDATADIR_RPM "/var/lib/mysql")
|
||||
|
||||
SET(INSTALL_UNIX_ADDRDIR_RPM "${INSTALL_MYSQLDATADIR_RPM}/mysql.sock")
|
||||
SET(INSTALL_SYSTEMD_UNITDIR_RPM "/usr/lib/systemd/system")
|
||||
SET(INSTALL_SYSTEMD_SYSUSERSDIR_RPM "/usr/lib/sysusers.d")
|
||||
SET(INSTALL_SYSTEMD_TMPFILESDIR_RPM "/usr/lib/tmpfiles.d")
|
||||
|
||||
#
|
||||
# DEB layout
|
||||
@@ -191,6 +193,8 @@ SET(INSTALL_MYSQLDATADIR_DEB "/var/lib/mysql")
|
||||
|
||||
SET(INSTALL_UNIX_ADDRDIR_DEB "/var/run/mysqld/mysqld.sock")
|
||||
SET(INSTALL_SYSTEMD_UNITDIR_DEB "/lib/systemd/system")
|
||||
SET(INSTALL_SYSTEMD_SYSUSERSDIR_DEB "/usr/lib/sysusers.d")
|
||||
SET(INSTALL_SYSTEMD_TMPFILESDIR_DEB "/usr/lib/tmpfiles.d")
|
||||
|
||||
#
|
||||
# SVR4 layout
|
||||
@@ -232,7 +236,7 @@ SET(OLD_INSTALL_LAYOUT ${INSTALL_LAYOUT} CACHE INTERNAL "")
|
||||
# layout is chosen)
|
||||
FOREACH(var BIN SBIN LIB MYSQLSHARE SHARE PLUGIN INCLUDE SCRIPT DOC MAN SYSCONF SYSCONF2
|
||||
INFO MYSQLTEST SQLBENCH DOCREADME SUPPORTFILES MYSQLDATA UNIX_ADDR
|
||||
SYSTEMD_UNIT)
|
||||
SYSTEMD_UNIT SYSTEMD_SYSUSERS SYSTEMD_TMPFILES)
|
||||
SET(INSTALL_${var}DIR ${INSTALL_${var}DIR_${INSTALL_LAYOUT}}
|
||||
CACHE STRING "${var} installation directory" ${FORCE})
|
||||
MARK_AS_ADVANCED(INSTALL_${var}DIR)
|
||||
|
||||
@@ -104,6 +104,21 @@ IF(UNIX)
|
||||
${CMAKE_CURRENT_BINARY_DIR}/mariadb.service
|
||||
DESTINATION ${inst_location}/systemd COMPONENT SupportFiles)
|
||||
|
||||
IF(INSTALL_SYSTEMD_SYSUSERSDIR)
|
||||
CONFIGURE_FILE(sysusers.conf.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/sysusers.conf @ONLY)
|
||||
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/sysusers.conf
|
||||
DESTINATION ${INSTALL_SYSTEMD_SYSUSERSDIR} COMPONENT Server)
|
||||
ENDIF()
|
||||
|
||||
IF(INSTALL_SYSTEMD_TMPFILESDIR)
|
||||
get_filename_component(MYSQL_UNIX_DIR ${MYSQL_UNIX_ADDR} DIRECTORY)
|
||||
CONFIGURE_FILE(tmpfiles.conf.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/tmpfiles.conf @ONLY)
|
||||
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/tmpfiles.conf
|
||||
DESTINATION ${INSTALL_SYSTEMD_TMPFILESDIR} COMPONENT Server)
|
||||
ENDIF()
|
||||
|
||||
# @ in directory name broken between CMake version 2.8.12.2 and 3.3
|
||||
# http://public.kitware.com/Bug/view.php?id=14782
|
||||
IF(NOT CMAKE_VERSION VERSION_LESS 3.3.0 OR NOT RPM)
|
||||
|
||||
1
support-files/sysusers.conf.in
Normal file
1
support-files/sysusers.conf.in
Normal file
@@ -0,0 +1 @@
|
||||
u @MYSQLD_USER@ - "MariaDB" @MYSQL_DATADIR@
|
||||
1
support-files/tmpfiles.conf.in
Normal file
1
support-files/tmpfiles.conf.in
Normal file
@@ -0,0 +1 @@
|
||||
d @MYSQL_UNIX_DIR@ 0755 @MYSQLD_USER@ @MYSQLD_USER@ -
|
||||
Reference in New Issue
Block a user