Commit Graph

1109 Commits

Author SHA1 Message Date
Kefu Chai
7681a38ce5 rpm: pass %{python3_version} to cmake
to force cmake to use the python3 and python3 modules for building
python3 bindings

on the debian side, it's okay to continue using "-DWITH_PYTHON3=ON", as

- cmake does normalize "ON" to 3
- debian's cmake extension lives on /usr/lib/python3/dist-packages/
  not in a specific /usr/lib/python3.x/dist-packages directory

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-04-04 13:30:48 +08:00
Kefu Chai
9694a72dae rpm: s/devtoolset-7/devtoolset-8/
should activate devtoolset-8 not devtoolset-7 for enabling GCC-8.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-03-26 15:20:00 +08:00
Kefu Chai
128ce1199f
Merge pull request #27134 from tchaikov/wip-devtools-8
install-dep,rpm: use devtools-8 on amd64

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
2019-03-26 09:45:55 +08:00
Kefu Chai
1fdd8ed552
Merge pull request #27150 from tchaikov/wip-ceph.spec.in/immutable-object-cache
rpm: immutable-object-cache related changes

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2019-03-25 23:38:50 +08:00
Kefu Chai
253385d4cc rpm,deb: let immutable-object-cache depend on librados2
ceph-common depends on librados2, but ceph-immutable-object-cache only
uses librados2's C++ API, so librados2 would suffice.

rpmbuild is able to figure out the .so dependencies, and let
ceph-immutable-object-cache depend on the package which offers
librados2, but we'd better make sure immutable-object-cache is linked
against the librados2 of the same version, to ensure that librados2
offers the correct C++ symbols. as we only version the C++ API in the
librados2 after nautilus.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-03-25 13:56:52 +08:00
Kefu Chai
c80d5aa693 rpm: remove libradospp1 from immutable-object-cache's Requires
* remove "libradospp1" from immutable-object-cache's runtime
  dependencies. this package was removed in 65c8733b

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-03-25 12:47:34 +08:00
Kefu Chai
1cd1967013 rpm: do not use "-n" for immutable-object-cache
as immutable-object-cache has the prefix of "ceph", no need to use "-n"
option. so this change is but a cleanup.

* use "%package immutable-object-cache" not "%package
  ceph-immutable-object-cache" for naming subpackage of
  "ceph-immutable-object-cache". this would result in package name of
  "ceph-immutable-object-cache". see
  http://ftp.rpm.org/max-rpm/s1-rpm-subpack-spec-file-changes.html
* the same applies to other directives with "-n" options, see
  http://ftp.rpm.org/max-rpm/s1-rpm-inside-package-directive.html

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-03-25 12:47:34 +08:00
Kefu Chai
f904ba5574
Merge pull request #26819 from tchaikov/wip-rpm-more-recommends
rpm: use Recommends on fedora also

Reviewed-by: Nathan Cutler <ncutler@suse.com>
2019-03-23 01:47:00 +08:00
Kefu Chai
5ae3b06e63 install-dep,rpm: use devtools-8 on amd64
seems devtools-8 is not packaged on aarch64. and we are suffering from
ICE on centos7 when building with GCC-7.3. so let's try GCC-8.2!

Fixes: http://tracker.ceph.com/issues/38892
Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-03-23 01:37:00 +08:00
Yuan Zhou
9466d70985 build/ops: adding build spec for immutable object cache daemon
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
2019-03-22 00:16:26 +08:00
Nathan Cutler
b0700f2b3f
Merge pull request #27046 from smithfarm/wip-38812
rpm: refrain from building ceph-resource-agents on SLE

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Tim Serong <tserong@suse.com>
2019-03-20 17:12:58 +01:00
Nathan Cutler
282a6b0675 rpm: refrain from building ceph-resource-agents on SLE
Fixes: https://tracker.ceph.com/issues/38812
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2019-03-19 12:22:32 +01:00
Nathan Cutler
b0da2371c1 rpm: fix "rhel <= 7" conditional
We do not build for RHEL 6 and below, so "rhel == 7" is just as good, while
also avoiding the bug.

