diff options
Diffstat (limited to 'testing/ceph')
-rw-r--r-- | testing/ceph/APKBUILD | 380 | ||||
-rw-r--r-- | testing/ceph/allperms.patch | 13 |
2 files changed, 180 insertions, 213 deletions
diff --git a/testing/ceph/APKBUILD b/testing/ceph/APKBUILD index cc93e3b78f..0a4facc340 100644 --- a/testing/ceph/APKBUILD +++ b/testing/ceph/APKBUILD @@ -1,22 +1,19 @@ # Contributor: John Coyle <dx9err@gmail.com> # Maintainer: John Coyle <dx9err@gmail.com> - -: ${WITH_TESTS:=OFF} - pkgname=ceph -pkgver=11.0.1 -pkgrel=9 -pkgdesc="User space components of the Ceph file system" +pkgver=11.1.1 +pkgrel=0 +pkgdesc="Ceph is a distributed object store and file system" pkgusers="ceph" pkggroups="ceph" url="http://ceph.com" -#arch="x86_64" +arch="x86_64" 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" - makedepends=" acl-dev argp-standalone + bc boost-dev btrfs-progs bzip2-dev @@ -24,23 +21,23 @@ makedepends=" coreutils cryptsetup curl-dev - cython cython-dev diffutils eudev-dev expat-dev fcgi-dev - findutils flex fuse fuse-dev git + grep jq keyutils-dev leveldb-dev libaio-dev libatomic_ops-dev libedit-dev + libressl-dev libtirpc-dev libtool libxml2-dev @@ -48,11 +45,10 @@ makedepends=" lvm2-dev nss-dev openldap-dev - libressl-dev parted procps python-dev - py2-pip + py-pip py-nose py-sphinx py-virtualenv @@ -60,25 +56,26 @@ makedepends=" rpcgen snappy-dev userspace-rcu-dev + util-linux xfsprogs-dev xmlstarlet yasm " -#source="$pkgname-$pkgver.tar.gz::https://github.com/ceph/ceph/archive/v$pkgver.tar.gz" -source="https://github.com/dx9/ceph/releases/download/11.0.1/ceph-$pkgver-beta1.tar.bz2 - make-sure-PATH_MAX-is-defined.patch" - +source="http://download.ceph.com/tarballs/ceph_$pkgver.orig.tar.gz + allperms.patch" subpackages=" $pkgname-base $pkgname-common $pkgname-mds + $pkgname-mgr $pkgname-mon $pkgname-fuse:ceph_fuse $pkgname-radosgw $pkgname-osd $pkgname-doc $pkgname-bash-completion:bash_completion + $pkgname-test:ceph_test rbd-fuse:rbd_fuse rbd-mirror:rbd_mirror rbd-nbd:rbd_nbd @@ -91,15 +88,15 @@ subpackages=" librgw librgw-dev:librgw_dev py-rados:py_rados + py-rgw:py_rgw 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 +_ceph_uid=167 +_ceph_gid=167 _prefix=/usr _bindir=$_prefix/bin @@ -116,39 +113,44 @@ _sysconfdir=/etc _udevrulesdir=/etc/udev/rules.d _python_sitelib=/usr/lib/python2.7/site-packages +build() { + export CEPH_BUILD_VIRTUALENV="$builddir" + + mkdir -p "$builddir"/build + cd "$builddir"/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=ON \ + -DWITH_PYTHON3=OFF \ + -DWITH_LTTNG=OFF \ + -DWITH_SYSTEM_BOOST=ON \ + -DWITH_EMBEDDED=OFF + make -_builddir="$srcdir"/$pkgname-$pkgver +} -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 \ - || return 1 - make +check() { + cd "$builddir"/build + ctest } package() { - cd "$_builddir" - cd build + cd "$builddir"/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/etc-rbdmap "$pkgdir"$_sysconfdir/ceph/rbdmap install -m 0644 -D src/logrotate.conf "$pkgdir"$_sysconfdir/logrotate.d/ceph @@ -168,7 +170,6 @@ base() { depends=" ceph-common cryptsetup - findutils librbd librados libcephfs @@ -180,43 +181,17 @@ base() { 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 - for file in crushtool monmaptool osdmaptool ceph-run ceph-detect-init; do - mv "$pkgdir"$_bindir/$file "$subpkgdir"$_bindir - done - - 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 - + _pkg $_docdir/ceph sample.ceph.conf sample.fetch_config + _pkg $_bindir crushtool monmaptool osdmaptool ceph-run ceph-detect-init + _pkg $_sbindir ceph-create-keys mount.ceph + _pkg $_libexecdir/ceph ceph_common.sh + _pkg $_libdir/rados-classes *.so* + _pkg $_libdir/ceph/erasure-code libec_*.so* + _pkg $_libdir/ceph/compressor libceph_*.so* + _pkg $_sysconfdir/logrotate.d ceph + _pkg $_python_sitelib ceph_detect_init* ceph_disk* for dir in tmp bootstrap-osd bootstrap-mds bootstrap-rgw; do - install -m 750 -o ceph -g ceph -d \ + install -m 750 -o $_ceph_uid -g $_ceph_gid -d \ "$subpkgdir"$_localstatedir/lib/ceph/$dir done } @@ -226,9 +201,7 @@ common() { depends="py-rados py-rbd py-cephfs" install="$pkgname-common.pre-install" - mkdir -p "$subpkgdir"$_bindir - for file in \ - ceph \ + _pkg $_bindir ceph \ ceph-authtool \ ceph-conf \ ceph-dencoder \ @@ -244,236 +217,201 @@ common() { rbd-replay-many \ rbdmap \ ceph-post-file \ - ceph-brag \ - ; do \ - mv "$pkgdir"$_bindir/$file "$subpkgdir"$_bindir - done - - 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 + ceph-brag + _pkg $_datadir/ceph known_hosts_drop.ceph.com id_rsa_drop.ceph.com \ + id_rsa_drop.ceph.com.pub + _pkg $_sysconfdir/ceph rbdmap + _pkg $_python_sitelib ceph_argparse.py* ceph_daemon.py* + _pkg $_udevrulesdir 50-rbd.rules + install -m 3770 -o $_ceph_uid -g $_ceph_gid -d \ + "$subpkgdir"$_localstatedir/log/ceph + install -m 750 -o $_ceph_uid -g $_ceph_gid -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 + _pkg $_bindir ceph-mds + install -m 750 -o $_ceph_uid -g $_ceph_gid -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 + _pkg $_bindir ceph-mon ceph-rest-api + _pkg $_python_sitelib ceph_rest_api.py* + install -m 750 -o $_ceph_uid -g $_ceph_gid -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 + _pkg $_bindir ceph-fuse + _pkg $_sbindir mount.fuse.ceph } 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 + + _pkg $_bindir rbd-fuse } 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 + + _pkg $_bindir rbd-mirror } 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 + + _pkg $_bindir rbd-nbd } 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 + + _pkg $_bindir radosgw radosgw-admin radosgw-token radosgw-object-expirer 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 + depends="ceph-base parted gptfdisk" + + _pkg $_bindir ceph-clsinfo ceph-bluefs-tool ceph-objectstore-tool ceph-osd + _pkg $_sbindir ceph-disk ceph-disk-udev + _pkg $_libexecdir/ceph ceph-osd-prestart.sh + _pkg $_udevrulesdir 60-ceph-by-parttypeuuid.rules 95-ceph-osd.rules + install -m 750 -o $_ceph_uid -g $_ceph_gid -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 + + _pkg $_libdir librados.so.* } 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 + + _pkg $_includedir/rados librados.h \ + librados.hpp \ + buffer.h \ + buffer_fwd.h \ + inline_memory.h \ + page.h \ + crc32c.h \ + rados_types.h \ + rados_types.hpp \ + memory.h + _pkg $_libdir librados.so + _pkg $_bindir librados-config } librgw() { pkgdesc="RADOS gateway client library" depends="librados" - mkdir -p "$subpkgdir"$_libdir - mv "$pkgdir"$_libdir/librgw.so.* "$subpkgdir"$_libdir + + _pkg $_libdir librgw.so.* } 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 + _pkg $_includedir/rados librgw.h rgw_file.h + _pkg $_libdir librgw.so +} + +py_rgw() { + pkgdesc="Python 2 libraries for the RADOS gateway" + depends="librgw py-rados" + + _pkg $_python_sitelib rgw.so rgw-*.egg-info } 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 + + _pkg $_python_sitelib rados.so rados-*.egg-info } libradosstriper() { pkgdesc="RADOS striping library" depends="librados" - mkdir -p "$subpkgdir"$_libdir - mv "$pkgdir"$_libdir/libradosstriper.so.* "$subpkgdir"$_libdir + + _pkg $_libdir libradosstriper.so.* } 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 + + _pkg $_includedir/radosstriper libradosstriper.h libradosstriper.hpp + _pkg $_libdir libradosstriper.so } 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 + _pkg $_libdir librbd.so.* } 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 + + _pkg $_includedir/rbd features.h librbd.h librbd.hpp + _pkg $_libdir librbd.so } 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 + + _pkg $_python_sitelib rbd.so rbd-*.egg-info } libcephfs() { pkgdesc="Ceph distributed file system client library" - mkdir -p "$subpkgdir"/usr/lib - mv "$pkgdir"/usr/lib/libcephfs.so.* "$subpkgdir"/usr/lib + + _pkg $_libdir libcephfs.so.* } 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 + + _pkg $_includedir/cephfs ceph_statx.h libcephfs.h + _pkg $_libdir libcephfs.so } 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 + + _pkg $_python_sitelib cephfs.so cephfs-*.egg-info ceph_volume_client.py* } ceph_test() { - depends="ceph-common" - mkdir -p "$subpkgdir"$_bindir - for file in \ + pkgdesc="Ceph benchmarks and test tools" + depends="ceph-common xmlstarlet" + + _pkg $_bindir ceph-client-debug \ ceph_bench_log \ ceph_kvstorebench \ ceph_multi_stress_watch \ @@ -502,21 +440,37 @@ ceph_test() { ceph-monstore-tool \ ceph-osdomap-tool \ ceph-kvstore-tool \ - ceph-debugpack \ - ceph-client-debug \ - ; do \ - mv "$pkgdir"$_bindir/$file "$subpkgdir"$_bindir - done + ceph-debugpack - mkdir -p "$subpkgdir"$_libdir - mv "$pkgdir"$_libdir/ceph/ceph-monstore-update-crush.sh "$subpkgdir"$_libdir + _pkg $_libdir ceph/ceph-monstore-update-crush.sh } 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 + _pkg $_sysconfdir/bash_completion.d ceph rados radosgw-admin rbd } -sha512sums="d8bc28a25b9444134527f22856a6f0ea97b21a6100b0576a092d8988da0f191aca1e59bd14129361aee53f3032295169117ff02207e2ff361bb526461b9c5462 ceph-11.0.1-beta1.tar.bz2 -a1843f78a2fa68d1a77e3b3c90581d5a96fb378267216584b2668fb4143ddaa4cd5c9d66ff2135aff44d488bca7a0cad23a8b3d782bd01342e515e3ec7c6403d make-sure-PATH_MAX-is-defined.patch" + +mgr() { + pkgdesc="Ceph Manager Daemon" + depends="ceph-base" + + _pkg $_bindir ceph-mgr + _pkg $_libdir/ceph mgr + + install -m 750 -o $_ceph_uid -g $_ceph_gid -d \ + "$subpkgdir"$_localstatedir/lib/ceph/mgr +} + +_pkg() { + local path=$1 + shift + local files=$@ + mkdir -p "$subpkgdir"$path + for _file in $files; do + mv "$pkgdir"$path/$_file "$subpkgdir"$path + done +} + +sha512sums="9c1c6d211bfc1e5f59e3f0115c09c7f2d8a279eda6ac9ad4b5d3533fe7c6a43d983b20a60a2597fa1340bc94521fb44125c276f18ae9870bc08ff0b02d842a1d ceph_11.1.1.orig.tar.gz +e1becd813ed3f28e2e4a6bef78b3b5117c1c0bb9cabe0ba9c912e0a20b551b6b2667495cddb94acd64192e287144911ff1c11e0d636fe04cc458146cfb0daca8 allperms.patch" diff --git a/testing/ceph/allperms.patch b/testing/ceph/allperms.patch new file mode 100644 index 0000000000..a5ce1c031d --- /dev/null +++ b/testing/ceph/allperms.patch @@ -0,0 +1,13 @@ +--- ceph-11.1.1/src/test/libcephfs/test.cc.orig 2017-01-16 00:17:44.154815630 +0000 ++++ ceph-11.1.1/src/test/libcephfs/test.cc 2017-01-16 00:18:09.642520993 +0000 +@@ -31,6 +31,10 @@ + #include <map> + #include <vector> + ++#ifndef ALLPERMS ++#define ALLPERMS (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO) ++#endif ++ + TEST(LibCephFS, OpenEmptyComponent) { + + pid_t mypid = getpid(); |