Commit Graph

803 Commits

Author SHA1 Message Date
Yuri Weinstein
1cce4c7f68 Merge pull request #14723 from neha-ojha/objclass-sdk
osd: objclass sdk

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-05-03 09:28:59 -07:00
Yuri Weinstein
f7cf9d14b8 Merge pull request #14870 from smithfarm/wip-gperftools
build/ops: rpm: gperftools-devel >= 2.4

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2017-05-02 08:23:59 -07:00
J. Eric Ivancich
e80a884c3c Modify ceph cmake files to bring in dmclock library and tests. Include
dmclock tests in ceph-test for builds.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
2017-04-28 17:13:56 -04:00
Nathan Cutler
295f56a94c build/ops: rpm: gperftools-devel >= 2.4
There be dragons in older versions . . .

References: http://tracker.ceph.com/issues/13522
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2017-04-28 11:34:31 +02:00
Neha Ojha
b7215b025a objclass-sdk: create SDK for Ceph object classes
Creates an installable version of "src/include/rados/objclass.h" that allows
object classes to be built outside of the Ceph tree. cls_sdk is an example
of such an object class.

Signed-off-by: Neha Ojha <nojha@redhat.com>
2017-04-27 13:05:53 -07:00
huanwen ren
09f32b1ff7 mgr: mkdir bootstrap-mgr
ceph-deploy rely on bootstrap-mgr 
as follows: https://github.com/ceph/ceph-deploy/blob/master/ceph_deploy/mgr.py#L37

Signed-off-by: huanwen ren <ren.huanwen@zte.com.cn>
2017-04-27 16:21:02 +08:00
Nathan Cutler
4b79ac9a72 build/ops: rpm: package crypto on x86_64 only
ca40e12845 added the following lines to the spec
file:

%dir %{_libdir}/ceph/crypto
%{_libdir}/ceph/crypto/libceph_*.so*

and 350932979b made it so those build artifacts
are generated on x86_64 only.

The result is a build failure on non-x86_64 architectures:

error: Directory not found: /home/abuild/rpmbuild/BUILDROOT/ceph-12.0.2+git.1493119152.181baf6-1.1.ppc64le/usr/lib64/ceph/crypto
error: File not found by glob: /home/abuild/rpmbuild/BUILDROOT/ceph-12.0.2+git.1493119152.181baf6-1.1.ppc64le/usr/lib64/ceph/crypto/libceph_*.so*

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2017-04-25 16:47:36 +02:00
Casey Bodley
ca40e12845 ceph.spec: add crypto plugins
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2017-04-05 18:31:17 +02:00
Sage Weil
c618d22d25 Merge pull request #14258 from liewegas/wip-bluestore-tool
ceph-bluestore-tool: rename from bluefs-tool; improve usage
2017-04-05 08:55:36 -05:00
vasukulkarni
b6895fbe0e Merge pull request #14226 from ceph/preset-mon
systemd: remove ceph-create-keys from presets
2017-03-31 09:15:21 -07:00
Sage Weil
973c01d715 os/bluestore: rename ceph-bluefs-tool -> ceph-bluestore-tool
This will do bluestore-y things, not *just* bluefs things.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-03-30 15:18:31 -04:00
Sébastien Han
205cff12b3 systemd: remove all occurence of ceph-create-keys
ceph-create-keys unit file does not exist anymore so there is no need to
call it.

Signed-off-by: Sébastien Han <seb@redhat.com>
2017-03-30 09:32:31 +02:00
Sébastien Han
151c0ce213 systemd: remove ceph-create-keys from presets
ceph-create-keys unit file was removed here:

* 8bcb4646b6
* dc5fe8d415

As a consequence the systemctl preset command now fails to run since the
unit does not exist anymore. Due to the redirection in /dev/null we
don't know what's happening.

Ultimately the mon unit doesn't get enabled and the mon service won't
start after reboot.
Removing the old/non-existent unit makes the command succeed now.

Signed-off-by: Sébastien Han <seb@redhat.com>
2017-03-29 15:47:56 +02:00
Dan Mick
e7485da1fa ceph.spec.in: derive _smp_ncpus and use it for -DBOOST_J
Signed-off-by: Dan Mick <dan.mick@redhat.com>
2017-03-24 10:53:52 -07:00
Dan Mick
1524daab38 ceph.spec.in: move lowmem_build setting of _smp_mflags
Signed-off-by: Dan Mick <dan.mick@redhat.com>
2017-03-24 10:53:52 -07:00
Nathan Cutler
af9f92ca69 build/ops: extend rpm spec file copyright period to 2017
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2017-03-10 16:17:11 +01:00
Nathan Cutler
b679b1dee3 build/ops: make package groups comply with openSUSE guidelines
. . . and put all Group: lines in SUSE conditional blocks.

Fixes: http://tracker.ceph.com/issues/19184
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2017-03-10 16:17:11 +01:00
DanielBar-On
0aeabb2b51 msg/async/rdma: compile with rdma as default
Issue: 992583
Issue: 992580

Change-Id: I24128b87294d3083c44c934f7d4bed554dd1f8a4
Signed-off-by: DanielBar-On <danielbo@mellanox.com>
2017-03-09 14:20:36 +02:00
Sage Weil
faf9cce395 Merge pull request #13744 from smithfarm/wip-19129
build/ops: add psmisc dependency to ceph-base (deb and rpm)

Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-03-02 16:39:46 -06:00
Nathan Cutler
769b695465 build/ops: add psmisc dependency to ceph-base (deb and rpm)
Fixes: http://tracker.ceph.com/issues/19129
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2017-03-02 12:42:34 +01:00
Kefu Chai
9132269421 rpm: disable dwz to speed up valgrind
Fixes: http://tracker.ceph.com/issues/19099
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-03-02 13:08:19 +08:00
Nathan Cutler
374423e0ca Merge pull request #13515 from smithfarm/wip-17613
rpm: build ceph-resource-agents by default

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2017-02-22 00:13:20 +01:00
Nathan Cutler
fcc5529e6d rpm: drop boost build dependencies
The boost library is now a submodule.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2017-02-19 09:32:12 +01:00
Nathan Cutler
3e157bf16c rpm: build ceph-resource-agents by default
To align with debian build

Fixes: http://tracker.ceph.com/issues/17613
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2017-02-18 14:33:25 +01:00
Kefu Chai
221e4bd94e ceph.spec: python-cephfs no longer depends on python-rados
instead, it "Recommends" python-rados. as "Recommends:" is not supported on
older distros, only enable this on SuSE.

because python-cephfs *can* be used without python-rados. the
constructor of LibCephFS accepts a ceph.conf *or* a rados.Rados
instance.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-02-15 14:50:59 +08:00
Nathan Cutler
9bd91dc5d9 Merge pull request #13338 from kshtsk/add-bc-to-deps
ceph.spec.in, debian/control: Add bc to build dependencies

Reviewed-by: Dan Mick <dan.mick@redhat.com>
Reviewed-by: Nathan Cutler <ncutler@suse.com>
2017-02-10 10:28:10 +01:00
Kyr Shatskyy
3ff4be6d68 ceph.spec.in, debian/control: Add bc to build dependencies
The bc is missing for ceph-helpers.sh

Fixes: http://tracker.ceph.com/issues/18876
Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@gmail.com>
2017-02-10 00:43:53 +01:00
Kefu Chai
b641135cf8 packaging: install libceph-common.so* not libceph-common.so.*
Fixes: http://tracker.ceph.com/issues/18692
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-01-27 10:43:42 +08:00
Kefu Chai
e2da2e9fa7 cmake: version libceph-common to appease dpkg-shlibdeps
when packaging debian packages, dpkg-shlibdeps analyzes the linked
shared libraries of the binaries in given package by looking at their
names. but if the name does not include any useful versioning
information, it complains. we have no intention of versioning
libceph-common, as it is merely an internal shared library used by ceph
packages only. but there is no simple way to disable dpkg-shlibdeps'
warning of

  dpkg-shlibdeps: warning: can't extract name and version from library
  name 'libceph-common.so'

other than skipping the dpkg-shlibdeps for the whole package. so let's
just version it anyway.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-01-20 16:34:29 +08:00
Kefu Chai
8f7643792c cmake: turn libcommon into a shared library
prior to this change, libcommon is a convenient library which gets
linked into librados, librbd and libcephfs and all ceph executables.
this incurs some problems:
 - double dose of libcommon in memory space and HDD: waste of memory
   and disk space.
 - if an application links to two libraries including libcommon at the
   same time. take librados and libcephfs as an example, they could
   interfere with each other by changing the other guy's status.
after this change, libcommon is tuned into a shared library and
renamed to libceph-common. it will be installed into $prefix/lib/ceph,
and packaged in librados2.

ceph.spec.in,debian/librados2.install: package libceph-common in
  librados2.
CMakeLists.txt:
  - do not link against libboost-* if not necessary.
  - s/common/ceph-common/g
  - install libceph-common into $prefix/lib/ceph
  - set rpath to $prefix/lib/ceph
  - link against ceph-common if an executable needs access to non public
    symbols in ceph.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-01-10 21:10:53 +08:00
John Spray
63ae8579bf Merge pull request #11542 from batrick/systemd-ceph-fuse
systemd: add ceph-fuse service file

Reviewed-by: John Spray <john.spray@redhat.com>
2016-12-14 13:55:33 +00:00
Sage Weil
b97393cf18 ceph.spec: dump env during build
Signed-off-by: Sage Weil <sage@redhat.com>
2016-12-02 14:05:31 -05:00
Patrick Donnelly
d32d70b783
systemd: add ceph-fuse service file
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2016-12-01 19:51:37 -05:00
Bassam Tabbara
c6067f48ec embedded: Add a skeleton libcephd library
libcephd is a library that contains ceph daemon code
that can be statically linked in other applications.

Added MergeStaticLibraries.cmake that can merge static libraries
to form a bigger one. This approach avoids the need to mess with
STATIC libraries all over the code base.

Signed-off-by: Bassam Tabbara <bassam.tabbara@quantum.com>
2016-11-28 23:48:02 -08:00
Haomai Wang
9b8c306afa ceph.spec: add pybind rgwfile
Signed-off-by: Haomai Wang <haomai@xsky.com>
2016-11-09 18:49:48 +08:00
John Spray
f80c7a8f20 Merge pull request #11647 from ceph/wip-jlayton-cephfs
libcephfs client API overhaul and update

Reviewed-by: John Spray <john.spray@redhat.com>
2016-11-07 21:07:40 +01:00
Owen Synge
c2dd25f2f9 ceph.spec.in:Remove ceph-create-keys for systemd
ceph-create-keys should not be started on boot of mons with systemd so should
not exist in the rpm.

Signed-off-by: Owen Synge <osynge@suse.com>
2016-11-04 23:04:40 +01:00
Sage Weil
1014850996 Merge pull request #10707 from SUSE/wip-fix-suse-usermod
rpm: Remove trailing whitespace in usermod command (SUSE)

Reviewed-by: Nathan Cutler <ncutler@suse.com>
2016-11-03 11:29:02 -05:00
Josh Durgin
ac1c1f6f0e librados-dev: install inline_memory.h
This is needed to compile against the c++ api since
c38869232c

Fixes: http://tracker.ceph.com/issues/17654
Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2016-11-01 15:15:38 -07:00
Yuri Weinstein
a7dae73800 Merge pull request #11365 from badone/wip-lsb_release-remove
common: Remove the runtime dependency on lsb_release

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Ken Dreyer (Red Hat) <kdreyer@redhat.com>
2016-10-31 15:29:25 -07:00
Jeff Layton
939f5bd1c2 rpm: libcephfs1 -> libcephfs2 package rename
Signed-off-by: Jeff Layton <jlayton@redhat.com>
2016-10-25 13:06:29 -04:00
Brad Hubbard
8b1a57fd34 common: Remove the runtime dependency on lsb_release
With modern releases we should be able to make do with the call to
os_release_parse only which uses /etc/os-release which should be available on
most (all?) releases we currently support. this then allows us to remove the
runtime dependency which pulls in several other packages and would be nice to
avoid.

Fixes: http://tracker.ceph.com/issues/17425
Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
2016-10-07 14:54:06 +10:00
Sage Weil
3447601ac3 ceph.spec: fix ceph-mgr version requirement
Signed-off-by: Sage Weil <sage@redhat.com>
2016-09-30 18:13:50 -04:00
Tim Serong
2e9e21eb42 ceph.spec.in: add ceph-mgr package
This adds ceph-mgr following the same pattern used for ceph-mon,
ceph-mds, ceph-osd.  I've removed the boost-python BuildRequire
for SUSE distros, because we don't ship that (the relevant bits
are already included in boost-devel).

NOTE: This gives an installable ceph-mgr, but not necessarily a
runnable ceph-mgr.  This is because ceph-mgr needs the following
python packages:

- CherryPy
- Django
- gevent
- python-dateutil
- djangorestframework

Not all of these are available as distro packages.  For example,
on openSUSE Tumbleweed, we don't have djangorestframework available
in the base distro, and our Django version is 1.9, which seems to
be incompatible with ceph-mgr.  I'm not sure of the situation on
other distros.

Signed-off-by: Tim Serong <tserong@suse.com>
2016-09-29 17:27:08 +01:00
John Spray
88977572f9 packaging: add boost-python dependency
Although ceph-mgr isn't packaged yet, builders
use these files to cue installation of dependencies.

Signed-off-by: John Spray <john.spray@redhat.com>
2016-09-29 17:27:05 +01:00
Ken Dreyer
d4b84a1396 rpm: fix permissions for /etc/ceph/rbdmap
Prior to this change, the RPM packaging would install /etc/ceph/rbdmap
with exectuable permissions. The execute bit is not necessary and does
not match what the Debian packaging does. Remove the execute bit in this
case.

Fixes: http://tracker.ceph.com/issues/17395

Reported-by: Martin Bukatovic <mbukatov@redhat.com>
Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2016-09-23 14:52:16 -06:00
Brad Hubbard
7e71cd2c81 Remove dependency on sdparm/hdparm
The code requiring a dependency on hdparm has been removed so we can remove it
as a dependency.

Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
2016-09-14 21:33:36 +10:00
Ricardo Dias
0f347b82ef
rpm: Added ceph_test_package bcond flag to control the build of ceph-test package
Fixes: http://tracker.ceph.com/issues/16776

Signed-off-by: Ricardo Dias <rdias@suse.com>
2016-09-09 14:12:44 +01:00
Ricardo Dias
06875b5099
rpm: Renamed bcond tests flag to make_check
Signed-off-by: Ricardo Dias <rdias@suse.com>
2016-09-09 12:55:06 +01:00
Ricardo Dias
aaa75aeb2f
rpm: Moved ceph-client-debug from ceph-base to ceph-test package
Signed-off-by: Ricardo Dias <rdias@suse.com>
2016-09-09 12:55:06 +01:00