In addition, "rhel == 7" is the conditional we are using everywhere else in the
spec file for this purpose.

Fixes: https://tracker.ceph.com/issues/38810
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2019-03-19 12:11:56 +01:00
Boris Ranto
4b3db559e7
Merge pull request #26756 from badone/wip-f28-broken-Cython-dep
rpm: Install python2-Cython on f28

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Boris Ranto <branto@redhat.com>
2019-03-13 13:31:15 +01:00
Brad Hubbard
6de7111e73 rpm: Install python2-Cython in python2 environment
do_cmake.sh tests for Cython module version in python2

Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
2019-03-13 12:22:31 +10:00
Sébastien Han
7c4f29bf4a ceph.spec.in: add libstoragemgmt to mgr package
The libstoragemgmt package is needed so we can activate the drive
blink-led feature so we should pull that package.

Signed-off-by: Sébastien Han <seb@redhat.com>
2019-03-12 15:56:12 +01:00
Kefu Chai
147531515b rpm: use Recommends on fedora also
"Recommends" and other weak dependencies were introduced in rpm 4.12. it
is included by quite a few distros, including fedora 21 and up, and
recent SUSE distros. but RHEL7 still ships rpm 4.11. see
https://fedoraproject.org/wiki/Changes/RPM-4.12 and
https://software.opensuse.org/package/rpm . so we enable Recommends on
fedora and SUSE distros.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-03-07 22:42:36 +08:00
Sage Weil
6c723b927d Merge PR #26718 into master
* refs/pull/26718/head:
	rpm: put numpy and scipy deps in distro conditionals

Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-03-07 06:30:46 -06:00
Nathan Cutler
5a0846631c rpm: put numpy and scipy deps in distro conditionals
Without this patch, attempts to install the ceph-mgr-diskprediction-local RPM
fail on SUSE platforms with the following error:

can't install ceph-mgr-diskprediction-local-14.1.0.402+ga396e8bf3b-3742.1.noarch:
  nothing provides numpy needed by ceph-mgr-diskprediction-local-14.1.0.402+ga396e8bf3b-3742.1.noarch
  nothing provides scipy needed by ceph-mgr-diskprediction-local-14.1.0.402+ga396e8bf3b-3742.1.noarch

Also take into account package naming differences between Fedora and
RHEL/CentOS.

Signed-off-by: Kefu Chai <kchai@redhat.com>
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2019-03-06 15:13:23 +01:00
Sage Weil
e030ba465d Merge PR #26740 into master
* refs/pull/26740/head:
	rpm: advance spec file copyright date

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2019-03-05 14:05:54 -06:00
Sage Weil
11f986830e Merge PR #26719 into master
* refs/pull/26719/head:
	rpm: re-add pyOpenSSL as ceph-mgr runtime dependency

Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-03-05 09:12:43 -06:00
Sage Weil
5c6d9d556f Merge PR #26694 into master
* refs/pull/26694/head:
	rpm: drop use of $FIRST_ARG

Reviewed-by: Boris Ranto <branto@redhat.com>
Reviewed-by: Tim Serong <tserong@suse.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2019-03-04 16:25:18 -06:00
Nathan Cutler
166ae7847c rpm: advance spec file copyright date
Signed-off-by: Nathan Cutler <ncutler@suse.com>
2019-03-04 15:50:24 +01:00
Nathan Cutler
aa690517fb rpm: re-add pyOpenSSL as ceph-mgr runtime dependency
The "restful" MGR module is part of ceph-mgr, and is active by default when
deploying a Ceph cluster from scratch.

Without this patch, the cluster never reaches HEALTH_OK due to the following
health warning: "Module 'restful' has failed dependency: No module named
'OpenSSL'"

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2019-03-01 15:25:22 +01:00
Sage Weil
649ea55d8a Merge PR #26453 into master
* refs/pull/26453/head:
	rpm: build with lttng on ppc64le (SUSE)
	rpm: no lttng build on openSUSE s390x

