Sean Mooney 6bb6c0bbdd Harden placement init under wsgi
- This change tries to address an edge case discovered
  when running placement under mod_wsgi where
  if the placement wsgi application is re-initialize the db_api
  configure method attempts to reconfigure a started transaction
  factory.

- This since oslo.db transaction factories do not support
  reconfiguration at runtime this result in an exception being
  raised preventing reloading of the Placement API without
  restarting apache to force mod_wsgi to recreate the
  python interpreter.

- This change introduces a run once decorator to allow annotating
  functions that should only be executed once for the lifetime of
  an interpreter.

- This change applies the run_once decorator to the db_api configure
  method, to suppress the attempt to reconfigure the current
  TransactionFactory on application reload.

Co-Authored-By: Balazs Gibizer <balazs.gibizer@ericsson.com>
Closes-Bug: #1799246
Related-Bug: #1784155
Change-Id: I704196711d30c1124e713ac31111a8ea6fa2f1ba
2018-11-08 12:49:14 +00:00
2018-10-22 15:23:54 +01:00
2018-11-06 16:34:26 +00:00
2018-10-16 00:14:36 +09:00
2018-08-31 14:24:59 +00:00
2018-10-30 00:05:56 +09:00
2012-02-08 19:30:39 -08:00
2018-01-12 17:05:11 +08:00
2018-09-13 16:45:23 -06:00
2010-05-27 23:05:26 -07:00
2018-09-10 11:11:26 -06:00
2017-03-02 11:50:48 +00:00
2018-10-11 15:19:30 +00:00

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:

S
Description
OpenStack resource provider inventory allocation service
Readme 23 MiB
Languages
Python 94.5%
PHP 4.2%
Shell 1.2%