From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 58227138334 for ; Tue, 31 Jul 2018 23:54:07 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id C757AE07F2; Tue, 31 Jul 2018 23:54:05 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 76D75E07F2 for ; Tue, 31 Jul 2018 23:54:05 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id EA880335C9A for ; Tue, 31 Jul 2018 23:54:02 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 18DC9376 for ; Tue, 31 Jul 2018 23:54:01 +0000 (UTC) From: "Patrick McLean" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Patrick McLean" Message-ID: <1533080621.7833f7fabee43f2fa1a53ae1a7cc54544c957d3c.chutzpah@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: sys-cluster/ceph/ X-VCS-Repository: repo/gentoo X-VCS-Files: sys-cluster/ceph/Manifest sys-cluster/ceph/ceph-13.2.1.ebuild sys-cluster/ceph/metadata.xml X-VCS-Directories: sys-cluster/ceph/ X-VCS-Committer: chutzpah X-VCS-Committer-Name: Patrick McLean X-VCS-Revision: 7833f7fabee43f2fa1a53ae1a7cc54544c957d3c X-VCS-Branch: master Date: Tue, 31 Jul 2018 23:54:01 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: 25fef8c3-73b8-4682-8dc2-284ce465f1dd X-Archives-Hash: 5eba0b01c4bccc1319e7457e7092b1a9 commit: 7833f7fabee43f2fa1a53ae1a7cc54544c957d3c Author: Patrick McLean gentoo org> AuthorDate: Tue Jul 31 23:05:20 2018 +0000 Commit: Patrick McLean gentoo org> CommitDate: Tue Jul 31 23:43:41 2018 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7833f7fa sys-cluster/ceph: Version bump to 13.2.1 Bug: https://bugs.gentoo.org/638750 Package-Manager: Portage-2.3.44, Repoman-2.3.10 sys-cluster/ceph/Manifest | 2 + sys-cluster/ceph/ceph-13.2.1.ebuild | 348 ++++++++++++++++++++++++++++++++++++ sys-cluster/ceph/metadata.xml | 2 +- 3 files changed, 351 insertions(+), 1 deletion(-) diff --git a/sys-cluster/ceph/Manifest b/sys-cluster/ceph/Manifest index a648a5b1f70..437a4828096 100644 --- a/sys-cluster/ceph/Manifest +++ b/sys-cluster/ceph/Manifest @@ -9,3 +9,5 @@ DIST ceph-12.2.5.tar.gz 78758920 BLAKE2B 0e4a515ff80fdd39e8f1afd737434c7dc2a218f DIST ceph-12.2.7.tar.gz 78783279 BLAKE2B 9058a5e408b3431cf0e8c28b44f95f6eb12f029697348eb6879efa9db4ad6a3b52b1040f484919a3f1781ac3a4aa72af3b8905760480fd3f3724dbceeab4eb07 SHA512 dde75a41c31cca54d4a680b0b93e28680a23f912a348cccca65e55e600c315bbfe3ced008d758fe8ba1e801a9d6e5f8079cc157ec5eef8916b86f487f42064ea DIST ceph-13.2.0-frontend-node-modules.tar.xz 44082360 BLAKE2B 0f1bcf1c5154bdc352c9314853099b314b76c76cf1c3ee2447803ea5d79d02bbc91a0f8aefa6df96b47fc2d89e531354ac485752d2dbb762498d3eaba273635a SHA512 ad3c38b055ba886215aea07c4afb202cc3bfb64cdebc816eb4f124f76f2401e04e5645859b2a780828bf8eddcc0093b36d4d9935b703ac2bbc4212e913abeb8c DIST ceph-13.2.0.tar.gz 89077825 BLAKE2B 07ee531a672e436df8f218ecb4a2425d33911771dcf9c63fa9fc36a868c93a101029d8a8c69fcea026882ac466e6032da76be0dc961ceb03845b955fb5762add SHA512 2524ad5a868024463e1a1edc5bd9c3f7bc1f58e47bf8d331902ed53206120abc6a427dd9c1d657131e67efd955d6ed8052b6c3fed8658aa905d58ac58ee62973 +DIST ceph-13.2.1-frontend-node-modules.tar.xz 44352460 BLAKE2B 0a0099e60f0b36d48928dcda3f69dbb00e14a9a9e10c688ecbeb3daa3adbe339655652a43924043fe140ce1754525be2abed61f1ad5f24779fa4ff890d2b7cf6 SHA512 3938e8cadb6385cdaf023fe55ab5f202e44ed80173b128e3b76fc4849556cea90ce5d8884a928b93776b0509b5aef814f1078ba5e44a9d644b43a871aea06dd9 +DIST ceph-13.2.1.tar.gz 90786830 BLAKE2B e0884a039ff0e8a1705d8f31f4dcf4cd8ab8989d7c2fa703417038ff9a6cf7b0fbca09abceb901970fbb2dd9a1dc87c2500fec38a2bfca86a9a6dcaab15be991 SHA512 411218ea6037bdf9425a741720ea89876e893e64fbfa518c9584ba581f805fde2c82b13ed47313279665e5d20f36223fc8d5c27055b580c72b22c2004e4da81b diff --git a/sys-cluster/ceph/ceph-13.2.1.ebuild b/sys-cluster/ceph/ceph-13.2.1.ebuild new file mode 100644 index 00000000000..15c74939685 --- /dev/null +++ b/sys-cluster/ceph/ceph-13.2.1.ebuild @@ -0,0 +1,348 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python{2_7,3_{4,5,6}} ) +DISTUTILS_OPTIONAL=1 + +inherit check-reqs cmake-utils distutils-r1 flag-o-matic multiprocessing \ + python-r1 udev user readme.gentoo-r1 toolchain-funcs systemd + +if [[ ${PV} == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/ceph/ceph.git" + SRC_URI="" +else + SRC_URI="https://download.ceph.com/tarballs/${P}.tar.gz + mgr-frontend? ( mirror://gentoo/${P}-frontend-node-modules.tar.xz )" + KEYWORDS="~amd64 ~x86" +fi + +DESCRIPTION="Ceph distributed filesystem" +HOMEPAGE="https://ceph.com/" + +LICENSE="LGPL-2.1 CC-BY-SA-3.0 GPL-2 BSD Boost-1.0 MIT" +SLOT="0" + +CPU_FLAGS_X86=(sse{,2,3,4_1,4_2} ssse3) + +IUSE="babeltrace cephfs dpdk fuse jemalloc ldap lttng +mgr mgr-frontend" +IUSE+=" +radosgw +ssl static-libs +system-boost systemd +tcmalloc test" +IUSE+=" xfs zfs" +IUSE+=" $(printf "cpu_flags_x86_%s\n" ${CPU_FLAGS_X86[@]})" + +# unbundling code commented out pending bugs 584056 and 584058 +#>=dev-libs/jerasure-2.0.0-r1 +#>=dev-libs/gf-complete-2.0.0 +COMMON_DEPEND=" + virtual/libudev:= + app-arch/bzip2:=[static-libs?] + app-arch/lz4:=[static-libs?] + app-arch/snappy:=[static-libs?] + app-arch/zstd:=[static-libs?] + app-misc/jq:=[static-libs?] + dev-libs/crypto++:=[static-libs?] + dev-libs/leveldb:=[snappy,static-libs?,tcmalloc?] + dev-libs/libaio:=[static-libs?] + dev-libs/libxml2:=[static-libs?] + dev-libs/nss:= + sys-auth/oath-toolkit:= + sys-apps/keyutils:=[static-libs?] + sys-apps/util-linux:=[static-libs?] + sys-libs/zlib:=[static-libs?] + babeltrace? ( dev-util/babeltrace ) + ldap? ( net-nds/openldap:=[static-libs?] ) + lttng? ( dev-util/lttng-ust:= ) + fuse? ( sys-fs/fuse:0=[static-libs?] ) + ssl? ( dev-libs/openssl:=[static-libs?] ) + xfs? ( sys-fs/xfsprogs:=[static-libs?] ) + zfs? ( sys-fs/zfs:=[static-libs?] ) + mgr? ( + net-libs/nodejs-8.10 + ) + mgr-frontend? ( net-libs/nodejs[npm] ) + radosgw? ( + dev-libs/expat:=[static-libs?] + dev-libs/openssl:=[static-libs?] + net-misc/curl:=[curl_ssl_openssl,static-libs?] + ) + system-boost? ( + >=dev-libs/boost-1.67:=[threads,context,python,static-libs?,${PYTHON_USEDEP}] + ) + jemalloc? ( dev-libs/jemalloc:=[static-libs?] ) + !jemalloc? ( >=dev-util/google-perftools-2.4:=[static-libs?] ) + ${PYTHON_DEPS} + " +DEPEND="${COMMON_DEPEND} + amd64? ( dev-lang/yasm ) + x86? ( dev-lang/yasm ) + app-arch/cpio + dev-python/cython[${PYTHON_USEDEP}] + dev-python/sphinx + dev-util/cunit + dev-util/gperf + dev-util/valgrind + sys-apps/which + sys-devel/bc + virtual/pkgconfig + test? ( + dev-python/coverage[${PYTHON_USEDEP}] + dev-python/tox[${PYTHON_USEDEP}] + dev-python/virtualenv[${PYTHON_USEDEP}] + sys-apps/grep[pcre] + sys-fs/btrfs-progs + )" +RDEPEND="${COMMON_DEPEND} + net-misc/socat + sys-apps/gptfdisk + sys-block/parted + sys-fs/cryptsetup + sys-fs/lvm2 + !/dev/null || die + emake VERBOSE=1 all + + # python modules are only compiled with "make install" so we need to do this to + # prevent doing a bunch of compilation in src_install + DESTDIR="${T}" emake VERBOSE=1 install + popd >/dev/null || die +} + +src_compile() { + if use mgr-frontend; then + # npm likes trying to create /etc/npm + addpredict /etc/npm + + # subshell to avoid polluting the environment + ( + python_setup 'python2*' + + export CC="$(tc-getCC)" CXX="$(tc-getCXX)" + + set -e + + pushd src/pybind/mgr/dashboard/frontend >/dev/null + + npm install --offline --no-save --verbose --parseable \ + --no-rollback --no-progress --fetch-retries=0 \ + --nodedir="/usr/include/node" \ + --cache="${WORKDIR}/${P}-npm-cache" \ + --registry="http://npmjs.invalid" \ + --sass-binary-site="http://sass.invalid" + + # this tends to get installed to the system if it's still here + rm -rf node_modules/node-sass/build + + popd >/dev/null + + ) || die "failed to build node modules for mgr-frontend" + fi + + cmake-utils_src_make all + + # we have to do this here to prevent from building everything multiple times + BUILD_DIR="${CMAKE_BUILD_DIR}" python_copy_sources + python_foreach_impl python_compile +} + +src_test() { + make check || die "make check failed" +} + +python_install() { + local CMAKE_USE_DIR="${S}" + pushd "${BUILD_DIR}/src/pybind" >/dev/null || die + DESTDIR="${ED}" emake install + popd >/dev/null || die +} + +src_install() { + cmake-utils_src_install + python_foreach_impl python_install + + prune_libtool_files --all + + exeinto /usr/$(get_libdir)/ceph + newexe "${CMAKE_BUILD_DIR}/bin/init-ceph" ceph_init.sh + + insinto /etc/logrotate.d/ + newins "${FILESDIR}"/ceph.logrotate ${PN} + + keepdir /var/lib/${PN}{,/tmp} /var/log/${PN}/stat + + fowners -R ceph:ceph /var/lib/ceph /var/log/ceph + + newinitd "${FILESDIR}/rbdmap.initd" rbdmap + newinitd "${FILESDIR}/${PN}.initd-r8" ${PN} + newconfd "${FILESDIR}/${PN}.confd-r4" ${PN} + + insinto /etc/sysctl.d + newins "${FILESDIR}"/sysctld 90-${PN}.conf + + use tcmalloc && newenvd "${FILESDIR}"/envd-tcmalloc 99${PN}-tcmalloc + + # units aren't installed by the build system unless systemd is enabled + # so no point installing these with the USE flag disabled + if use systemd; then + systemd_install_serviced "${FILESDIR}/ceph-mds_at.service.conf" \ + "ceph-mds@.service" + + systemd_install_serviced "${FILESDIR}/ceph-osd_at.service.conf" \ + "ceph-osd@.service" + fi + + udev_dorules udev/*.rules + + readme.gentoo_create_doc + + python_setup 'python3*' + + # bug #630232 + sed -i -r "s:${T//:/\\:}/${EPYTHON}:/usr:" "${ED}"/usr/bin/ceph \ + || die "sed failed" + + python_fix_shebang "${ED}"/usr/{,s}bin/ + + # python_fix_shebang apparently is not idempotent + sed -i -r 's:(/usr/lib/python-exec/python[0-9]\.[0-9]/python)[0-9]\.[0-9]:\1:' \ + "${ED}"/usr/{sbin/ceph-disk,bin/ceph-detect-init} || die "sed failed" +} + +pkg_postinst() { + readme.gentoo_print_elog +} diff --git a/sys-cluster/ceph/metadata.xml b/sys-cluster/ceph/metadata.xml index 0a4f8d20e2e..01d3158a614 100644 --- a/sys-cluster/ceph/metadata.xml +++ b/sys-cluster/ceph/metadata.xml @@ -27,7 +27,7 @@ Use libaio as asynchronous input/output library Add support for LTTng Build the ceph-mgr daemon - Build/install the mgr/dashboard frontend with npm + Build the mgr/dashboard frontend with npm, this is not required for the frontend to work Use dev-libs/nss for cryptography Add radosgw support Use system dev-libs/boost instead of the bundled one