Reviewed-by: Tim Serong <tserong@suse.com>
2019-02-28 18:07:59 -06:00
Franck Bui
926433f5d4 rpm: drop use of $FIRST_ARG
The use of $FIRST_ARG was probably required because the SUSE-specific
%service_* rpm macros were playing tricks on the shell positional parameters.
This is bad practice and error-prone, so let's assume that no macros should do
that anymore and hence it's safe to assume that positional parameters remain
unchanged after any rpm macro call.

Thanks to Franck Bui for providing this patch.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2019-02-28 14:03:30 +01:00
Nathan Cutler
4004f55905 rpm: use %_python_buildid to specify python-remoto dep
Without this patch, the Python 2 version of python-remoto is always installed,
even on Python 3 systems.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2019-02-26 10:25:56 +01:00
Sage Weil
d2a3168bf3 Merge PR #26617 into master
* refs/pull/26617/head:
	rpm: Fix pyOpenSSL dependency

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2019-02-25 16:41:40 -06:00
Sage Weil
4059cbd756 Merge PR #26543 into master
* refs/pull/26543/head:
	Revert "ceph.spec.in: python-kubernetes broken on rhel"

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Nathan Cutler <ncutler@suse.com>
2019-02-25 16:40:46 -06:00
Tim Serong
be98097979 rpm,cmake: additional fixes to make amqp support optional
Signed-off-by: Tim Serong <tserong@suse.com>
2019-02-25 19:49:20 +11:00
Brad Hubbard
ff324f450c rpm: Fix pyOpenSSL dependency
Fedora29 does not have pyOpenSSL but it does have python-pyOpenSSL

Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
2019-02-25 13:37:23 +10:00
Nathan Cutler
aac0e6751f rpm: build with lttng on ppc64le (SUSE)
In very recent SUSEs (e.g. Leap 15.1), the build dependencies needed for the
lttng build are satisfied for this architecture.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2019-02-22 18:36:12 +01:00
Nathan Cutler
79d3d48a5b rpm: no lttng build on openSUSE s390x
Since the lttng-ust-devel and babeltrace-devel RPMs are not maintained for s390x
in openSUSE, we have to exclude the lttng build on this architecture.

Signed-off-by: Nathan Cutler <ncutler@suse.com>
2019-02-22 18:36:12 +01:00
Jeff Layton
196e8151b5 Revert "ceph.spec.in: python-kubernetes broken on rhel"
This reverts commit c32c4874e1.

An updated python2-kubernetes package that does not depend on
python-adal has made it into the epel7 repos. With that change,
we can now revert this patch.

When we readd it back though, add in %{_python_buildid} so that
this works correctly on python3-based distros as well.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
2019-02-22 08:56:12 -05:00
Kefu Chai
ae786b93c8
Merge pull request #26520 from ktdreyer/rpm-rhel8
rpm: RHEL 8 fixes

Reviewed-by: Boris Ranto <branto@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-02-22 15:44:52 +08:00
Kefu Chai
66fb02dcfe
Merge pull request #26555 from tchaikov/wip-install-build-deps
cmake,rgw: make amqp support optional

Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
Reviewed-by: Yuval Lifshitz <yuvalif@yahoo.com>
Reviewed-by: Willem Jan Withagen <wjw@digiware.nl>
2019-02-22 15:39:55 +08:00
Kefu Chai
dd5bc2ff21 rpm: disable amqp endpoint on SLE/OpenSUSE
as librabbitmq-devel is not packaged on them yet.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-02-22 10:30:25 +08:00
Ken Dreyer
f74c76c2da rpm: build __pycache__ directories on RHEL 8
In RHEL 8, rpmbuild does not automatically generate __pycache__
directories. Generate them explicitly with the %py_byte_compile macro.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2019-02-21 15:03:51 -07:00
Ken Dreyer
217c3f4ce5 rpm: fix pyOpenSSL requirement for RHEL 8
On RHEL 7, this package is named "pyOpenSSL", but on RHEL 8, Fedora, and
SUSE, it is named "python3-pyOpenSSL".

