From c9e330d001a0018fbbc26e0bb01848eb3c924d81 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 23 Nov 2015 20:29:12 +0200 Subject: gnu: Add python-keystoneclient. * gnu/packages/openstack.scm (python-keystoneclient) (python2-keystoneclient): New variables. --- gnu/packages/openstack.scm | 73 +++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 72 insertions(+), 1 deletion(-) (limited to 'gnu/packages/openstack.scm') diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm index 48a5c6b7e..a4be67096 100644 --- a/gnu/packages/openstack.scm +++ b/gnu/packages/openstack.scm @@ -19,12 +19,14 @@ (define-module (gnu packages openstack) #:use-module (gnu packages python) + #:use-module (gnu packages tls) #:use-module (gnu packages version-control) #:use-module (guix build-system python) #:use-module (guix download) #:use-module ((guix licenses) #:select (asl2.0)) - #:use-module (guix packages)) + #:use-module (guix packages) + #:use-module (srfi srfi-1)) (define-public python-bandit (package @@ -679,3 +681,72 @@ handling.") (define-public python2-oslo.utils (package-with-python2 python-oslo.utils)) + +(define-public python-keystoneclient + (package + (name "python-keystoneclient") + (version "1.8.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "python-keystoneclient" version)) + (sha256 + (base32 + "1w4csvkah67rfpxylxnvs2s3594i0f9isy8pf4gnsqs5zirvjaa4")))) + (build-system python-build-system) + (native-inputs + `(("python-setuptools" ,python-setuptools) + ("python-sphinx" ,python-sphinx) + ;; and some packages for the tests + ("openssl" ,openssl) + ("python-coverage" ,python-coverage) + ("python-discover" ,python-discover) + ("python-fixtures" ,python-fixtures) + ("python-hacking" ,python-hacking) + ("python-keyring" ,python-keyring) + ("python-lxml" ,python-lxml) + ("python-mock" ,python-mock) + ("python-mox3" ,python-mox3) + ("python-oauthlib" ,python-oauthlib) + ("python-oslosphinx" ,python-oslosphinx) + ("python-oslotest" ,python-oslotest) + ("python-pycrypto" ,python-pycrypto) + ("python-requests-mock" ,python-requests-mock) + ("python-temptest-lib" ,python-tempest-lib) + ("python-testrepository" ,python-testrepository) + ("python-testresources" ,python-testresources) + ("python-testtools" ,python-testtools) + ("python-webob" ,python-webob))) + (propagated-inputs + `(("python-babel" ,python-babel) + ("python-debtcollector" ,python-debtcollector) + ("python-iso8601" ,python-iso8601) + ("python-netaddr" ,python-netaddr) + ("python-oslo.config" ,python-oslo.config) + ("python-oslo.i18n" ,python-oslo.i18n) + ("python-oslo.serialization" ,python-oslo.serialization) + ("python-oslo.utils" ,python-oslo.utils) + ("python-pbr" ,python-pbr) + ("python-prettytable" ,python-prettytable) + ("python-requests" ,python-requests) + ("python-six" ,python-six) + ("python-stevedore" ,python-stevedore))) + (home-page "http://www.openstack.org/") + (synopsis "Client Library for OpenStack Identity") + (description + "Python-keystoneclient is the identity service used by OpenStack for +authentication (authN) and high-level authorization (authZ). It currently +supports token-based authN with user/service authZ, and is scalable to support +OAuth, SAML, and OpenID in future versions. Out of the box, Keystone uses +SQLite for its identity store database, with the option to connect to external +LDAP.") + (license asl2.0))) + +(define-public python2-keystoneclient + (let ((keystoneclient (package-with-python2 python-keystoneclient))) + (package (inherit keystoneclient) + (native-inputs + `(("python2-oauthlib" ,python2-oauthlib) + ,@(alist-delete + "python-oauthlib" + (package-native-inputs keystoneclient))))))) -- cgit v1.3 From 8f0cc2ffce9ebf013a6fd3696e096517123ee935 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 23 Nov 2015 20:27:37 +0200 Subject: gnu: Add python-swiftclient. * gnu/packages/openstack.scm (python-swiftclient, python2-swiftclient): New variables. --- gnu/packages/openstack.scm | 54 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) (limited to 'gnu/packages/openstack.scm') diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm index a4be67096..392ff8829 100644 --- a/gnu/packages/openstack.scm +++ b/gnu/packages/openstack.scm @@ -750,3 +750,57 @@ LDAP.") ,@(alist-delete "python-oauthlib" (package-native-inputs keystoneclient))))))) + +(define-public python-swiftclient + (package + (name "python-swiftclient") + (version "2.6.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "python-swiftclient" version)) + (sha256 + (base32 + "1j33l4z9vqh0scfncl4fxg01zr1hgqxhhai6gvcih1gccqm4nd7p")))) + (build-system python-build-system) + (native-inputs + `(("python-pbr", python-pbr) + ("python-setuptools" ,python-setuptools) + ("python-sphinx" ,python-sphinx) + ;; The folloing packages are needed for the tests. + ("python-coverage" ,python-coverage) + ("python-discover" ,python-discover) + ("python-hacking" ,python-hacking) + ("python-mock" ,python-mock) + ("python-oslosphinx" ,python-oslosphinx) + ("python-keystoneclient" ,python-keystoneclient) + ("python-testrepository" ,python-testrepository) + ("python-testtools" ,python-testtools))) + (propagated-inputs + `(("python-requests" ,python-requests) + ("python-six" ,python-six))) + (home-page "http://www.openstack.org/") + (synopsis "OpenStack Object Storage API Client Library") + (description + "OpenStack Object Storage (code-named Swift) creates redundant, scalable +object storage using clusters of standardized servers to store petabytes of +accessible data. It is not a file system or real-time data storage system, but +rather a long-term storage system for a more permanent type of static data that +can be retrieved, leveraged, and then updated if necessary. Primary examples of +data that best fit this type of storage model are virtual machine images, photo +storage, email storage and backup archiving. Having no central \"brain\" or +master point of control provides greater scalability, redundancy and +permanence.") + (license asl2.0))) + +(define-public python2-swiftclient + (let ((swiftclient (package-with-python2 python-swiftclient))) + (package (inherit swiftclient) + (propagated-inputs + `(("python2-futures" ,python2-futures) + ,@(package-propagated-inputs swiftclient))) + (native-inputs + `(("python2-keystoneclient" ,python2-keystoneclient) + ,@(alist-delete + "python-keystoneclient" + (package-native-inputs swiftclient))))))) -- cgit v1.3 From 264ae686fae658c90716632715846d34aa61b9f3 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 18 Jan 2016 12:54:52 +0200 Subject: python2-jsonschema: Add python2-functools32 to inputs. * gnu/packages/python.scm (python2-jsonschema)[inputs]: Add python2-functools32. (python2-wheel)[native-inputs]: Specify python2-jsonschema. Add python2-functools32. (python2-requests)[propagated-inputs]: Specify python2-wheel. (python2-ipython)[inputs]: Specify python2-jsonschema, python2-requests. (python2-rauth)[propagated-inputs]: Specify python2-requests. * gnu/packages/openstack.scm (python2-requests-mock)[propagated-inputs]: Specify python2-requests. (python2-tempest-lib)[propagated-inputs]: Specify python2-jsonschema. (python2-oslosphinx)[propagated-inputs]: Specify python2-requests. (python2-keystoneclient)[porpagated-inputs]: Specify python2-requests. [native-inputs]: Specify python2-oslosphinx, python2-requests-mock, python2-tempest-lib. (python2-swiftclient)[propagated-inputs]: Specify python2-requests, python2-oslosphinx. --- gnu/packages/openstack.scm | 42 +++++++++++++++++++++++++++++++----------- gnu/packages/python.scm | 30 ++++++++++++++++++++++++------ 2 files changed, 55 insertions(+), 17 deletions(-) (limited to 'gnu/packages/openstack.scm') diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm index 392ff8829..e258b89e2 100644 --- a/gnu/packages/openstack.scm +++ b/gnu/packages/openstack.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Cyril Roelandt -;;; Copyright © 2015 Efraim Flashner +;;; Copyright © 2015, 2016 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -304,7 +304,12 @@ portions of your testing code.") (license asl2.0))) (define-public python2-requests-mock - (package-with-python2 python-requests-mock)) + (let ((requests-mock (package-with-python2 python-requests-mock))) + (package (inherit requests-mock) + (propagated-inputs + `(("python2-requests" ,python2-requests) + ,@(alist-delete "python-requests" + (package-propagated-inputs requests-mock))))))) (define-public python-stevedore (package @@ -387,7 +392,12 @@ common features used in Tempest.") (license asl2.0))) (define-public python2-tempest-lib - (package-with-python2 python-tempest-lib)) + (let ((tempest-lib (package-with-python2 python-tempest-lib))) + (package (inherit tempest-lib) + (propagated-inputs + `(("python2-jsonschema", python2-jsonschema) + ,@(alist-delete "python-jsonschema" + (package-propagated-inputs tempest-lib))))))) ;; Packages from the Oslo library (define-public python-oslo.config @@ -596,7 +606,9 @@ from the OpenStack project.") (license asl2.0))) (define-public python2-oslosphinx - (package-with-python2 python-oslosphinx)) + (let ((oslosphinx (package-with-python2 python-oslosphinx))) + (package (inherit oslosphinx) + (propagated-inputs `(("python2-requests" ,python2-requests)))))) (define-public python-oslotest (package @@ -745,11 +757,17 @@ LDAP.") (define-public python2-keystoneclient (let ((keystoneclient (package-with-python2 python-keystoneclient))) (package (inherit keystoneclient) + (propagated-inputs + `(("python2-requests" ,python2-requests) + ,@(alist-delete "python-requests" + (package-propagated-inputs keystoneclient)))) (native-inputs `(("python2-oauthlib" ,python2-oauthlib) - ,@(alist-delete - "python-oauthlib" - (package-native-inputs keystoneclient))))))) + ("python2-oslosphinx" ,python2-oslosphinx) + ("python2-requests-mock" ,python2-requests-mock) + ("python2-tempest-lib" ,python2-tempest-lib) + ,@(fold alist-delete (package-native-inputs keystoneclient) + '("python-oauthlib" "python-oslosphinx" "python-requests-mock" "python-tempest-lib"))))))) (define-public python-swiftclient (package @@ -798,9 +816,11 @@ permanence.") (package (inherit swiftclient) (propagated-inputs `(("python2-futures" ,python2-futures) - ,@(package-propagated-inputs swiftclient))) + ("python2-requests" ,python2-requests) + ,@(alist-delete "python-requests" + (package-propagated-inputs swiftclient)))) (native-inputs `(("python2-keystoneclient" ,python2-keystoneclient) - ,@(alist-delete - "python-keystoneclient" - (package-native-inputs swiftclient))))))) + ("python2-oslosphinx" ,python2-oslosphinx) + ,@(fold alist-delete (package-native-inputs swiftclient) + '("python-keystoneclient" "python-oslosphinx"))))))) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index a1757a08f..813711a9b 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -14,7 +14,7 @@ ;;; Copyright © 2015 Leo Famulari ;;; Copyright © 2015 Ben Woodcroft ;;; Copyright © 2015, 2016 Erik Edrosa -;;; Copyright © 2015 Efraim Flashner +;;; Copyright © 2015, 2016 Efraim Flashner ;;; Copyright © 2015 Kyle Meyer ;;; Copyright © 2015 Chris Marusich ;;; @@ -2144,7 +2144,13 @@ installed with a newer @code{pip} or with wheel's own command line utility.") (license license:expat))) (define-public python2-wheel - (package-with-python2 python-wheel)) + (let ((wheel (package-with-python2 python-wheel))) + (package (inherit wheel) + (native-inputs + `(("python2-functools32" ,python2-functools32) + ("python2-jsonschema" ,python2-jsonschema) + ,@(alist-delete "python-jsonschema" + (package-native-inputs wheel))))))) (define-public python-requests (package @@ -2184,7 +2190,12 @@ than Python’s urllib2 library.") "0gdr9dxm24amxpbyqpbh3lbwxc2i42hnqv50sigx568qssv3v2ir")))))) (define-public python2-requests - (package-with-python2 python-requests)) + (let ((requests (package-with-python2 python-requests))) + (package (inherit requests) + (propagated-inputs + `(("python2-wheel" ,python2-wheel) + ,@(alist-delete "python-wheel" + (package-propagated-inputs requests))))))) (define-public python-vcversioner (package @@ -2234,7 +2245,11 @@ version numbers.") (license license:expat))) (define-public python2-jsonschema - (package-with-python2 python-jsonschema)) + (let ((jsonschema (package-with-python2 python-jsonschema))) + (package (inherit jsonschema) + (inputs + `(("python2-functools32" ,python2-functools32) + ,@(package-inputs jsonschema)))))) (define-public python-unidecode (package @@ -4290,11 +4305,13 @@ computing.") ,@(alist-delete "python-terminado" (package-propagated-inputs ipython)))) (inputs - `(("python2-mock" ,python2-mock) + `(("python2-jsonschema" ,python2-jsonschema) + ("python2-mock" ,python2-mock) ("python2-matplotlib" ,python2-matplotlib) ("python2-numpy" ,python2-numpy) + ("python2-requests" ,python2-requests) ,@(fold alist-delete (package-inputs ipython) - '("python-matplotlib" "python-numpy"))))))) + '("python-jsonschema" "python-matplotlib" "python-numpy" "python-requests"))))))) (define-public python-isodate (package @@ -7144,6 +7161,7 @@ authenticated session objects providing things like keep-alive.") (define-public python2-rauth (let ((rauth (package-with-python2 python-rauth))) (package (inherit rauth) + (propagated-inputs `(("python2-requests" ,python2-requests))) (native-inputs `(("python2-unittest2", python2-unittest2) ,@(package-native-inputs rauth)))))) -- cgit v1.3