Commit Graph

448 Commits

Author SHA1 Message Date
Kefu Chai
50a33dea0a package ceph-monstore-update-crush.sh
Fixes: #11815
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-07-17 19:15:44 +08:00
Kefu Chai
cfc9f493f6 packaging: package libcls_cephfs.so
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-07-16 14:21:03 +08:00
Ken Dreyer
c74a2f86a1 packaging: RGW depends on /etc/mime.types
If the mimecap RPM or mime-support DEB is not installed, then the
/etc/mime.types file is not present on the system. RGW attempts to read
this file during startup, and if the file is not present, RGW logs an
error:

  ext_mime_map_init(): failed to open file=/etc/mime.types ret=-2

Make the radosgw package depend on the mailcap/mime-support packages so
that /etc/mime.types is always available on RGW systems.

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

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-07-15 09:14:15 -06:00
Gregory Farnum
d2f3ca8377 Merge pull request #4939 from ceph/wip-offline-backward
cephfs-data-scan (offline backward file recovery)

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2015-07-14 11:42:48 +01:00
Nathan Cutler
53072b9019 ceph.spec.in: do not run fdupes, even on SLE/openSUSE
In openSUSE there is a policy to use %fdupes in the spec file if RPMLINT
complains about duplicate files wasting space in the filesystem.

However, RPMLINT is not so complaining, so drop fdupes.

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

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-07-13 18:17:22 +02:00
John Spray
cd6ead3583 packaging: add cephfs-data-scan
Signed-off-by: John Spray <john.spray@redhat.com>
2015-07-13 14:05:17 +01:00
Nathan Cutler
8a56c48259 packaging: add find and which dependencies
The postrotate script in src/logrotate.conf uses the which and find utilities
to do its work. Although logrotate itself is only a Recommends, I think which
and find are so ubiquitous that it makes sense to have them as hard
dependencies.

Also, I checked and the package names which and findutils are the same on all
the RPM distros we are currently targeting in the spec file.

In Debian, find is also in a package called findutils while the package
containing 'which' is called debianutils.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-07-09 21:59:39 +02:00
Ken Dreyer
6861db790a Merge pull request #5187 from SUSE/wip-12261
ceph.spec.in: install 95-ceph-osd.rules, mount.ceph, and mount.fuse.c…

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2015-07-09 13:44:57 -06:00
Ken Dreyer
ed6670fc1d Merge pull request #5181 from SUSE/wip-snappy-devel
ceph.spec.in: snappy-devel for all supported distros

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2015-07-09 13:43:41 -06:00
Ken Dreyer
52e1db9bf7 Merge pull request #5180 from SUSE/wip-add-missing-specfile-bit
ceph.spec.in: add missing -%{release}

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2015-07-09 13:42:42 -06:00
Ken Dreyer
6a6d82d92a Merge pull request #5076 from SUSE/wip-logrotate-hard-dependency
packaging: make logrotate a hard dependency across all distros

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>

 Conflicts:
	debian/control
2015-07-09 13:40:23 -06:00
Nathan Cutler
5ce38b9536 ceph.spec.in: install 95-ceph-osd.rules, mount.ceph, and mount.fuse.ceph properly on SUSE
http://tracker.ceph.com/issues/12261 Fixes: #12261

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-07-09 21:38:46 +02:00
Ken Dreyer
bc0992f2c0 Merge pull request #5079 from SUSE/wip-12166
ceph.spec.in: use %_udevrulesdir to eliminate conditionals
2015-07-09 12:55:54 -06:00
Ken Dreyer
90708bc806 Merge pull request #5126 from SUSE/wip-12201
ceph.spec.in: /var/run/ceph fixes

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
Reviewed-by: Boris Ranto <branto@redhat.com>
2015-07-09 10:32:31 -06:00
Nathan Cutler
8aa758ee7a ceph.spec.in: use _udevrulesdir to eliminate conditionals
The conditionals governing where 50-rbd.rules is installed were not doing the
right thing on SUSE distros.

Start using the %_udevrulesdir RPM macro, while taking care that it is defined
and set to the right value. Use it to eliminate some conditionals around other
udev rules files as well.

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

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-07-09 18:17:55 +02:00
Nathan Cutler
e4634ddcc1 ceph.spec.in: snappy-devel for all supported distros
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-07-09 13:28:22 +02:00
Nathan Cutler
1abaebd869 ceph.spec.in: make /var/run/ceph conditional
/var/run/ceph should only be installed on Fedora, RH/CentOS, and
all supported SUSE distros that do not have systemd (e.g. SLE11-SP3).

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-07-09 12:44:19 +02:00
Nathan Cutler
d952d59ae9 ceph.spec.in: add missing -%{release}
We have it everywhere else and I can't think of any reason why
it should be omitted here.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-07-09 12:27:17 +02:00
Boris Ranto
7db8a6a1d1 Remove git build-time dependency
The git command is currently only needed in the src/make_version script.
However, we can simply avoid it by assuming that if the git command is
not installed then the current dir is not a git repo.

Signed-off-by: Boris Ranto <branto@redhat.com>
2015-07-08 17:16:29 +02:00
Nathan Cutler
4dd1e67de5 ceph.spec.in: fix _with_systemd conditional
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-07-03 10:18:44 +02:00
Ken Dreyer
69a22b2920 Merge pull request #5094 from SUSE/wip-sharutils-dupe
ceph.spec.in: remove duplicate BuildRequires: sharutils

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2015-06-29 13:27:28 -06:00
branto1
0537cf241c Merge pull request #5082 from ceph/wip-fedora-babeltrace
ceph.spec.in: fix babeltrace handling on Fedora

Reviewed-by: Ira Cooper ira@samba.org
Reviewed-by: Boris Ranto branto@redhat.com
2015-06-29 16:01:33 +02:00
Nathan Cutler
c418bd9615 ceph.spec.in: remove duplicate BuildRequires: sharutils
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-06-26 20:21:59 +02:00
Nathan Cutler
39c28b9faf ceph.spec.in: fix python-flask dependency for SUSE
In SLE and openSUSE, the package is called python-Flask with an upper-case F.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-06-26 20:12:45 +02:00
Ken Dreyer
909301917e Merge pull request #5086 from SUSE/wip-12173
logrotate.conf: fixes for systemd

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2015-06-26 11:49:59 -06:00
Nathan Cutler
05424a803b logrotate.conf: fixes for systemd
Before this patch, the command 'logrotate -f /etc/logrotate.d/ceph'
was generating an error "Failed to reload ceph.target: Job type reload is not
applicable for unit ceph.target".

Before we issue systemctl reload, check that there is at least
one active ceph-* service. (The hyphen is significant.)

Since we use grep, make the grep package a dependency.

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

Signed-off-by: Tim Serong <tserong@suse.com>
Signed-off-by: Lars Marowsky-Bree <lmb@suse.com>
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-06-26 19:43:44 +02:00
Nathan Cutler
23171c9529 ceph.spec.in: python-argparse only in Python 2.6
argparse is a widely-used Python module for parsing command-line arguments.
Ceph makes heavy use of Python scripts, both in the build environment and on
cluster nodes and clients.

Until Python 2.6, argparse was distributed separately from Python proper.
As of 2.7 it is part of the Python standard library.

Although the python package in a given distro may or may not Provide:
python-argparse, this cannot be relied upon.

Therefore, this commit puts appropriate conditionals around Requires:
python-argparse and BuildRequires: python-argparse. It does so for Red
Hat/CentOS and SUSE only, because the last Fedora version with Python 2.6
was Fedora 13, which is EOL.

argparse is required by both the ceph and ceph-common packages, but since ceph
requires ceph-common, the argparse Requires and BuildRequires need only appear
once, under ceph-common.

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

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-06-26 12:46:46 +02:00
Nathan Cutler
dd212fd1d3 ceph.spec.in: clarify two important comments
First, the terms "common" and "specific" are vague. Second,
"common" can easily be confused with the ceph-common subpackage.

Fix this by rephrasing to "distro-unconditional dependencies" and
"distro-conditional dependencies", respectively.

Third, move the "distro-unconditional dependencies" header so it
is above the part where these dependencies are actually defined.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-06-25 19:55:12 +02:00
Ken Dreyer
c0ace46cc2 Merge pull request #4942 from SUSE/wip-11991
rpm: add missing Java conditionals

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2015-06-25 10:47:21 -06:00
Nathan Cutler
0734cd1ec3 packaging: make logrotate a hard dependency across all distros
Given ceph's reputation for voluminous logs, it makes sense for
logrotate to be a hard dependency for all distros.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-06-25 16:55:10 +02:00
Ken Dreyer
f3e4a91c45 ceph.spec.in: rm reference to EOL Fedoras (< 20)
Fedora 19 is EOL, so there's no need to refer to Fedoras less than 20.
"%{fedora}" effectively implies "Fedora 20 and above".

Reported-by: Ira Cooper <ira@samba.org>
Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-06-24 16:43:53 -06:00
Ken Dreyer
2db9480fa2 ceph.spec.in: package rbd-replay-prep on all Fedoras
This reverts the change in commit
85517d611b. Since we BuildRequire:
libbabeltrace-devel, autoconf will see that babeltrace is available
during the build, and make will build/install the rbd-replay-prep
utility.

This change also simplifies Fedora selection logic, because Fedora 19 is
EOL, so "%{fedora}" implies "Fedora 20 and above".

Reported-by: Ira Cooper <ira@samba.org>
Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-06-24 16:43:30 -06:00
Ken Dreyer
b5e5778b20 Merge pull request #4981 from ceph/wip-fedora-build-fixes
Fix various issues with fedora (f21+) builds

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2015-06-24 14:04:16 -06:00
Owen Synge
43c1784640 ceph.spec.in:BuildRequires sharutils
The uudecode binary is used to build Java-related components, and
uudecode is provided by the sharutils package on all supported
RPM platforms. When building with "--without=cephfs_java",
sharutils is not needed.

Thanks to Nathan Cutler <ncutler@suse.cz> for going into the
details with me.

On OBS without this patch we get the error message:

[  170s] -----------------------------------------------------------------
[  170s] ----- building ceph.spec (user abuild)
[  170s] -----------------------------------------------------------------
[  170s] -----------------------------------------------------------------
[  170s] + exec rpmbuild -ba --define '_srcdefattr (-,root,root)' --nosignature --define 'disturl obs://build.opensuse.org/home:osynge:ceph:wip:wip_obs_fedora/Fedora_20/c0bbbc1e62228ca956ac3d367edc4fba-master' /home/abuild/rpmbuild/SOURCES/ceph.spec
[  170s] error: Failed build dependencies:
[  170s]    sharutils is needed by ceph-1:2+git.1435043747.c1bd02c-1.1.x86_64

With this patch we can build fedora 22 and fedora 20 rpms fine.

Signed-off-by: Owen Synge <osynge@suse.com>
2015-06-24 12:50:11 +02:00
branto1
02ef5cf9b3 Merge pull request #4918 from SUSE/wip_ceph_spec_directories_not_owned_by_a_package
ceph.spec.in: fix:Add missing directories breaking suse rpm build

Reviewed-by: Boris Ranto <branto@redhat.com>
2015-06-19 11:54:29 +02:00
Owen Synge
f1ff3e4dcb ceph.spec.in: fix:Add missing directories breaking build
SUSE builds on OBS are failing with the missing dir entries:

    /usr/share/ceph
    /usr/lib/ceph

On suse these correspond to:

    %dir %{_datarootdir}/ceph/
    %dir %{_libexecdir}/ceph/

Signed-off-by: Owen Synge <osynge@suse.com>
2015-06-19 11:22:19 +02:00
Boris Ranto
85517d611b ceph.spec.in: rbd-replay-prep is not being built on f21+
Signed-off-by: Boris Ranto <branto@redhat.com>
2015-06-18 20:04:57 +02:00
Boris Ranto
15e9e3d497 ceph.spec.in: Require git distro-wide
Git is not a SUSE-only dependency, the build process itself requires it.

Signed-off-by: Boris Ranto <branto@redhat.com>
2015-06-18 20:00:09 +02:00
Gregory Farnum
459369e700 Merge pull request #4931 from yuyuyu101/wip-perf-msgr
PerfMsgr: A tool to benchmark messenger module

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2015-06-18 11:09:56 +01:00
branto1
c7da8b29b0 Merge pull request #4920 from SUSE/wip_ceph_spec_mandir
The file lists in spec files do expect that man pages are built so we better explicitly state that intention in spec file.
2015-06-17 16:16:26 +02:00
Owen Synge
5e756ed371 ceph_spec buildep python sphinx for fedora
Fedora, suse as well as centos >= 7 and rhel >= 7
use the same name for python-sphinx so add these
conditionals.

Note: Until OBS supports EPEL I cant test builds on
centos and rhel so this extention of build deps is
untested by Owen Synge.

Signed-off-by: Owen Synge <osynge@suse.com>
2015-06-17 15:40:17 +02:00
Owen Synge
26eba36f4e Bug fix for man file packaging.
Always compile and install man pages when making rpm.

Signed-off-by: Owen Synge <osynge@suse.com>
2015-06-16 22:38:02 +02:00
Owen Synge
18ba022617 Bug fix for man file packaging.
explicitly included man pages.

Original fix used %{_mandir}/*/* but this could potentially lead to ambiguity
as ceph rpm spec file contains many man pages for different packages.

Signed-off-by: Owen Synge <osynge@suse.com>
2015-06-16 17:49:38 +02:00
Nathan Cutler
04e91bbd92 rpm: add missing Java conditionals
http://tracker.ceph.com/issues/11991 Fixes: #11991

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-06-12 17:50:58 +02:00
Haomai Wang
97ff79d518 debian, rpm: Add ceph_perf_msgr_* to build file
Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
2015-06-12 00:27:31 +08:00
Loic Dachary
bfb92bd14b Merge pull request #4879 from SUSE/wip-master-specfile-cleanup
ceph.spec.in: remove duplicate BuildRequires

Reviewed-by: Loic Dachary <ldachary@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-06-09 07:32:17 +02:00
Nathan Cutler
21f9e1f66c ceph.spec.in: remove duplicate BuildRequires
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-06-08 20:11:15 +02:00
Ken Dreyer
142a6ce711 Merge pull request #4880 from SUSE/wip-master-specfile-cleanup2
ceph.spec.in: move specific BuildRequires to where they belong

Reviewed-by: Loic Dachary <ldachary@redhat.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2015-06-08 10:27:44 -06:00
Nathan Cutler
e1cb7e5104 ceph.spec.in: move specific BuildRequires to where they belong
Move distro-specific BuildRequires out of "common" section and
into the appropriate %if statement in the "specific" section.
Also remove a duplicated "Requires: gdisk".

Signed-off-by: Nathan Cutler <ncutler@suse.com>
Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-06-06 14:14:50 +02:00
Loic Dachary
34e4dd9c8a ceph.spec.in: add missing BuildRequires from SUSE block
The %endif removed by f94f23297c is restored.
The %else removed by 75e87a20da is restored.
The stray %endif added by d8abde3338 is removed.

May 29th, in d8abde3338 Owen added a stray
%endif after

   BuildRequires: gperftools-devel

around line 133. June 3rd, in f94f23297c
Ken correctly attributed the error

     "error: /srv/autobuild-ceph/gitbuilder.git/build/ceph.spec:140: Got a
      %endif with no %if"

to a stray %endif but did not remove the one causing problem and in
doing so created another problem. June 4th, in
75e87a20da Owen incorrectly fixed
this new problem by removing the %else that is near

   BuildRequires: gperftools-devel

around line 116, instead of reverting
f94f23297c. As a consequence the
ceph.spec.in became syntactically correct but implemented an if/else
logic different from what was intended originally and a number of
BuildRequires became exclusive to SUSE and were not installed for CentOS
7 etc.

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

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-06-06 12:05:19 +02:00