Prior to this change, the RHEL conditional was applying to both RHEL 7
and 8, so we would fail to resolve the "pyOpenSSL" package dependency on
RHEL 8.

Update the RPM conditionals to use "pyOpenSSL" on RHEL 7 and
"python3-pyOpenSSL" on all other distributions.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2019-02-21 15:03:51 -07:00
Ken Dreyer
2273bfce42 rpm: fix python dependencies on RHEL 8
On RHEL 8, the python34-* and Cython packages are named identically to
Fedora (eg "python3-Cython"). Move the Python 2 "Cython" and python34-*
BuildRequires lines inside a RHEL 7 conditional, so RHEL 8 falls through
to the Fedora package names.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2019-02-21 15:03:05 -07:00
Sage Weil
0a7077a855 Merge PR #26237 into master
* refs/pull/26237/head:
	Revert "qa: update test_envlibrados_for_rocksdb.sh for libradospp split"
	doc/librados: explicitly mention that the C++ API is not stable
	ceph.spec: force use of upgrade devtoolset-gcc under RHEL 7
	librados: add symbol versioning to the C++ API
	librados: add symbol versioning to the C API
	librados: revert librados3/libradoscc back to librados2

Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-02-21 11:18:46 -06:00
Jason Dillaman
a7ce5fb07a ceph.spec: force use of upgrade devtoolset-gcc under RHEL 7
There is a known crash under C++17 mode that requires an updated
devtoolset to address.

See https://bugzilla.redhat.com/show_bug.cgi?id=1616223

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2019-02-21 08:28:43 -05:00
Jason Dillaman
d2b1ab49f5 librados: add symbol versioning to the C++ API
The future goal would be to change the version for each Ceph major
release to ensure C++ applications will need to be recompiled against
the librados C++ API since we don't guarentee ABI stability.

Fixes: https://tracker.ceph.com/issues/38177
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2019-02-21 08:27:38 -05:00
Kefu Chai
6ca980beff
Merge pull request #26402 from tchaikov/wip-install-deps
install-deps.sh: selectively install dependencies

Reviewed-by: David Zafman <dzafman@redhat.com>
Reviewed-by: Nathan Cutler <ncutler@suse.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2019-02-21 11:59:10 +08:00
Sage Weil
e784b697b4 Merge PR #26526 into master
* refs/pull/26526/head:
	rpm,deb: remove btrfs-tools as a build-dependency
	rpm,deb: remove bc as a build-dependency

Reviewed-by: Boris Ranto <branto@redhat.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
Reviewed-by: Nathan Cutler <ncutler@suse.com>
2019-02-20 21:36:13 -06:00
Jason Dillaman
65c8733b56 librados: revert librados3/libradoscc back to librados2
For backwards compatibility and upgrade reasons, the librados2
API needs to be preserved and it needs to continue to be compatible
with dependent libraries like librbd1.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2019-02-20 14:59:26 -05:00
Sage Weil
d198831c44 Merge PR #26262 into master
* refs/pull/26262/head:
	mgr/orch/ssh: add qa test
	qa: install/exclude ceph-mgr-ssh package
	debian: package ssh orchestrator
	spec.ceph: package ssh orchestrator
	ssh/orch: add ssh orchestrator
2019-02-20 13:05:11 -06:00
Noah Watkins
c9fc8d3a7c spec.ceph: package ssh orchestrator
Signed-off-by: Noah Watkins <noahwatkins@gmail.com>
2019-02-20 09:45:48 -08:00
Matt Benjamin
fcb8149951
Merge pull request #25866 from yuvalif/add_amqp_push_endpoint_new
rgw/pubsub: add amqp push endpoint
2019-02-20 07:37:34 -05:00
Kefu Chai
01c9e2a632 rpm,deb: remove btrfs-tools as a build-dependency
this change reverts 7d48d21a

we are using bluestore for testing by default on GNU/Linux now. and on
FreeBSD, install-deps.sh does not look at spec.in or d/control.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-02-20 11:32:11 +08:00