guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 04/10] gnu: Add python-keystoneclient.


From: Efraim Flashner
Subject: Re: [PATCH 04/10] gnu: Add python-keystoneclient.
Date: Sun, 27 Dec 2015 12:13:52 +0200

On Fri, 11 Dec 2015 15:15:35 +0100
Ricardo Wurmus <address@hidden> wrote:

> Efraim Flashner <address@hidden> writes:
> 
>  [...]  
> 
>  [...]  
> 
>  [...]  
>  
>  [...]  
>  
>  [...]  
>  
> >  (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"))))  
> 
> The indentation is a bit off.  If this was the only thing I could fix
> this before pushing, but I still have some other comments.
> 
> > +  (build-system python-build-system)
> > +  (native-inputs
> > +   `(("python-setuptools" ,python-setuptools)
> > +     ;; 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-sphinx" ,python-sphinx)  
> 
> This doesn’t look like it’s needed for the tests.  Maybe you could move
> it above the comment (or remove the comment)?

Do you mean python-sphinx or all of the above? (Just read the next one about
python-sphinx being for documentation, moved that one.) Openssl isn't a
declared test dependency, but testing failed without it.

> 
> > +     ("python-temptest-lib" ,python-tempest-lib)
> > +     ("python-testrepository" ,python-testrepository)
> > +     ("python-testresources" ,python-testresources)
> > +     ("python-testtools" ,python-testtools)
> > +     ("python-webob" ,python-webob)))  
> 
> Wow!  That’s a very long list of test dependencies.  Thanks for your
> patience in tracking them down rather than taking the easy route of
> disabling tests!

Openstack is pretty good about declaring dependencies, with both a
requirements.txt and a test-requirements.txt in the source tree, and that
helped a lot.
https://git.openstack.org/cgit/openstack/python-keystoneclient/tree/?h=1.8.1

> 
> > +  (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.")  
> 
> I wonder: if it does uses Sqlite by default, how come sqlite is not
> among the inputs?  Does it bundle sqlite sources?  Or does it just fail
> by default unless sqlite is installed?
> 

It doesn't bundle sqlite, and it looks like the included description doesn't
differentiate too much between keystone and keystoneclient. As per the name,
keystoneclient connects to keystone, which would need sqlite.

> > +  (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)))))))  
> 
> Okay!
> 
> ~~ Ricardo

2.0.0 was tagged about 4 weeks ago, but it ended up needing more packages
packaged and more dependencies updated and it looks like a project for
another time.

-- 
Efraim Flashner   <address@hidden>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

Attachment: 0001-gnu-Add-python-keystoneclient.patch
Description: Text Data

Attachment: pgpcZ94wQjHz2.pgp
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]