OpenStack Compute (Nova)
Go to file
Dan Peschman 2f7bf29d47 Use uuid for id in os-services API
This patch introduces a new microversion to identify services by uuid
instead of id, to ensure uniqueness across cells. GET /os-services
returns uuid in the id field, and uuid must be provided to delete a
service with DELETE /os-services/{service_uuid}.

The old PUT /os-services/* APIs are now capped and replaced
with a new PUT /os-services/{service_uuid} which takes a uuid path
parameter to uniquely identify the service to update. It also restricts
updates to nova-compute services only, since disabling or forcing-down
a non-compute service like nova-scheduler doesn't make sense as it
doesn't do anything.

The new update() method in this microversion also avoids trying to
re-use the existing private action methods like _enable and _disable
since those are predicated on looking up the service by host/binary,
are confusing to follow for code flow, and just don't really make sense
with a pure PUT resource update method.

Part of blueprint service-hyper-uuid-in-api

Co-Authored-By: Matt Riedemann <mriedem.os@gmail.com>

Change-Id: I45494a4df7ee4454edb3ef8e7c5817d8c4e9e5ad
2017-07-18 15:39:57 -04:00
api-guide/source api-ref: Add X-Openstack-Request-Id description 2017-07-10 14:03:14 +00:00
api-ref/source Use uuid for id in os-services API 2017-07-18 15:39:57 -04:00
contrib Merge "changed quantum to neutron in vif-openstack" 2014-03-05 10:45:05 +00:00
devstack Don't run ssh validation in cells v1 job 2017-05-26 20:18:09 -04:00
doc Use uuid for id in os-services API 2017-07-18 15:39:57 -04:00
etc/nova libvirt: remove scality volume driver 2017-05-19 14:51:37 -04:00
gate move gate hooks to gate/ 2017-01-04 11:05:16 +00:00
nova Use uuid for id in os-services API 2017-07-18 15:39:57 -04:00
placement-api-ref/source Merge "[placement] Add api-ref for aggregates" 2017-06-12 16:38:26 +00:00
plugins/xenserver XenAPI Remove useless files when use os-xenapi lib 2017-01-10 18:06:17 -08:00
releasenotes Use uuid for id in os-services API 2017-07-18 15:39:57 -04:00
tools [placement] Fix placement-api-ref check tool 2017-05-24 12:15:28 +03:00
.coveragerc Remove nova/openstack/* from .coveragerc 2016-10-12 16:20:49 -04:00
.gitignore Structure for simply managing placement-api-ref 2017-03-24 15:15:53 +03:00
.gitreview Add .gitreview config file for gerrit. 2011-10-24 15:07:19 -04:00
.mailmap Add mailmap entry 2014-05-07 12:14:26 -07:00
.testr.conf [placement] Adjust the name of the gabbi tests 2016-09-20 19:14:44 +00:00
CONTRIBUTING.rst Workflow documentation is now in infra-manual 2014-12-05 03:30:37 +00:00
HACKING.rst Enable global hacking checks and removed local checks 2017-02-10 15:09:37 +01:00
LICENSE initial commit 2010-05-27 23:05:26 -07:00
MAINTAINERS Add a maintainers file 2015-05-23 03:22:07 +10:00
README.rst Optimize the link address 2017-04-07 08:56:37 +08:00
babel.cfg Get rid of distutils.extra. 2012-02-08 19:30:39 -08:00
bindep.txt List system dependencies for running common tests 2016-08-24 06:49:32 +02:00
requirements.txt Updated from global requirements 2017-07-15 12:01:14 +00:00
setup.cfg Merge "Use plain routes list for image-metadata instead of stevedore" 2017-07-18 09:34:29 +00:00
setup.py Updated from global requirements 2017-03-02 11:50:48 +00:00
test-requirements.txt [placement] Update allocation-candidates.yaml for gabbi 1.35 2017-07-17 13:04:48 +00:00
tests-functional-py3.txt Remove invalid URL in gabbi tests 2017-01-17 21:10:45 +00:00
tests-py3.txt Skip unit tests for SSL + py3 2017-03-02 14:30:16 +08:00
tox.ini doc: Enable pep8 on doc generation code 2017-07-12 14:20:25 +01:00

README.rst

Team and repository tags

image

OpenStack Nova

OpenStack Nova provides a cloud computing fabric controller, supporting a wide variety of compute technologies, including: libvirt (KVM, Xen, LXC and more), Hyper-V, VMware, XenServer and OpenStack Ironic.

OpenStack Nova is distributed under the terms of the Apache License, Version 2.0. The full terms and conditions of this license are detailed in the LICENSE file.

API

To learn how to use Nova's API, consult the documentation available online at:

https://developer.openstack.org/api-guide/compute/ https://developer.openstack.org/api-ref/compute/

For more information on OpenStack APIs, SDKs and CLIs, please see:

https://www.openstack.org/appdev/ https://developer.openstack.org/

Operators

To learn how to deploy and configure OpenStack Nova, consult the documentation available online at:

https://docs.openstack.org

For information about the different compute (hypervisor) drivers supported by Nova, please read:

https://docs.openstack.org/developer/nova/feature_classification.html

In the unfortunate event that bugs are discovered, they should be reported to the appropriate bug tracker. If you obtained the software from a 3rd party operating system vendor, it is often wise to use their own bug tracker for reporting problems. In all other cases use the master OpenStack bug tracker, available at:

https://bugs.launchpad.net/nova

Developers

For information on how to contribute to Nova, please see the contents of the CONTRIBUTING.rst.

Any new code must follow the development guidelines detailed in the HACKING.rst file, and pass all unit tests.

Further developer focused documentation is available at:

https://docs.openstack.org/developer/nova/