diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2018-07-14 20:57:42 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2018-07-14 20:57:42 +0100 |
commit | 1798c4aeca70ac8d0a243684d6a798fbc65735f8 (patch) | |
tree | e48e19cb6fa03de18e1c63e1a93371b7ebc4eb56 /dev-db/mysql-init-scripts | |
parent | d87262dd706fec50cd150aab3e93883b6337466d (diff) |
gentoo resync : 14.07.2018
Diffstat (limited to 'dev-db/mysql-init-scripts')
-rw-r--r-- | dev-db/mysql-init-scripts/Manifest | 13 | ||||
-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.2 | 194 | ||||
-rw-r--r-- | dev-db/mysql-init-scripts/files/init.d-s6-2.2 | 163 | ||||
-rw-r--r-- | dev-db/mysql-init-scripts/files/init.d-supervise | 180 | ||||
-rw-r--r-- | dev-db/mysql-init-scripts/files/log-s6 | 11 | ||||
-rw-r--r-- | dev-db/mysql-init-scripts/files/logrotate.mysql | 14 | ||||
-rw-r--r-- | dev-db/mysql-init-scripts/files/mysql.conf | 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 | 8 | ||||
-rw-r--r-- | dev-db/mysql-init-scripts/mysql-init-scripts-2.2-r3.ebuild | 64 |
14 files changed, 0 insertions, 880 deletions
diff --git a/dev-db/mysql-init-scripts/Manifest b/dev-db/mysql-init-scripts/Manifest deleted file mode 100644 index 6a277479a5c2..000000000000 --- a/dev-db/mysql-init-scripts/Manifest +++ /dev/null @@ -1,13 +0,0 @@ -AUX conf.d-2.0 2944 BLAKE2B 94b94868e840267c5bf604226af11a4c806f48111472e417d725b51f48e38b8a4bd0dbbe8f9dba95c2250590c23bc0f9bc301203fdf399cd141055e54fa9a067 SHA512 2781e2caefed0c8be9c612f92cecf5a572dc17b97519034637a2b3f98a88af02dd8973f6c6b2af524d235067df6866409d1fe9d56740bfd0efb09948073c8d3b -AUX init.d-2.2 5720 BLAKE2B 6d81ee1275439e59926ac0f2dbaa2f4b1ceed130f9047d7f6c19d27927fb0432701121554a77205f6f803c9f4e6e0ffdbf96ac8d6ff2f7ca149637585b859df4 SHA512 df1c85d527ec1805bf5ca22f5db37714ace6c55e4095ecf2e4cc1c4dad8a4aa6539282b11cb9c6a85b72e2412e1fbae90d85a8dfcda077bedb667bf784e4c613 -AUX init.d-s6-2.2 4978 BLAKE2B bdda1ecc926a5236be865487cca01974865c7d0c8e115b0bf4e5f791293ffd3be3976730fc21d3a4f2f81389d88c40d6b427d67dfeaa694ba8487e19f03b0aa1 SHA512 77d3691837a08d117dbaa8252368ab54f1bbd5969189261e498e57cacd158b87e5600b3c2ce62b25f72b8bf5b9a08f26d56fe93b6e2e96bc58c208d92ef1befc -AUX init.d-supervise 5303 BLAKE2B ae0b30000d74028866512156e6d565e1bc4456680521e7af9195ffed2a7b75b0504c313b78d3629d0d2894c0ea980e8d8049624862200e64e82087e37bbb8d53 SHA512 149710600ca4780434e07101aa164e84d7decd86fdc4c2a8c5c37d2a965aff4626408885f98456773c6f8fb27eeeb5ab7028ccf73088739368c45f8ad9d587c4 -AUX log-s6 373 BLAKE2B e4579d7288c7e05c1abba55c29759eb3b0b49153c7b134e28b7308ba83e33c409d82ddc2e9794d0a398330b5b72ac33d165c6140259857ce3204928b20c2f6ac SHA512 e686bc0a4d9d5daf263c5a5f6bb883da1495feb9910f93c791af2d858b2adbf7cfc785c336ce470609f3f7bd12dabb97b470453bd67316feef5ed4df9ee9307d -AUX logrotate.mysql 368 BLAKE2B 0eb2411785e53e4ec521139943633bf7f765df532e89d626bf2387c9bc8012c4caba019615feb13eeef48e8ace55207b5d93469b323488a93f24f62a3ba32ac0 SHA512 71e6aeec21e220157fb07a609475c626e0698f556db20f5e2876117d1d46a2f297520b2124458e8b8077f9a128e27540ffa1b77cadc5eb372a502edfb804fed1 -AUX mysql.conf 37 BLAKE2B 66f792ee51ca18e692e069a2627dd3a122dadbd0cf9097857da049ade3cc21fdc45bd7725c68def448a2763e5688ade468c17f53776b780be6f6d2a0245b1b7c SHA512 7b4940666d21f09fda47e2b24bd252c83af4372f34f1b3410c59d8f439fb7c0166d5a1b8d857bf67f2263f15d95a0fa0b67f225152a18c180b67d28f4ceb5f00 -AUX mysqld-v2.service 1208 BLAKE2B 9dad4cfa0a102fe7705f4d1db042d0c65d66e669b51b8536f0dbdc1ca3d149076ee71a373efc0cfa3ca900e87c8ccb91aa0beeb10bf8634553ddc3309ba3b2c9 SHA512 2016ea7d9c8fe9447675ec9612655f1b955a3f04ce417ebb1c7a8a86a29ef176a5737a9bd3bc5e45508e2e23a764a763897881b511f65635193291e212fd58aa -AUX mysqld-wait-ready 1758 BLAKE2B 2a6ccc105cedc78e4e8acf77fd13f8083af80b3488572079bd063fac263382cd37a85cf40c02ffa8a9a047f146402dc2f7bfef91d47487003b64c84cdc8196c9 SHA512 ad4a850d045149df156c8236ae114e94887626e3ca803dea9bcc3909349043b51357a71ac17d694e0217f7856e076a0736267fc1ea3dedbef8a319fc9014c01b -AUX mysqld_at-v2.service 1170 BLAKE2B d02f7ee3549d273d309e8e6e5cd8c2f987c6feab42bb330367c14df6932a887f7740ca6c28ecd15aba8bf2f89c33854345d773134630a5e8cd5ce8b99a8b6667 SHA512 a91eb574925afc0096e668799f9806b1cfa4c808ffab26dab5df1934db0dd8059a5e7913b0fdc3374f41e14cc72a6450890c9d746d3ff2de873af91199a71ee0 -AUX run-s6 268 BLAKE2B ebc9c74527257e1a35a4671afe2d34d9ed9868db0e0f33eebe655b31317a4ceeb02affe471ad49007534a9ce0a9399d9f14af664488ae753e207cf97d467107b SHA512 82be247195f6d9d230b063e9bda393bab8855382c2f3e5eb4d427fc1eb7e23dbd8c90939224ff2b5e4116a5c9d3f26ebdc9b9f548cde91e7c1217f4f8500c0d3 -EBUILD mysql-init-scripts-2.2-r3.ebuild 1870 BLAKE2B db7efaaa2e6487c5fa38f4e4a77251611a449c72ec2ba964f6f720f57f08721995646997ba1ccf0c6a299e6c5ca39c6f17211303f1e5434c5d9b1497565ce4c1 SHA512 900ed926adc1860da8665c3afeac3081f4bfd189a2207b91942bd268b34e9f3dc8f8a26640d2a2a78b9f3134b898c0101b0001012a04bf0227c600308637ca45 -MISC metadata.xml 243 BLAKE2B f247f748a23e4cda2f518ad7e4e53b9027ff08ec62289010e6dfc8cd2ad49412430c4095e80f2156c8e6f1226bcda0163b4faae83759550f79e9998928398713 SHA512 7c227a1fadd8d61aae9baabeb5d964c93fe0c4d82fb838c83fe0360cf38b24bebf51037726f13188ecd8f52c335368a693b81e74d79ba949576a6dbcb54887a9 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 cecb9a940f14..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="nfsmount" - -# 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.2 b/dev-db/mysql-init-scripts/files/init.d-2.2 deleted file mode 100644 index 5603f9e60310..000000000000 --- a/dev-db/mysql-init-scripts/files/init.d-2.2 +++ /dev/null @@ -1,194 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2018 Gentoo Foundation -# 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_boostrap_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 | egrep -sq '^(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.2 b/dev-db/mysql-init-scripts/files/init.d-s6-2.2 deleted file mode 100644 index 3fa54e949c91..000000000000 --- a/dev-db/mysql-init-scripts/files/init.d-s6-2.2 +++ /dev/null @@ -1,163 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2017 Gentoo Foundation -# 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_boostrap_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 b/dev-db/mysql-init-scripts/files/init.d-supervise deleted file mode 100644 index 5341a6a18d64..000000000000 --- a/dev-db/mysql-init-scripts/files/init.d-supervise +++ /dev/null @@ -1,180 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2017 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -extra_commands="checkconfig" -extra_stopped_commands="boostrap_galera" - -description_checkconfig="Verify the server's configuration" -description_boostrap_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 | egrep -sq '^(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 \ - ${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 \ - ${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 b/dev-db/mysql-init-scripts/files/logrotate.mysql deleted file mode 100644 index afb20c66d479..000000000000 --- a/dev-db/mysql-init-scripts/files/logrotate.mysql +++ /dev/null @@ -1,14 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# 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 -[ -f /var/run/mysqld/mysqld.pid ] && /bin/kill -HUP `cat /var/run/mysqld/mysqld.pid` -endscript -} diff --git a/dev-db/mysql-init-scripts/files/mysql.conf b/dev-db/mysql-init-scripts/files/mysql.conf deleted file mode 100644 index 74cd5f836e76..000000000000 --- a/dev-db/mysql-init-scripts/files/mysql.conf +++ /dev/null @@ -1 +0,0 @@ -d /var/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 357d7d00f109..000000000000 --- a/dev-db/mysql-init-scripts/metadata.xml +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> -<pkgmetadata> - <maintainer type="project"> - <email>mysql-bugs@gentoo.org</email> - <name>MySQL</name> - </maintainer> -</pkgmetadata> diff --git a/dev-db/mysql-init-scripts/mysql-init-scripts-2.2-r3.ebuild b/dev-db/mysql-init-scripts/mysql-init-scripts-2.2-r3.ebuild deleted file mode 100644 index 8fa8c8341de8..000000000000 --- a/dev-db/mysql-init-scripts/mysql-init-scripts-2.2-r3.ebuild +++ /dev/null @@ -1,64 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=6 - -inherit systemd s6 - -DESCRIPTION="Gentoo MySQL init scripts." -HOMEPAGE="https://www.gentoo.org/" -SRC_URI="" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd" -IUSE="" - -DEPEND="" -# 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 -RDEPEND=" - !<dev-db/mysql-5.1 - !<sys-apps/openrc-0.16.2 - " -# Need to set S due to PMS saying we need it existing, but no SRC_URI -S=${WORKDIR} - -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.2" "mysql-s6" - s6_install_service mysql "${FILESDIR}/run-s6" - s6_install_service mysql/log "${FILESDIR}/log-s6" - fi - - newinitd "${FILESDIR}/init.d-2.2" "mysql" - newinitd "${FILESDIR}/init.d-supervise" "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" - systemd_dotmpfilesd "${FILESDIR}/mysql.conf" - - insinto /etc/logrotate.d - newins "${FILESDIR}/logrotate.mysql" "mysql" -} - -pkg_postinst() { - if use amd64 || use x86 ; then - elog "" - 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" - fi - - elog "" - 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." - einfo "" -} |