Add dependency required by oidc-auth

The oidc-auth CLI requires the libraries python-mechanize,
python-html5lib and python-webencodings.
These libraries do not have RPMs available therefore they
need to be packaged here.

Story: 2006711
Task: 38919
Depends-On: https://review.opendev.org/#/c/710991/

Change-Id: Ife8719a70388bc9a0e96149059fd5cc2c1fb232a
Signed-off-by: Teresa Ho <teresa.ho@windriver.com>
This commit is contained in:
Teresa Ho 2020-03-02 22:29:15 -05:00
parent 850aa634b8
commit fdaa4c4a9d
8 changed files with 272 additions and 0 deletions

View File

@ -90,3 +90,6 @@ ceph/ceph
bmc/Redfishtool
virt/kvm-timer-advance
requests-toolbelt
python/python-mechanize
python/python-html5lib
python/python-webencodings

View File

@ -57,6 +57,9 @@ puppet-network-7deacd5fdc22c0543455878a8d1872f2f5417c1d.tar.gz#packstack/puppet/
puppet-nslcd-b8c19b1ada89865f2e50758e054583798ad8011a.tar.gz#packstack/puppet/modules/nslcd#https://github.com/jlyheden/puppet-nslcd/tarball/b8c19b1ada89865f2e50758e054583798ad8011a#http##
puppi-c1c47f4edfd761d1bbde32a75da0c3fa7cc93a81.tar.gz#puppi-master#https://github.com/example42/puppi/tarball/c1c47f4edfd761d1bbde32a75da0c3fa7cc93a81#http##
# python-cephclient-v0.1.0.5.tar.gz#python-cephclient-0.1.0.5#https://github.com/dmsimard/python-cephclient/archive/v0.1.0.5.tar.gz#http##
mechanize-0.4.5.tar.gz#mechanize-0.4.5#https://github.com/python-mechanize/mechanize/archive/v0.4.5.tar.gz#http##
html5lib-python-1.0.1.tar.gz#html5lib-1.0.1#https://github.com/html5lib/html5lib-python/archive/1.0.1.tar.gz#http##
python-webencodings-0.5.1.tar.gz#webencodings-0.5.1#https://github.com/gsnedders/python-webencodings/archive/v0.5.1.tar.gz#http##
python-setuptools-v38.5.1.tar.gz#setuptools-38.5.1#https://github.com/pypa/setuptools/archive/v38.5.1.tar.gz#http##
!qat1.7.l.4.5.0-00034.tar.gz#quickassist#https://01.org/sites/default/files/downloads/qat1.7.l.4.5.0-00034.tar.gz#http_script##post-dl-script/qat1.7.sh
rapidjson-f54b0e47a08782a6131cc3d60f94d038fa6e0a51.tar.gz#rapidjson#https://api.github.com/repos/ceph/rapidjson/tarball/f54b0e47a08782a6131cc3d60f94d038fa6e0a51#https##

View File

@ -0,0 +1,3 @@
COPY_LIST="$CGCS_BASE/downloads/html5lib-python-1.0.1.tar.gz"
TIS_PATCH_VER=0

View File

@ -0,0 +1,99 @@
# define some macros for RHEL 6
%global __python2 %__python
%global python2_sitelib %python_sitelib
Name: html5lib-python
Version: 1.0.1
Release: 1.el7%{?_tis_dist}.%{tis_patch_ver}
Summary: Python library for parsing HTML
Group: Applications/System
License: MIT License
URL: https://github.com/html5lib/html5lib-python/archive/1.0.1.tar.gz
Source0: html5lib-python-1.0.1.tar.gz
BuildArch: noarch
Requires: python-webencodings
%description
Python library for parsing HTML
%package -n python2-html5lib
Summary: Python library for parsing HTML
%{?python_provide:%python_provide python2-html5lib}
%description -n python2-html5lib
Python library for parsing HTML
%if 0%{?with_python3}
%package -n python3-html5lib
Summary: Python library for parsing HTML
Group: Applications/System
%{?python_provide:%python_provide python3-html5lib}
%description -n python3-html5lib
Python library for parsing HTML
%endif # with_python3
%prep
%setup
%build
export PBR_VERSION=%{version}
%{__python} setup.py build
%py2_build_wheel
%if 0%{?with_python3}
%{__python3} setup.py build
%endif # with_python3
%install
# Must do the python3 install first because the scripts in /usr/bin are
# overwritten with every setup.py install (and we want the python2 version
# to be the default for now).
%if 0%{?with_python3}
%if 0%{?build_wheel}
pip3 install -I dist/%{python3_wheelname} --root %{buildroot} --strip-file-prefix %{buildroot}
sed -i '/\/usr\/bin\/easy_install,/d' %{buildroot}%{python3_record}
%else
%{__python3} setup.py install --skip-build --root %{buildroot}
%endif
find %{buildroot}%{python3_sitelib} -name '*.exe' | xargs rm -f
%endif # with_python3
%if 0%{?build_wheel}
pip2 install -I dist/%{python2_wheelname} --root %{buildroot} --strip-file-prefix %{buildroot}
%else
%{__python2} setup.py install --skip-build --root %{buildroot}
%endif
find %{buildroot}%{python2_sitelib} -name '*.exe' | xargs rm -f
# Don't ship these
# rm -r docs/{Makefile,conf.py}
%if 0%{?with_check}
%check
LANG=en_US.utf8 PYTHONPATH=$(pwd) py.test
%if 0%{?with_python3}
LANG=en_US.utf8 PYTHONPATH=$(pwd) py.test-%{python3_version}
%endif # with_python3
%endif # with_check
%files -n python2-html5lib
# %doc docs/*
%{python2_sitelib}/*
%if 0%{?with_python3}
%files -n python3-html5lib
# %doc docs/*
%{python3_sitelib}/html5lib*/
%endif # with_python3
%changelog

