Commit Graph

471 Commits

Author SHA1 Message Date
Nathan Cutler
6c803cdf42 ceph.spec.in: test %preun argument is zero for removal-only operations
The %preun section now contains logic for disabling and stopping all the
Ceph systemd units when the ceph package is removed. However, there is no
conditional around it, so the units are disabled and stopped on RPM upgrade
as well as removal.

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

Signed-off-by: Nathan Cutler <ncutler@suse.com>
Signed-off-by: Tim Serong <tserong@suse.com>
2015-08-13 15:36:02 +02:00
Boris Ranto
8c53a5824a ceph.spec.in: Make SELinux opt-out, not opt-in
We should enable SELinux support by default on rpm-based systems that
build with SELinux support to get better QE coverage in future runs.

Signed-off-by: Boris Ranto <branto@redhat.com>
2015-08-05 17:55:53 +02:00
Boris Ranto
c6d6c783f4 ceph.spec.in: stop/start service on policy upgrade/removal
Signed-off-by: Boris Ranto <branto@redhat.com>
2015-08-05 15:21:47 +02:00
Boris Ranto
c52eb995e0 Add initial SELinux support
This patch modifies the build system and spec file to provide a support
for SELinux enforcing in an opt-in matter via ceph-selinux package.

Signed-off-by: Boris Ranto <branto@redhat.com>
2015-08-05 15:21:41 +02:00
Sage Weil
8a67561220 ceph.spec: install the new systemd-based udev rules from ddiss
Signed-off-by: Sage Weil <sage@redhat.com>
2015-08-01 09:58:34 -04:00
Owen Synge
3d6100eb64 ceph.spec.in:Fixup renamed ceph-rgw.conf
This is a simple renaming bug.

Signed-off-by: Owen Synge <osynge@suse.com>
2015-08-01 09:58:34 -04:00
Owen Synge
e3e9548bba ceph.spec.in:fixup bad merge of systemd logic 2015-08-01 09:58:34 -04:00
Sage Weil
69cdfcb15f remove ceph-disk-{activate,prepare} wrappers
These ancient aliases shouldn't be used.  We should have removed them
immediately way back when, honestly.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-08-01 09:58:34 -04:00
Sage Weil
e034c2af43 ceph.spec: ship ceph-disk-* units
Signed-off-by: Sage Weil <sage@redhat.com>
2015-08-01 09:58:34 -04:00
Sage Weil
ac16d83914 ceph.spec: use sysvinit rbdmap script for now
Signed-off-by: Sage Weil <sage@redhat.com>
2015-08-01 09:58:34 -04:00
Sage Weil
d1ce1782ce ceph.spec: no rcceph[-radosgw] with systemd
Signed-off-by: Sage Weil <sage@redhat.com>
2015-08-01 09:58:33 -04:00
Sage Weil
6842a20915 systemd: add ceph-create-keys@ service
Signed-off-by: Sage Weil <sage@redhat.com>
2015-08-01 09:58:33 -04:00
Sage Weil
e283222d0a ceph.spec: include systemd units files
Signed-off-by: Sage Weil <sage@redhat.com>
2015-08-01 09:58:33 -04:00
Owen Synge
1ba4694d7e Autotools to install systemd unit files.
To simplify the spec file we should install as much using autotools
and as little as possible in the spec file.

Signed-off-by: Owen Synge <osynge@suse.com>
2015-08-01 09:58:33 -04:00
Owen Synge
d6213b61ab Add unit files to the spec file.
%{_unitdir}/ceph-mds@.service
%{_unitdir}/ceph-mon@.service
%{_unitdir}/ceph-osd@.service
%{_unitdir}/ceph.target

Signed-off-by: Owen Synge <osynge@suse.com>
2015-08-01 09:58:33 -04:00
Owen Synge
ef961be507 ceph.spec.in: Change redhat defaults for rgw
Changes
		--with-rgw-user=$USER \
		--with-rgw-group=$GROUP \

to
    USER=root
    GROUP=root

from
    USER=apache
    GROUP=apache

Signed-off-by: Owen Synge <osynge@suse.com>
2015-08-01 09:58:33 -04:00
Owen Synge
61240190c7 Added tmpfiles.d for rgw: templated user and group.
tmpfiles.d are part of system.d and define how temporary directories are setup.
rgw needs a socket directory. To do this we template tmpfiles.d user and group
for rgw and fill in the values using autotools.

Note1: Added to spec file.
Note2: Name changed to rgw from radosgw as is preferred name by Sage.
Note3: Adds configure options
    --with-rgw-user=UserName
    --with-rgw-group=GroupName
Note4: Defaults set for debian
Note5: spec file overrides defaults for redhat and suse

Signed-off-by: Owen Synge <osynge@suse.com>
2015-08-01 09:58:33 -04:00
Owen Synge
95db160da3 ceph.spec.in:Update rpm hooks and file content
Take rpm hooks from SUSE rpm and move upstream.
These are tested on SLE12 to include the correct files.

Signed-off-by: Owen Synge <osynge@suse.com>
2015-08-01 09:58:33 -04:00
Sage Weil
bbe84578bf remove rest-bench
This is a weak tool; users should look to cosbench or others instead.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-07-30 13:21:36 -04:00
Ken Dreyer
b8671fd176 Merge pull request #5261 from SUSE/wip-drop-py-requires
ceph.spec.in: drop SUSE-specific %py_requires macro

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2015-07-23 07:48:12 -06:00
Ken Dreyer
fbbed3afaa Merge pull request #5263 from SUSE/wip-apache-not-required
ceph.spec.in: remove SUSE-specific apache2-mod_fcgid dependency

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2015-07-23 07:46:27 -06:00
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
Nathan Cutler
f3f8d3660d ceph.spec.in: remove SUSE-specific apache2-mod_fcgid dependency
This package is no longer required for RGW to work in SUSE.

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

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-07-16 16:49:42 +02:00
Nathan Cutler
cbf6c7b46b ceph.spec.in: drop SUSE-specific %py_requires macro
%py_requires expands to

BuildRequires: /usr/bin/python
PreReq: python = 2.7

The BuildRequires: is already provided, and the PreReq is wrong because
e.g. SLE11-SP3 (a platform we are trying to support) has Python 2.6.

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

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2015-07-16 14:18:12 +02: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