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

%{?!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:        2023.7.22
Release:        0
Summary:        Python package for providing Mozilla's CA Bundle
License:        MPL-2.0
Group:          Development/Languages/Python
# PATCH-FIX-SUSE -- prefer SUSE certificates
Patch0:         python-certifi-shipped-requests-cabundle.patch
# PATCH-FEATURE-UPSTREAM two-basic-unit-tests.patch gh#certifi/python-certifi#137
# Add at least primitive test suite (by bnavigator)
Patch1:         two-basic-unit-tests.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

Certifi provides Mozilla's carefully curated collection of Root Certificates
for validating the trustworthiness of SSL certificates while verifying the
identity of TLS hosts. It has been extracted from the Requests project.

Note that on SUSE packages the used CA bundle is actually the system bundle

%autosetup -p1 -n certifi-%{version}

%if 0%{?suse_version}
export CA_BUNDLE_PATH=/etc/ssl/ca-bundle.pem
%if 0%{?rhel} || 0%{?fedora} || 0%{?openeuler_version}
export CA_BUNDLE_PATH=/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
%if 0%{?debian_version} || 0%{?ubuntu_version}
export CA_BUNDLE_PATH=/etc/ssl/certs/ca-certificates.crt
if [ -z "${CA_BUNDLE_PATH}" ]; then
    echo "Error: Unable to define CA bundle path!"
    exit 1
sed -i "s#/etc/ssl/ca-bundle.pem#${CA_BUNDLE_PATH}#" certifi/



%{python_expand chmod +x %{buildroot}%{$python_sitelib}/certifi/
 sed -i "s|#!/usr/bin/env python|#!%{__$python}|" %{buildroot}/%{$python_sitelib}/certifi/
 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}

openSUSE Build Service is sponsored by