391 Commits

Author SHA1 Message Date
Matt Riedemann
3ff9d0a5a0 Add placement-status upgrade check command
This adds the basic framework for the
placement-status upgrade check command which
is a community-wide goal for the Stein release.

A simple placeholder check is added which should
be replaced later when we have a real upgrade
check.

Change-Id: I9291386fe7fcbfc035c104ea9fdbe5eb875c4776
Story: 2003657
Task: 27518
2018-11-20 13:53:07 -05:00
Chris Dent
7b5218d8e3 Add a placement-manage CLI
This change adds a rudimentary command line tool, 'placement-manage'
that can do three things:

* placement-manage --version: report the current version of the software
* placement-manage db sync: sync the db to the 'head' alembic version
* placement-manage db version: report the current version of the db

It is written following the examples set by both nova and ironic for
using oslo config driven command line parsing. It is not as full
featured as the nova version (with decorators for argument handling and
help text etc) because we don't need that yet. There's plenty of room
for improvement, but the intention here is to keep things simple until
we need them to be otherwise.

The provided unit tests cover that the arg parsing behaves as expected
and that the right commands are connected the right args. The actual
functionality of the 'db sync' command (a migration.upgrade) is tested
in runs that use devstack as well as the test_migrations functional
test.

Errors during the migration simply raise exceptions which will output
noisily to the console. At this stage this is desirable and suitable.

A new doc for the cli is added, with basic information for
placement-manage. Note that at this time the deployment documentation
has not been updated. That will be done in a later change.

