File saltbundlepy-certifi.spec of Package saltbundlepy-certifi

#
# spec file for package saltbundlepy-certifi
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via https://bugs.opensuse.org/
#


%{?!saltbundlepy_module:%define saltbundlepy_module() saltbundlepy-%{**}}
%define pythons saltbundlepy

# Disable python bytecompile for all distros
# It's called explicitly in the spec
%global __brp_python_bytecompile %{nil}

Name:           saltbundlepy-certifi
Version:        2018.1.18
Release:        0
Summary:        Python package for providing Mozilla's CA Bundle
License:        MPL-2.0
Group:          Development/Languages/Python
URL:            https://pypi.python.org/pypi/certifi
Source:         https://files.pythonhosted.org/packages/source/c/certifi/certifi-%{version}.tar.gz
# PATCH-FIX-SUSE -- prefer SUSE certificates
Patch0:         return-CA-bundle-for-distro.patch
# bsc#1206587 CVE-2022-23491
# adapted from https://github.com/certifi/python-certifi/compare/2022.09.24...2022.12.07#diff-e1f673cf40a49b35c77f0550d8d3f940471f098e8e102bccc0ad72d05cf13d87L2854
Patch1:         removeTrustCor.patch
BuildRequires:  %{saltbundlepy_module devel >= 3.10}
BuildRequires:  %{saltbundlepy_module setuptools}
BuildRequires:  ca-certificates
BuildRequires:  fdupes
BuildRequires:  saltbundlepy-rpm-macros
Requires:       ca-certificates
Requires:       ca-certificates-mozilla
Requires:       saltbundlepy-base
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
BuildArch:      noarch
%python_subpackages

%description
This installable Python package contains a CA Bundle that you can reference
in your Python code. This is useful for verifying HTTP requests, for example.

This is the same CA Bundle which ships with the Requests codebase, and is
derived from Mozilla Firefox's canonical set.

%prep
%setup -q -n certifi-%{version}
%patch0 -p1
%patch1 -p1
%if 0%{?suse_version}
export CA_BUNDLE_PATH=/etc/ssl/ca-bundle.pem
%endif
%if 0%{?rhel} || 0%{?fedora}
export CA_BUNDLE_PATH=/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
%endif
%if 0%{?debian_version} || 0%{?ubuntu_version}
export CA_BUNDLE_PATH=/etc/ssl/certs/ca-certificates.crt
%endif
if [ -z "${CA_BUNDLE_PATH}" ]; then
    echo "Error: Unable to define CA bundle path!"
    exit 1
fi
sed -i "s#++CA_BUNDLE_PATH++#${CA_BUNDLE_PATH}#" certifi/core.py

%build
%python_build

%install
%python_install

%{python_expand chmod +x %{buildroot}%{$python_sitelib}/certifi/core.py
 sed -i "s|#!/usr/bin/env python|#!%{__$python}|" %{buildroot}/%{$python_sitelib}/certifi/core.py
 rm %{buildroot}%{$python_sitelib}/certifi/cacert.pem
 find %{buildroot}%{$python_sitelib} -name '*.pyc' -delete
 %{__$python} -m compileall -d %{$python_sitelib} %{buildroot}%{$python_sitelib}
 %{__$python} -O -m compileall -d %{$python_sitelib} %{buildroot}%{$python_sitelib}
 %fdupes %{buildroot}%{$python_sitelib}
}

%files %{python_files}
%defattr(-,root,root,-)
%doc README.rst LICENSE
%{python_sitelib}/certifi/
%{python_sitelib}/certifi-%{version}-py*.egg-info

%changelog
openSUSE Build Service is sponsored by