Commit Graph

628 Commits

Author SHA1 Message Date
Erwan Velu
754d2103e1 packaging: Moving Cython into distro specific area
To get the spec file into a consistent state, let's move Cython into the distro
specific are of the spec file.

Signed-off-by: Erwan Velu <erwan@redhat.com>
2016-03-07 20:27:07 +01:00
Erwan Velu
019d9e17a7 packaging: Adding redhat-rpm-config
Some part of the rados compilation process is expecting redhat-hardened-cc1.
That's surely because of the FORTIFY compilation flag.

redhat-hardened-cc1 is part of the redhat-rpm-config so let's put it as a build
dependency.

The typical output when this issue is occuring :

cd ./pybind/rados; CPPFLAGS="-iquote \/ceph/src/include -D__CEPH__ -D_FILE_OFFSET_BITS=64 -D_THREAD_SAFE -D__STDC_FORMAT_MACROS -D_GNU_SOURCE -DCEPH_LIBDIR=\"/usr/local/lib\" -DCEPH_PKGLIBDIR=\"/usr/local/lib/ceph\" -DGTEST_USE_OWN_TR1_TUPLE=0 -D_REENTRANT    " CFLAGS="-iquote \/ceph/src/include -Wall -Wtype-limits -Wignored-qualifiers -Winit-self -Wpointer-arith  -fno-strict-aliasing -fsigned-char -rdynamic -O2 -g -pipe -Wall -Wp,-U_FORTIFY_SOURCE -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4 -fPIE -fstack-protector-strong  -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free  -g -O2" LDFLAGS="-L\/ceph/src/.libs -Wl,--as-needed  -Wl,-z,relro -Wl,-z,now  -latomic_ops " CYTHON_BUILD_DIR="/ceph/src/build" /bin/python ./setup.py build \
--build-base /ceph/src/build \
--verbose
Compiling rados.pyx because it changed.
Cythonizing rados.pyx
  CXXLD    libradosstriper.la
  CXXLD    librbd.la
  CXXLD    librgw.la
running build
running build_ext
building 'rados' extension
gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -iquote /ceph/src/include -Wall -Wtype-limits -Wignored-qualifiers -Winit-self -Wpointer-arith -fno-strict-aliasing -fsigned-char -rdynamic -O2 -g -pipe -Wall -Wp,-U_FORTIFY_SOURCE -Wp,-D_FORTIFY_SOURCE=2 -fexceptions --param=ssp-buffer-size=4 -fPIE -fstack-protector-strong -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free -g -O2 -iquote /ceph/src/include -D__CEPH__ -D_FILE_OFFSET_BITS=64 -D_THREAD_SAFE -D__STDC_FORMAT_MACROS -D_GNU_SOURCE -DCEPH_LIBDIR=/usr/local/lib -DCEPH_PKGLIBDIR=/usr/local/lib/ceph -DGTEST_USE_OWN_TR1_TUPLE=0 -D_REENTRANT -fPIC -I/usr/include/python2.7 -c /ceph/src/build/rados.c -o /ceph/src/build/temp.linux-x86_64-2.7/ceph/src/build/rados.o
gcc: erreur: /usr/lib/rpm/redhat/redhat-hardened-cc1: Aucun fichier ou dossier de ce type
error: command 'gcc' failed with exit status 1

Signed-off-by: Erwan Velu <erwan@redhat.com>
2016-03-07 20:27:07 +01:00
Erwan Velu
7d48d21a53 packaging: Adding btrfs build require
When doing a 'make check', 'qa/workunits/ceph-helpers.sh' does expect the 'btrfs'
command to be available. If not, that make many tests failing.

Signed-off-by: Erwan Velu <erwan@redhat.com>
2016-03-07 20:27:06 +01:00
Sage Weil
be3544f162 Merge remote-tracking branch 'gh/jewel' 2016-03-03 13:35:13 -05:00
Sage Weil
2786f0bf11 Merge remote-tracking branch 'gh/jewel' 2016-03-02 09:22:28 -05:00
Nathan Cutler
13a5aac669 RPM: move scriptlets from ceph to ceph-base
This addresses the following RPMLINT error:

