From 99f2412e857444d6ecbbb15b517b40b6ca649ac4 Mon Sep 17 00:00:00 2001
From: CentOS Sources <bugs@centos.org>
Date: Tue, 17 May 2022 04:59:42 -0400
Subject: [PATCH] import python-pyghmi-1.5.34-2.el9

---
 .gitignore               |   1 +
 .python-pyghmi.metadata  |   1 +
 SOURCES/nopbr.patch      |  12 ++
 SOURCES/setup.patch      |  22 +++
 SPECS/python-pyghmi.spec | 305 +++++++++++++++++++++++++++++++++++++++
 5 files changed, 341 insertions(+)
 create mode 100644 .gitignore
 create mode 100644 .python-pyghmi.metadata
 create mode 100644 SOURCES/nopbr.patch
 create mode 100644 SOURCES/setup.patch
 create mode 100644 SPECS/python-pyghmi.spec

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..8fb305a
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+SOURCES/pyghmi-1.5.34.tar.gz
diff --git a/.python-pyghmi.metadata b/.python-pyghmi.metadata
new file mode 100644
index 0000000..03aef02
--- /dev/null
+++ b/.python-pyghmi.metadata
@@ -0,0 +1 @@
+09baf24424c98ce577719c4cd82276898f328651 SOURCES/pyghmi-1.5.34.tar.gz
diff --git a/SOURCES/nopbr.patch b/SOURCES/nopbr.patch
new file mode 100644
index 0000000..ae951ce
--- /dev/null
+++ b/SOURCES/nopbr.patch
@@ -0,0 +1,12 @@
+diff -up pyghmi-1.5.14/pyghmi/version.py~ pyghmi-1.5.14/pyghmi/version.py
+--- pyghmi-1.5.14/pyghmi/version.py~	2020-04-22 22:23:43.000000000 +0200
++++ pyghmi-1.5.14/pyghmi/version.py	2021-08-06 10:59:41.595820434 +0200
+@@ -13,6 +13,6 @@
+ #    License for the specific language governing permissions and limitations
+ #    under the License.
+ 
+-import pbr.version
++#import pbr.version
+ 
+-version_info = pbr.version.VersionInfo('pyghmi')
++version_info = "@@REDHATVERSION@@"
diff --git a/SOURCES/setup.patch b/SOURCES/setup.patch
new file mode 100644
index 0000000..04a4994
--- /dev/null
+++ b/SOURCES/setup.patch
@@ -0,0 +1,22 @@
+diff -up pyghmi-1.5.14/.orig.orig pyghmi-1.5.14/.orig
+diff -up pyghmi-1.5.14/setup.py.tmpl.orig pyghmi-1.5.14/setup.py.tmpl
+--- pyghmi-1.5.14/setup.py.tmpl.orig	2021-08-06 11:44:02.618240604 +0200
++++ pyghmi-1.5.14/setup.py.tmpl	2021-08-06 11:44:35.586675599 +0200
+@@ -26,6 +26,16 @@ setuptools.setup(
+     packages=['pyghmi', 'pyghmi.util', 'pyghmi.ipmi', 'pyghmi.cmd',
+               'pyghmi.redfish', 'pyghmi.ipmi.private', 'pyghmi.ipmi.oem',
+               'pyghmi.ipmi.oem.lenovo', 'pyghmi.redfish.oem',
+-              'pyghmi.redfish.oem.dell', 'pyghmi.redfish.oem.lenovo'],
++              'pyghmi.redfish.oem.dell', 'pyghmi.redfish.oem.lenovo',
++              'pyghmi.tests'],
++    entry_points={
++        'console_scripts': [
++            'pyghmicons=pyghmi.cmd.pyghmicons:main',
++            'pyghmiutil=pyghmi.cmd.pyghmiutil:main',
++            'virshbmc=pyghmi.cmd.virshbmc:main',
++            'fakebmc=pyghmi.cmd.fakebmc:main',
++        ],
++    },
++
+     license='Apache License, Version 2.0')
+ 
diff --git a/SPECS/python-pyghmi.spec b/SPECS/python-pyghmi.spec
new file mode 100644
index 0000000..9f5fcf0
--- /dev/null
+++ b/SPECS/python-pyghmi.spec
@@ -0,0 +1,305 @@
+%{?python_enable_dependency_generator}
+%global sname pyghmi
+%global common_summary Python General Hardware Management Initiative (IPMI and others)
+
+%global common_desc This is a pure Python implementation of IPMI protocol. \
+\
+The included pyghmicons and pyghmiutil scripts demonstrate how one may \
+incorporate the pyghmi library into a Python application.
+
+%global common_desc_tests Tests for the pyghmi library
+
+# Enable python3 build in fedora and rhel>7 and python2 only for rhel=7
+%if 0%{?fedora} || 0%{?rhel} > 7
+%global with_python3 1
+%global with_python2 0
+%else
+%global with_python3 0
+%global with_python2 1
+%endif
+
+%if %{lua: if (string.find(rpm.expand("%{?dist}"), "ost") == nil) then print(0) else print(1) end}
+%bcond_without              docs
+%else
+%bcond_with                 docs
+%endif
+
+Summary: %{common_summary}
+Name: python-%{sname}
+Version: %{?version:%{version}}%{!?version:1.5.34}
+Release: 2%{?dist}
+Source0: https://tarballs.opendev.org/x/%{sname}/%{sname}-%{version}.tar.gz
+License: ASL 2.0
+Prefix: %{_prefix}
+BuildArch: noarch
+Url: https://git.openstack.org/cgit/openstack/pyghmi
+
+Patch0:  nopbr.patch
+Patch1:  setup.patch
+
+%description
+%{common_desc}
+
+%if 0%{?with_python2}
+%package -n python2-%{sname}
+Summary: %{common_summary}
+%{?python_provide:%python_provide python2-%{sname}}
+
+BuildRequires: openstack-macros
+BuildRequires: python2-devel
+#BuildRequires: python2-pbr
+BuildRequires: python2-setuptools
+
+Requires: python2-cryptography >= 2.1
+Requires: python2-six >= 1.10.0
+Requires: python2-dateutil >= 2.6.1
+
+%description -n python2-%{sname}
+%{common_desc}
+
+%package -n python2-%{sname}-tests
+Summary: %{common_desc_tests}
+Requires: python2-%{sname} = %{version}-%{release}
+
+%description -n python2-%{sname}-tests
+%{common_desc_tests}
+
+%endif # with_python2
+
+%if 0%{?with_python3}
+
+%package -n python3-%{sname}
+Summary: %{common_summary}
+%{?python_provide:%python_provide python3-%{sname}}
+
+BuildRequires: python3-devel
+#BuildRequires: python3-pbr
+BuildRequires: python3-setuptools
+
+Requires: python3-cryptography >= 2.1
+Requires: python3-six >= 1.10.0
+Requires: python3-dateutil >= 2.6.1
+
+%description -n python3-%{sname}
+%{common_desc}
+
+%package -n python3-%{sname}-tests
+Summary: %{common_desc_tests}
+Requires: python3-%{sname} = %{version}-%{release}
+
+%description -n python3-%{sname}-tests
+%{common_desc_tests}
+
+%endif # with_python3
+
+%if %{with docs}
+
+%package -n python-%{sname}-doc
+Summary: The pyghmi library documentation
+
+%if 0%{?with_python2}
+BuildRequires: python-sphinx
+BuildRequires: python2-openstackdocstheme
+%else
+BuildRequires: python3-sphinx
+BuildRequires: python3-openstackdocstheme
+%endif
+
+%description -n python-%{sname}-doc
+Documentation for the pyghmi library
+
+%endif
+
+%prep
+%setup -qn %{sname}-%{version}
+%patch0 -p1
+%patch1 -p1
+
+# NOTE(dtantsur): pyghmi is actual fine with older dateutil, 2.8.1 is missing
+# from both Fedora and CentOS currently. See
+# https://bugzilla.redhat.com/show_bug.cgi?id=1835084
+sed -i 's/python-dateutil.*/python-dateutil>=2.6.1/' requirements.txt
+
+sed -i s/@@REDHATVERSION@@/%{version}/ pyghmi/version.py
+# If not PBR, use the setup.py.tmpl
+sed -e "s/#VERSION#/%{version}/" setup.py.tmpl > setup.py
+
+%build
+%if 0%{?with_python3}
+%py3_build
+%if %{with docs}
+%{__python3} setup.py build_sphinx -b html
+%endif
+%endif # with_python3
+
+%if 0%{?with_python2}
+%py2_build
+%if %{with docs}
+%{__python2} setup.py build_sphinx -b html
+%endif
+%endif
+
+# remove the sphinx-build leftovers
+rm -rf doc/build/html/.{doctrees,buildinfo}
+
+%install
+%if 0%{?with_python3}
+%py3_install
+
+# rename python3 binary
+pushd %{buildroot}/%{_bindir}
+mv pyghmicons pyghmicons-%{python3_version}
+ln -s pyghmicons-%{python3_version} pyghmicons-3
+ln -s pyghmicons-3 pyghmicons
+mv pyghmiutil pyghmiutil-%{python3_version}
+ln -s pyghmiutil-%{python3_version} pyghmiutil-3
+ln -s pyghmiutil-3 pyghmiutil
+mv virshbmc virshbmc-%{python3_version}
+ln -s virshbmc-%{python3_version} virshbmc-3
+ln -s virshbmc-3 virshbmc
+popd
+
+%endif # with_python3
+
+%if 0%{?with_python2}
+%py2_install
+%endif
+
+%if 0%{?with_python3}
+%files -n python3-%{sname}
+%license LICENSE
+%{_bindir}/pyghmicons*
+%{_bindir}/pyghmiutil*
+%{_bindir}/virshbmc*
+%{_bindir}/fakebmc
+%{python3_sitelib}/%{sname}
+%{python3_sitelib}/%{sname}-*.egg-info
+%exclude %{python3_sitelib}/%{sname}/tests
+
+%files -n python3-%{sname}-tests
+%license LICENSE
+%{python3_sitelib}/%{sname}/tests
+%endif # with_python3
+
+%if 0%{?with_python2}
+%files -n python2-%{sname}
+%license LICENSE
+%{_bindir}/pyghmicons
+%{_bindir}/pyghmiutil
+%{_bindir}/virshbmc
+%{_bindir}/fakebmc
+%{python2_sitelib}/%{sname}
+%{python2_sitelib}/%{sname}-*.egg-info
+%exclude %{python2_sitelib}/%{sname}/tests
+
+%files -n python2-%{sname}-tests
+%license LICENSE
+%{python2_sitelib}/%{sname}/tests
+%endif
+
+%if %{with docs}
+
+%files -n python-%{sname}-doc
+%license LICENSE
+%doc doc/build/html README.md
+
+%endif # with docs
+
+%changelog
+* Wed Feb 23 2022 Pavel Cahyna <pcahyna@redhat.com> - 1.5.34-2
+- Updated to 1.5.34.
+
+* Fri Aug  6 2021 Pavel Cahyna <pcahyna@redhat.com> - 1.5.29-1
+- Updated to 1.5.29.
+- Avoid dependency on python-pbr, conditionalize docs build, to allow building in RHEL.
+  Inspired by python-sushy.
+
+* Fri Nov 06 2020 Joel Capitao <jcapitao@redhat.com> - 1.5.19-1
+- Updated to 1.5.19.
+
+* Sun Aug 30 2020 Dmitry Tantsur <divius.inside@gmail.com> - 1.5.16-1
+- Updated to 1.5.16.
+
+* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.14-5
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
+
+* Tue May 26 2020 Dmitry Tantsur <divius.inside@gmail.com> - 1.5.14-4
+- Relax dateutil requirement in requirement.txt as well (#1835084)
+
+* Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 1.5.14-3
+- Rebuilt for Python 3.9
+
+* Wed May 13 2020 Yatin Karel <ykarel@redhat.com> - 1.5.14-2
+- Fix typo in requirements
+
+* Mon May 11 2020 Yatin Karel <ykarel@redhat.com> - 1.5.14-1
+- Updated to 1.5.14.
+
+* Thu Oct 03 2019 Miro Hrončok <mhroncok@redhat.com> - 1.2.16-4
+- Rebuilt for Python 3.8.0rc1 (#1748018)
+
+* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 1.2.16-3
+- Rebuilt for Python 3.8
+
+* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.16-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
+
+* Tue Feb 05 2019 Alfredo Moralejo <amoralej@redhat.com> - 1.2.16-1
+- Updated to 1.2.16.
+
+* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.2.4-5
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
+
+* Thu Oct 11 2018 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 1.2.4-4
+- Python2 binary package has been removed
+  See https://fedoraproject.org/wiki/Changes/Mass_Python_2_Package_Removal
+
+* Tue Aug 14 2018 Ilya Etingof <etingof@gmail.com> - 1.2.4-3
+- Added Python 3 build
+
+* Mon Aug 13 2018 Ilya Etingof <etingof@gmail.com> - 1.2.4-1
+- Upstream 1.2.4
+
+* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.22-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
+
+* Fri Feb 09 2018 Iryna Shcherbina <ishcherb@redhat.com> - 1.0.22-3
+- Update Python 2 dependency declarations to new packaging standards
+  (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3)
+
+* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.22-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
+
+* Thu Oct  5 2017 Haïkel Guémar <hguemar@fedoraproject.org> - 1.0.22-1
+- Upstream 1.0.22
+
+* Sat Aug 19 2017 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 1.0.12-4
+- Python 2 binary package renamed to python2-pyghmi
+  See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3
+
+* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.12-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
+
+* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.12-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
+
+* Mon Nov 07 2016 Lucas Alvares Gomes <lucasagomes@gmail.com> - 1.0.12-1
+- Rebased to 1.0.12
+
+* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8.0-3
+- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
+
+* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.8.0-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
+
+* Fri Sep 25 2015 Lucas Alvares Gomes <lucasagomes@gmail.com> - 0.8.0-1
+- Rebased to 0.8.0
+
+* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.5.9-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
+
+* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.5.9-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
+
+* Thu Feb 20 2014 Lucas Alvares Gomes <lucasagomes@gmail.com> - 0.5.9-1
+- Initial package.