CentOS 8: Force only python3 ceph
Force python3 build by default. Remove python2 from ceph.spec. Remove Cython3 as it doesn't exist and python3-Cython is used instead. Remove redhat-lsb-core as it isn't used. Remove pyOpenSSL3 as it doesn't exits and use python3-pyOpenSSL instead. Change shebang to /usr/bin/python3 instead of /usr/bin/python. This is needed because the rpm installer treats /usr/bin/python as a dependency on python2. __pycache__ folders do not exist. Signed-off-by: Dan Voiculeasa <dan.voiculeasa@windriver.com> Change-Id: Iec1df3b61b7e7028ae36c117dc027324c5db8eac
This commit is contained in:
parent
e39f85cbf6
commit
59775d61da
@ -179,7 +179,7 @@
|
|||||||
|
|
||||||
%define optflags -O2
|
%define optflags -O2
|
||||||
|
|
||||||
%bcond_with python3
|
|
||||||
%bcond_with ocf
|
%bcond_with ocf
|
||||||
%bcond_with make_check
|
%bcond_with make_check
|
||||||
%ifarch s390 s390x
|
%ifarch s390 s390x
|
||||||
@ -221,14 +221,11 @@
|
|||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
%if 0%{?suse_version} >= 1500
|
|
||||||
%bcond_with python2
|
# Force python3
|
||||||
%else
|
%global _python %{__python3}
|
||||||
%bcond_without python2
|
%bcond_without python3
|
||||||
%endif
|
|
||||||
%if 0%{without python2}
|
|
||||||
%global _defined_if_python2_absent 1
|
%global _defined_if_python2_absent 1
|
||||||
%endif
|
|
||||||
|
|
||||||
%if %{with selinux}
|
%if %{with selinux}
|
||||||
# get selinux policy version
|
# get selinux policy version
|
||||||
@ -412,24 +409,16 @@ BuildRequires: libibverbs-devel
|
|||||||
BuildRequires: openldap-devel
|
BuildRequires: openldap-devel
|
||||||
BuildRequires: openssl-devel
|
BuildRequires: openssl-devel
|
||||||
BuildRequires: CUnit-devel
|
BuildRequires: CUnit-devel
|
||||||
BuildRequires: redhat-lsb-core
|
|
||||||
BuildRequires: Cython%{_python_buildid}
|
|
||||||
BuildRequires: python%{_python_buildid}-prettytable
|
BuildRequires: python%{_python_buildid}-prettytable
|
||||||
BuildRequires: python%{_python_buildid}-sphinx
|
BuildRequires: python%{_python_buildid}-sphinx
|
||||||
BuildRequires: lz4-devel >= 1.7
|
BuildRequires: lz4-devel >= 1.7
|
||||||
%endif
|
%endif
|
||||||
# python34-... for RHEL, python3-... for all other supported distros
|
# python34-... for RHEL, python3-... for all other supported distros
|
||||||
%if %{with python3}
|
%if %{with python3}
|
||||||
%if 0%{?rhel}
|
|
||||||
BuildRequires: python34-devel
|
|
||||||
BuildRequires: python34-setuptools
|
|
||||||
BuildRequires: python34-Cython
|
|
||||||
%else
|
|
||||||
BuildRequires: python3-devel
|
BuildRequires: python3-devel
|
||||||
BuildRequires: python3-setuptools
|
BuildRequires: python3-setuptools
|
||||||
BuildRequires: python3-Cython
|
BuildRequires: python3-Cython
|
||||||
%endif
|
%endif
|
||||||
%endif
|
|
||||||
# distro-conditional make check dependencies
|
# distro-conditional make check dependencies
|
||||||
%if 0%{with make_check}
|
%if 0%{with make_check}
|
||||||
%if 0%{?fedora} || 0%{?rhel}
|
%if 0%{?fedora} || 0%{?rhel}
|
||||||
@ -578,7 +567,7 @@ Requires: python%{_python_buildid}-cherrypy
|
|||||||
Requires: python%{_python_buildid}-jinja2
|
Requires: python%{_python_buildid}-jinja2
|
||||||
Requires: python%{_python_buildid}-routes
|
Requires: python%{_python_buildid}-routes
|
||||||
Requires: python%{_python_buildid}-werkzeug
|
Requires: python%{_python_buildid}-werkzeug
|
||||||
Requires: pyOpenSSL%{_python_buildid}
|
Requires: python%{_python_buildid}-pyOpenSSL
|
||||||
Requires: python%{_python_buildid}-bcrypt
|
Requires: python%{_python_buildid}-bcrypt
|
||||||
%endif
|
%endif
|
||||||
%if 0%{?suse_version}
|
%if 0%{?suse_version}
|
||||||
@ -732,20 +721,6 @@ Obsoletes: librgw2-devel < %{_epoch_prefix}%{version}-%{release}
|
|||||||
This package contains libraries and headers needed to develop programs
|
This package contains libraries and headers needed to develop programs
|
||||||
that use RADOS gateway client library.
|
that use RADOS gateway client library.
|
||||||
|
|
||||||
%if 0%{with python2}
|
|
||||||
%package -n python-rgw
|
|
||||||
Summary: Python 2 libraries for the RADOS gateway
|
|
||||||
%if 0%{?suse_version}
|
|
||||||
Group: Development/Libraries/Python
|
|
||||||
%endif
|
|
||||||
Requires: librgw2 = %{_epoch_prefix}%{version}-%{release}
|
|
||||||
Requires: python-rados = %{_epoch_prefix}%{version}-%{release}
|
|
||||||
Obsoletes: python-ceph < %{_epoch_prefix}%{version}-%{release}
|
|
||||||
%description -n python-rgw
|
|
||||||
This package contains Python 2 libraries for interacting with Cephs RADOS
|
|
||||||
gateway.
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if 0%{with python3}
|
%if 0%{with python3}
|
||||||
%package -n python%{python3_pkgversion}-rgw
|
%package -n python%{python3_pkgversion}-rgw
|
||||||
Summary: Python 3 libraries for the RADOS gateway
|
Summary: Python 3 libraries for the RADOS gateway
|
||||||
@ -759,19 +734,6 @@ This package contains Python 3 libraries for interacting with Cephs RADOS
|
|||||||
gateway.
|
gateway.
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{with python2}
|
|
||||||
%package -n python-rados
|
|
||||||
Summary: Python 2 libraries for the RADOS object store
|
|
||||||
%if 0%{?suse_version}
|
|
||||||
Group: Development/Libraries/Python
|
|
||||||
%endif
|
|
||||||
Requires: librados2 = %{_epoch_prefix}%{version}-%{release}
|
|
||||||
Obsoletes: python-ceph < %{_epoch_prefix}%{version}-%{release}
|
|
||||||
%description -n python-rados
|
|
||||||
This package contains Python 2 libraries for interacting with Cephs RADOS
|
|
||||||
object store.
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if 0%{with python3}
|
%if 0%{with python3}
|
||||||
%package -n python%{python3_pkgversion}-rados
|
%package -n python%{python3_pkgversion}-rados
|
||||||
Summary: Python 3 libraries for the RADOS object store
|
Summary: Python 3 libraries for the RADOS object store
|
||||||
@ -844,20 +806,6 @@ Obsoletes: librbd1-devel < %{_epoch_prefix}%{version}-%{release}
|
|||||||
This package contains libraries and headers needed to develop programs
|
This package contains libraries and headers needed to develop programs
|
||||||
that use RADOS block device.
|
that use RADOS block device.
|
||||||
|
|
||||||
%if 0%{with python2}
|
|
||||||
%package -n python-rbd
|
|
||||||
Summary: Python 2 libraries for the RADOS block device
|
|
||||||
%if 0%{?suse_version}
|
|
||||||
Group: Development/Libraries/Python
|
|
||||||
%endif
|
|
||||||
Requires: librbd1 = %{_epoch_prefix}%{version}-%{release}
|
|
||||||
Requires: python-rados = %{_epoch_prefix}%{version}-%{release}
|
|
||||||
Obsoletes: python-ceph < %{_epoch_prefix}%{version}-%{release}
|
|
||||||
%description -n python-rbd
|
|
||||||
This package contains Python 2 libraries for interacting with Cephs RADOS
|
|
||||||
block device.
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if 0%{with python3}
|
%if 0%{with python3}
|
||||||
%package -n python%{python3_pkgversion}-rbd
|
%package -n python%{python3_pkgversion}-rbd
|
||||||
Summary: Python 3 libraries for the RADOS block device
|
Summary: Python 3 libraries for the RADOS block device
|
||||||
@ -901,22 +849,6 @@ Obsoletes: libcephfs2-devel < %{_epoch_prefix}%{version}-%{release}
|
|||||||
This package contains libraries and headers needed to develop programs
|
This package contains libraries and headers needed to develop programs
|
||||||
that use Cephs distributed file system.
|
that use Cephs distributed file system.
|
||||||
|
|
||||||
%if 0%{with python2}
|
|
||||||
%package -n python-cephfs
|
|
||||||
Summary: Python 2 libraries for Ceph distributed file system
|
|
||||||
%if 0%{?suse_version}
|
|
||||||
Group: Development/Libraries/Python
|
|
||||||
%endif
|
|
||||||
Requires: libcephfs2 = %{_epoch_prefix}%{version}-%{release}
|
|
||||||
%if 0%{?suse_version}
|
|
||||||
Recommends: python-rados = %{_epoch_prefix}%{version}-%{release}
|
|
||||||
%endif
|
|
||||||
Obsoletes: python-ceph < %{_epoch_prefix}%{version}-%{release}
|
|
||||||
%description -n python-cephfs
|
|
||||||
This package contains Python 2 libraries for interacting with Cephs distributed
|
|
||||||
file system.
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if 0%{with python3}
|
%if 0%{with python3}
|
||||||
%package -n python%{python3_pkgversion}-cephfs
|
%package -n python%{python3_pkgversion}-cephfs
|
||||||
Summary: Python 3 libraries for Ceph distributed file system
|
Summary: Python 3 libraries for Ceph distributed file system
|
||||||
@ -1027,25 +959,6 @@ populated file-systems.
|
|||||||
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{with python2}
|
|
||||||
%package -n python-ceph-compat
|
|
||||||
Summary: Compatibility package for Cephs python libraries
|
|
||||||
%if 0%{?suse_version}
|
|
||||||
Group: Development/Libraries/Python
|
|
||||||
%endif
|
|
||||||
Obsoletes: python-ceph
|
|
||||||
Requires: python-rados = %{_epoch_prefix}%{version}-%{release}
|
|
||||||
Requires: python-rbd = %{_epoch_prefix}%{version}-%{release}
|
|
||||||
Requires: python-cephfs = %{_epoch_prefix}%{version}-%{release}
|
|
||||||
Requires: python-rgw = %{_epoch_prefix}%{version}-%{release}
|
|
||||||
Provides: python-ceph
|
|
||||||
%description -n python-ceph-compat
|
|
||||||
This is a compatibility package to accommodate python-ceph split into
|
|
||||||
python-rados, python-rbd, python-rgw and python-cephfs. Packages still
|
|
||||||
depending on python-ceph should be fixed to depend on python-rados,
|
|
||||||
python-rbd, python-rgw or python-cephfs instead.
|
|
||||||
%endif
|
|
||||||
|
|
||||||
#################################################################################
|
#################################################################################
|
||||||
# common
|
# common
|
||||||
#################################################################################
|
#################################################################################
|
||||||
@ -1171,14 +1084,10 @@ cmake .. \
|
|||||||
-DCMAKE_INSTALL_DOCDIR=%{_docdir}/ceph \
|
-DCMAKE_INSTALL_DOCDIR=%{_docdir}/ceph \
|
||||||
-DCMAKE_INSTALL_INCLUDEDIR=%{_includedir} \
|
-DCMAKE_INSTALL_INCLUDEDIR=%{_includedir} \
|
||||||
-DWITH_MANPAGE=ON \
|
-DWITH_MANPAGE=ON \
|
||||||
-DWITH_PYTHON3=OFF \
|
-DWITH_PYTHON3=%{python3_version} \
|
||||||
-DWITH_MGR_DASHBOARD_FRONTEND=OFF \
|
-DWITH_MGR_DASHBOARD_FRONTEND=OFF \
|
||||||
%if %{with python2}
|
|
||||||
-DWITH_PYTHON2=ON \
|
|
||||||
%else
|
|
||||||
-DWITH_PYTHON2=OFF \
|
-DWITH_PYTHON2=OFF \
|
||||||
-DMGR_PYTHON_VERSION=3 \
|
-DMGR_PYTHON_VERSION=3 \
|
||||||
%endif
|
|
||||||
%if 0%{?rhel} && ! 0%{?centos}
|
%if 0%{?rhel} && ! 0%{?centos}
|
||||||
-DWITH_SUBMAN=ON \
|
-DWITH_SUBMAN=ON \
|
||||||
%endif
|
%endif
|
||||||
@ -1211,6 +1120,9 @@ cmake .. \
|
|||||||
-DWITH_LIBRADOSSTRIPER=ON \
|
-DWITH_LIBRADOSSTRIPER=ON \
|
||||||
%else
|
%else
|
||||||
-DWITH_LIBRADOSSTRIPER=OFF \
|
-DWITH_LIBRADOSSTRIPER=OFF \
|
||||||
|
%endif
|
||||||
|
%if %{with python3}
|
||||||
|
-DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python3 \
|
||||||
%endif
|
%endif
|
||||||
-DBOOST_J=$CEPH_SMP_NCPUS
|
-DBOOST_J=$CEPH_SMP_NCPUS
|
||||||
|
|
||||||
@ -1375,26 +1287,19 @@ rm -rf %{buildroot}
|
|||||||
%{_unitdir}/ceph.service
|
%{_unitdir}/ceph.service
|
||||||
%{_unitdir}/mgr-restful-plugin.service
|
%{_unitdir}/mgr-restful-plugin.service
|
||||||
%endif
|
%endif
|
||||||
%if 0%{with python2}
|
|
||||||
%{python_sitelib}/ceph_detect_init*
|
|
||||||
%{python_sitelib}/ceph_disk*
|
|
||||||
%else
|
|
||||||
%if 0%{with python3}
|
%if 0%{with python3}
|
||||||
%{python3_sitelib}/ceph_detect_init*
|
%dir %{python3_sitelib}/ceph_detect_init
|
||||||
%{python3_sitelib}/ceph_disk*
|
%{python3_sitelib}/ceph_detect_init/*
|
||||||
|
%{python3_sitelib}/ceph_detect_init-*
|
||||||
|
%dir %{python3_sitelib}/ceph_disk
|
||||||
|
%{python3_sitelib}/ceph_disk/*
|
||||||
|
%{python3_sitelib}/ceph_disk-*
|
||||||
%endif
|
%endif
|
||||||
%endif
|
|
||||||
%if 0%{with python2}
|
|
||||||
%dir %{python_sitelib}/ceph_volume
|
|
||||||
%{python_sitelib}/ceph_volume/*
|
|
||||||
%{python_sitelib}/ceph_volume-*
|
|
||||||
%else
|
|
||||||
%if 0%{with python3}
|
%if 0%{with python3}
|
||||||
%dir %{python3_sitelib}/ceph_volume
|
%dir %{python3_sitelib}/ceph_volume
|
||||||
%{python3_sitelib}/ceph_volume/*
|
%{python3_sitelib}/ceph_volume/*
|
||||||
%{python3_sitelib}/ceph_volume-*
|
%{python3_sitelib}/ceph_volume-*
|
||||||
%endif
|
%endif
|
||||||
%endif
|
|
||||||
%if %{with man_pages}
|
%if %{with man_pages}
|
||||||
%{_mandir}/man8/ceph-deploy.8*
|
%{_mandir}/man8/ceph-deploy.8*
|
||||||
%{_mandir}/man8/ceph-detect-init.8*
|
%{_mandir}/man8/ceph-detect-init.8*
|
||||||
@ -1525,16 +1430,11 @@ fi
|
|||||||
%else
|
%else
|
||||||
%{_unitdir}/rbdmap.service
|
%{_unitdir}/rbdmap.service
|
||||||
%endif
|
%endif
|
||||||
%if 0%{with python2}
|
|
||||||
%{python_sitelib}/ceph_argparse.py*
|
|
||||||
%{python_sitelib}/ceph_daemon.py*
|
|
||||||
%else
|
|
||||||
%if 0%{with python3}
|
%if 0%{with python3}
|
||||||
%{python3_sitelib}/ceph_argparse.py
|
%{python3_sitelib}/ceph_argparse.py
|
||||||
%{python3_sitelib}/__pycache__/ceph_argparse.cpython*.py*
|
#%{python3_sitelib}/__pycache__/ceph_argparse.cpython*.py*
|
||||||
%{python3_sitelib}/ceph_daemon.py
|
%{python3_sitelib}/ceph_daemon.py
|
||||||
%{python3_sitelib}/__pycache__/ceph_daemon.cpython*.py*
|
#%{python3_sitelib}/__pycache__/ceph_daemon.cpython*.py*
|
||||||
%endif
|
|
||||||
%endif
|
%endif
|
||||||
%dir %{_udevrulesdir}
|
%dir %{_udevrulesdir}
|
||||||
%{_udevrulesdir}/50-rbd.rules
|
%{_udevrulesdir}/50-rbd.rules
|
||||||
@ -2010,12 +1910,6 @@ fi
|
|||||||
%{_mandir}/man8/librados-config.8*
|
%{_mandir}/man8/librados-config.8*
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{with python2}
|
|
||||||
%files -n python-rados
|
|
||||||
%{python_sitearch}/rados.so
|
|
||||||
%{python_sitearch}/rados-*.egg-info
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if 0%{with python3}
|
%if 0%{with python3}
|
||||||
%files -n python%{python3_pkgversion}-rados
|
%files -n python%{python3_pkgversion}-rados
|
||||||
%{python3_sitearch}/rados.cpython*.so
|
%{python3_sitearch}/rados.cpython*.so
|
||||||
@ -2074,24 +1968,12 @@ fi
|
|||||||
%{_includedir}/rados/rgw_file.h
|
%{_includedir}/rados/rgw_file.h
|
||||||
%{_libdir}/librgw.so
|
%{_libdir}/librgw.so
|
||||||
|
|
||||||
%if 0%{with python2}
|
|
||||||
%files -n python-rgw
|
|
||||||
%{python_sitearch}/rgw.so
|
|
||||||
%{python_sitearch}/rgw-*.egg-info
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if 0%{with python3}
|
%if 0%{with python3}
|
||||||
%files -n python%{python3_pkgversion}-rgw
|
%files -n python%{python3_pkgversion}-rgw
|
||||||
%{python3_sitearch}/rgw.cpython*.so
|
%{python3_sitearch}/rgw.cpython*.so
|
||||||
%{python3_sitearch}/rgw-*.egg-info
|
%{python3_sitearch}/rgw-*.egg-info
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{with python2}
|
|
||||||
%files -n python-rbd
|
|
||||||
%{python_sitearch}/rbd.so
|
|
||||||
%{python_sitearch}/rbd-*.egg-info
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if 0%{with python3}
|
%if 0%{with python3}
|
||||||
%files -n python%{python3_pkgversion}-rbd
|
%files -n python%{python3_pkgversion}-rbd
|
||||||
%{python3_sitearch}/rbd.cpython*.so
|
%{python3_sitearch}/rbd.cpython*.so
|
||||||
@ -2115,29 +1997,20 @@ fi
|
|||||||
%{_libdir}/libcephfs.so
|
%{_libdir}/libcephfs.so
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if %{with cephfs}
|
|
||||||
%if 0%{with python2}
|
|
||||||
%files -n python-cephfs
|
|
||||||
%{python_sitearch}/cephfs.so
|
|
||||||
%{python_sitearch}/cephfs-*.egg-info
|
|
||||||
%{python_sitelib}/ceph_volume_client.py*
|
|
||||||
%endif
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if 0%{with python3}
|
%if 0%{with python3}
|
||||||
%files -n python%{python3_pkgversion}-cephfs
|
%files -n python%{python3_pkgversion}-cephfs
|
||||||
%{python3_sitearch}/cephfs.cpython*.so
|
%{python3_sitearch}/cephfs.cpython*.so
|
||||||
%{python3_sitearch}/cephfs-*.egg-info
|
%{python3_sitearch}/cephfs-*.egg-info
|
||||||
%{python3_sitelib}/ceph_volume_client.py
|
%{python3_sitelib}/ceph_volume_client.py
|
||||||
%{python3_sitelib}/__pycache__/ceph_volume_client.cpython*.py*
|
#%{python3_sitelib}/__pycache__/ceph_volume_client.cpython*.py*
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{with python3}
|
%if 0%{with python3}
|
||||||
%files -n python%{python3_pkgversion}-ceph-argparse
|
%files -n python%{python3_pkgversion}-ceph-argparse
|
||||||
%{python3_sitelib}/ceph_argparse.py
|
%{python3_sitelib}/ceph_argparse.py
|
||||||
%{python3_sitelib}/__pycache__/ceph_argparse.cpython*.py*
|
#%{python3_sitelib}/__pycache__/ceph_argparse.cpython*.py*
|
||||||
%{python3_sitelib}/ceph_daemon.py
|
%{python3_sitelib}/ceph_daemon.py
|
||||||
%{python3_sitelib}/__pycache__/ceph_daemon.cpython*.py*
|
#%{python3_sitelib}/__pycache__/ceph_daemon.cpython*.py*
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{with ceph_test_package}
|
%if 0%{with ceph_test_package}
|
||||||
@ -2296,11 +2169,4 @@ exit 0
|
|||||||
|
|
||||||
%endif # with selinux
|
%endif # with selinux
|
||||||
|
|
||||||
%if 0%{with python2}
|
|
||||||
%files -n python-ceph-compat
|
|
||||||
# We need an empty %%files list for python-ceph-compat, to tell rpmbuild to
|
|
||||||
# actually build this meta package.
|
|
||||||
%endif
|
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python3
|
||||||
#
|
#
|
||||||
# Copyright (c) 2019 Wind River Systems, Inc.
|
# Copyright (c) 2021 Wind River Systems, Inc.
|
||||||
#
|
#
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
#
|
#
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python3
|
||||||
#
|
#
|
||||||
# Copyright (c) 2019 Wind River Systems, Inc.
|
# Copyright (c) 2021 Wind River Systems, Inc.
|
||||||
#
|
#
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
#
|
#
|
||||||
|
Loading…
Reference in New Issue
Block a user