[packages/python-libcloud] new package
jajcus
jajcus at pld-linux.org
Tue Feb 18 12:52:14 CET 2014
commit bee572118d854704c43ad762bc069d08c3fdb27f
Author: Jacek Konieczny <j.konieczny at eggsoft.pl>
Date: Tue Feb 18 12:51:53 2014 +0100
new package
cacerts_path.patch | 13 +++++
python-libcloud.spec | 145 +++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 158 insertions(+)
---
diff --git a/python-libcloud.spec b/python-libcloud.spec
new file mode 100644
index 0000000..f4376d0
--- /dev/null
+++ b/python-libcloud.spec
@@ -0,0 +1,145 @@
+#
+# Conditional build:
+%bcond_without tests # do not perform "make test"
+%bcond_without python2 # CPython 2.x module
+%bcond_without python3 # CPython 3.x module
+
+%define module libcloud
+Summary: Unified Python API for cloud service providers
+Name: python-%{module}
+Version: 0.14.1
+Release: 1
+License: Apache v2.0
+Group: Libraries/Python
+Source0: ftp://apache.cs.utah.edu/apache.org/libcloud/apache-%{module}-%{version}.tar.bz2
+# Source0-md5: 0270c54b3f61a60a008271d92addb7b8
+Patch0: cacerts_path.patch
+URL: https://libcloud.apache.org/
+BuildRequires: rpm-pythonprov
+BuildRequires: rpmbuild(macros) >= 1.219
+BuildRequires: sed >= 4.0
+%if %{with python2}
+BuildRequires: python-devel
+BuildRequires: python-distribute
+%{?with_tests:BuildRequires: python-mock}
+%endif
+%if %{with python3}
+BuildRequires: python3-devel
+BuildRequires: python3-distribute
+%{?with_tests:BuildRequires: python3-mock}
+BuildRequires: python3-modules
+%endif
+Requires: python-modules
+BuildArch: noarch
+BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+Libcloud is a Python library for interacting with many of the popular
+cloud service providers using a unified API. It was created to make it
+easy for developers to build products that work between any of the
+services that it supports.
+
+Resource you can manage with Libcloud are divided in the following
+categories:
+
+- Cloud Servers and Block Storage - services such as Amazon EC2 and
+ Rackspace CloudServers
+- Cloud Object Storage and CDN - services such as Amazon S3 and
+ Rackspace CloudFiles
+- Load Balancers as a Service - services such as Amazon Elastic Load
+ Balancer and GoGrid LoadBalancers
+- DNS as a Service - services such as Amazon Route 53 and Zerigo
+
+%package -n python3-%{module}
+Summary: Unified Python API for cloud service providers
+Group: Libraries/Python
+
+%description -n python3-%{module}
+Libcloud is a Python library for interacting with many of the popular
+cloud service providers using a unified API. It was created to make it
+easy for developers to build products that work between any of the
+services that it supports.
+
+Resource you can manage with Libcloud are divided in the following
+categories:
+
+- Cloud Servers and Block Storage - services such as Amazon EC2 and
+ Rackspace CloudServers
+- Cloud Object Storage and CDN - services such as Amazon S3 and
+ Rackspace CloudFiles
+- Load Balancers as a Service - services such as Amazon Elastic Load
+ Balancer and GoGrid LoadBalancers
+- DNS as a Service - services such as Amazon Route 53 and Zerigo
+
+%prep
+%setup -q -n apache-%{module}-%{version}
+
+%patch0 -p1
+
+cp libcloud/test/secrets.py-dist libcloud/test/secrets.py
+
+%{__sed} -i -e '1s,^#!.*python,#!%{__python},' demos/*.py example_*.py
+
+%build
+%if %{with python2}
+%{__python} setup.py build --build-base build-2 %{?with_tests:test}
+%endif
+
+%if %{with python3}
+%{__python3} setup.py build --build-base build-3 %{?with_tests:test}
+%endif
+
+%install
+rm -rf $RPM_BUILD_ROOT
+
+%if %{with python2}
+%{__python} setup.py \
+ build --build-base build-2 \
+ install --skip-build \
+ --optimize=2 \
+ --root=$RPM_BUILD_ROOT
+
+%py_postclean
+%endif
+
+%if %{with python3}
+%{__python3} setup.py \
+ build --build-base build-3 \
+ install --skip-build \
+ --optimize=2 \
+ --root=$RPM_BUILD_ROOT
+%endif
+
+%if %{with python2}
+install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
+cp -a example_*.py demos $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
+%endif
+%if %{with python3}
+install -d $RPM_BUILD_ROOT%{_examplesdir}/python3-%{module}-%{version}
+cp -a example_*.py demos $RPM_BUILD_ROOT%{_examplesdir}/python3-%{module}-%{version}
+find $RPM_BUILD_ROOT%{_examplesdir}/python3-%{module}-%{version} -name '*.py' \
+ | xargs sed -i '1s|^#!.*python\b|#!%{__python3}|'
+%endif
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%if %{with python2}
+%files
+%defattr(644,root,root,755)
+%doc CHANGES.rst NOTICE README.rst
+%{py_sitescriptdir}/%{module}
+%if "%{py_ver}" > "2.4"
+%{py_sitescriptdir}/*.egg-info
+%endif
+%{_examplesdir}/%{name}-%{version}
+%endif
+
+%if %{with python3}
+%files -n python3-%{module}
+%defattr(644,root,root,755)
+%doc CHANGES.rst NOTICE README.rst
+%{py3_sitescriptdir}/%{module}
+%{py3_sitescriptdir}/*.egg-info
+%{_examplesdir}/python3-%{module}-%{version}
+%endif
diff --git a/cacerts_path.patch b/cacerts_path.patch
new file mode 100644
index 0000000..b9ba12d
--- /dev/null
+++ b/cacerts_path.patch
@@ -0,0 +1,13 @@
+diff -dur apache-libcloud-0.14.1.orig/libcloud/security.py apache-libcloud-0.14.1/libcloud/security.py
+--- apache-libcloud-0.14.1.orig/libcloud/security.py 2013-12-08 20:14:44.000000000 +0100
++++ apache-libcloud-0.14.1/libcloud/security.py 2014-02-18 12:30:33.000000000 +0100
+@@ -30,6 +30,9 @@
+ # File containing one or more PEM-encoded CA certificates
+ # concatenated together.
+ CA_CERTS_PATH = [
++ # PLD: ca-certificates
++ '/etc/certs/ca-certificates.crt',
++
+ # centos/fedora: openssl
+ '/etc/pki/tls/certs/ca-bundle.crt',
+
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/python-libcloud.git/commitdiff/bee572118d854704c43ad762bc069d08c3fdb27f
More information about the pld-cvs-commit
mailing list