From ef4920183071838957fc9e2a30e41addb60f67d4 Mon Sep 17 00:00:00 2001 From: Shreshtha Joshi Date: Mon, 27 Apr 2020 16:46:18 +0530 Subject: [PATCH] Import from Centos --- .gitignore | 1 + python-pyghmi.spec | 214 ++++++++++++++++++++++++++++++++++++++------- sources | 2 +- 3 files changed, 182 insertions(+), 35 deletions(-) diff --git a/.gitignore b/.gitignore index 3f7f8fc..c5376a3 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /pyghmi-1.0.12.tar.gz /pyghmi-1.0.22.tar.gz +/pyghmi-1.2.16.tar.gz diff --git a/python-pyghmi.spec b/python-pyghmi.spec index f3c9065..0ff66d3 100644 --- a/python-pyghmi.spec +++ b/python-pyghmi.spec @@ -1,62 +1,208 @@ +%{?python_enable_dependency_generator} %global sname pyghmi +%global common_summary Python General Hardware Management Initiative (IPMI and others) -Name: python-%{sname} -Version: 1.0.22 -Release: 2%{?dist} -Provides: python3-pyghmi = %{version}-%{release} -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. -License: ASL 2.0 -URL: https://github.com/stackforge/pyghmi -Source0: http://tarballs.openstack.org/%{sname}/%{sname}-%{version}.tar.gz -BuildArch: noarch +%global common_desc_tests Tests for the pyghmi library -%global _description\ -This is a pure python implementation of the IPMI protocol.\ +# 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 -%description %_description +Summary: %{common_summary} +Name: python-%{sname} +Version: %{?version:%{version}}%{!?version:1.2.16} +Release: 4%{?dist} +Source0: http://tarballs.openstack.org/%{sname}/%{sname}-%{version}.tar.gz +License: ASL 2.0 +Prefix: %{_prefix} +BuildArch: noarch +Url: https://git.openstack.org/cgit/openstack/pyghmi + +%description +%{common_desc} + +%if 0%{?with_python2} +%package -n python2-%{sname} +Summary: %{common_summary} +%{?python_provide:%python_provide python2-%{sname}} + +BuildRequires: python2-devel +BuildRequires: python2-pbr +BuildRequires: python2-setuptools + +Requires: python2-cryptography >= 2.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: Python General Hardware Management Initiative (IPMI and others) -BuildRequires: python3-devel -BuildRequires: python3-setuptools -BuildRequires: python3-pbr +Summary: %{common_summary} +%{?python_provide:%python_provide python3-%{sname}} -Requires: python3-crypto >= 2.6 +BuildRequires: python3-devel +BuildRequires: python3-pbr +BuildRequires: python3-setuptools -%description -n python3-%{sname} %_description +Requires: python3-cryptography >= 2.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 + +%package -n python-%{sname}-doc +Summary: The pyghmi library documentation + +%if 0%{?with_python2} +BuildRequires: python2-sphinx +BuildRequires: python2-openstackdocstheme +%else +BuildRequires: python3-sphinx +BuildRequires: python3-openstackdocstheme +%endif + +%description -n python-%{sname}-doc +Documentation for the pyghmi library %prep -%setup -q -n %{sname}-%{version} - -# Remove bundled egg-info -rm -rf %{sname}.egg-info - -# Remove the requirements file so that pbr hooks don't add it -# to distutils requires_dist config -rm -rf {test-,}requirements.txt - +%setup -qn %{sname}-%{version} %build -%{__python3} setup.py build +%if 0%{?with_python3} +%py3_build +%{__python3} setup.py build_sphinx -b html +%endif # with_python3 +%if 0%{?with_python2} +%py2_build +%{__python2} setup.py build_sphinx -b html +%endif + +# remove the sphinx-build leftovers +rm -rf doc/build/html/.{doctrees,buildinfo} %install -%{__python3} setup.py install --skip-build --root %{buildroot} +%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} -%doc README LICENSE -%{python3_sitelib}/pyghmi -%{python3_sitelib}/*.egg-info +%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 + +%files -n python-%{sname}-doc +%license LICENSE +%doc doc/build/html README.md %changelog -* Fri Jan 18 2019 Shreshtha Joshi - 1.0.22-2 -- RHEL8-isms +* Thu Oct 03 2019 Miro Hrončok - 1.2.16-4 +- Rebuilt for Python 3.8.0rc1 (#1748018) + +* Mon Aug 19 2019 Miro Hrončok - 1.2.16-3 +- Rebuilt for Python 3.8 + +* Fri Jul 26 2019 Fedora Release Engineering - 1.2.16-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Tue Feb 05 2019 Alfredo Moralejo - 1.2.16-1 +- Updated to 1.2.16. + +* Sat Feb 02 2019 Fedora Release Engineering - 1.2.4-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Thu Oct 11 2018 Zbigniew Jędrzejewski-Szmek - 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 - 1.2.4-3 +- Added Python 3 build + +* Mon Aug 13 2018 Ilya Etingof - 1.2.4-1 +- Upstream 1.2.4 + +* Sat Jul 14 2018 Fedora Release Engineering - 1.0.22-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Fri Feb 09 2018 Iryna Shcherbina - 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 - 1.0.22-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Thu Oct 5 2017 Haïkel Guémar - 1.0.22-1 - Upstream 1.0.22 diff --git a/sources b/sources index 75fa792..7cdd63c 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -34626d49dd832973715dc4ba4d55eecd pyghmi-1.0.22.tar.gz +088af87a95f800cb7ca07a21778231f1 pyghmi-1.2.16.tar.gz