View File

@ -0,0 +1,3 @@
COPY_LIST="$CGCS_BASE/downloads/mechanize-0.4.5.tar.gz"
TIS_PATCH_VER=0

View File

@ -0,0 +1,115 @@
# Dependencies for check and wheel introduce circular dependencies
# Set this to 0 after we've bootstrapped.
%global with_check 0
%global build_wheel 0
# define some macros for RHEL 6
%global __python2 %__python
%global python2_sitelib %python_sitelib
Name: mechanize
Version: 0.4.5
Release: 1.el7%{?_tis_dist}.%{tis_patch_ver}
Summary: Automate interaction with HTTP web servers
Group: Applications/System
License: (Python or ZPLv2.0) and ASL 2.0
URL: https://github.com/python-mechanize/mechanize
Source0: mechanize-0.4.5.tar.gz
BuildArch: noarch
Requires: python-html5lib
%description
Stateful programmatic web browsing in Python.
%package -n python2-mechanize
Summary: Automate interaction with HTTP web servers
%{?python_provide:%python_provide python2-mechanize}
%description -n python2-mechanize
Stateful programmatic web browsing in Python.
%if 0%{?with_python3}
%package -n python3-mechanize
Summary: Automate interaction with HTTP web servers
Group: Applications/System
%{?python_provide:%python_provide python3-mechanize}
%description -n python3-mechanize
Stateful programmatic web browsing in Python.
%endif # with_python3
%prep
%setup
%build
export PBR_VERSION=%{version}
%{__python} setup.py build
%if 0%{?with_python3}
%{__python3} setup.py build
%endif # with_python3
%install
# Must do the python3 install first because the scripts in /usr/bin are
# overwritten with every setup.py install (and we want the python2 version
# to be the default for now).
%if 0%{?with_python3}
%if 0%{?build_wheel}
pip3 install -I dist/%{python3_wheelname} --root %{buildroot} --strip-file-prefix %{buildroot}
%else
%{__python3} setup.py install --skip-build --root %{buildroot}
%endif
rm -rf %{buildroot}%{python3_sitelib}/mechanize/test
rm -rf %{buildroot}%{python3_sitelib}/mechanize/test-tools
rm -rf %{buildroot}%{python3_sitelib}/mechanize/run_tests.py
%if 0%{?build_wheel}
sed -i '/^mechanize\/tests\//d' %{buildroot}%{python3_record}
%endif
find %{buildroot}%{python3_sitelib} -name '*.exe' | xargs rm -f
%endif # with_python3
%if 0%{?build_wheel}
pip2 install -I dist/%{python2_wheelname} --root %{buildroot} --strip-file-prefix %{buildroot}
%else
%{__python2} setup.py install --skip-build --root %{buildroot}
%endif
rm -rf %{buildroot}%{python2_sitelib}/mechanize/test
rm -rf %{buildroot}%{python2_sitelib}/mechanize/test-tools
rm -rf %{buildroot}%{python2_sitelib}/mechanize/run_tests.py
%if 0%{?build_wheel}
sed -i '/^mechanize\/tests\//d' %{buildroot}%{python2_record}
%endif
find %{buildroot}%{python2_sitelib} -name '*.exe' | xargs rm -f
# Don't ship these
rm -r docs/{Makefile,conf.py}
%if 0%{?with_check}
%check
LANG=en_US.utf8 PYTHONPATH=$(pwd) py.test
%if 0%{?with_python3}
LANG=en_US.utf8 PYTHONPATH=$(pwd) py.test-%{python3_version}
%endif # with_python3
%endif # with_check
%files -n python2-mechanize
%doc docs/*
%{python2_sitelib}/*
%if 0%{?with_python3}
%files -n python3-mechanize
%doc docs/*
%{python3_sitelib}/mechanize*/
%endif # with_python3
%changelog

View File

@ -0,0 +1,3 @@
COPY_LIST="$CGCS_BASE/downloads/python-webencodings-0.5.1.tar.gz"
TIS_PATCH_VER=0

View File

@ -0,0 +1,43 @@
%global __python2 %__python
%global python2_sitelib %python_sitelib
Name: python-webencodings
Version: 0.5.1
Release: 1.el7%{?_tis_dist}.%{tis_patch_ver}
Summary: This is a Python implementation of the WHATWG Encoding standard.
Group: Applications/System
License: (Python or ZPLv2.0) and ASL 2.0
URL: https://github.com/gsnedders/python-webencodings/archive/v0.5.1.tar.gz
Source0: python-webencodings-0.5.1.tar.gz
BuildArch: noarch
%description
This is a Python implementation of the WHATWG Encoding standard.
%package -n python2-webencodings
Summary: This is a Python implementation of the WHATWG Encoding standard.
%{?python_provide:%python_provide python2-webencodings}
%description -n python2-webencodings
This is a Python implementation of the WHATWG Encoding standard.
%prep
%setup
%build
export PBR_VERSION=%{version}
%{__python} setup.py build
%install
%{__python2} setup.py install --skip-build --root %{buildroot}
# Don't ship these
# rm -r docs/{conf.py}
%files -n python2-webencodings
# %doc docs/*
%{python2_sitelib}/*
%changelog