On Tue, May 2, 2017 at 10:46 PM, Akira Yoshiyama <akirayoshiy...@gmail.com> wrote:
> Hello all, > > I'm pleased to announce Yakumo, yet another unified OpenStack client > library with an interactive shell. You can find Yakumo below: > > PyPI: https://pypi.python.org/pypi/yakumo/ > Github: https://github.com/yosshy/python-yakumo/ > > Yakumo development focuses to: > > * Pythonic: handles each cloud resource as an object in the same manner > * Unified: handles all OpenStack APIs at once > * Less dependency: no import of other OpenStack client libraries > > Why do we have to specify IDs of cloud resources in Python > programming? Python is an object-oriented programming language. IMO, > we should use objects to represent cloud resources, including method > arguments. It's one of the reasons I've started Yakumo project. > > Yakumo 0.11.0 suports OpenStack APIs below: > > * Identity API v2/v3 > * Compute API v2 > * Networking v2 > * Image Service API v1/v2 > * Block Storage v1/v2 > * Object Storage v1 > > Yakumo has 23 sample smoke tests below for the APIs now. It's useful > to test your cloud and learn usage of Yakumo. > > https://github.com/yosshy/python-yakumo/tree/master/yakumo/smoketests > > And also you can use 'ossh', an interactive python shell in Yakumo. > It's a good example. > # ossh --os-cloud=mypackstack > > Finding existing resources: > (c is an client object automatically generated for mypackstack environment) > >>> i = c.image.find_one(name="trusty") > >>> f = c.flavor.find_one(name='m1.small') > >>> k = c.key_pair.find_one(name='key1') > >>> n = c.network.find_one(name='private') > >>> i, f, k, n > (<yakumo.glance.v2.image.Resource > (id="887b0393-5065-4bcf-941d-623100baa06e", name="trusty")>, > <yakumo.nova.v2.flavor.Resource (id="2", name="m1.small")>, > <yakumo.nova.v2.key_pair.Resource (name="key1")>, > <yakumo.neutron.v2.network.Resource > (id="22e3fa30-11c0-4065-bbf7-8d8bbb50f63b", name="private")>) > > Creating a server: > >>> s = c.server.create(name='vm1', image=i, flavor=f, networks=[n], > key_pair=k) > >>> s > <yakumo.nova.v2.server.Resource > (id="b1477f6c-bbc4-4c37-ba05-14b935a5d08c" empty)> > > Waiting for building task finished: > >>> s.wait_for_finished() > >>> s.status > u'ACTIVE' > > Deleting the server: > >>> s.delete() > > See README for more usage and details: > > https://github.com/yosshy/python-yakumo/blob/master/README.md > > Feedback is welcome! > > Cheers, > Akira Yoshiyama Looks almost exactly like openstacksdk. Why duplicate that and pollute an already crowded space as there are already far too many existing libraries to work with OpenStack?
__________________________________________________________________________ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev