diff options
| author | root <root@alpha.trunkmasters.com> | 2026-06-04 16:24:49 -0500 |
|---|---|---|
| committer | root <root@alpha.trunkmasters.com> | 2026-06-04 16:24:49 -0500 |
| commit | a3ceca1b4c0d9bdb550dc23f06ffbb5a8e033bc7 (patch) | |
| tree | 0c52bbae1c242fbc296bd650fcd1167685f81492 /dev-db/mysql-init-scripts | |
| parent | bfd9c39e4712ebdb442d4ca0673061faed1e70e1 (diff) | |
| download | baldeagleos-repo-a3ceca1b4c0d9bdb550dc23f06ffbb5a8e033bc7.tar.gz baldeagleos-repo-a3ceca1b4c0d9bdb550dc23f06ffbb5a8e033bc7.tar.xz baldeagleos-repo-a3ceca1b4c0d9bdb550dc23f06ffbb5a8e033bc7.zip | |
Adding metadata
Diffstat (limited to 'dev-db/mysql-init-scripts')
| -rw-r--r-- | dev-db/mysql-init-scripts/files/conf.d-2.0 | 78 | ||||
| -rw-r--r-- | dev-db/mysql-init-scripts/files/init.d-2.3 | 194 | ||||
| -rw-r--r-- | dev-db/mysql-init-scripts/files/init.d-s6-2.3 | 163 | ||||
| -rw-r--r-- | dev-db/mysql-init-scripts/files/init.d-supervise-2.3 | 180 | ||||
| -rw-r--r-- | dev-db/mysql-init-scripts/files/log-s6 | 11 | ||||
| -rw-r--r-- | dev-db/mysql-init-scripts/files/logrotate.mysql-2.3 | 17 | ||||
| -rw-r--r-- | dev-db/mysql-init-scripts/files/mysql.conf-r1 | 1 | ||||
| -rw-r--r-- | dev-db/mysql-init-scripts/files/mysqld-v2.service | 47 | ||||
| -rw-r--r-- | dev-db/mysql-init-scripts/files/mysqld-wait-ready | 56 | ||||
| -rw-r--r-- | dev-db/mysql-init-scripts/files/mysqld_at-v2.service | 45 | ||||
| -rw-r--r-- | dev-db/mysql-init-scripts/files/run-s6 | 6 | ||||
| -rw-r--r-- | dev-db/mysql-init-scripts/metadata.xml | 10 | ||||
| -rw-r--r-- | dev-db/mysql-init-scripts/mysql-init-scripts-2.3-r8.ebuild | 65 |
13 files changed, 0 insertions, 873 deletions
diff --git a/dev-db/mysql-init-scripts/files/conf.d-2.0 b/dev-db/mysql-init-scripts/files/conf.d-2.0 deleted file mode 100644 index 843b6fe93095..000000000000 --- a/dev-db/mysql-init-scripts/files/conf.d-2.0 +++ /dev/null @@ -1,78 +0,0 @@ -# Copyright 1999-2014 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -# If you want a non-stock location for the config file, uncomment or update -# either of these as needed. If you do use it, you must make sure that none of -# your socket, pidfile, datadir, logfiles, binary logs, relay logs or InnoDB -# files collide with each other. -MY_CNF="/etc/mysql/my.cnf" -#MY_CNF="${MY_CNF:-/etc/${SVCNAME}/my.cnf}" -#MY_CNF="${MY_CNF:-/etc/mysql/my-${SVCNAME/mysql.}.cnf}" - -# Place any additional arguments here that you might need -# Common/useful options: -# --skip-slave-start=1 - For bringing up replication initially -# --server-id=NNN - Server ID for replication -# --skip-networking - lock it down to UNIX sockets only -MY_ARGS="" - -# This setting (in seconds) should be high enough to allow InnoDB to do a full -# checkpoint recovery. 900 is the default used in the upstream RPM startup -# scripts. 30 seconds should be sufficent if you just have a tiny <1GiB -# database. After the core startup is done, we wait this long for the UNIX -# socket to appear. -STARTUP_TIMEOUT="900" - -# This is how long, in milliseconds, we wait for pidfile to be created, early -# in the startup. -STARTUP_EARLY_TIMEOUT="1000" - -# How long (in seconds) should we wait for shutdown? -STOP_TIMEOUT=120 - -# integer [-20 .. 19 ] default 0 -# change the priority of the server -20 (high) to 19 (low) -# see nice(1) for description -#NICE=0 - -# See start-stop-daemon(8) for possible settings -#IONICE=2 - -# If defined, --verbose gets passed to S-S-D -#DEBUG=1 - -# Depending on your usage of MySQL, you may also wish to start it after some -# other services are up. Uncomment the lines below as needed. If these aren't -# enough for you, we encourage you to file a bug, and help us understand how -# you are using MySQL. - -# Do your MySQL ACLs refer to hostnames not in your /etc/hosts? -# If so, you need DNS before you can accept connections. -# Avoid dependency circular loops if you use MySQL to power a local DNS server. -#rc_use="dns" -#rc_after="dns" - -# Does your MySQL bind to an IP on an interface other than net.lo? -# Alternatively you might wish to specify the exact interface here. -#rc_use="net" -#rc_after="net" - -# Do you store your MySQL files on a SAN or other network filesystem, that is -# provided by the netmount init script? -#rc_need="netmount" - -# Or from NFS? P.S. This is not a good idea in most cases, but does have some -# valid usage cases, so we provide the option. -#rc_need="nfsclient" - -# Should any one of the instances satisfy the requirement for MySQL coming up? -# By default, we say no. -[ "${SVCNAME}" != mysql ] && rc_provide="!mysql" -# But uncomment this next instead if you think it should. -#rc_provide="mysql" - -# The conditional above has a false-positive "failure" return value as a -# side-effect, and since it's the last statement, without the next line, this -# script returns failure. -return 0 -# vim: ft=gentoo-conf-d et ts=4 sw=4: diff --git a/dev-db/mysql-init-scripts/files/init.d-2.3 b/dev-db/mysql-init-scripts/files/init.d-2.3 deleted file mode 100644 index 1216ac9a67c3..000000000000 --- a/dev-db/mysql-init-scripts/files/init.d-2.3 +++ /dev/null @@ -1,194 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -extra_commands="checkconfig" -extra_stopped_commands="bootstrap_galera" - -description_checkconfig="Verify the server's configuration" -description_bootstrap_galera="Start a new Galera cluster with this server as the initial node" - -depend() { - use net.lo - # localmount needed for $basedir - need localmount - # This service has its own timeout and may need to wait for repairs - # or remote synchronization - keyword -timeout -} - -get_config() { - my_print_defaults --defaults-file="$1" mysqld server mariadb | - sed -n -e "s/^--$2=//p" -} - -mysql_svcname() { - local ebextra= - case "${SVCNAME}" in - mysql*) ;; - *) ebextra=" (mysql)" ;; - esac - echo "${SVCNAME}${ebextra}" -} - -stringContain() { [ -z "${2##*$1*}" ] && [ -z "$1" -o -n "$2" ]; } - -bootstrap_galera() { - MY_ARGS="--wsrep-new-cluster ${MY_ARGS}" - mark_service_starting - if start ; then - mark_service_started - return 0 - else - mark_service_stopped - return 1 - fi -} - -start() { - # Check for old conf.d variables that mean migration was not yet done. - set | grep -Esq '^(mysql_slot_|MYSQL_BLOG_PID_FILE|STOPTIMEOUT)' - rc=$? - # Yes, MYSQL_INIT_I_KNOW_WHAT_I_AM_DOING is a hidden variable. - # It does have a use in testing, as it is possible to build a config file - # that works with both the old and new init scripts simulateously. - if [ "${rc}" = 0 -a -z "${MYSQL_INIT_I_KNOW_WHAT_I_AM_DOING}" ]; then - eerror "You have not updated your conf.d for the new mysql-init-scripts-2 revamp." - eerror "Not proceeding because it may be dangerous." - return 1 - fi - - # Check the config or die - if [ ${RC_CMD} != "restart" ] ; then - checkconfig || return 1 - fi - - # Now we can startup - ebegin "Starting $(mysql_svcname)" - - MY_CNF="${MY_CNF:-/etc/${SVCNAME}/my.cnf}" - - if [ ! -r "${MY_CNF}" ] ; then - eerror "Cannot read the configuration file \`${MY_CNF}'" - return 1 - fi - - # tail -n1 is critical as these we only want the last instance of the option - local basedir=$(get_config "${MY_CNF}" basedir | tail -n1) - local pidfile=$(get_config "${MY_CNF}" 'pid[_-]file' | tail -n1) - local socket=$(get_config "${MY_CNF}" socket | tail -n1) - local chroot=$(get_config "${MY_CNF}" chroot | tail -n1) - local wsrep="$(get_config "${MY_CNF}" 'wsrep[_-]on' | tail -n1 | awk '{print tolower($0)}')" - local wsrep_new=$(get_config "${MY_CNF}" 'wsrep-new-cluster' | tail -n1) - - if [ -n "${chroot}" ] ; then - socket="${chroot}/${socket}" - pidfile="${chroot}/${pidfile}" - fi - - # Galera: Only check datadir if not starting a new cluster and galera is enabled - # wsrep_on is not on or wsrep-new-cluster exists in the config or MY_ARGS - [ "${wsrep}" = "1" ] && wsrep="on" - if [ "${wsrep}" != "on" ] || [ -n "${wsrep_new}" ] || stringContain 'wsrep-new-cluster' "${MY_ARGS}" ; then - - local datadir=$(get_config "${MY_CNF}" datadir | tail -n1) - if [ ! -d "${datadir}" ] ; then - eerror "MySQL datadir \`${datadir}' is empty or invalid" - eerror "Please check your config file \`${MY_CNF}'" - return 1 - fi - - if [ ! -d "${datadir}"/mysql ] ; then - # find which package is installed to report an error - local EROOT=$(portageq envvar EROOT) - local DBPKG_P=$(portageq match ${EROOT} $(portageq expand_virtual ${EROOT} virtual/mysql | head -n1)) - if [ -z ${DBPKG_P} ] ; then - eerror "You don't appear to have a server package installed yet." - else - eerror "You don't appear to have the mysql database installed yet." - eerror "Please run \`emerge --config =${DBPKG_P}\` to have this done..." - fi - return 1 - fi - fi - - local piddir="${pidfile%/*}" - checkpath -d --owner mysql:mysql --mode 0755 "$piddir" - rc=$? - if [ $rc -ne 0 ]; then - eerror "Directory $piddir for pidfile does not exist and cannot be created" - return 1 - fi - - local startup_timeout=${STARTUP_TIMEOUT:-900} - local startup_early_timeout=${STARTUP_EARLY_TIMEOUT:-1000} - local tmpnice="${NICE:+"--nicelevel "}${NICE}" - local tmpionice="${IONICE:+"--ionice "}${IONICE}" - start-stop-daemon \ - ${DEBUG:+"--verbose"} \ - --start \ - --exec "${basedir}"/sbin/mysqld \ - --pidfile "${pidfile}" \ - --background \ - --wait ${startup_early_timeout} \ - ${tmpnice} \ - ${tmpionice} \ - -- --defaults-file="${MY_CNF}" ${MY_ARGS} - local ret=$? - if [ ${ret} -ne 0 ] ; then - eend ${ret} - return ${ret} - fi - - ewaitfile ${startup_timeout} "${socket}" - eend $? || return 1 - - save_options pidfile "${pidfile}" - save_options basedir "${basedir}" -} - -stop() { - if [ ${RC_CMD} = "restart" ] ; then - checkconfig || return 1 - fi - - ebegin "Stopping $(mysql_svcname)" - - local pidfile="$(get_options pidfile)" - local basedir="$(get_options basedir)" - local stop_timeout=${STOP_TIMEOUT:-120} - - start-stop-daemon \ - ${DEBUG:+"--verbose"} \ - --stop \ - --exec "${basedir}"/sbin/mysqld \ - --pidfile "${pidfile}" \ - --retry ${stop_timeout} - eend $? -} - -checkconfig() { - local my_cnf="${MY_CNF:-/etc/${SVCNAME}/my.cnf}" - local basedir=$(get_config "${my_cnf}" basedir | tail -n1) - local svc_name=$(mysql_svcname) - ebegin "Checking mysqld configuration for ${svc_name}" - - if [ ${RC_CMD} = "checkconfig" ] ; then - # We are calling checkconfig specifically. Print warnings regardless. - "${basedir}"/sbin/mysqld --defaults-file="${my_cnf}" --help --verbose > /dev/null - else - # Suppress output to check the return value - "${basedir}"/sbin/mysqld --defaults-file="${my_cnf}" --help --verbose > /dev/null 2>&1 - - # If the above command does not return 0, - # then there is an error to echo to the user - if [ $? -ne 0 ] ; then - "${basedir}"/sbin/mysqld --defaults-file="${my_cnf}" --help --verbose > /dev/null - fi - fi - - eend $? "${svc_name} config check failed" -} - -# vim: filetype=gentoo-init-d sw=2 ts=2 sts=2 noet: - diff --git a/dev-db/mysql-init-scripts/files/init.d-s6-2.3 b/dev-db/mysql-init-scripts/files/init.d-s6-2.3 deleted file mode 100644 index 4222de898125..000000000000 --- a/dev-db/mysql-init-scripts/files/init.d-s6-2.3 +++ /dev/null @@ -1,163 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -depend() { - use net.lo - # localmount needed for $basedir - need localmount s6-svscan -} - -get_config() { - my_print_defaults --defaults-file="$1" mysqld server mariadb | - sed -n -e "s/^--$2=//p" -} - -mysql_svcname() { - local ebextra= - case "${svc_name}" in - mysql*) ;; - *) ebextra=" (mysql)" ;; - esac - echo "${svc_name}${ebextra}" -} - -stringContain() { [ -z "${2##*$1*}" ] && [ -z "$1" -o -n "$2" ]; } - -bootstrap_galera() { - MY_ARGS="--wsrep-new-cluster ${MY_ARGS}" - mark_service_starting - if start_pre && start ; then - mark_service_started - return 0 - else - mark_service_stopped - return 1 - fi -} - - -extra_commands="checkconfig" -extra_stopped_commands="bootstrap_galera" - -description_checkconfig="Verify the server's configuration" -description_bootstrap_galera="Start a new Galera cluster with this server as the initial node" -supervisor=s6 -name=$(mysql_svcname) -s6_service_timeout_stop="$((1000*${STOP_TIMEOUT:-120}))" -#s6_svwait_options_start="-U -t $((1000*${STARTUP_EARLY_TIMEOUT:-1000}))" -svc_name=${RC_SVCNAME%-s6} -s6_service_path=/var/svc.d/${svc_name} - -start_pre() { - # Check the config or die - if [ ${RC_CMD} != "restart" ] ; then - checkconfig || return 1 - fi - - MY_CNF="${MY_CNF:-/etc/${svc_name}/my.cnf}" - - if [ ! -r "${MY_CNF}" ] ; then - eerror "Cannot read the configuration file \`${MY_CNF}'" - return 1 - fi - - # tail -n1 is critical as these we only want the last instance of the option - local basedir=$(get_config "${MY_CNF}" basedir | tail -n1) - local pidfile=$(get_config "${MY_CNF}" 'pid[_-]file' | tail -n1) - local socket=$(get_config "${MY_CNF}" socket | tail -n1) - local chroot=$(get_config "${MY_CNF}" chroot | tail -n1) - local wsrep="$(get_config "${MY_CNF}" 'wsrep[_-]on' | tail -n1 | awk '{print tolower($0)}')" - local wsrep_new=$(get_config "${MY_CNF}" 'wsrep-new-cluster' | tail -n1) - - if [ -n "${chroot}" ] ; then - socket="${chroot}/${socket}" - pidfile="${chroot}/${pidfile}" - fi - - # Galera: Only check datadir if not starting a new cluster and galera is enabled - # wsrep_on is not on or wsrep-new-cluster exists in the config or MY_ARGS - [ "${wsrep}" = "1" ] && wsrep="on" - if [ "${wsrep}" != "on" ] || [ -n "${wsrep_new}" ] || stringContain 'wsrep-new-cluster' "${MY_ARGS}" ; then - - local datadir=$(get_config "${MY_CNF}" datadir | tail -n1) - if [ ! -d "${datadir}" ] ; then - eerror "MySQL datadir \`${datadir}' is empty or invalid" - eerror "Please check your config file \`${MY_CNF}'" - return 1 - fi - - if [ ! -d "${datadir}"/mysql ] ; then - # find which package is installed to report an error - local EROOT=$(portageq envvar EROOT) - local DBPKG_P=$(portageq match ${EROOT} $(portageq expand_virtual ${EROOT} virtual/mysql | head -n1)) - if [ -z ${DBPKG_P} ] ; then - eerror "You don't appear to have a server package installed yet." - else - eerror "You don't appear to have the mysql database installed yet." - eerror "Please run \`emerge --config =${DBPKG_P}\` to have this done..." - fi - return 1 - fi - fi - - local piddir="${pidfile%/*}" - checkpath -d --owner mysql:mysql --mode 0755 "$piddir" - rc=$? - if [ $rc -ne 0 ]; then - eerror "Directory $piddir for pidfile does not exist and cannot be created" - return 1 - fi - - # Prepare env files to source - mkdir -p "/var/svc.d/${svc_name}" - echo "MY_CNF=\"${MY_CNF}\"" > "/var/svc.d/${svc_name}/env" - echo "MY_ARGS=\"${MY_ARGS}\"" >> "/var/svc.d/${svc_name}/env" - echo "basedir=\"${basedir}\"" >> "/var/svc.d/${svc_name}/env" - mkdir -p "/var/svc.d/${svc_name}/log" - echo "SVCNAME=\"${svc_name}\"" > "/var/svc.d/${svc_name}/log/env" - echo "S6_LOG_OPTIONS=\"${S6_LOG_OPTIONS}\"" > "/var/svc.d/${svc_name}/log/env" -} - -start_post() { - local socket=$(get_config "${MY_CNF}" socket | tail -n1) - local chroot=$(get_config "${MY_CNF}" chroot | tail -n1) - local startup_timeout=${STARTUP_TIMEOUT:-900} - - if [ -n "${chroot}" ] ; then - socket="${chroot}/${socket}" - fi - ewaitfile ${startup_timeout} "${socket}" -} - -checkconfig() { - local my_cnf="${MY_CNF:-/etc/${svc_name}/my.cnf}" - local basedir=$(get_config "${my_cnf}" basedir | tail -n1) - local svc_name=$(mysql_svcname) - ebegin "Checking mysqld configuration for ${svc_name}" - - if [ ${RC_CMD} = "checkconfig" ] ; then - # We are calling checkconfig specifically. Print warnings regardless. - "${basedir}"/sbin/mysqld --defaults-file="${my_cnf}" --help --verbose > /dev/null - else - # Suppress output to check the return value - "${basedir}"/sbin/mysqld --defaults-file="${my_cnf}" --help --verbose > /dev/null 2>&1 - - # If the above command does not return 0, - # then there is an error to echo to the user - if [ $? -ne 0 ] ; then - "${basedir}"/sbin/mysqld --defaults-file="${my_cnf}" --help --verbose > /dev/null - fi - fi - - eend $? "${svc_name} config check failed" -} - -stop_pre() { - if [ ${RC_CMD} = "restart" ] ; then - checkconfig || return 1 - fi -} - -# vim: filetype=gentoo-init-d sw=2 ts=2 sts=2 noet: - diff --git a/dev-db/mysql-init-scripts/files/init.d-supervise-2.3 b/dev-db/mysql-init-scripts/files/init.d-supervise-2.3 deleted file mode 100644 index fa7cba8d45c4..000000000000 --- a/dev-db/mysql-init-scripts/files/init.d-supervise-2.3 +++ /dev/null @@ -1,180 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -extra_commands="checkconfig" -extra_stopped_commands="bootstrap_galera" - -description_checkconfig="Verify the server's configuration" -description_bootstrap_galera="Start a new Galera cluster with this server as the initial node" - -depend() { - use net.lo - # localmount needed for $basedir - need localmount -} - -get_config() { - my_print_defaults --defaults-file="$1" mysqld server mariadb | - sed -n -e "s/^--$2=//p" -} - -mysql_svcname() { - local ebextra= - case "${SVCNAME}" in - mysql*) ;; - *) ebextra=" (mysql)" ;; - esac - echo "${SVCNAME}${ebextra}" -} - -stringContain() { [ -z "${2##*$1*}" ] && [ -z "$1" -o -n "$2" ]; } - -bootstrap_galera() { - MY_ARGS="--wsrep-new-cluster ${MY_ARGS}" - mark_service_starting - if start ; then - mark_service_started - return 0 - else - mark_service_stopped - return 1 - fi -} - -start() { - # Check for old conf.d variables that mean migration was not yet done. - set | grep -Esq '^(mysql_slot_|MYSQL_BLOG_PID_FILE|STOPTIMEOUT)' - rc=$? - # Yes, MYSQL_INIT_I_KNOW_WHAT_I_AM_DOING is a hidden variable. - # It does have a use in testing, as it is possible to build a config file - # that works with both the old and new init scripts simulateously. - if [ "${rc}" = 0 -a -z "${MYSQL_INIT_I_KNOW_WHAT_I_AM_DOING}" ]; then - eerror "You have not updated your conf.d for the new mysql-init-scripts-2 revamp." - eerror "Not proceeding because it may be dangerous." - return 1 - fi - - # Check the config or die - if [ ${RC_CMD} != "restart" ] ; then - checkconfig || return 1 - fi - - # Now we can startup - ebegin "Starting $(mysql_svcname)" - - MY_CNF="${MY_CNF:-/etc/${SVCNAME}/my.cnf}" - - if [ ! -r "${MY_CNF}" ] ; then - eerror "Cannot read the configuration file \`${MY_CNF}'" - return 1 - fi - - # tail -n1 is critical as these we only want the last instance of the option - local basedir=$(get_config "${MY_CNF}" basedir | tail -n1) - local pidfile=$(get_config "${MY_CNF}" 'pid[_-]file' | tail -n1) - local socket=$(get_config "${MY_CNF}" socket | tail -n1) - local chroot=$(get_config "${MY_CNF}" chroot | tail -n1) - local wsrep="$(get_config "${MY_CNF}" 'wsrep[_-]on' | tail -n1 | awk '{print tolower($0)}')" - local wsrep_new=$(get_config "${MY_CNF}" 'wsrep-new-cluster' | tail -n1) - - if [ -n "${chroot}" ] ; then - socket="${chroot}/${socket}" - pidfile="${chroot}/${pidfile}" - fi - - # Galera: Only check datadir if not starting a new cluster and galera is enabled - # wsrep_on is not on or wsrep-new-cluster exists in the config or MY_ARGS - [ "${wsrep}" = "1" ] && wsrep="on" - if [ "${wsrep}" != "on" ] || [ -n "${wsrep_new}" ] || stringContain 'wsrep-new-cluster' "${MY_ARGS}" ; then - - local datadir=$(get_config "${MY_CNF}" datadir | tail -n1) - if [ ! -d "${datadir}" ] ; then - eerror "MySQL datadir \`${datadir}' is empty or invalid" - eerror "Please check your config file \`${MY_CNF}'" - return 1 - fi - - if [ ! -d "${datadir}"/mysql ] ; then - # find which package is installed to report an error - local EROOT=$(portageq envvar EROOT) - local DBPKG_P=$(portageq match ${EROOT} $(portageq expand_virtual ${EROOT} virtual/mysql | head -n1)) - if [ -z ${DBPKG_P} ] ; then - eerror "You don't appear to have a server package installed yet." - else - eerror "You don't appear to have the mysql database installed yet." - eerror "Please run \`emerge --config =${DBPKG_P}\` to have this done..." - fi - return 1 - fi - fi - - local piddir="${pidfile%/*}" - checkpath -d --owner mysql:mysql --mode 0755 "$piddir" - rc=$? - if [ $rc -ne 0 ]; then - eerror "Directory $piddir for pidfile does not exist and cannot be created" - return 1 - fi - - local startup_timeout=${STARTUP_TIMEOUT:-900} -# local startup_early_timeout=${STARTUP_EARLY_TIMEOUT:-1000} - local tmpnice="${NICE:+"--nicelevel "}${NICE}" - local tmpionice="${IONICE:+"--ionice "}${IONICE}" - supervise-daemon "${SVCNAME}" \ - ${DEBUG:+"--verbose"} \ - --pidfile "/run/${SVCNAME}.pid" \ - ${tmpnice} \ - ${tmpionice} \ - --start \ - "${basedir}"/sbin/mysqld \ - -- --defaults-file="${MY_CNF}" ${MY_ARGS} - local ret=$? - if [ ${ret} -ne 0 ] ; then - eend ${ret} - return ${ret} - fi - - ewaitfile ${startup_timeout} "${socket}" - eend $? || return 1 -} - -stop() { - if [ ${RC_CMD} = "restart" ] ; then - checkconfig || return 1 - fi - - ebegin "Stopping $(mysql_svcname)" - - supervise-daemon "${SVCNAME}" \ - ${DEBUG:+"--verbose"} \ - --stop \ - --pidfile "/run/${SVCNAME}.pid" - eend $? -} - -checkconfig() { - local my_cnf="${MY_CNF:-/etc/${SVCNAME}/my.cnf}" - local basedir=$(get_config "${my_cnf}" basedir | tail -n1) - local svc_name=$(mysql_svcname) - ebegin "Checking mysqld configuration for ${svc_name}" - - if [ ${RC_CMD} = "checkconfig" ] ; then - # We are calling checkconfig specifically. Print warnings regardless. - "${basedir}"/sbin/mysqld --defaults-file="${my_cnf}" --help --verbose > /dev/null - else - # Suppress output to check the return value - "${basedir}"/sbin/mysqld --defaults-file="${my_cnf}" --help --verbose > /dev/null 2>&1 - - # If the above command does not return 0, - # then there is an error to echo to the user - if [ $? -ne 0 ] ; then - "${basedir}"/sbin/mysqld --defaults-file="${my_cnf}" --help --verbose > /dev/null - fi - fi - - eend $? "${svc_name} config check failed" -} - -# vim: filetype=gentoo-init-d sw=2 ts=2 sts=2 noet: - diff --git a/dev-db/mysql-init-scripts/files/log-s6 b/dev-db/mysql-init-scripts/files/log-s6 deleted file mode 100644 index d135c530cd4e..000000000000 --- a/dev-db/mysql-init-scripts/files/log-s6 +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/sh -# Copyright 1999-2015 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -if [ -e ./env ] ; then source ./env ; else echo "failed to source env" ; fi -mkdir -p "/var/log/mysql/${SVCNAME}" -if [ ${S6_LOG_OPTIONS} ] ; then - exec s6-log ${S6_LOG_OPTIONS} -else - exec s6-log -b n20 S15000000 !"gzip -nq9" "/var/log/mysql/${SVCNAME}" -fi diff --git a/dev-db/mysql-init-scripts/files/logrotate.mysql-2.3 b/dev-db/mysql-init-scripts/files/logrotate.mysql-2.3 deleted file mode 100644 index 6573671b2c7b..000000000000 --- a/dev-db/mysql-init-scripts/files/logrotate.mysql-2.3 +++ /dev/null @@ -1,17 +0,0 @@ -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -/var/log/mysql/mysql.err /var/log/mysql/mysql.log /var/log/mysql/mysqld.err { -monthly -create 660 mysql mysql -notifempty -size 5M -sharedscripts -missingok -postrotate - pidfile=$(my_print_defaults server mysqld mariadb | grep 'pid[_-]file' | tail -n 1 | cut -d = -f 2) - if [ -s "${pidfile}" ] ; then - /bin/kill -HUP $(cat "${pidfile}") - fi -endscript -} diff --git a/dev-db/mysql-init-scripts/files/mysql.conf-r1 b/dev-db/mysql-init-scripts/files/mysql.conf-r1 deleted file mode 100644 index 6883dc798881..000000000000 --- a/dev-db/mysql-init-scripts/files/mysql.conf-r1 +++ /dev/null @@ -1 +0,0 @@ -d /run/mysqld 0755 mysql mysql - diff --git a/dev-db/mysql-init-scripts/files/mysqld-v2.service b/dev-db/mysql-init-scripts/files/mysqld-v2.service deleted file mode 100644 index 641abf733098..000000000000 --- a/dev-db/mysql-init-scripts/files/mysqld-v2.service +++ /dev/null @@ -1,47 +0,0 @@ -[Unit] -Description=MySQL database server -After=syslog.target -After=network.target -Conflicts=mariadb.service - -[Service] -Type=simple -User=mysql -Group=mysql - -# Note: we set --basedir to prevent probes that might trigger SELinux alarms, -# https://bugzilla.redhat.com/show_bug.cgi?id=547485 -ExecStart=/usr/sbin/mysqld --basedir=/usr -ExecStartPost=/usr/libexec/mysqld-wait-ready $MAINPID - -# Give a reasonable amount of time for the server to start up/shut down -TimeoutSec=300 - -# We rely on systemd, not mysqld_safe, to restart mysqld if it dies -# Restart crashed server only, on-failure would also restart, for example, when -# my.cnf contains unknown option -Restart=on-abort -RestartSec=5s - -# Place temp files in a secure directory, not /tmp -PrivateTmp=true - -# To allow memlock to be used as non-root user if set in configuration -CapabilityBoundingSet=CAP_IPC_LOCK - -# Prevent writes to /usr, /boot, and /etc -ProtectSystem=full - -# Currently has issues with SELinux https://jira.mariadb.org/browse/MDEV-10404 -# This is safe to uncomment when not using SELinux -#NoNewPrivileges=true - -PrivateDevices=true - -# Prevent accessing /home, /root and /run/user -ProtectHome=true - -UMask=007 - -[Install] -WantedBy=multi-user.target diff --git a/dev-db/mysql-init-scripts/files/mysqld-wait-ready b/dev-db/mysql-init-scripts/files/mysqld-wait-ready deleted file mode 100644 index 9e5d3e4d85e0..000000000000 --- a/dev-db/mysql-init-scripts/files/mysqld-wait-ready +++ /dev/null @@ -1,56 +0,0 @@ -#!/bin/sh - -# This script waits for mysqld to be ready to accept connections -# (which can be many seconds or even minutes after launch, if there's -# a lot of crash-recovery work to do). -# Running this as ExecStartPost is useful so that services declared as -# "After mysqld" won't be started until the database is really ready. - -# Service file passes us the daemon's PID (actually, mysqld_safe's PID) -daemon_pid="$1" - -# extract value of a MySQL option from config files -# Usage: get_mysql_option SECTION VARNAME DEFAULT -# result is returned in $result -# We use my_print_defaults which prints all options from multiple files, -# with the more specific ones later; hence take the last match. -get_mysql_option(){ - result=`/usr/bin/my_print_defaults "$1" | sed -n "s/^--$2=//p" | tail -n 1` - if [ -z "$result" ]; then - # not found, use default - result="$3" - fi -} - -# Defaults here had better match what mysqld_safe will default to -get_mysql_option mysqld datadir "/var/lib/mysql" -datadir="$result" -get_mysql_option mysqld socket "/var/lib/mysql/mysql.sock" -socketfile="$result" - -# Wait for the server to come up or for the mysqld process to disappear -ret=0 -while /bin/true; do - RESPONSE=`/usr/bin/mysqladmin --no-defaults --socket="$socketfile" --user=UNKNOWN_MYSQL_USER ping 2>&1` - mret=$? - if [ $mret -eq 0 ]; then - break - fi - # exit codes 1, 11 (EXIT_CANNOT_CONNECT_TO_SERVICE) are expected, - # anything else suggests a configuration error - if [ $mret -ne 1 -a $mret -ne 11 ]; then - ret=1 - break - fi - # "Access denied" also means the server is alive - echo "$RESPONSE" | grep -q "Access denied for user" && break - - # Check process still exists - if ! /bin/kill -0 $daemon_pid 2>/dev/null; then - ret=1 - break - fi - sleep 1 -done - -exit $ret diff --git a/dev-db/mysql-init-scripts/files/mysqld_at-v2.service b/dev-db/mysql-init-scripts/files/mysqld_at-v2.service deleted file mode 100644 index 26964ea8a768..000000000000 --- a/dev-db/mysql-init-scripts/files/mysqld_at-v2.service +++ /dev/null @@ -1,45 +0,0 @@ -[Unit] -Description=MySQL database server -ConditionPathExists=/etc/mysql/my%I.cnf -After=network.target - -[Service] -Type=simple -User=mysql -Group=mysql - -# Note: we set --basedir to prevent probes that might trigger SELinux alarms, -# https://bugzilla.redhat.com/show_bug.cgi?id=547485 -ExecStart=/usr/sbin/mysqld --defaults-file=/etc/mysql/my%I.cnf --basedir=/usr -ExecStartPost=/usr/libexec/mysqld-wait-ready $MAINPID - -# Give a reasonable amount of time for the server to start up/shut down -TimeoutSec=300 - -# Restart crashed server only, on-failure would also restart, for example, when -# my.cnf contains unknown option -Restart=on-abort -RestartSec=5s - -# Place temp files in a secure directory, not /tmp -PrivateTmp=true - -# To allow memlock to be used as non-root user if set in configuration -CapabilityBoundingSet=CAP_IPC_LOCK - -# Prevent writes to /usr, /boot, and /etc -ProtectSystem=full - -# Currently has issues with SELinux https://jira.mariadb.org/browse/MDEV-10404 -# This is safe to uncomment when not using SELinux -#NoNewPrivileges=true - -PrivateDevices=true - -# Prevent accessing /home, /root and /run/user -ProtectHome=true - -UMask=007 - -[Install] -WantedBy=multi-user.target diff --git a/dev-db/mysql-init-scripts/files/run-s6 b/dev-db/mysql-init-scripts/files/run-s6 deleted file mode 100644 index 1ab2253cd823..000000000000 --- a/dev-db/mysql-init-scripts/files/run-s6 +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh -# Copyright 1999-2015 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -if [ -e ./env ] ; then source ./env ; else echo "failed to source env" ; fi -exec "${basedir}/sbin/mysqld" --defaults-file="${MY_CNF}" ${MY_ARGS} 2>&1 diff --git a/dev-db/mysql-init-scripts/metadata.xml b/dev-db/mysql-init-scripts/metadata.xml deleted file mode 100644 index 95f4e3739a8a..000000000000 --- a/dev-db/mysql-init-scripts/metadata.xml +++ /dev/null @@ -1,10 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd"> -<pkgmetadata> - <maintainer type="project"> - <email>mysql-bugs@gentoo.org</email> - <name>MySQL</name> - </maintainer> - - <origin>ports</origin> -</pkgmetadata>
\ No newline at end of file diff --git a/dev-db/mysql-init-scripts/mysql-init-scripts-2.3-r8.ebuild b/dev-db/mysql-init-scripts/mysql-init-scripts-2.3-r8.ebuild deleted file mode 100644 index 71b560d740f7..000000000000 --- a/dev-db/mysql-init-scripts/mysql-init-scripts-2.3-r8.ebuild +++ /dev/null @@ -1,65 +0,0 @@ -# Copyright 2024 Liguros Authors -# Distributed under the terms of the GNU General Public License v2 -EAPI=8 - -inherit systemd s6 tmpfiles - -DESCRIPTION="Gentoo MySQL init scripts" -HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage" -# Need to set S due to PMS saying we need it existing, but no SRC_URI -S=${WORKDIR} - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86" - -# This _will_ break with MySQL 5.0, 4.x, 3.x -# It also NEEDS openrc for the save_options/get_options builtins. -# The s6 support was added after openrc 0.16.2 -# mysql-connector-c needed for my_print_defaults -RDEPEND=" - !<dev-db/mysql-5.1 - !<sys-apps/openrc-0.16.2 - dev-db/mysql-connector-c++ - !prefix? ( - acct-group/mysql acct-user/mysql - ) -" - -src_install() { - newconfd "${FILESDIR}"/conf.d-2.0 mysql - - # s6 init scripts - if use amd64 || use x86 ; then - newconfd "${FILESDIR}"/conf.d-2.0 mysql-s6 - newinitd "${FILESDIR}"/init.d-s6-2.3 mysql-s6 - s6_install_service mysql "${FILESDIR}"/run-s6 - s6_install_service mysql/log "${FILESDIR}"/log-s6 - fi - - newinitd "${FILESDIR}"/init.d-2.3 mysql - newinitd "${FILESDIR}"/init.d-supervise-2.3 mysql-supervise - - # systemd unit installation - exeinto /usr/libexec - doexe "${FILESDIR}"/mysqld-wait-ready - systemd_newunit "${FILESDIR}"/mysqld-v2.service mysqld.service - systemd_newunit "${FILESDIR}"/mysqld_at-v2.service mysqld@.service - newtmpfiles "${FILESDIR}"/mysql.conf-r1 mysql.conf - - insinto /etc/logrotate.d - newins "${FILESDIR}"/logrotate.mysql-2.3 mysql -} - -pkg_postinst() { - tmpfiles_process mysql.conf - - if use amd64 || use x86 ; then - elog "To use the mysql-s6 script, you need to install the optional sys-apps/s6 package." - elog "If you wish to use s6 logging support, comment out the log-error setting in your my.cnf" - elog - fi - - elog "Starting with version 10.1.8, MariaDB includes an improved systemd unit named mariadb.service" - elog "You should prefer that unit over this package's mysqld.service." -} |
