Gentoo Archives: gentoo-commits

From: Patrick McLean <chutzpah@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-cluster/ceph/, sys-cluster/ceph/files/
Date: Thu, 29 Nov 2018 23:57:51
Message-Id: 1543535787.bbbd36a51a7a23e7d7d40e881e4d703a3a4ac25f.chutzpah@gentoo
1 commit: bbbd36a51a7a23e7d7d40e881e4d703a3a4ac25f
2 Author: Patrick McLean <chutzpah <AT> gentoo <DOT> org>
3 AuthorDate: Thu Nov 29 23:56:27 2018 +0000
4 Commit: Patrick McLean <chutzpah <AT> gentoo <DOT> org>
5 CommitDate: Thu Nov 29 23:56:27 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bbbd36a5
7
8 sys-cluster/ceph: Version bump to 12.2.10
9
10 Also update init script for radosgw args (bug #670066) and bluefs
11 mounting (bug #661912)
12
13 Bug: https://bugs.gentoo.org/670066
14 Bug: https://bugs.gentoo.org/661912
15 Package-Manager: Portage-2.3.52, Repoman-2.3.12
16 Signed-off-by: Patrick McLean <chutzpah <AT> gentoo.org>
17
18 sys-cluster/ceph/Manifest | 1 +
19 sys-cluster/ceph/ceph-12.2.10.ebuild | 308 ++++++++++++++++++++++++++++++++++
20 sys-cluster/ceph/files/ceph.confd-r5 | 15 ++
21 sys-cluster/ceph/files/ceph.initd-r10 | 108 ++++++++++++
22 4 files changed, 432 insertions(+)
23
24 diff --git a/sys-cluster/ceph/Manifest b/sys-cluster/ceph/Manifest
25 index f92a3fd2365..23aa8981d97 100644
26 --- a/sys-cluster/ceph/Manifest
27 +++ b/sys-cluster/ceph/Manifest
28 @@ -1,5 +1,6 @@
29 DIST ceph-10.2.10.tar.gz 14573701 BLAKE2B 78c68deb8537cae8394b4d35569983431e938eff42b01f448dea68016b33ca5770c83d1e1d382bfd6c8164d5259e821779c6515f8c8fb4d5d52ee90b7df43180 SHA512 883d1b8340aaefc7a1eee4bbfb5b1d1cc15bffed8f35fb1e8fb86b1208a4d0d16753eb6c688ea0e661c4877d3d148b2b6c2b41620c4e8a61e47c69f46f98e537
30 DIST ceph-10.2.3.tar.gz 11596171 BLAKE2B c24c879649f0d42f58cfb1d03701797bc685d83c157031156d13308c731412a4a0149b658193722b358ebf0c4f9760d9664668cd797b69d207e81dc572f49700 SHA512 9de1e6851fc343d2c52c72cec3f7887d998d5b588f1251ee3a1fda14427badfa10408e6691fb03a374a10f4ec9844868423fee70fbbe2c0d962af98481412f19
31 +DIST ceph-12.2.10.tar.gz 78884870 BLAKE2B 321d8256fc6659be3da2ce348e022e79ded63783925c02d3140ffa7fed5528a2b03388f0dfcdf536c81eec7b2484c6db9def8aefb1d5d335c86bad525977977b SHA512 2195a04bf937dba6af61389132240661126ef32e9fd86ca75af27a33c712053b15aa89b52c91ced04f06dc880d7c018afa3f26fff78bf313603f4fb73331b80c
32 DIST ceph-12.2.7.tar.gz 78783279 BLAKE2B 9058a5e408b3431cf0e8c28b44f95f6eb12f029697348eb6879efa9db4ad6a3b52b1040f484919a3f1781ac3a4aa72af3b8905760480fd3f3724dbceeab4eb07 SHA512 dde75a41c31cca54d4a680b0b93e28680a23f912a348cccca65e55e600c315bbfe3ced008d758fe8ba1e801a9d6e5f8079cc157ec5eef8916b86f487f42064ea
33 DIST ceph-12.2.8.tar.gz 77243685 BLAKE2B 37c34396a0c276b8d79735e14934ac70da024822c2a060061531c234e03e5d41aad6c41dc64b05c2ce47f03287d0cae9ef9bed67e4a0861b6380c8ce1de4ea69 SHA512 91c5c11aaeef701b3e31c9f8a1192b6b79fd34f3b96c61595c65173c98bfce0009c5b7c9b29764f5e4d4b1f5ac2ca7109fed5ae598c176aba717a34a132fabac
34 DIST ceph-12.2.9.tar.gz 77300470 BLAKE2B 3d3fe24986b890e7dcfc790441a80ad56b9c26f500811d524d0889773d425c88f278135d85cd84036973deb5aa58c4cd1cc9cead60db3f0f825349d73140be73 SHA512 93da6f9012fdb65e74dc1917f54839cb19a25672d53e7ee253553e93abb1a2afb51cd18b27bc82559108e2085e463a3b46003b03627e06a6e2e2312b54d86e92
35
36 diff --git a/sys-cluster/ceph/ceph-12.2.10.ebuild b/sys-cluster/ceph/ceph-12.2.10.ebuild
37 new file mode 100644
38 index 00000000000..58e624596ed
39 --- /dev/null
40 +++ b/sys-cluster/ceph/ceph-12.2.10.ebuild
41 @@ -0,0 +1,308 @@
42 +# Copyright 1999-2018 Gentoo Authors
43 +# Copyright 2017-2018 Sony Interactive Entertainment Inc.
44 +# Distributed under the terms of the GNU General Public License v2
45 +
46 +EAPI=6
47 +PYTHON_COMPAT=( python{2_7,3_{4,5,6}} )
48 +DISTUTILS_OPTIONAL=1
49 +
50 +inherit check-reqs cmake-utils distutils-r1 flag-o-matic multiprocessing \
51 + python-r1 udev user readme.gentoo-r1 systemd
52 +
53 +if [[ ${PV} == *9999* ]]; then
54 + inherit git-r3
55 + EGIT_REPO_URI="https://github.com/ceph/ceph.git"
56 + SRC_URI=""
57 +else
58 + SRC_URI="https://download.ceph.com/tarballs/${P}.tar.gz"
59 + KEYWORDS="~amd64 ~x86"
60 +fi
61 +
62 +DESCRIPTION="Ceph distributed filesystem"
63 +HOMEPAGE="https://ceph.com/"
64 +
65 +LICENSE="LGPL-2.1 CC-BY-SA-3.0 GPL-2 BSD Boost-1.0 MIT"
66 +SLOT="0"
67 +
68 +CPU_FLAGS_X86=(sse{,2,3,4_1,4_2} ssse3)
69 +
70 +IUSE="babeltrace cephfs fuse jemalloc ldap lttng +mgr nss +radosgw +ssl"
71 +IUSE+=" static-libs +system-boost systemd +tcmalloc test xfs zfs"
72 +IUSE+=" $(printf "cpu_flags_x86_%s\n" ${CPU_FLAGS_X86[@]})"
73 +
74 +# unbundling code commented out pending bugs 584056 and 584058
75 +#>=dev-libs/jerasure-2.0.0-r1
76 +#>=dev-libs/gf-complete-2.0.0
77 +COMMON_DEPEND="
78 + virtual/libudev:=
79 + app-arch/bzip2:=[static-libs?]
80 + app-arch/lz4:=[static-libs?]
81 + app-arch/snappy:=[static-libs?]
82 + app-arch/zstd:=[static-libs?]
83 + app-misc/jq:=[static-libs?]
84 + <dev-libs/crypto++-7.0:=[static-libs?]
85 + dev-libs/leveldb:=[snappy,static-libs?,tcmalloc?]
86 + dev-libs/libaio:=[static-libs?]
87 + dev-libs/libxml2:=[static-libs?]
88 + sys-apps/keyutils:=[static-libs?]
89 + sys-apps/util-linux:=[static-libs?]
90 + sys-libs/zlib:=[static-libs?]
91 + babeltrace? ( dev-util/babeltrace )
92 + ldap? ( net-nds/openldap:=[static-libs?] )
93 + lttng? ( dev-util/lttng-ust:= )
94 + nss? ( dev-libs/nss:= )
95 + fuse? ( sys-fs/fuse:0=[static-libs?] )
96 + ssl? ( <dev-libs/openssl-1.1:=[static-libs?] )
97 + xfs? ( sys-fs/xfsprogs:=[static-libs?] )
98 + zfs? ( sys-fs/zfs:=[static-libs?] )
99 + radosgw? (
100 + dev-libs/expat:=[static-libs?]
101 + <dev-libs/openssl-1.1:=[static-libs?]
102 + net-misc/curl:=[curl_ssl_openssl,static-libs?]
103 + )
104 + system-boost? (
105 + =dev-libs/boost-1.66*:=[threads,context,python,static-libs?,${PYTHON_USEDEP}]
106 + )
107 + jemalloc? ( dev-libs/jemalloc:=[static-libs?] )
108 + !jemalloc? ( >=dev-util/google-perftools-2.4:=[static-libs?] )
109 + ${PYTHON_DEPS}
110 + "
111 +DEPEND="${COMMON_DEPEND}
112 + app-arch/cpio
113 + amd64? ( dev-lang/yasm )
114 + x86? ( dev-lang/yasm )
115 + dev-python/cython[${PYTHON_USEDEP}]
116 + dev-python/sphinx
117 + dev-util/gperf
118 + dev-util/valgrind
119 + sys-apps/which
120 + sys-devel/bc
121 + virtual/pkgconfig
122 + test? (
123 + dev-python/tox[${PYTHON_USEDEP}]
124 + dev-python/virtualenv[${PYTHON_USEDEP}]
125 + sys-apps/grep[pcre]
126 + sys-fs/btrfs-progs
127 + )"
128 +RDEPEND="${COMMON_DEPEND}
129 + net-misc/socat
130 + sys-apps/gptfdisk
131 + sys-block/parted
132 + sys-fs/e2fsprogs
133 + sys-fs/cryptsetup
134 + sys-fs/lvm2
135 + !<sys-apps/openrc-0.26.3
136 + dev-python/cherrypy[${PYTHON_USEDEP}]
137 + dev-python/flask[${PYTHON_USEDEP}]
138 + dev-python/jinja[${PYTHON_USEDEP}]
139 + dev-python/pecan[${PYTHON_USEDEP}]
140 + dev-python/prettytable[${PYTHON_USEDEP}]
141 + dev-python/pyopenssl[${PYTHON_USEDEP}]
142 + dev-python/requests[${PYTHON_USEDEP}]
143 + dev-python/werkzeug[${PYTHON_USEDEP}]
144 + "
145 +REQUIRED_USE="
146 + $(python_gen_useflags 'python2*')
147 + ${PYTHON_REQUIRED_USE}
148 + ?? ( ssl nss )
149 + ?? ( jemalloc tcmalloc )
150 + "
151 +
152 +RESTRICT="test? ( userpriv )"
153 +
154 +# distribution tarball does not include everything needed for tests
155 +RESTRICT+=" test"
156 +
157 +# false positives unless all USE flags are on
158 +CMAKE_WARN_UNUSED_CLI="no"
159 +
160 +STRIP_MASK="/usr/lib*/rados-classes/*"
161 +
162 +UNBUNDLE_LIBS=(
163 + src/erasure-code/jerasure/jerasure
164 + src/erasure-code/jerasure/gf-complete
165 +)
166 +
167 +PATCHES=(
168 + "${FILESDIR}/ceph-12.2.0-use-provided-cpu-flag-values.patch"
169 + "${FILESDIR}/ceph-12.2.0-cflags.patch"
170 + "${FILESDIR}/ceph-12.2.1-systemd-unitdir.patch"
171 + "${FILESDIR}/ceph-12.2.4-boost-build-none-options.patch"
172 + "${FILESDIR}/ceph-12.2.4-cflags.patch"
173 + "${FILESDIR}/ceph-12.2.4-rocksdb-cflags.patch"
174 + "${FILESDIR}/ceph-12.2.5-no-werror.patch"
175 + "${FILESDIR}/ceph-13.2.2-dont-install-sysvinit-script.patch"
176 +)
177 +
178 +check-reqs_export_vars() {
179 + if use amd64; then
180 + CHECKREQS_DISK_BUILD="12G"
181 + CHECKREQS_DISK_USR="460M"
182 + else
183 + CHECKREQS_DISK_BUILD="1400M"
184 + CHECKREQS_DISK_USR="450M"
185 + fi
186 +
187 + export CHECKREQS_DISK_BUILD CHECKREQS_DISK_USR
188 +}
189 +
190 +user_setup() {
191 + enewgroup ceph ${CEPH_GID}
192 + enewuser ceph "${CEPH_UID:--1}" -1 /var/lib/ceph ceph
193 +}
194 +
195 +pkg_pretend() {
196 + check-reqs_export_vars
197 + check-reqs_pkg_pretend
198 +}
199 +
200 +pkg_setup() {
201 + python_setup 'python2*'
202 + check-reqs_export_vars
203 + check-reqs_pkg_setup
204 + user_setup
205 +}
206 +
207 +src_prepare() {
208 + cmake-utils_src_prepare
209 +
210 + if use system-boost; then
211 + eapply "${FILESDIR}/ceph-12.2.5-boost-sonames.patch"
212 + fi
213 +
214 + # remove tests that need root access
215 + rm src/test/cli/ceph-authtool/cap*.t
216 +
217 + #rm -rf "${UNBUNDLE_LIBS[@]}"
218 +}
219 +
220 +ceph_src_configure() {
221 + local flag
222 + local mycmakeargs=(
223 + -DWITH_BABELTRACE=$(usex babeltrace)
224 + -DWITH_CEPHFS=$(usex cephfs)
225 + -DWITH_FUSE=$(usex fuse)
226 + -DWITH_LTTNG=$(usex lttng)
227 + -DWITH_MGR=$(usex mgr)
228 + -DWITH_NSS=$(usex nss)
229 + -DWITH_OPENLDAP=$(usex ldap)
230 + -DWITH_RADOSGW=$(usex radosgw)
231 + -DWITH_SSL=$(usex ssl)
232 + -DWITH_SYSTEMD=$(usex systemd)
233 + -DWITH_TESTS=$(usex test)
234 + -DWITH_XFS=$(usex xfs)
235 + -DWITH_ZFS=$(usex zfs)
236 + -DENABLE_SHARED=$(usex static-libs '' 'yes' 'no')
237 + -DALLOCATOR=$(usex tcmalloc 'tcmalloc' '' "$(usex jemalloc 'jemalloc' '' 'libc' '')" '')
238 + -DWITH_SYSTEM_BOOST=$(usex system-boost)
239 + -DBOOST_J=$(makeopts_jobs)
240 + -DWITH_RDMA=no
241 + -DSYSTEMD_UNITDIR=$(systemd_get_systemunitdir)
242 + -DEPYTHON_VERSION="${EPYTHON#python}"
243 + )
244 + if use amd64 || use x86; then
245 + for flag in ${CPU_FLAGS_X86[@]}; do
246 + mycmakeargs+=("$(usex cpu_flags_x86_${flag} "-DHAVE_INTEL_${flag^^}=1")")
247 + done
248 + fi
249 +
250 + rm -f "${BUILD_DIR:-${S}}/CMakeCache.txt"
251 + cmake-utils_src_configure
252 +
253 + # bug #630232
254 + sed -i "s:\"${T//:\\:}/${EPYTHON}/bin/python\":\"${PYTHON}\":" \
255 + "${BUILD_DIR:-${CMAKE_BUILD_DIR:-${S}}}"/include/acconfig.h \
256 + || die "sed failed"
257 +}
258 +
259 +src_configure() {
260 + ceph_src_configure
261 +}
262 +
263 +python_compile() {
264 + local CMAKE_USE_DIR="${S}"
265 +
266 + ceph_src_configure
267 + pushd "${BUILD_DIR}/src/pybind" >/dev/null || die
268 + emake VERBOSE=1 all
269 +
270 + # python modules are only compiled with "make install" so we need to do this to
271 + # prevent doing a bunch of compilation in src_install
272 + DESTDIR="${T}" emake VERBOSE=1 install
273 + popd >/dev/null || die
274 +}
275 +
276 +src_compile() {
277 + cmake-utils_src_make all
278 +
279 + # we have to do this here to prevent from building everything multiple times
280 + BUILD_DIR="${CMAKE_BUILD_DIR}" python_copy_sources
281 + python_foreach_impl python_compile
282 +}
283 +
284 +src_test() {
285 + make check || die "make check failed"
286 +}
287 +
288 +python_install() {
289 + local CMAKE_USE_DIR="${S}"
290 + pushd "${BUILD_DIR}/src/pybind" >/dev/null || die
291 + DESTDIR="${D}" emake install
292 + popd >/dev/null || die
293 +}
294 +
295 +src_install() {
296 + cmake-utils_src_install
297 + python_foreach_impl python_install
298 +
299 + prune_libtool_files --all
300 +
301 + exeinto /usr/$(get_libdir)/ceph
302 + newexe "${CMAKE_BUILD_DIR}/bin/init-ceph" ceph_init.sh
303 +
304 + insinto /etc/logrotate.d/
305 + newins "${FILESDIR}"/ceph.logrotate-r1 ${PN}
306 +
307 + keepdir /var/lib/${PN}{,/tmp} /var/log/${PN}/stat
308 +
309 + fowners -R ceph:ceph /var/lib/ceph /var/log/ceph
310 +
311 + newinitd "${FILESDIR}/rbdmap.initd" rbdmap
312 + newinitd "${FILESDIR}/${PN}.initd-r10" ${PN}
313 + newconfd "${FILESDIR}/${PN}.confd-r5" ${PN}
314 +
315 + insinto /etc/sysctl.d
316 + newins "${FILESDIR}"/sysctld 90-${PN}.conf
317 +
318 + use tcmalloc && newenvd "${FILESDIR}"/envd-tcmalloc 99${PN}-tcmalloc
319 +
320 + # units aren't installed by the build system unless systemd is enabled
321 + # so no point installing these with the USE flag disabled
322 + if use systemd; then
323 + systemd_install_serviced "${FILESDIR}/ceph-mds_at.service.conf" \
324 + "ceph-mds@.service"
325 +
326 + systemd_install_serviced "${FILESDIR}/ceph-osd_at.service.conf" \
327 + "ceph-osd@.service"
328 + fi
329 +
330 + udev_dorules udev/*.rules
331 +
332 + readme.gentoo_create_doc
333 +
334 + python_setup 'python2*'
335 +
336 + # bug #630232
337 + sed -i -r "s:${T//:/\\:}/${EPYTHON}:/usr:" "${ED}"/usr/bin/ceph \
338 + || die "sed failed"
339 +
340 + python_fix_shebang "${ED}"/usr/{,s}bin/
341 +
342 + # python_fix_shebang apparently is not idempotent
343 + sed -i -r 's:(/usr/lib/python-exec/python[0-9]\.[0-9]/python)[0-9]\.[0-9]:\1:' \
344 + "${ED}"/usr/{sbin/ceph-disk,bin/ceph-detect-init} || die "sed failed"
345 +}
346 +
347 +pkg_postinst() {
348 + readme.gentoo_print_elog
349 +}
350
351 diff --git a/sys-cluster/ceph/files/ceph.confd-r5 b/sys-cluster/ceph/files/ceph.confd-r5
352 new file mode 100644
353 index 00000000000..5d114392d16
354 --- /dev/null
355 +++ b/sys-cluster/ceph/files/ceph.confd-r5
356 @@ -0,0 +1,15 @@
357 +# Example
358 +
359 +# default ceph conf file
360 +#ceph_conf="/etc/ceph/ceph.conf"
361 +
362 +# Set RADOSGW_WANT_NAME_PARAM=y in order to make the init script add
363 +# a --name=client.${RC_SVCNAME} parameter to command_args for radosgw.*
364 +# service instances. This will make the service use a key by the name
365 +# of client.${RC_SVCNAME} instead of the default client.admin key.
366 +# A setting like this in the ceph config file can be used to customize
367 +# the rgw_data and keyring paths used by radosgw instances:
368 +# [client]
369 +# rgw_data = /var/lib/ceph/radosgw/$cluster-$id
370 +# keyring = /var/lib/ceph/radosgw/$cluster-$id/keyring
371 +RADOSGW_WANT_NAME_PARAM=n
372
373 diff --git a/sys-cluster/ceph/files/ceph.initd-r10 b/sys-cluster/ceph/files/ceph.initd-r10
374 new file mode 100644
375 index 00000000000..2f5150fc340
376 --- /dev/null
377 +++ b/sys-cluster/ceph/files/ceph.initd-r10
378 @@ -0,0 +1,108 @@
379 +#!/sbin/openrc-run
380 +
381 +ceph_conf="${ceph_conf:-/etc/ceph/ceph.conf}"
382 +extra_commands="reload"
383 +daemon_type="${RC_SVCNAME#ceph-}"
384 +daemon_type="${daemon_type%%.*}"
385 +daemon_id="${RC_SVCNAME#ceph-*.}"
386 +daemon_id="${daemon_id:-0}"
387 +: ${rundir:=/run/ceph}
388 +: ${user:=ceph}
389 +: ${group:=ceph}
390 +: ${rc_ulimit:=-n 1048576 -u 1048576}
391 +
392 +pidfile="${rundir}/supervisor-${daemon_type}.${daemon_id}.pid"
393 +daemon_pidfile="${rundir}/${daemon_type}.${daemon_id}.pid"
394 +
395 +command="/usr/bin/${RC_SVCNAME%%.*}"
396 +command_args="-i ${daemon_id} --pid-file ${daemon_pidfile} -c ${ceph_conf}"
397 +command_args_foreground="--foreground"
398 +
399 +retry="${CEPH_TERMTIMEOUT:-TERM/120/KILL/5}"
400 +start_stop_daemon_args="--user ${user} --group ${group}"
401 +supervise_daemon_args="--user ${user} --group ${group}"
402 +
403 +: ${supervisor:=supervise-daemon}
404 +: ${stdout:=/var/log/ceph/ceph}
405 +: ${stderr:=/var/log/ceph/ceph}
406 +: ${respawn_delay:=10}
407 +: ${respawn_max:=5}
408 +: ${respawn_period:=1800}
409 +
410 +: ${osd_respawn_delay:=15}
411 +: ${osd_respawn_max:=10}
412 +
413 +: ${radosgw_respawn_max:=5}
414 +: ${radosgw_respawn_period:=30}
415 +
416 +depend() {
417 + use dns logger
418 + after net ntpd ntp-client chronyd
419 + before netmount
420 +}
421 +
422 +is_type_valid() {
423 + case ${daemon_type} in
424 + mon|mds|osd|mgr|radosgw) return 0;;
425 + *) return 1;;
426 + esac
427 +}
428 +
429 +start_pre() {
430 + local logdir
431 + export CEPH_CONF="${ceph_conf}"
432 +
433 + checkpath -d -q -o "${user}:${group}" "${rundir}"
434 +
435 + if ! is_type_valid ;then
436 + eerror "Please give valid Ceph Server Type: mds, mon, osd"
437 + return 1
438 +
439 + elif pgrep -f "[c]eph-${daemon_type} -i ${daemon_id} "; then
440 + eerror "${daemon_type}.${daemon_id} is still running, refusing to start"
441 + return 1
442 + fi
443 +
444 + if [ -n "${bluestore_osd_fsid}" ]; then
445 + einfo "Mounting Bluestore"
446 + ceph-volume lvm activate "${daemon_id}" "${bluestore_osd_fsid}" --no-systemd
447 + fi
448 +
449 + if [ ${daemon_type} = radosgw ] && [ ${RADOSGW_WANT_NAME_PARAM} = y ]; then
450 + command_args="${command_args} --name client.${daemon_id}"
451 + fi
452 +
453 + local arg_name arg_val
454 + for arg_name in std{out,err} respawn_{delay,max,period}; do
455 + eval arg_val="\${${daemon_type}_${arg_name}}"
456 +
457 + if [ -z "${arg_val}" ]; then
458 + eval arg_val="\${${arg_name}}"
459 + else
460 + eval "${arg_name}=\"${arg_val}\""
461 + fi
462 +
463 + if [ "${arg_name}" = "stderr" ] || [ "${arg_name}" = "stdout" ]; then
464 + local log_file log_postfix
465 + log_postfix=".${daemon_id}-${arg_name}.log"
466 + log_file="${arg_val}"
467 +
468 + if [ "${log_file}" != /dev/null ]; then
469 + log_file="${log_file}${log_postfix}"
470 + fi
471 +
472 + log_dir="$(dirname "${log_file}")"
473 + checkpath -m 0755 -o "${user}:${group}" -d "${log_dir}"
474 +
475 + supervise_daemon_args="${supervise_daemon_args} --${arg_name//_/-}=${log_file}"
476 + fi
477 + done
478 +}
479 +
480 +reload() {
481 + ebegin "Reloading Ceph ${daemon_type}.${daemon_id}"
482 + start-stop-daemon --signal 1 "${start_stop_daemon_args}"
483 + eend ${?}
484 +}
485 +
486 +# vim:ft=gentoo-init-d:ts=4:sts=4:sw=4:noet: