This commit was bulk generated and pushed by the OpenDev sysadmins as a part of the Git hosting and code review systems migration detailed in these mailing list posts: http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003603.html http://lists.openstack.org/pipermail/openstack-discuss/2019-April/004920.html Attempts have been made to correct repository namespaces and hostnames based on simple pattern matching, but it's possible some were updated incorrectly or missed entirely. Please reach out to us via the contact information listed at https://opendev.org/ with any questions you may have.
|3 years ago|
|devstack||6 years ago|
|doc/source||6 years ago|
|oaktree||6 years ago|
|.coveragerc||6 years ago|
|.gitignore||6 years ago|
|.gitreview||3 years ago|
|.mailmap||6 years ago|
|.testr.conf||6 years ago|
|CONTRIBUTING.rst||6 years ago|
|HACKING.rst||6 years ago|
|LICENSE||6 years ago|
|MANIFEST.in||6 years ago|
|README.rst||5 years ago|
|TODO||6 years ago|
|requirements.txt||6 years ago|
|setup.cfg||6 years ago|
|setup.py||6 years ago|
|test-requirements.txt||6 years ago|
|tox.ini||6 years ago|
Make your cloud throw some shade
oaktree is a gRPC interface for interacting with OpenStack clouds that is inherently interoperable and multi-cloud aware. It is based on the python shade library, which grew all of the logic needed to interact with OpenStack clouds and to work around differences in vendor deployment choices. Rather than keep all of that love in Python Library form, oaktree allows other languages to reap the benefits as well.
oaktree is not a replacement for all of the individual project REST APIs. Those are all essential for cross-project communication and are well suited for operators who can be expected to know things about how they have deployed their clouds - and who in fact WANT to be able to make changes in the cloud knowing deployment specifics. oaktree will never be for them.
oaktree is for end-users who do not and should not know what hypervisor, what storage driver or what network stack the deployer has chosen. The two sets of people are different audiences, so oaktree is a project to support the end user.
Install oaktreemodel by hand. Then:
In one window:
oaktree/server.py assumes you have a clouds.yaml accessible.
In another window:
python -i devstack/test.py
You'll have an images and a flavors object you can poke at.
If you want to operate against a different cloud than devstack, you can pass it to devstack/test.py as the first command line argument.
Shape of the Project
oaktree should be super simple to deploy, and completely safe for deployers to upgrade from master constantly. Once it's released as a 1.0, it should NEVER EVER EVER EVER EVER EVER EVER have a backwards incompatible change. There is no reason, no justification, no obsession important enough to inflict such pain on the user.
The shade library will grow the ability to detect if a cloud has an oaktree api available, and if it does, it will use it. Hopefully we'll quickly reach a point where all deployers are deploying oaktree.