aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Coyle <dx9err@gmail.com>2016-09-13 21:37:26 -0400
committerLeonardo Arena <rnalrd@alpinelinux.org>2016-12-14 11:24:23 +0000
commitb9f52abf3d6699610f521c36af0d877325f94f05 (patch)
tree7800dc60e9b6524b0f8347313ebf13b07ce44392
parent536743cdcc0a172411fd66e45dea2238aa5a309f (diff)
downloadaports-b9f52abf3d6699610f521c36af0d877325f94f05.tar.bz2
aports-b9f52abf3d6699610f521c36af0d877325f94f05.tar.xz
testing/ceph: new aport
http://ceph.com Ceph is a distributed object store and file system.
-rw-r--r--testing/ceph/APKBUILD541
-rw-r--r--testing/ceph/ceph-common.post-deinstall4
-rw-r--r--testing/ceph/ceph-common.pre-install5
3 files changed, 550 insertions, 0 deletions
diff --git a/testing/ceph/APKBUILD b/testing/ceph/APKBUILD
new file mode 100644
index 0000000000..9bfe00a6de
--- /dev/null
+++ b/testing/ceph/APKBUILD
@@ -0,0 +1,541 @@
+# Contributor: John Coyle <dx9err@gmail.com>
+# Maintainer: John Coyle <dx9err@gmail.com>
+
+: ${WITH_TESTS:=OFF}
+
+pkgname=ceph
+pkgver=11.0.1
+pkgrel=0
+pkgdesc="User space components of the Ceph file system"
+pkgusers="ceph"
+pkggroups="ceph"
+url="http://ceph.com"
+arch="all"
+license="LGPL-2.1 and CC-BY-SA-1.0 and GPL-2.0 and BSL-1.0 and GPL-2.0-with-autoconf-exception and BSD-3-Clause and MIT"
+depends="
+ ceph-osd
+ ceph-mds
+ ceph-mon
+ binutils
+"
+
+makedepends="
+ autoconf
+ automake
+ acl-dev
+ argp-standalone
+ binutils
+ boost-dev
+ btrfs-progs
+ build-base
+ bzip2-dev
+ ccache
+ cmake
+ coreutils
+ cryptsetup
+ curl-dev
+ cython
+ cython-dev
+ diffutils
+ eudev-dev
+ expat-dev
+ fcgi-dev
+ findutils
+ flex
+ fuse-dev
+ git
+ grep
+ jq
+ keyutils-dev
+ leveldb-dev
+ libaio-dev
+ libatomic_ops-dev
+ libedit-dev
+ libtirpc-dev
+ libtool
+ libxml2-dev
+ linux-headers
+ lvm2-dev
+ nss-dev
+ openldap-dev
+ libressl-dev
+ parted
+ procps
+ python-dev
+ py2-pip
+ py-nose
+ py-sphinx
+ py-virtualenv
+ readline-dev
+ rpcgen
+ sed
+ snappy-dev
+ userspace-rcu-dev
+ xfsprogs-dev
+ xmlstarlet
+ yasm
+"
+
+case $pkgrel in
+ ''|*[!0-9]*)
+ _builddir="$srcdir"/$pkgname-$pkgver-`echo $pkgrel | sed 's/\./-/'`
+ _sourcepkg=ceph-$pkgver-`echo $pkgrel | sed 's/\./-/'`.tar.bz2
+ ;;
+ *)
+ _builddir="$srcdir"/$pkgname-$pkgver
+ _sourcepkg="http://github.com/dx9/ceph/releases/download/$pkgver/$pkgname-$pkgver-beta1.tar.bz2"
+ ;;
+esac
+
+source="
+ $_sourcepkg
+ $pkgname-common.post-deinstall
+ $pkgname-common.pre-install
+"
+
+subpackages="
+ $pkgname-base
+ $pkgname-common
+ $pkgname-mds
+ $pkgname-mon
+ $pkgname-fuse:ceph_fuse
+ $pkgname-radosgw
+ $pkgname-osd
+ $pkgname-doc
+ $pkgname-bash-completion:bash_completion
+ rbd-fuse:rbd_fuse
+ rbd-mirror:rbd_mirror
+ rbd-nbd:rbd_nbd
+ librbd
+ librbd-dev:librbd_dev
+ libcephfs
+ libcephfs-dev:libcephfs_dev
+ librados
+ librados-dev:librados_dev
+ librgw
+ librgw-dev:librgw_dev
+ py-rados:py_rados
+ libradosstriper
+ libradosstriper-dev:libradosstriper_dev
+ py-rbd:py_rbd
+ py-cephfs:py_cephfs
+"
+
+if [ "$WITH_TESTS" = ON ]; then
+ subpackages="$subpackages $pkgname-test:ceph_test"
+fi
+
+_prefix=/usr
+_bindir=$_prefix/bin
+_datadir=$_prefix/share
+_docdir=$_datadir/doc
+_includedir=$_prefix/include
+_libdir=$_prefix/lib
+_libexecdir=$_prefix/libexec
+_localstatedir=/var
+_mandir=$_datadir/man
+_sbindir=/usr/sbin
+_sysconfdir=/etc
+
+_udevrulesdir=/etc/udev/rules.d
+_python_sitelib=/usr/lib/python2.7/site-packages
+
+build() {
+ cd "$_builddir"
+ mkdir build
+ cd build
+ cmake .. \
+ -DCMAKE_INSTALL_PREFIX=$_prefix \
+ -DCMAKE_INSTALL_LIBDIR=$_libdir \
+ -DCMAKE_INSTALL_LIBEXECDIR=$_libexecdir \
+ -DCMAKE_INSTALL_LOCALSTATEDIR=$_localstatedir \
+ -DCMAKE_INSTALL_SYSCONFDIR=$_sysconfdir \
+ -DCMAKE_INSTALL_DOCDIR=$_docdir/ceph \
+ -DCMAKE_INSTALL_MANDIR=$_mandir \
+ -DWITH_REENTRANT_STRSIGNAL=ON \
+ -DWITH_THREAD_SAFE_RES_QUERY=ON \
+ -DWITH_MANPAGE=OFF \
+ -DWITH_PYTHON3=OFF \
+ -DWITH_TESTS=$WITH_TESTS
+ make
+}
+
+package() {
+ cd "$_builddir"
+ cd build
+ make DESTDIR="$pkgdir" install
+ cd ..
+
+ rm -f "$pkgdir"$_sysconfdir/init.d/ceph
+
+ install -D src/etc-rbdmap "$pkgdir"$_sysconfdir/ceph/rbdmap
+
+ install -m 0644 -D src/logrotate.conf "$pkgdir"$_sysconfdir/logrotate.d/ceph
+
+ chmod 0644 "$pkgdir"$_docdir/ceph/sample.ceph.conf
+ chmod 0644 "$pkgdir"$_docdir/ceph/sample.fetch_config
+
+ # udev rules
+ install -m 0644 -D udev/50-rbd.rules "$pkgdir"$_udevrulesdir/50-rbd.rules
+ install -m 0644 -D udev/60-ceph-by-parttypeuuid.rules "$pkgdir"$_udevrulesdir/60-ceph-by-parttypeuuid.rules
+ install -m 0644 -D udev/95-ceph-osd.rules "$pkgdir"$_udevrulesdir/95-ceph-osd.rules
+}
+
+base() {
+ pkgdesc="Base is the package that includes all the files shared amongst ceph servers"
+ depends="
+ ceph-common
+ cryptsetup
+ findutils
+ grep
+ librbd
+ librados
+ libcephfs
+ librgw
+ logrotate
+ py-requests
+ py-setuptools
+ util-linux
+ which
+ xfsprogs
+ "
+
+ mkdir -p "$subpkgdir"$_docdir/ceph
+ mv "$pkgdir"$_docdir/ceph/sample.ceph.conf "$subpkgdir"$_docdir/ceph/sample.ceph.conf
+ mv "$pkgdir"$_docdir/ceph/sample.fetch_config "$subpkgdir"$_docdir/ceph/sample.fetch_config
+
+ mkdir -p "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/crushtool "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/monmaptool "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/osdmaptool "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-run "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-detect-init "$subpkgdir"$_bindir
+
+ mkdir -p "$subpkgdir"$_sbindir
+ mv "$pkgdir"$_sbindir/ceph-create-keys "$subpkgdir"$_sbindir/ceph-create-keys
+ mv "$pkgdir"$_sbindir/mount.ceph "$subpkgdir"$_sbindir/mount.ceph
+
+ mkdir -p "$subpkgdir"$_libexecdir/ceph
+ mv "$pkgdir"$_libexecdir/ceph/ceph_common.sh "$subpkgdir"$_libexecdir/ceph
+
+ mkdir -p "$subpkgdir"$_libdir/rados-classes
+ mv "$pkgdir"$_libdir/rados-classes/* "$subpkgdir"$_libdir/rados-classes
+ mkdir -p "$subpkgdir"$_libdir/ceph/erasure-code
+ mv "$pkgdir"$_libdir/ceph/erasure-code/libec_*.so* "$subpkgdir"$_libdir/ceph/erasure-code
+ mkdir -p "$subpkgdir"$_libdir/ceph/compressor
+ mv "$pkgdir"$_libdir/ceph/compressor/libceph_*.so* "$subpkgdir"$_libdir/ceph/compressor
+
+ mkdir -p "$subpkgdir"$_sysconfdir/logrotate.d
+ mv "$pkgdir"$_sysconfdir/logrotate.d/ceph "$subpkgdir"$_sysconfdir/logrotate.d/ceph
+
+ mkdir -p "$subpkgdir"$_python_sitelib
+ mv "$pkgdir"$_python_sitelib/ceph_detect_init* "$subpkgdir"$_python_sitelib
+ mv "$pkgdir"$_python_sitelib/ceph_disk* "$subpkgdir"$_python_sitelib
+
+ install -m 750 -o ceph -g ceph -d "$subpkgdir"$_localstatedir/lib/ceph/tmp
+ install -m 750 -o ceph -g ceph -d "$subpkgdir"$_localstatedir/lib/ceph/bootstrap-osd
+ install -m 750 -o ceph -g ceph -d "$subpkgdir"$_localstatedir/lib/ceph/bootstrap-mds
+ install -m 750 -o ceph -g ceph -d "$subpkgdir"$_localstatedir/lib/ceph/bootstrap-rgw
+}
+
+common() {
+ pkgdesc="Common utilities to mount and interact with a ceph storage cluster."
+ depends="py-rados py-rbd py-cephfs"
+ install="
+ $pkgname-common.pre-install
+ $pkgname-common.post-deinstall
+ "
+
+ mkdir -p "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-authtool "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-conf "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-dencoder "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-rbdnamer "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-syn "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-crush-location "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/cephfs-data-scan "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/cephfs-journal-tool "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/cephfs-table-tool "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/rados "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/rbd "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/rbd-replay "$subpkgdir"$_bindir/rbd-replay
+ mv "$pkgdir"$_bindir/rbd-replay-many "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/rbdmap "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-post-file "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-brag "$subpkgdir"$_bindir
+
+ mkdir -p "$subpkgdir"$_datadir/ceph
+ mv "$pkgdir"$_datadir/ceph/known_hosts_drop.ceph.com "$subpkgdir"$_datadir/ceph
+ mv "$pkgdir"$_datadir/ceph/id_rsa_drop.ceph.com "$subpkgdir"$_datadir/ceph
+ mv "$pkgdir"$_datadir/ceph/id_rsa_drop.ceph.com.pub "$subpkgdir"$_datadir/ceph
+
+ mkdir -p "$subpkgdir"$_sysconfdir/ceph
+ mv "$pkgdir"$_sysconfdir/ceph/rbdmap "$subpkgdir"$_sysconfdir/ceph
+
+ mkdir -p "$subpkgdir"$_python_sitelib
+ mv "$pkgdir"$_python_sitelib/ceph_argparse.py* "$subpkgdir"$_python_sitelib
+ mv "$pkgdir"$_python_sitelib/ceph_daemon.py* "$subpkgdir"$_python_sitelib
+
+ mkdir -p "$subpkgdir"$_udevrulesdir
+ mv "$pkgdir"$_udevrulesdir/50-rbd.rules "$subpkgdir"$_udevrulesdir
+
+ install -m 3770 -o ceph -g ceph -d "$subpkgdir"$_localstatedir/log/ceph
+ install -m 750 -o ceph -g ceph -d "$subpkgdir"$_localstatedir/lib/ceph
+}
+
+mds() {
+ pkgdesc="Metadata server daemon for the Ceph distributed file system."
+ depends="ceph-base"
+
+ mkdir -p "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-mds "$subpkgdir"$_bindir
+
+ install -m 750 -o ceph -g ceph -d "$subpkgdir"$_localstatedir/lib/ceph/mds
+}
+
+mon() {
+ pkgdesc="Cluster monitor daemon for the Ceph distributed file system."
+ depends="ceph-base"
+
+ mkdir -p "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-mon "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-rest-api "$subpkgdir"$_bindir
+
+ mkdir -p "$subpkgdir"$_python_sitelib
+ mv "$pkgdir"$_python_sitelib/ceph_rest_api.py* "$subpkgdir"$_python_sitelib
+
+ install -m 750 -o ceph -g ceph -d "$subpkgdir"$_localstatedir/lib/ceph/mon
+}
+
+ceph_fuse() {
+ pkgdesc="FUSE based client for Ceph distributed network file system."
+
+ mkdir -p "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-fuse "$subpkgdir"$_bindirn
+ mkdir -p "$subpkgdir"$_sbindir
+ mv "$pkgdir"$_sbindir/mount.fuse.ceph "$subpkgdir"$_sbindir
+}
+
+rbd_fuse() {
+ pkgdesc="FUSE based client to map Ceph rbd images to files."
+ depends="librados librbd"
+ mkdir -p "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/rbd-fuse "$subpkgdir"$_bindir
+}
+
+rbd_mirror() {
+ pkgdesc="Daemon for mirroring RBD images between Ceph clusters."
+ depends="ceph-common librados"
+ mkdir -p "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/rbd-mirror "$subpkgdir"$_bindir
+}
+
+rbd_nbd() {
+ pkgdesc="NBD based client to map Ceph rbd images to local device."
+ depends="librbd librados"
+ mkdir -p "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/rbd-nbd "$subpkgdir"$_bindir
+}
+
+radosgw() {
+ pkgdesc="Rados REST gateway which implements Amazon's S3 and OpenStack's Swift APIs."
+ depends="ceph-common"
+ mkdir -p "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/radosgw "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/radosgw-admin "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/radosgw-token "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/radosgw-object-expirer "$subpkgdir"$_bindir
+ mkdir -p "$subpkgdir"$_localstatedir/lib/ceph/radosgw
+}
+
+osd() {
+ pkgdesc="Object storage daemon for the Ceph distributed file system."
+ depends="ceph-base parted gptfdisk hdparm"
+
+ mkdir -p "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-clsinfo "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-bluefs-tool "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-objectstore-tool "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-osd "$subpkgdir"$_bindir
+
+ mkdir -p "$subpkgdir"$_sbindir
+ mv "$pkgdir"$_sbindir/ceph-disk "$subpkgdir"$_sbindir
+ mv "$pkgdir"$_sbindir/ceph-disk-udev "$subpkgdir"$_sbindir
+
+ mkdir -p "$subpkgdir"$_libexecdir/ceph
+ mv "$pkgdir"$_libexecdir/ceph/ceph-osd-prestart.sh "$subpkgdir"$_libexecdir/ceph
+
+ mkdir -p "$subpkgdir"$_udevrulesdir
+ mv "$pkgdir"$_udevrulesdir/60-ceph-by-parttypeuuid.rules "$subpkgdir"$_udevrulesdir
+ mv "$pkgdir"$_udevrulesdir/95-ceph-osd.rules "$subpkgdir"$_udevrulesdir
+
+ install -m 750 -o ceph -g ceph -d "$subpkgdir"$_localstatedir/lib/ceph/osd
+}
+
+librados() {
+ pkgdesc="RADOS distributed object store client library"
+ mkdir -p "$subpkgdir"/usr/lib
+ mv "$pkgdir"/usr/lib/librados.so.* "$subpkgdir"/usr/lib
+}
+
+librados_dev() {
+ pkgdesc="RADOS distributed object store client library headers"
+ depends="librados"
+ mkdir -p "$subpkgdir"$_includedir/rados
+ mv "$pkgdir"$_includedir/rados/librados.h "$subpkgdir"$_includedir
+ mv "$pkgdir"$_includedir/rados/librados.hpp "$subpkgdir"$_includedir
+ mv "$pkgdir"$_includedir/rados/buffer.h "$subpkgdir"$_includedir
+ mv "$pkgdir"$_includedir/rados/buffer_fwd.h "$subpkgdir"$_includedir
+ mv "$pkgdir"$_includedir/rados/page.h "$subpkgdir"$_includedir
+ mv "$pkgdir"$_includedir/rados/crc32c.h "$subpkgdir"$_includedir
+ mv "$pkgdir"$_includedir/rados/rados_types.h "$subpkgdir"$_includedir
+ mv "$pkgdir"$_includedir/rados/rados_types.hpp "$subpkgdir"$_includedir
+ mv "$pkgdir"$_includedir/rados/memory.h "$subpkgdir"$_includedir
+ mv "$pkgdir"$_libdir/librados.so "$subpkgdir"$_libdir
+ mv "$pkgdir"$_bindir/librados-config "$subpkgdir"$_bindir
+}
+
+librgw() {
+ pkgdesc="RADOS gateway client library"
+ depends="librados"
+ mkdir -p "$subpkgdir"$_libdir
+ mv "$pkgdir"$_libdir/librgw.so.* "$subpkgdir"$_libdir
+}
+
+librgw_dev() {
+ pkgdesc="RADOS gateway client library headers"
+ depends="librados"
+
+ mkdir -p "$subpkgdir"$_includedir/rados
+ mv "$pkgdir"$_includedir/rados/librgw.h "$subpkgdir"$_includedir/rados
+ mv "$pkgdir"$_includedir/rados/rgw_file.h "$subpkgdir"$_includedir/rados
+ mv "$pkgdir"$_libdir/librgw.so "$subpkgdir"$_libdir
+}
+
+py_rados() {
+ pkgdesc="Python libraries for the RADOS object store"
+ depends="librados"
+ mkdir -p "$subpkgdir"$_python_sitelib
+ mv "$pkgdir"$_python_sitelib/rados.so "$subpkgdir"$_python_sitelib
+ mv "$pkgdir"$_python_sitelib/rados-*.egg-info "$subpkgdir"$_python_sitelib
+}
+
+libradosstriper() {
+ pkgdesc="RADOS striping library"
+ depends="librados"
+ mkdir -p "$subpkgdir"$_libdir
+ mv "$pkgdir"$_libdir/libradosstriper.so.* "$subpkgdir"$_libdir
+}
+
+libradosstriper_dev() {
+ pkgdesc="RADOS striping library headers"
+ depends="libradosstriper librados-dev"
+ mkdir -p "$subpkgdir"$_includedir/radosstriper
+ mv "$pkgdir"$_includedir/radosstriper "$subpkgdir"$_includedir/radosstriper
+ mv "$pkgdir"$_libdir/libradosstriper.so "$subpkgdir"$_libdir
+}
+
+librbd() {
+ pkgdesc="RADOS block device client library"
+ depends="librados"
+ mkdir -p "$subpkgdir"/usr/lib
+ mv "$pkgdir"/usr/lib/librbd.so.* "$subpkgdir"/usr/lib
+
+ # TODO: look into this
+ #mkdir -p /usr/lib64/qemu/
+ #ln -sf %{_libdir}/librbd.so.1 /usr/lib64/qemu/librbd.so.1
+}
+
+librbd_dev() {
+ pkgdesc="RADOS block device client library headers"
+ depends="librbd librados-dev"
+ mkdir -p "$subpkgdir"/usr/include/rbd
+ mv "$pkgdir"/usr/include/rbd "$subpkgdir"/usr/include
+ mv "$pkgdir"/usr/lib/librbd.so "$subpkgdir"/usr/lib
+}
+
+py_rbd() {
+ pkgdesc="Python libraries for the RADOS block device"
+ depends="librbd py-rados"
+ mkdir -p "$subpkgdir"$_python_sitelib
+ mv "$pkgdir"$_python_sitelib/rbd.so "$subpkgdir"$_python_sitelib
+ mv "$pkgdir"$_python_sitelib/rbd-*.egg-info "$subpkgdir"$_python_sitelib
+}
+
+libcephfs() {
+ pkgdesc="Ceph distributed file system client library"
+ mkdir -p "$subpkgdir"/usr/lib
+ mv "$pkgdir"/usr/lib/libcephfs.so.* "$subpkgdir"/usr/lib
+}
+
+libcephfs_dev() {
+ pkgdesc="Ceph distributed file system client library headers"
+ depends="libcephfs librados-devel"
+ mkdir -p "$subpkgdir"/usr/include/cephfs
+ mv "$pkgdir"/usr/include/cephfs "$subpkgdir"/usr/include
+ mv "$pkgdir"/usr/lib/libcephfs.so "$subpkgdir"/usr/lib
+}
+
+py_cephfs() {
+ pkgdesc="Python libraries for Ceph distributed file system"
+ depends="libcephfs py-rados"
+ mkdir -p "$subpkgdir"$_python_sitelib
+ mv "$pkgdir"$_python_sitelib/cephfs.so "$subpkgdir"$_python_sitelib
+ mv "$pkgdir"$_python_sitelib/cephfs-*.egg-info "$subpkgdir"$_python_sitelib
+ mv "$pkgdir"$_python_sitelib/ceph_volume_client.py* "$subpkgdir"$_python_sitelib
+}
+
+ceph_test() {
+ depends="ceph-common"
+ mkdir -p "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_bench_log "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_kvstorebench "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_multi_stress_watch "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_erasure_code "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_erasure_code_benchmark "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_omapbench "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_objectstore_bench "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_perf_objectstore "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_perf_local "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_perf_msgr_client "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_perf_msgr_server "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_psim "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_radosacl "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_rgw_jsonparser "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_rgw_multiparser "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_scratchtool "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_scratchtoolpp "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_smalliobench "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_smalliobenchdumb "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_smalliobenchfs "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_smalliobenchrbd "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_test_* "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_tpbench "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph_xattr_bench "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-coverage "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-monstore-tool "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-osdomap-tool "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-kvstore-tool "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-debugpack "$subpkgdir"$_bindir
+ mv "$pkgdir"$_bindir/ceph-client-debug "$subpkgdir"$_bindir
+
+ mkdir -p "$subpkgdir"$_libdir
+ mv "$pkgdir"$_libdir/ceph/ceph-monstore-update-crush.sh "$subpkgdir"$_libdir
+}
+
+bash_completion() {
+ depends="bash-completion"
+ pkgdesc="Bash completions for Ceph"
+ mkdir -p "$subpkgdir"$_sysconfdir/bash_completion.d
+ mv "$pkgdir"$_sysconfdir/bash_completion.d/* "$subpkgdir"$_sysconfdir/bash_completion.d
+}
+md5sums="edae3d83b4dd0f1316bdc0799ea61769 ceph-11.0.1-beta1.tar.bz2
+f26417b85918f219ad1d68e300c5ab33 ceph-common.post-deinstall
+97b80cd338165e4949561d573341aec6 ceph-common.pre-install"
+sha256sums="fedaff78cd590021087edf168c0649505880cfbd73cde4029933b823f5ac617f ceph-11.0.1-beta1.tar.bz2
+c15d3a2b3a2f78c6ae51c80f7c4ad00c44604050f32c469dcafc41ee2ac2a3d3 ceph-common.post-deinstall
+b0e17f2842d3f755949875edbbbd047ba4bd231bca6305cea874083abb382600 ceph-common.pre-install"
+sha512sums="d8bc28a25b9444134527f22856a6f0ea97b21a6100b0576a092d8988da0f191aca1e59bd14129361aee53f3032295169117ff02207e2ff361bb526461b9c5462 ceph-11.0.1-beta1.tar.bz2
+c892133fe981476d579d1a67d66f6e34fa43dc9135b7ef9caafe8f421841fdff417db465ec8d0e37c39df7cf233553fbf70817d5448e2dcd42b6cc63bdff2b2e ceph-common.post-deinstall
+10dd94274f086a09e6b2719bdbdf9e59ec80f2b09d65c2f51f7cf42557d4ad796ea6d8eb0998dc804b04ea56ff26bc496702af712215bf990742e7d9f24c33d2 ceph-common.pre-install"
diff --git a/testing/ceph/ceph-common.post-deinstall b/testing/ceph/ceph-common.post-deinstall
new file mode 100644
index 0000000000..20edf576ac
--- /dev/null
+++ b/testing/ceph/ceph-common.post-deinstall
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+rm -rf /var/log/ceph
+rm -rf /etc/ceph
diff --git a/testing/ceph/ceph-common.pre-install b/testing/ceph/ceph-common.pre-install
new file mode 100644
index 0000000000..bae4f09dc7
--- /dev/null
+++ b/testing/ceph/ceph-common.pre-install
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+addgroup ceph -g 167 -S 2>/dev/null
+adduser ceph -u 167 -S -G ceph -s /sbin/nologin -h /var/lib/ceph -g "Ceph Daemons" 2> /dev/null
+exit 0