This commit moves "BuildRequires: python-sphinx" down to the RH/CentOS/Fedora
distro conditional and adds a "BuildRequires: python-Sphinx" to the SUSE
conditional.
Signed-off-by: Jan Matejek <jmatejek@suse.com>
Signed-off-by: Nathan Cutler <ncutler@suse.com>
This commit moves the radosgw-admin command from
the radosgw package to ceph-common.
This allows for a better user expierence since the
radosgw-admin command can be run on any node.
Fixes: http://tracker.ceph.com/issues/19577
Signed-off-by: Ali Maredia <amaredia@redhat.com>
mgr/pybind/fsstatus already required this, but ceph.in does now.
Add as a build dependency as well to handle tests.
Signed-off-by: Dan Mick <dan.mick@redhat.com>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
python3 is not a hard requirement to build ceph, so make it optional.
add an option named "WITH_PYTHON3" which accepts ON, OFF, or CHECK.
Fixes: http://tracker.ceph.com/issues/17103
Signed-off-by: Kefu Chai <kchai@redhat.com>
New interfaces for fetching extended (and selective) stat information.
Additionally, applications can specify AT_NO_ATTR_SYNC in the flags to
indicate that they want to do a "lazy" statx that just hands out the
inode info from the cache, or AT_SYMLINK_NOFOLLOW to avoid following
symlinks when walking the path.
Signed-off-by: Jeff Layton <jlayton@redhat.com>
When building on openSUSE Tumbleweed, nothing seems to create
the various __pycache__ directories (so the build fails because
those files don't exist), and in any case they should be
created automatically at runtime, so shouldn't need to be
packaged. However, the Fedora packaging guidelines suggest
including __pycache__, so I've used a %suse_version guard here.
Fixes: http://tracker.ceph.com/issues/17106
Signed-off-by: Tim Serong <tserong@suse.com>
This allows the make-dist script to create a .spec file that
can actually use the tarball created to build srpms.
Tested on Fedora 24, using mock.
Signed-off-by: Ira Cooper <ira@redhat.com>
We have some %post scriptlets that fire up a shell just to execute a single
command like this:
%postun -n librados2
/sbin/ldconfig
Normally, it would be possible to optimize these as:
%postun -n librados2 -p /sbin/ldconfig
Except that, due to an RPM bug, there must not be *any* content (not even comments)
between the %postun and the next section.
See https://bugzilla.redhat.com/show_bug.cgi?id=1003962#c0 for details.
Signed-off-by: Nathan Cutler <ncutler@suse.com>
DSA keys are being deprecated: http://www.openssh.com/legacy.html
drop.ceph.com will continue to allow the old DSA key but eventually,
users submitting logs using ceph-post-file will run into issues when
OpenSSH completely drops support for the algorithm.
Fixes: http://tracker.ceph.com/issues/14267
Signed-off-by: David Galloway <dgallowa@redhat.com>
Trailing whitespace after the backslash on the -d line of the
usermod command effectively splits it in two, breaking the
rpm %pre script for SUSE builds.
Signed-off-by: Tim Serong <tserong@suse.com>
The issue here is that ceph.spec.in does not package the directories
/usr/lib/udev and /usr/lib/udev/rules.d. The problem was not showing because
hdparm, which is brought in as a build dependency, packages these directories.
However, in SUSE a recent update to hdparm changes that and the problem
manifests.
This PR addresses the issue by adding udev as a build dependency, which should
cover /usr/lib/udev, and by adding explicit "%dir %{_udevrulesdir}" to the
packages that put files in this directory.
Fixes: http://tracker.ceph.com/issues/16949
Signed-off-by: Nathan Cutler <ncutler@suse.com>
for SLES supports only x86_64 and aarch64 targets
for openSUSE (Tumbleweed and Leap) add ppc64/ppc64le targets.
fixes: http://tracker.ceph.com/issues/16936
Signed-off-by: Michel Normand <normand@linux.vnet.ibm.com>
Everyone should upgrade through Firefly -> Hammer -> etc to pick up the newer
package names.
Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
Signed-off-by: Nathan Cutler <ncutler@suse.com>
This has been deprecated for quite some time, in favour
of using proper vxattr and libcephfs interfaces.
Fixes: http://tracker.ceph.com/issues/16035
Signed-off-by: John Spray <john.spray@redhat.com>
Ceph clients use mount.ceph to mount CephFS filesystems, and
ceph-base is not expected to be installed on client systems.
Signed-off-by: Nathan Cutler <ncutler@suse.com>
We do not want to start the targets on upgrade, this would override the
user configuration and is a bad practice. This commit fixes the
behaviour.
Signed-off-by: Boris Ranto <branto@redhat.com>
ceph-disk activate-all walks /dev/disk/by-parttypeuuid at boot time. It
is not necessary when udev fires ADD event for each partition and
95-ceph-osd.rules gets a chance to activate a ceph disk or journal.
There are various reasons why udev ADD events may not be fired at
boot (for instance Debian Jessi 8.5 never does it and CentOS 7.2 seems
to be racy in that regard when a LVM root is being used).
Populating /dev/disk/by-parttypeuuid fixes ceph-disk activate-all that
would not work without it. And it guarantees disks are activated at boot
time regardless of wether udev fires ADD events at the right time (or at
all).
The new udev file is a partial resurection of the
60-ceph-partuuid-workaround-rules that was removed by
9f77244b8e. It is given a name that
reflects its new purpose.
Fixes http://tracker.ceph.com/issues/16351
Signed-off-by: Loic Dachary <loic@dachary.org>
Prior to this change, ceph-base required the "parted" package, which
meant that any installation of ceph-osd, ceph-mon, or ceph-mds would
pull in the parted package.
Move the parted dependency to ceph-osd, since ceph-disk is the only
thing that uses parted.
The advantage of this change is that Mon and MDS systems will not need
to install the parted package.
Fixes: http://tracker.ceph.com/issues/16095
Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
The PowerDNS integration code itself is not packaged at this point, so
remove the python-flask dependency from the radosgw package.
Maybe the PowerDNS integration bits could live in a separate
sub-package, eventually.
Fixes: http://tracker.ceph.com/issues/16032
Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
The fixfiles command won't fix label for /var/run/ceph (/run is probably
excluded from relabel), we need to restore the context manually.
Signed-off-by: Boris Ranto <branto@redhat.com>
Currently, we don't mute the semodule output in postun script. This
results in the following message when removing ceph-selinux package:
libsemanage.semanage_direct_remove_key: Removing last ceph module (no
other ceph module exists at another priority).
The fix is to simply mute the output of the command.
Signed-off-by: Boris Ranto <branto@redhat.com>
This reverts commit a53d932fc4.
If the interpret is passed to postun script, everything until the next
rpm section gets interpreted as the input for the interpret (in this
case ldconfig). This results in warnings like
/sbin/ldconfig: relative path `0' used to build cache
when removing the packages that pass the interpret because we use
several '#' characters to separate the subpackage sections and these get
passed to the ldconfig.
Using the default interpret (bash) fixes the warning. I'm also doing the
same to %post script for consistency.
Signed-off-by: Boris Ranto <branto@redhat.com>
This commit brings the user/group creation into greater semantic alignment
with the Debian packaging.
Fixes: http://tracker.ceph.com/issues/15869
Signed-off-by: Nathan Cutler <ncutler@suse.com>
Older versions of semodule binary that are in Centos/RHEL do not
support priority setting, dropping it.
Fixes: #15822
Signed-off-by: Boris Ranto <branto@redhat.com>
The SELinux userspace utilities stopped providing versions when they
switched to CIL language. We need to use a different technique to
relabel the files.
Fixes: #15725
Signed-off-by: Boris Ranto <branto@redhat.com>
The only place we should write out literal paths is in the RPM scriptlets,
and there only for things that are not installed by this package.
Signed-off-by: Nathan Cutler <ncutler@suse.com>
Now that the python-sphinx build dependency is unified, move it
to the proper section of the spec file.
Signed-off-by: Nathan Cutler <ncutler@suse.com>
This commit drops conditionals that no longer serve any purpose, since
jewel and above do not support the distro versions they are checking for.
Signed-off-by: Nathan Cutler <ncutler@suse.com>
This conditional was required to support older versions of RHEL/CentOS that are
no longer supported in infernalis and above.
Signed-off-by: Nathan Cutler <ncutler@suse.com>
This RA wraps the ceph sysvinit script. As of Jewel, none of the supported
distros are using sysvinit anymore. So, drop it.
Incidentally, Pacemaker can control systemd units without any wrappers.
References: http://tracker.ceph.com/issues/14828
Signed-off-by: Nathan Cutler <ncutler@suse.com>
The only place we should write out literal paths is in the RPM scriptlets,
and there only for things that are not installed by this package.
Signed-off-by: Nathan Cutler <ncutler@suse.com>
Now that the python-sphinx build dependency is unified, move it
to the proper section of the spec file.
Signed-off-by: Nathan Cutler <ncutler@suse.com>
This commit drops conditionals that no longer serve any purpose, since
jewel and above do not support the distro versions they are checking for.
Signed-off-by: Nathan Cutler <ncutler@suse.com>
This conditional was required to support older versions of RHEL/CentOS that are
no longer supported in infernalis and above.
Signed-off-by: Nathan Cutler <ncutler@suse.com>
Currently, we are always building the erasure code libraries while we
need them only when 'make check' is run. Moving the test libraries to
check_LTLIBRARIES should fix this for us.
We no longer need to remove the libec libs manually, remove the lines
that do that.
Signed-off-by: Boris Ranto <branto@redhat.com>
We are currently missing the systemd scripts for the new ceph-rbd-mirror
daemons. This patch introduces them.
Signed-off-by: Boris Ranto <branto@redhat.com>
We need to have the sub-targets active for the ceph.target to be able
to propagate its calls to the services. If the sub-target is inactive,
the main target won't propagate the stop/restart calls.
Signed-off-by: Boris Ranto <branto@redhat.com>
This patch gives each of the ceph-{mds,mon,osd,radosgw} packages its own
%post, %preun, and %postun scriptlets dealing with the package's unit files.
The scriptlets of ceph-base are adapted to handle the ceph.target unit file
only.
The scriptlets of ceph-mon handle ceph-create-keys services in addition to ceph-mon.
The scriptlets of ceph-osd handle ceph-disk services in addition to ceph-osd.
Fixes: http://tracker.ceph.com/issues/14941
Signed-off-by: Nathan Cutler <ncutler@suse.com>
Signed-off-by: Boris Ranto <branto@redhat.com>
Some distros, like Fedora and openSUSE, have a policy that all services are
disabled by default.
This patch changes that default for the ceph.target and
ceph-{mds,mon,osd,radosgw}.target services.
Signed-off-by: Nathan Cutler <ncutler@suse.com>
Signed-off-by: Boris Ranto <branto@redhat.com>
SUSE has settled on "ntp-daemon" as the generic package name. The "ntp" and
"chrony" etc. packages have "Provides: ntp-daemon" in their respective spec
files.
References: http://tracker.ceph.com/issues/15419
Signed-off-by: Nathan Cutler <ncutler@suse.com>
These were added to get /dev/disk/by-partuuid/ symlinks to work on
wheezy. They are no longer needed for the supported distros (el7+,
jessie+, trusty+), and they apparently break dm by opening devices they
should not.
Fixes: http://tracker.ceph.com/issues/15516
Signed-off-by: Sage Weil <sage@redhat.com>
ceph.spec.in: enable lttng and babeltrace explicitly
thanks to ktdreyer, we have lttng and babel in EPEL-7 now.
Reviewed-by: Nathan Cutler <ncutler@suse.com>
Strip the .py suffix so that no pyc / pyo files are generated.
Do not install on CentOS.
http://tracker.ceph.com/issues/14972Fixes: #14972
Signed-off-by: Loic Dachary <loic@dachary.org>
First, make the Debian package description mention that RGW aims to
implement the Swift API.
Second, replace the RPM package description with the Debian one, both for
consistency and because the Debian one is better.
Signed-off-by: Nathan Cutler <ncutler@suse.com>
The script is designed to create a fact file for subscription-manager to
consume. It is run hourly from /etc/cron.hourly on RHEL.
http://tracker.ceph.com/issues/14972Fixes: #14972
Signed-off-by: Loic Dachary <loic@dachary.org>
ceph.spec.in: do not install Ceph RA on systemd platforms
Reviewed-by: Tim Serong <tserong@suse.com>
Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Loic Dachary <ldachary@redhat.com>
We recently moved fsck/repair tools to ceph-common package. We should
also make the version/release requirements tight.
Signed-off-by: Boris Ranto <branto@redhat.com>
One side effect of the recent package split (in #10587) is that "ceph"
is now an empty meta-package.
We should not have any packages that depend on "ceph" any more. Change
the various sub-packages to either drop the dependency altogether, or
just Require: ceph-base instead.
Fixes: #15146
Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
The CephFS repair tools are generally useful to run on any node, not
just the MDS nodes themselves.
Move the utilities from the ceph-mds package to the ceph-common package.
Fixes: #15145
Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
before this change, we do not pacakge tracepoint probe shared libraries
on rhel7. but "configure" script enables them if lttng is detected. and
rpm complains at seeing installed but not pacakged files. as EPEL-7 now
includes lttng-ust-devel and libbabeltrace-devel, we'd better
BuildRequire them, and build with them unless disabled otherwise. so in
this change
* make "lttng" an rpm build option enabled by default
* BuildRequire lttng-ust-devel and libbabeltrace-devel if the "lttng"
"lttng" option is enabled
* --without-lttng --without-babeltrace if the "lttng" option is disabled
Fixes: #14844
Signed-off-by: Kefu Chai <kchai@redhat.com>
By pull request 7742, the btrfs-progs package was considered as a BuildRequires
only when --with tests was engaged like :
if %{with tests}
BuildRequires: btrfsprogs
%endif
That's perfectly valid for a spec file.
The issue we have is the following :
- yum-builddep called by install-deps.sh is used to prepare the build env by
installing the needed BuildRequires.
- %{with test} is defined by using a %bcond_with
- yum-builddep doesn't consider %{with test} as valid
- yum-builddep doesn't install the btrfs package
As per discussions with the yum team, there is no way to engage conditional flags with
yum-builddep.
So this patch, as per discussions with Nathan Cutler & Loic Dachary, is removing
the condition arond the BuildRequires.
Note that all BuildRequires defined with a %bcond_with would be affected by this
issue. The current specfile only have %bcond_without conditional BuildRequires
which is fine.
Fixes: #15042
Signed-off-by: Erwan Velu <erwan@redhat.com>
Based on feedback from upstream RGW, introduce a new json-format
token structure representing credentials for pass-through authentication
(e.g., LDAP without Keystone's digest authentication).
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
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>
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>
The Ceph Resource Agent (RA) wraps the Ceph init script and is incompatible
with systemd.
http://tracker.ceph.com/issues/14828Fixes: #14828
Signed-off-by: Nathan Cutler <ncutler@suse.com>
This patch aligns the spec file with src/ocf/Makefile.am, which
installs the resource agents in $(prefix)/lib/ocf.
Signed-off-by: Nathan Cutler <ncutler@suse.com>
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/14940Fixes: #14940
Signed-off-by: Nathan Cutler <ncutler@suse.com>
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/14906Fixes: #14906
Signed-off-by: Nathan Cutler <ncutler@suse.com>
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>
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>
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>
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>
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>
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/10587Fixes: #10587
Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
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>
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/14687Fixes: #14687
Signed-off-by: Nathan Cutler <ncutler@suse.com>
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>
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>
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>
ctypes is fundamentally incapable of providing safe callback support
(exceptions during callbacks are not handled properly). To fix this, and also
gain more flexibility, rewrite/port the librbd bindings to Cython instead.
Other Python bindings are expected to migrate to Cython in the future.
Reference: http://tracker.ceph.com/issues/13115
To support this, this change also:
- Introduces a Makefile for pybind which calls setup.py
- Updates the installation files for packages
- Adds a hack to admin/build-doc to build a dummy librbd, avoiding the need to
build the entire client library just to generate documentation (Sphinx needs
to be able to import rbd.so, which depends on librbd.so symbols).
With contributions by Josh Durgin <jdurgin@redhat.com>
Signed-off-by: Hector Martin <marcan@marcan.st>
To prepare for the migration of rbd.py to Cython, add Cython as a package
dependency and have the configure script look for it.
Also adds Cython as a dependency for admin/build-doc, and changes the
virtualenv to allow usage of system packages (to avoid having to compile
Cython inside the virtualenv).
With contributions by Josh Durgin <jdurgin@redhat.com>
Signed-off-by: Hector Martin <marcan@marcan.st>
systemd: start/stop/restart ceph services by daemon type
Reviewed-by: Nathan Cutler <ncutler@suse.com>
Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Boris Ranto <branto@redhat.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
Ensure the macro is defined, and use it to placate the relevant openSUSE
RPMLINT check.
Drop --prefix=/run/ceph (introduced by 477bb064) because we now supply the
configuration file on the systemd-tmpfiles command line. (We don't need to run
systemd-tmpfiles on all files in /usr/lib/tmpfiles.d/ - just on ours.)
Signed-off-by: Nathan Cutler <ncutler@suse.com>
The limit, -j8, may seem arbitrary but works nicely in the openSUSE Build
Service.
http://tracker.ceph.com/issues/13858Fixes: #13858
Signed-off-by: Nathan Cutler <ncutler@suse.com>