%global _empty_manifest_terminate_build 0
Name:           python-redis
Version:        4.5.5
Release:        1
Summary:        Python client for Redis key-value store
License:        MIT
URL:            https://github.com/redis/redis-py
Source0:        https://github.com/redis/redis-py/archive/v%{version}/redis-%{version}.tar.gz
Source1:        redis.conf
BuildArch:      noarch
%description
The Python interface to the Redis key-value store.

%package -n python3-redis
Summary:        Python client for Redis key-value store
Provides:       python-redis
BuildRequires:  python3-devel
BuildRequires:  python3-setuptools
BuildRequires:  python3-async-timeout
BuildRequires:  python3-py
BuildRequires:  python3-pytest
BuildRequires:  python3-pytest-asyncio
BuildRequires:  python3-mock
BuildRequires:  redis
%description -n python3-redis
The Python interface to the Redis key-value store.

%package help
Summary:        Python client for Redis key-value store
Provides:       python3-redis-doc
%description help
The Python interface to the Redis key-value store.

%prep
%autosetup -n redis-py-%{version}

%build
%py3_build


%install
%py3_install
install -d -m755 %{buildroot}/%{_pkgdocdir}
if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
pushd %{buildroot}
if [ -d usr/lib ]; then
    find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/lib64 ]; then
    find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/bin ]; then
    find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/sbin ]; then
    find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
fi
touch doclist.lst
if [ -d usr/share/man ]; then
    find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
fi
popd
mv %{buildroot}/filelist.lst .
mv %{buildroot}/doclist.lst .

%check
mkdir -p  %{_builddir}/redis-var/
cp %{SOURCE1} %{_builddir}/redis-var/
sed -i "s#^dir .*#dir %{_builddir}/redis-var#g" %{_builddir}/redis-var/redis.conf
sed -i "s#^logfile .*#logfile %{_builddir}/redis-var/redis.log#g" %{_builddir}/redis-var/redis.conf
redis-server %{_builddir}/redis-var/redis.conf &
CFLAGS="${CFLAGS:-${RPM_OPT_FLAGS}}" LDFLAGS="${LDFLAGS:-${RPM_LD_FLAGS}}" \
PATH="%{buildroot}%{_bindir}:$PATH" \
PYTHONPATH="${PYTHONPATH:-%{buildroot}%{python3_sitearch}:%{buildroot}%{python3_sitelib}}" \
PYTHONDONTWRITEBYTECODE=1 \
%{?__pytest_addopts:PYTEST_ADDOPTS="${PYTEST_ADDOPTS:-} %{__pytest_addopts}"} \
PYTEST_XDIST_AUTO_NUM_WORKERS=%{_smp_build_ncpus}} \
/usr/bin/pytest -m 'onlynoncluster and not ssl and not redismod' \
--ignore "tests/test_credentials.py" \
--ignore "tests/test_asyncio/test_credentials.py" \
--ignore "tests/test_asyncio/test_cwe_404.py"
kill %1

%files -n python3-redis -f filelist.lst
%dir %{python3_sitelib}/*


%files help -f doclist.lst
%{_docdir}/*

%changelog
* Thu Apr 6 2023 Dongxing Wang <dxwangk@isoftstone.com> - 4.5.5-1
- upgrade version to 4.5.5

* Mon Aug 09 2021 OpenStack_SIG <openstack@openeuler.org> - 3.5.3-1
- Update version to 3.5.3

* Tue Jan 12 2021 wutao <wutao61@huawei.com> - 3.4.1-1
- upgrade to 3.4.1 adapting to pytest

* Wed Aug 05 2020 zhangjiapeng <zhangjiapeng9@huawei.com> - 2.10.6-7
- Remove python2

* Mon Jan 6 2020 qinjian <qinjian18@huawei.com> - 2.10.6-6
- Package init
