OpenStack resource provider inventory allocation service
Go to file
Chris Dent cf586f599e Rationalize and clarify database configuration
Discussion in IRC, hangouts and summarized in email [1] led to a
decision that in placement the use of a default data connection string
was dangerous for people migrating from placement-in-nova to placement
by itself. Instead what we want are explicit but small required actions
for operators/deployers and a hard fail if they do not do them.

A critical first step to make that work is removing the default
connection string and requiring an explicit
[placement_database]/connection value. To whit, this patch:

* removes api_database configuration settings
* removes the default connection value
* make it the value required (which causes config parsing to fail)
* updates test fixtures to remove knowledge of other databases besides
  'placement_database'
* adds a unit tests to confirm cfg.RequiredOptError is raised when
  expected (when the setting is not set)
* Comments in the wsgi app that a hard fail will happen when config
  and required settings are missing

In local testing I have confirmed two different hard failures that we
want:

* If there is no configuration file at all (either in the default
  /etc/placement/placement.conf location or the same file set by
  OS_PLACEMENT_CONFIG_DIR), fail
* If there is a config file and it has no [placement_database]/connection,
  fail.

Note that all these changes are not fully meaningful until the change
in Ibed4c64fa4e74c830d0d2fa040089bf9dc7b8f29, which changes the
placement/wsgi.py app. That's currently the only external entry
point to using placement, and will not work until those changes
are in place.

[1] http://lists.openstack.org/pipermail/openstack-dev/2018-September/134444.html

Change-Id: Iecf5006b32ca7bc2d46b7a59e78b4941a2e98122
2018-09-14 11:44:48 -06:00
api-ref Make docs build 2018-09-06 11:45:11 -05:00
doc Rename files to remove 'placement' 2018-09-07 20:10:06 +00:00
etc/placement s/placement-config-generator/config-generator/ 2018-09-14 16:10:58 +00:00
gate Add trait query to placement perf check 2018-08-16 18:32:12 +01:00
placement Rationalize and clarify database configuration 2018-09-14 11:44:48 -06:00
releasenotes/notes Remove the Nova aggregate files. 2018-09-04 10:31:22 -05:00
tools tox: make it possible to run pep8 on current patch only 2015-07-24 16:15:38 +01:00
.coveragerc Remove nova/openstack/* from .coveragerc 2016-10-12 16:20:49 -04:00
.gitignore config: Add oslo-config-generator config 2018-09-11 16:50:51 -06:00
.gitreview Set up initial .zuul.yaml 2018-08-31 14:24:59 +00:00
.stestr.conf Inspect and correct tox.ini, .stestr.conf and setup.cfg 2018-09-04 10:31:25 -05:00
.zuul.yaml Make docs build 2018-09-06 11:45:11 -05:00
CONTRIBUTING.rst Update links in documents 2018-01-12 17:05:11 +08:00
HACKING.rst Update the HACKING.rst file 2018-09-13 16:45:23 -06:00
LICENSE initial commit 2010-05-27 23:05:26 -07:00
README.rst Update README to warn of status 2018-09-10 11:11:26 -06:00
babel.cfg Get rid of distutils.extra. 2012-02-08 19:30:39 -08:00
bindep.txt Merge "Bindep does not catch missing libpcre3-dev on Ubuntu" 2018-02-14 07:31:09 +00:00
lower-constraints.txt Use uuidsentinel from oslo.utils 2018-09-05 22:32:56 +00:00
requirements.txt Use uuidsentinel from oslo.utils 2018-09-05 22:32:56 +00:00
setup.cfg Set the name of the package to openstack-placement 2018-09-12 16:26:39 -06:00
setup.py Updated from global requirements 2017-03-02 11:50:48 +00:00
test-requirements.txt Update requirements and test-requirements 2018-09-05 21:30:42 +01:00
tox.ini Merge "s/placement-config-generator/config-generator/" 2018-09-14 16:34:23 +00:00

README.rst

Warning: This repository is currently in a state of flux as the placement service is extracted from nova. While that is happening this repository is not yet fully working.

If you are viewing this README on GitHub, please be aware that placement development happens on OpenStack git and OpenStack gerrit.

Team and repository tags

image

OpenStack Placement

OpenStack Placement provides an HTTP service for managing, selecting, and claiming providers of classes of inventory representing available resources in a cloud.

API

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

For more information on OpenStack APIs, SDKs and CLIs in general, refer to:

Operators

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

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:

For the time being bugs in placement should be created in the Nova bug tracker with a tag of ``placement``.

Developers

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

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

Further developer focused documentation is available at: