Blob Blame History Raw
%if 0%{?rhel} < 10
# sphinx version is too old
%bcond_with doc
%else
%bcond_without doc
%endif

%global pypi_name django-configurations

Name:           python-%{pypi_name}
Version:        2.5
Release:        %autorelease
Summary:        A helper for organizing Django settings

License:        BSD-3-Clause
URL:            https://django-configurations.readthedocs.io/
Source:         %{pypi_source}
Patch:          %{pypi_name}-adjust_test_cases.diff

BuildArch:      noarch

%global _description %{expand:
django-configurations eases Django project configuration by relying on the
composability of Python classes. It extends the notion of Django's module
based settings loading with well established object oriented programming
patterns.}

%description %_description

%package -n     python3-%{pypi_name}
Summary:        %{summary}
%{?python_provide:%python_provide python3-%{pypi_name}}

BuildRequires:  python3-devel
BuildRequires:  python3dist(pytest)

%description -n python3-%{pypi_name} %_description

%if %{with doc}
%package -n python-%{pypi_name}-doc
Summary:        The documentation for %{name}

%description -n python-%{pypi_name}-doc
Documentation for %{name}.
%endif


%prep
%autosetup -n %{pypi_name}-%{version} -p1
rm -rf %{pypi_name}.egg-info

# Remove unnecessary test BRs
sed -i '/coverage$/d' tox.ini
sed -i '/coverage_enable_subprocess$/d' tox.ini

%generate_buildrequires
%if %{with doc}
%pyproject_buildrequires -e docs -t
%else
%pyproject_buildrequires -t
%endif


%build
%pyproject_wheel

%if %{with doc}
PYTHONPATH=${PWD} sphinx-build-3 docs html
rm -rf html/.{doctrees,buildinfo}
%endif


%install
%pyproject_install

%pyproject_save_files configurations


%check
export DJANGO_CONFIGURATION="Test"
export DJANGO_SETTINGS_MODULE="tests.settings.main"
export PATH=$PATH:%{buildroot}%{_bindir}
export PYTHONPATH=%{buildroot}%{python3_sitelib}:$(pwd)
%pytest


%files -n python3-%{pypi_name} -f %{pyproject_files}
%license LICENSE
%doc README.rst
%{_bindir}/django-cadmin

%if %{with doc}
%files -n python-%{pypi_name}-doc
%doc html
%license LICENSE
%endif


%changelog
%autochangelog