Future changes may include (if we can't avoid it) tools for initiating
online migrations from the command line.

Needed-By: https://review.openstack.org/600162/
Change-Id: I1ff472106610150a587f5286f26a6bd7c1aa84f4
2018-11-20 15:00:32 +00:00
EdLeafe
1b610b0d83 Add a document for creating DB revisions
This gives some basic documentation for creating a revision using
alembic. It then links to the alembic tutorial for more information.

Change-Id: I8647aaa55dca537d95c7c03753f2a24f364f0ddf
2018-11-15 05:11:32 -05:00
Takashi NATSUME
117f44d215 Add a link to "Add Generation to Consumers" spec
The "handle allocation updates in a safe way" item and
the link to "Add Generation to Consumers" spec have been added
since I77f34788dd7ab8fdf60d668a4f76452e03cf9888 in the nova doc
(doc/source/user/placement.rst).

But it has not been added yet in the placement doc
(doc/source/index.rst). So add it.

Change-Id: I4c70da34d8907cab2373b1349bb2c6e9b8cdd35a
2018-10-30 18:09:35 +09:00
Tetsuro Nakamura
caef44bf25 De-nova-ify doc/source/index.rst
Some of the descriptions in the file ``doc/source/index.rst`` assume
placement still depends on nova, which isn't true, so this patch
updates it.

This patch also adds a upgrade note for Stein (19.0.0) in that file.

Change-Id: Ib98e370d6863cc8c679a07d04f053ba5a3723c43
2018-10-16 16:46:58 +09:00
Tetsuro Nakamura
8fdf74bace De-nova-ify doc/README.rst
The file ``doc/README.rst`` hasn't been changed since the placement
is extracted, so this patch de-nova-ify it.

Change-Id: I30bcfa987a87fd4672dcbcdf3f401295b2dad6f5
2018-10-16 10:58:23 +09:00
Zuul
bff065567a Merge "Follow up for placement usage document" 2018-10-02 13:01:56 +00:00
Zuul
b50a3cba80 Merge "Fix link from root doc to contributor guide" 2018-10-02 11:27:21 +00:00
Zuul
6c291488db Merge "De-nova-ify and reformat contributor guide" 2018-10-02 11:24:07 +00:00
Tetsuro Nakamura
1e617ea3a1 Follow up for placement usage document
This patche addresses the following review comments from earlier
in this series:

https://review.openstack.org/#/c/604243/4/doc/source/usage/index.rst@28
https://review.openstack.org/#/c/604243/4/doc/source/usage/provider-tree.rst@190
https://review.openstack.org/#/c/604243/4/doc/source/usage/provider-tree.rst@264

Change-Id: I15097a850cf6f6f33d42234f6e3a72d103d6bc42
2018-09-27 20:26:55 +09:00
Tetsuro Nakamura
111aa59869 Add a document for allcation candidates constraint
This patch adds a document which has some case studies to explain
how sharing providers, aggregates, and traits work if nested
provider trees are involved in the `GET /allocation_candidates API`.

Change-Id: I2899c65ac9cf63cb4d5c1a4fdfe65718a3193be5
2018-09-22 02:32:26 +09:00
Eric Fried
4bb1c1c7c7 Fix link from root doc to contributor guide
Change-Id: I95772e6d17c9f05da9e764de45c49a4643cc08b0
2018-09-18 11:04:41 -05:00
Eric Fried
ac9869e68c Sort openstack_projects in doc conf
...to keep mriedem happy.

TrivialFix

Change-Id: Ia8cf03d30c5ab4eb17579982b9558a2b755819cc
2018-09-15 11:38:34 -06:00
Eric Fried
f3e14547d4 De-nova-ify and reformat contributor guide
This is a manual sweep through doc/source/contributor/index.rst
(recently renamed from doc/source/contributor/placement.rst) to make the
document make sense in the context of the placement repository as
separated from the nova repository. Of note:

- Removed or reworded references to Nova as appropriate.
- Removed 'Futures' section as it talks about how to prepare for
  extraction.
- Manually fixed file/doc paths that were missed/munged in earlier
  automated search/replace commits.
- Reformatted stuff touched by the above, but also to fix up leftovers
  from automated search/replaces done earlier in the extraction process.

Change-Id: I3f64e8d43b0e6ce1a366c6cd11813618c6d72ebb
2018-09-15 11:37:05 -06:00
Eric Fried
9705e88fb5 Make config docs build
Add sphinx configuration and doc stubs/references to make
doc/build/html/configuration/config.html and its brethren happen.

Change-Id: Ieb16dbc2a7e67cb84b7098133be24fcc860312cd
2018-09-14 16:12:49 +00:00
EdLeafe
5794b857b4 Rename files to remove 'placement'
When part of Nova, many files were named in such a way as to indicate
that they were separate from the nova files that did the same thing. Now
that that distinction is no longer needed, we can rename them to sound
more natural.

Additionally, references to these file names in other parts of the code
have been updated.

Change-Id: Id4439b4af827b64bbac213085ac74d1283c96db0
2018-09-07 20:10:06 +00:00
Eric Fried
9b584fcd1d Make docs build
This patch does pretty much the minimum possible to get `tox -e docs`
building and gating. Much, much more needs to be done to make the
content good.

Also corrects a link in the api-ref which, once these are publishing,
would have pointed to the wrong place.

Change-Id: I5cbc3a3cceeaeaa7be5593658b6a03fa25fb69d0
2018-09-06 11:45:11 -05:00
EdLeafe
3100eb64ae Update nova.db import paths
This commit is the result of running the following search and replace
across the project.
    s/nova.db/placement.db/g

Change-Id: If5ea7cfd361288c89db885c26b7c616ce5b596d4
2018-09-04 10:31:25 -05:00
EdLeafe
1dca56f58e Remove the import pathing for the old structure
This commit is the result of running the following search and replace
across the project.
    s/nova\.api\.openstack\.?//g

Change-Id: I4974a28de541aace043504f788cf0d100f778cae
2018-09-04 10:31:24 -05:00
EdLeafe
ae561723ee Remove the Nova aggregate files.
There was a commit [0] that dealt with Nova aggs that also updated
doc/source/user/placement.rst. Since that file was preserved in the
filter_history.sh script, that commit caused a lot of agg-related files
to be preserved. This commit removes most of them; others in the test
directories will be removed in a later patch.

[0] https://review.openstack.org/#/c/553597/

Change-Id: I2b0ee94c1d7f11df542ec5171278696fb21b11d1
2018-09-04 10:31:22 -05:00
Eric Fried
68b66b6c05 Apply placement.rst change from Idf8997d5efdfdfca6
After we did the initial clone to seed the placement repository, an
almost-exclusively-nova change [1] merged which included a delta to a
document [2] that was included in the clone. This change just brings in
that one delta.

[1] Idf8997d5efdfdfca6967899a0882ffb9ecf96915
[2] https://review.openstack.org/#/c/585034/20/doc/source/user/placement.rst

Change-Id: I736afc3ec0f007283bb4cc8bd1a5c366e62c2165
2018-09-04 10:31:20 -05:00
Zuul
77931e0f62 Merge "Add the guideline to write API reference" 2018-08-08 21:38:15 +00:00
Takashi NATSUME
7a7c2fe142 Add the guideline to write API reference
Adapted from the wiki:
https://wiki.openstack.org/wiki/NovaAPIRef

Compute API reference:
https://developer.openstack.org/api-ref/compute/

Placement API reference:
https://developer.openstack.org/api-ref/placement/

Change-Id: I78ded463142fc50af3b77721500ed190448632c7
2018-08-08 12:15:15 -04:00
Zuul
1eb0d1146e Merge "Update install guide for placement database configuration" 2018-07-31 10:32:49 +00:00
Zuul
da0245d273 Merge "doc: link to AZ talk from the Rocky summit" 2018-07-30 12:54:11 +00:00
Matt Riedemann
be91df9d6a doc: remove rocky-specific nova-scheduler min placement version
Per change I97215e94efdd8c05045872fb9ba7d2089dc6efb8, nova
does not perform version discovery or try to deal with backlevel
placement versions, and the upgrade docs say that placement needs
to be upgraded before upgrading any nova services. Because of
this assertion, we can remove the per-release nova-scheduler-specific
note in the placement upgrade notes for Rocky because while it's
accurate for the nova-scheduler service, it might not be accurate
for the nova-api, nova-conductor or nova-compute services which
also use placement. So the best guidance is to just globally say
that placement must be upgraded before *any* nova services, which
our upgrade doc already says.

Change-Id: I8bf6ab049f15ad24a5fbf0557bd0cd8652101901
2018-07-24 15:14:42 -04:00
Zuul
6d1d68ed3e Merge "Enhance doc to guide user to use nova user" 2018-07-24 06:21:56 +00:00
jichenjc
f2f83a30dd Enhance doc to guide user to use nova user
The document doesn't follow previous pattern to guide use
in using nova user to execute command and lead to issue

Change-Id: I795706a8f78ab4154bd39ce6259901800b34890e
Closes-Bug: 1781573
2018-07-23 23:48:33 +00:00
Matt Riedemann
fb043fac82 doc: link to AZ talk from the Rocky summit
This links into the AZ docs a nice video from the Rocky
summit which covers what AZs are and aren't, use cases,
gotchas, and how they are implemented outside of nova
to compare and contrast. Overall it's a nice educational
presentation which is useful for those wishing to learn
more about AZs than what our documentation provides.

Change-Id: Ib67826620735f05edc987481af4c07b6d19f3c1d
2018-07-23 18:25:01 -04:00
Zuul
0a2e86d91b Merge "Replace support matrix ext with common library" 2018-07-17 14:25:34 +00:00
Mike Perez
72ce7c738c Replace support matrix ext with common library
The code to generate a support matrix has been pulled into a common
library. Using this instead of duplicating code in various projects that
need it.

Change-Id: If5c0bf2b0dcd7dbb7d316139ecb62a936fd15439
Co-Authored-By: Stephen Finucane <stephenfin@redhat.com>
2018-07-16 15:04:00 +01:00
Gábor Antal
8f7c2affbf Transform aggregate.update_prop notification
The aggregate.update_prop.start and aggregate.update_prop.end
notifications has been transformed to the versioned notification
framework.

Co-Authored-By: Takashi Natsume <natsume.takashi@lab.ntt.co.jp>
Change-Id: I37b19573b6d0e1131c446fcec361f01fa2560f82
Implements: bp versioned-notification-transformation-rocky
2018-07-15 23:36:31 +09:00
Stephen Finucane
ae70025a3d Revert "docs: Disable smartquotes"
Bump the minimum version of oslo.config to 6.1.0, which adds proper
support for parsing Opt.help as rST [1]. This in turn allows us to
revert commit 75fc30090133c31316e6ae790568f1b622807d0c, which is a
temporary fix relying on deprecated features of Sphinx.

[1] https://review.openstack.org/#/c/553860/

Change-Id: I8f56bdce37cfc538348490052a24e463164c86a3
2018-07-11 14:02:32 +01:00
Chris Dent
6141afdc7c Update some placement docs to reflect modern times
This change provides a small number of updates to the placement user and
contributor documentation to reflect some of the things that have
changed recently. This is by no means complete, but is an improvement
over what was there.

Partial-Bug: #1778227

Change-Id: Ia348cd3c99b1a5104e15595fdebc83e1ca582a98
2018-07-11 01:33:28 +00:00
chenxing
256641230d Update install guide for placement database configuration
Change-Id: I295fe539321bcce3449b522d54121985577c4b35
Partial-Bug: #1778227
2018-07-05 11:21:31 +08:00
Matt Riedemann
47176e9f08 Add osprofiler config options to generated reference
osprofiler is optional, but if it's installed we'll
load up the configuration options from the library,
but they weren't in the generated config sample so
people would have to find the osprofiler docs, or
worse the code, to figure out how to configure it.

This simply adds the osprofiler config options to the
nova config sample, which will also show up in the
config reference docs.

Change-Id: I28d35165ed77487cd49d560fb1eda4f1d640734e
Closes-Bug: #1774208
2018-06-16 12:46:19 +00:00
Zuul
567479ff07 Merge "Update nova-status & docs: require placement 1.25" 2018-06-15 11:12:22 +00:00
Jackie Truong
1716a243d6 Add certificate validation docs
This change adds documentation for Nova's certificate validation
feature.

Change-Id: If551f1265cf662c76a0c7cb38781641a77af0826
Implements: blueprint nova-validate-certificates
2018-06-14 16:12:34 -04:00
Eric Fried
cf891b0a79 Update nova-status & docs: require placement 1.25
Change I496e8d64907fdcb0e2da255725aed1fc529725f2 made nova-scheduler
require placement >= 1.25 so this change updates the minimum required
version checked in the nova-status upgrade check command along with the
upgrade docs.

related to blueprint: granular-resource-requests

Change-Id: I0a17ee362461a8ae2113804687799bb9d9216110
2018-06-13 10:15:13 -05:00
Takashi NATSUME
9b256ea6e9 Fix the file name of development-environment.rst
In Ideb50626e140201dded19fc82584440f1a407e47,
the path of development-environment.rst has been fixed
in doc/README.rst. But the file name was not fixed.

Fix the file name of development-environment.rst
in doc/README.rst.

TrivialFix
Change-Id: I5a6df81cc18d002e9bf1c69c9b270f132edaafa3
2018-06-07 15:26:08 +09:00
Zuul
0ab0ba86eb Merge "Fix some inconsistencies in doc" 2018-06-06 08:48:34 +00:00
Chen
c97d6ebf15 Fix some inconsistencies in doc
It's more common to format words like "nova-compute" with "``"
instead of "`", and there is no need to format words like "RPC".
This patch also fixes a few syntax and typo issues.

And as requested, some typos in aggregates.rst are corrected to
improve readability.

Change-Id: I4d9c184e1448c8ea9973302f53e1773a7b66cd1e
2018-06-04 21:41:07 +08:00
Zuul
07d2b69bd3 Merge "Implement granular policy rules for placement" 2018-06-01 21:06:42 +00:00
Zuul
88286c35e5 Merge "mirror nova host aggregate members to placement" 2018-05-31 00:45:41 +00:00
Jay Pipes
fa794372be mirror nova host aggregate members to placement
This patch is the first step in syncing the nova host aggregate
information with the placement service. The scheduler report client gets
a couple new public methods -- aggregate_add_host() and
aggregate_remove_host(). Both of these methods do **NOT** impact the
provider tree cache that the scheduler reportclient keeps when
instantiated inside the compute resource tracker.

Instead, these two new reportclient methods look up a resource provider
by *name* (not UUID) since that is what is supplied by the
os-aggregates Compute API when adding or removing a "host" to/from a
nova host aggregate.

Change-Id: Ibd7aa4f8c4ea787774becece324d9051521c44b6
blueprint: placement-mirror-host-aggregates
2018-05-30 12:45:20 -04:00
Zuul
02069e521c Merge "doc: Start using openstackdoctheme's extlink extension" 2018-05-30 15:21:12 +00:00
smartu3
da24af7005 Fix doc mistakes
Change-Id: I8000aa98e09f8eea382f85fff9c2431b9390502b
2018-05-29 18:44:35 +08:00
Matt Riedemann
1c2dc0b35e Update placement upgrade docs for nova-api dependency on placement
Change If507e23f0b7e5fa417041c3870d77786498f741d makes nova-api
dependent on placement for deleting an instance when the nova-compute
service on which that instance is running is down, also known as
"local delete".

Change I7b8622b178d5043ed1556d7bdceaf60f47e5ac80 makes nova-api
dependent on placement for deleting a nova-compute service record.

Both changes are idempotent if nova-api isn't configured to use
placement, but warnings will show up in the logs.

This change updates the upgrade docs to mention the new dependency.

Change-Id: I941a8f4b321e4c90a45f7d9fccb74489fae0d62d
Related-Bug: #1679750
Related-Bug: #1756179
2018-05-18 23:06:43 +00:00
Matt Riedemann
b95937a28f Update nova-status and docs for required placement 1.24
Change Id7eecbfe53f3a973d828122cf0149b2e10b8833f made
nova-scheduler require placement >= 1.24 so this change
updates the minimum required version checked in the
nova-status upgrade check command along with the upgrade
docs.

Change-Id: I4369f7fb1453e896864222fa407437982be8f6b5
2018-05-18 21:46:25 +00:00
Zuul
e71c6ddf05 Merge "Fix inconsistency in docs" 2018-05-18 16:30:51 +00:00