ceph-base.x86_64: E: library-without-ldconfig-postun (Badness:
300) /usr/lib64/libosd_tp.so.1.0.0
ceph-base.x86_64: E: library-without-ldconfig-postun (Badness:
300) /usr/lib64/libos_tp.so.1.0.0
This package contains a library and provides no %postun scriptlet
containing a call to ldconfig.

ceph-base.x86_64: E: library-without-ldconfig-postin (Badness:
300) /usr/lib64/libosd_tp.so.1.0.0
ceph-base.x86_64: E: library-without-ldconfig-postin (Badness:
300) /usr/lib64/libos_tp.so.1.0.0
This package contains a library and provides no %post scriptlet
containing a call to ldconfig.

http://tracker.ceph.com/issues/14940 Fixes: #14940

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-03-01 22:27:47 +01:00
Nathan Cutler
b87f4efb56 packaging: lsb_release build and runtime dependency
The lsb_release executable is being run in multiple places, not least in
src/common/util.cc, which calls it via shell in the collect_sys_info() code
path.

This patch addresses this issue on SUSE- and Debian-derivatives, as well
as reinstating the dependency for RHEL/Fedora after it was dropped in
1560057226.

http://tracker.ceph.com/issues/14906 Fixes: #14906

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-03-01 15:14:46 +01:00
Nathan Cutler
4de86bf373 RPM: drop duplicate /var/lib/ceph/* directories
As of a recent commit, we had /var/lib/ceph/{mds,mon,osd} directories
packaged twice, once with %attr and once without. Drop the latter.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-02-29 17:36:57 +01:00
Nathan Cutler
275b5f28ad RPM: drop duplicate udev rules from ceph-base
The udev rules should be packaged in ceph-osd only.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-02-29 17:36:57 +01:00
Nathan Cutler
5083980f46 packaging: rados-classes libraries in ceph-base
Drop duplicate rados-classes libraries from ceph-osd and align the RPM
packaging with Debian by using a wildcard to package everything that
autotools puts in the rados-classes directory.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-02-29 17:36:39 +01:00
Mehdi Abaakouk
10f125f765 pybind: move cephfs to Cython
This change moves cephfs binding to Cython.

Closes-bug: #14818
Signed-off-by: Mehdi Abaakouk <sileht@redhat.com>
2016-02-29 10:58:52 +01:00
Nathan Cutler
cba211dfa8 packaging: pkg_resources.py runtime dependency
ceph-detect-init uses pkg_resources.py

http://tracker.ceph.com/issues/14864 Fixes: #14864

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-02-27 14:59:54 +01:00
Nathan Cutler
45ede095e2 ceph.spec.in: move ceph-disk runtime dependency to ceph-osd
ceph-disk uses sgdisk, which resides in the gdisk and gptfdisk packages on
RHEL and SUSE derivatives, respectively.

ceph-disk is included in the ceph-osd package, so the sgdisk dependency
belongs there.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-02-27 14:59:54 +01:00
Nathan Cutler
8b04c2b4e6 ceph.spec.in: drop support for ancient SUSE versions
In Jewel, there is no reason to support anything less than openSUSE 13.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-02-27 14:59:54 +01:00
Nathan Cutler
1a0bb0f687 packaging: move python-flask runtime dependency to ceph-mon, radosgw
Flask is used by MON (in the Ceph REST API) and by RGW (powerdns).
Therefore, it only needs to be in the ceph-mon and ceph-radosgw packages.

Also, this commit encloses the specification of the python-flask runtime
dependency in distro-conditional blocks to account for a minor difference
in the package name between RHEL and SUSE.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-02-27 14:59:54 +01:00
Nathan Cutler
608dd28713 RPM: align runtime dependencies with Debian packaging
The ceph package is now a metapackage, so move all its runtime dependencies
to ceph-base as we already have done in the Debian packaging.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-02-27 14:59:54 +01:00
Sage Weil
aa92f9dff0 rgw: link against system openssl (instead of dlopen at runtime)
Signed-off-by: Sage Weil <sage@redhat.com>
2016-02-25 11:44:10 -08:00
Loic Dachary
fe5aff3bfd Merge pull request #7637 from SUSE/wip-14756
Refrain from versioning and packaging EC testing plugins

Reviewed-by: Boris Ranto <branto@redhat.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2016-02-25 12:41:19 +07:00
Ali Maredia
0cbe3dea69 debian/rpm: split mon/osd/mds server packages
Split up the "ceph" package into four new packages:

  1. ceph-mon
  2. ceph-osd
  3. ceph-mds (already done on Debian)
  4. ceph-base (files shared among multiple servers)

and then:

  5. Make "ceph" into a metapackage that depends on both -mon and -osd
    (and -mds, for RPMs).

To describe the outcome of this change another way:

  For RPMs:
  - "ceph-{mon,osd,mds}" Require: ceph-base.
  - "ceph" will become a metapackage that Requires: ceph-{mon,osd,mds}.

  For DEBs:
  - "ceph-{mon,osd,mds}" will Depends: ceph-base.
  - "ceph" will become a metapackage that Depends: ceph-{mon,osd}.
  - "ceph" will continue to Recommends: ceph-mds

New users should "yum install ceph-mon" or "yum install ceph-osd" (or
"apt-get install ceph-mon", etc) in order to install the exact daemons
that they need.

http://tracker.ceph.com/issues/10587 Fixes: #10587

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2016-02-24 16:47:34 -05:00
Nathan Cutler
b2ae384e80 RPM: refrain from packaging EC testing plugins
Since these plugins are only used in "make check", there is no
reason to package them and doing so causes RPMLINT to complain.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-02-20 09:42:32 +01:00
Nathan Cutler
69291f872e packaging: move ceph_common.sh and ceph-osd-prestart.sh to /usr/lib/ceph
First, it makes sense for both ceph_common.sh and ceph-osd-prestart.sh to
reside in the same directory: make it so.

Second, /usr/lib exists on both RHEL/Fedora and SLE/openSUSE, whereas
the later lacks /usr/libexec. To make this less painful, package
ceph_common.sh and ceph-osd-prestart.sh in /usr/lib/ceph.

Third, allow e.g. FreeBSD to do its own thing by using the $(libexecdir)
Autoconf variable (but set it to /usr/lib in the spec file).

http://tracker.ceph.com/issues/14687 Fixes: #14687

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-02-18 12:19:14 +01:00
Mehdi Abaakouk
82869f004e Fix rpm/deb packaging
Signed-off-by: Mehdi Abaakouk <sileht@redhat.com>
2016-02-17 12:32:38 +01:00
Nathan Cutler
fe14a267c8 ceph.spec.in: declare /usr/share/ceph properly
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-02-15 23:48:38 +01:00
Nathan Cutler
a6cc8ea5d9 rpm: drop systemd_libexec_dir template variable
General cleanup. Actual use of the template variable was discontinued in
7c9fdf44f2.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-02-15 19:54:14 +01:00
Nathan Cutler
5c09a3e4e4 rpm: drop user_rgw and group_rgw template variables
These were originally used to template RGW tmpfiles.d, which was eliminated
by 8e13d89f0f

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-02-15 19:44:07 +01:00
Matt Benjamin
cb9cfb7291 librgw: fix rpm packaging
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2016-02-12 13:07:29 -05:00
Matt Benjamin
de0f86691b librgw: add debian and rpm packaging
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2016-02-12 13:07:24 -05:00
Boris Ranto
bcf12049fb selinux: Allow log files to be located in /var/log/radosgw
We do suggest users to put their logs in /var/log/radosgw in the
documentation at times. We should also label that directory with
ceph_var_log_t so that ceph daemons can also write there.

The commit also updates the man page for this policy. This man page is
automatically generated by

* sepolicy manpage -p . -d ceph_t

and have not been reloaded in a while. Hence, it contains few more
changes than the new radosgw directory.

Signed-off-by: Boris Ranto <branto@redhat.com>
2016-02-11 12:37:51 +01:00
Sage Weil
f22b671434 Merge remote-tracking branch 'gh/jewel' 2016-02-08 17:26:13 -05:00
Nathan Cutler
db9408bfdf ceph.spec.in: add license declaration
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-02-08 18:57:31 +01:00
Nathan Cutler
23ec516b0d ceph.spec.in: add copyright notice
http://tracker.ceph.com/issues/14694 Fixes: #14694

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2016-02-08 16:04:34 +01:00
Jason Dillaman
3c1f0973d7 Merge pull request #7108 from jdurgin/wip-rbd-mirroring
rbd-mirror: daemon skeleton

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2016-02-05 12:02:32 -05:00
Josh Durgin
8f0166728b packaging: add an rbd-mirror package
Depend on ceph-common for /etc/ceph. Startup scripts will be added later.

Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2016-02-04 00:10:16 -08:00
Loic Dachary
5151063fda ceph-disk: refactor into a proper python module
Signed-off-by: Loic Dachary <loic@dachary.org>
2016-02-04 14:36:37 +07:00
Loic Dachary
acd4314cf3 Merge pull request #7284 from ceph/wip-make-remove-libedit
makefile: remove libedit from libclient.la

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Loic Dachary <ldachary@redhat.com>
2016-01-25 13:15:48 +07:00
Gregory Farnum
f3e58a054a Merge pull request #6205 from jcsp/wip-volume-client
pybind: add ceph_volume_client interface for Manila and similar frameworks

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2016-01-19 18:21:23 -08:00
Kefu Chai
f5da159457 makefile: remove dependency on libedit
turns out we are not using it anymore

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-01-20 00:35:50 +08:00
Ved-vampir
300c2f773b Compressor: compressor plugins unit tests
Signed-off-by: Alyona Kiseleva <akiselyova@mirantis.com>
2016-01-14 19:04:19 -05:00
Jason Dillaman
a290d34ebd Merge remote-tracking branch 'upstream/jewel' 2016-01-14 16:21:05 -05:00
Jason Dillaman
953bdfbccd deb,rpm: add valgrind to build dependencies
Provides necessary support for annotating helgrind
false-positives.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-01-13 09:54:29 -05:00
Josh Durgin
ebdb0a9c30 packaging: add build dependency on python devel package
This is required for building python modules with cython, but for some
reason is not a direct dependency (on debian only a recommends) for
the cython package itself.

Refs: #14059
Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2016-01-12 11:12:30 -08:00
John Spray
9d10efbc7a pkg: add ceph_volume_client to python-cephfs
Signed-off-by: John Spray <john.spray@redhat.com>
2016-01-05 00:47:54 +00:00
Loic Dachary
99c7d9a156 Merge pull request #7030 from ceph/wip-detect-bz2-lz4
configure: detect bz2 and lz4

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2016-01-04 14:39:40 +01:00
Sage Weil
f941642ce6 remove ceph_streamtest
This is an ancient obsolete test that is never used.

Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:07:29 -05:00
Sage Weil
0633468874 rpm, debian: package ceph-bluefs-tool
Signed-off-by: Sage Weil <sage@redhat.com>
2016-01-01 13:07:18 -05:00
Kefu Chai
0dc0d425ff Revert "Revert "makefiles: remove bz2-dev from dependencies""
This reverts commit 35542eb6ed.
2015-12-23 01:40:54 -08:00
Sage Weil
91bf56e26b Merge remote-tracking branch 'gh/jewel' 2015-12-16 10:48:15 -05:00
Samuel Just
35542eb6ed Revert "makefiles: remove bz2-dev from dependencies" 2015-12-15 15:12:19 -08:00
Ken Dreyer
ff9712b249 Merge pull request #6692 from SUSE/wip-13860
ceph.spec.in: add BuildRequires: systemd

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2015-12-15 08:28:06 -07:00
Piotr Dałek
a8b5920259 makefiles: remove bz2-dev from dependencies
The only thing that uses bzip2-devel is RocksDB, and it's optional, not
requirement. Drop the bzip2-devel/libbz2-dev dependency entirely, and
let RocksDB use it only if it is already present.

Fixes: #13981
Signed-off-by: Piotr Dałek <piotr.dalek@ts.fujitsu.com>
2015-12-15 14:01:51 +01:00