Mistakenly the computing team merged two specs in nova that actually
targeting the placement service. Placement has its own specs directory
to store these. So this patch adds the these specs to the placement
repository.
The only change in the two specifications compared the ones approved in
nova-specs repository is the removal of the note from the top that they
are targeting placement service as it is now obvious.
Change-Id: Ie0d4df94ae16de60394438878e5a1568e29e03a5
As per the community goal of migrating the policy file
the format from JSON to YAML[1], we need to do two things:
1. Change the default value of '[oslo_policy] policy_file''
config option from 'policy.json' to 'policy.yaml' with
upgrade checks.
2. Deprecate the JSON formatted policy file on the project side
via warning in doc and releasenotes.
Also replace policy.json to policy.yaml ref from doc and tests.
[1]https://governance.openstack.org/tc/goals/selected/wallaby/migrate-policy-format-from-json-to-yaml.html
Change-Id: Ia7365cc3ae09e2ff916ab9f9ff0ba4fef0dc446b
[placement]/policy_file config option is deprecated since Train
release in favor of ``[oslo_policy]/policy_file`` config option.
In wallaby cycle, default value of ``[oslo_policy]/policy_file``
is going to change to 'policy.yaml' so it is better to remove
the old deprecated config option to avoid confusion for operator.
Change-Id: I427f1f5a82dc1b2e27fa29b68db9ab549df92289
Switch to openstackdocstheme 2.2.1 and reno 3.1.0 versions. Using
these versions will allow especially:
* Linking from HTML to PDF document
* Allow parallel building of documents
* Fix some rendering problems
Update Sphinx version as well.
Set openstackdocs_pdf_link to link to PDF file. Note that
the link to the published document only works on docs.openstack.org
where the PDF file is placed in the top-level html directory. The
site-preview places the PDF in a pdf directory.
Disable openstackdocs_auto_name to use 'project' variable as name.
Change pygments_style to 'native' since old theme version always used
'native' and the theme now respects the setting and using 'sphinx' can
lead to some strange rendering.
openstackdocstheme renames some variables, so follow the renames
before the next release removes them. A couple of variables are also
not needed anymore, remove them.
See also
http://lists.openstack.org/pipermail/openstack-discuss/2020-May/014971.html
Change-Id: I4e3fe772adffbd70d55ce1b73d9161a6de5b9c11
The --skip-locks flag can be used along with --migrate in
deployments where table locking operations can't be performed.
For example, Percona XtraDB Cluster only has experimental support
for explicit table locking operations and attempts to use locking
will result in errors when PXC Strict Mode is set to ENFORCING.
Change-Id: I3df5686d13c1ce0cc38402a1317acb661ad74cec
Story: #2006670
Commit 3f1a89c7dd changed most of the
install docs to use "Default" instead of "default" for project/user
domain names according to the keystone docs, but the install doc for
PyPI has been missed. This patch fixes it accordingly.
Change-Id: I2e92730ff5819bf49cf1b286356870fdb9c6ece5
Story: #2006652
Task: #36894
This reminds people that they must first switch to Stein extracted
placement and explains the upgrade status and db sync steps.
Change-Id: I1383e845aaa7caf15b0e2f36038b4b612cffca5b
The contibutor document had subpages section on the top, but it was
weird (especially in pdf) that subpages were before sections of
"overview" and "big picture".
This patch sorts it out creating a new section of "architecture".
Change-Id: Iea2307774e7f6f778c72f5b07b526fad18dc4cc5
In the top index page of the document, some sections had actual
contents and some had only links to the contents. However, this
makes it difficult for readers to get what is in the document and
what isn't at a glance.
This patch cleans it up to simplify the top index. This patch also
renames some of the directories to follow the doc layout rules[1].
[1] https://specs.openstack.org/openstack/docs-specs/specs/pike/os-manuals-migration.html
Note that the following ToDo is left for further cleanup:
* Publish the api guide and move the microversion history to
the `/api-guide` directory
Change-Id: Ideb1d5e7c74d1d564d07bac1a1e7c86c55ede873
In the document source, we had a hidden toctree to avoid an error
when creating an html document. However, the contents in the hidden
toctree appears explicitly as actual subsections. This resulted in
having wrong subsection structures when creating a pdf document.
This patch fixes it by adding explicit sections for the contents
in the (previously) hidden toctree.
Change-Id: I8420835c19856953c65513914362bf402ff0f08b
Story: 2006110
Task: 35398
This follows the instructions [1] in an attempt to build pdf docs.
Several doc/source/conf.py changes are required to get this to work.
The most important one is
'maxlistdepth': '10',
which prevents the build process from stalling out and dropping the
caller into an interactive session.
[1] https://etherpad.openstack.org/p/train-pdf-support-goal
Change-Id: Icf7c22bf9d1de6fb2a74a756c370930d4c00b0b9
Story: 2006110
Task: 35398
root_member_of was not implemented (as we thought it might not be).
The spec is updated to make this explicit.
Change-Id: I2a60bff04b0837bcac7037d766c675ef3896692f
The migration scripts have moved, gitea doesn't handle the redirects
properly, so update the links to point to the correct locations
directly.
Change-Id: I73a47c862606fa27158e0b7af9f111b5df8a065d
Sphinx 2.2.0 gets upset when a directory it is configured for does
not exist.
The _static directory is only used for automatically generated
configuration and policy sample files.
Change-Id: I5ee07a2cb118e5c9b16aefee73c9274ecace1d44
The api documentation is now published on docs.openstack.org instead
of developer.openstack.org. Update all links that are changed to the
new location.
Note that redirects will be set up as well but let's point now to the
new location.
For details, see:
http://lists.openstack.org/pipermail/openstack-discuss/2019-July/007828.html
Change-Id: Iccddd4356b5d7c28977ad954654d0875972dae97
This patch adds usage documents for the new `same_subtree` queryparam
in `Modeling with Provider Trees` page.
Change-Id: I52a48692aa7069eb16ce4f078cc671fe38728729
Story: 2005575
Task: 30784
Use whereto to test that the redirect rules do what we expect.
Change-Id: Id3a8f3b9f372ebe9176f1df917f7a6aac30a8e92
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Forbidden aggregates was added in microversion 1.32 (part of Train)
and allocation candidates mappings was added in 1.34 so those specs
have been moved to implemented.
An _extra/.htaccess is added to redirect the approved spec to the
implemented spec. If we're experiencing enough volume of specs to
warrant automating this, it should be easy to do, but at this point
we don't have, nor intend to have, large numbers of specs.
While doing that I noticed the management of spec documents can be
simplified somewhat by moving placeholders and templates to a
non-release specific location. The placeholder can then be used
as a symlink when in approved or implemented when those are first
created or otherwise empty (an empty directory when doing a table of
contents glob is an error so some kind of file is needed).
Contribution docs are updated to reflect the location of the
template.rst file. The template.rst file is updated to be release
generic.
Change-Id: Icb886d5062a52bfc757ed7bbe36ed8a63abe1387
This spec aims at providing support for services to model
``consumer types`` in placement. While placement defines a
consumer to be an entity consuming resources from a provider
it does not provide a way to identify similar "types" of
consumers and henceforth allow services to group/query them
based on their types. This spec proposes to associate each
consumer to a particular type defined by the service owning
the consumer.
Change-Id: I79ce8f1b20c60b89fc1ed0ece8bcc321e9435bad
Story: 2005473
Task: 30554
Add a clarifying note about running pip (e.g. you might have to spell it
pip3) in a centralized place and link it from elsewhere. We should link
to this whenever we mention pip so we don't duplicate information.
Change-Id: Ie94ab144005a5846fc951f4f387703bd241181c8
Story: #2005950
Task: #34315
Since I5a0e805fe04c00c5e7cf316f0ea8d432b940e560 OsProfiler can be used
with extracted placement service to trace the wsgi endpoint. This patch
adds documentations to help using the OsProfiler.
Story: 2005842
Task: 34191
Change-Id: I33a4f529660057e00e6da25fa4fb4263854819d1
This commit is a grab-bag of tweaks and cleanups noticed while working
in the neighborhood on something unrelated.
- Add a descriptive comment to the ResourceProviderNotFound exception.
This is a marker exception used for inter-method communication.
- Add and enhance debug logs in the in_tree$S filter code path.
- Correct a SQL comment in get_providers_with_resource (missed when the
code was tweaked).
- Removes a TODO about an optimization that became obsolete when
RequestGroupSearchContext was integrated into
get_provider_ids_matching.
- Corrects the get_sharing_providers docstring s/list/set/ to reflect
reality.
- Changes a link in the provider-tree doc from the spec-in-progress to
the merged and published version.
Change-Id: Id433b0540e2051ab27b2c22cc14c62105555ea8f
Microversion 1.35_ adds support for the ``root_required`` query
parameter to the ``GET /allocation_candidates`` API. It accepts a
comma-delimited list of trait names, each optionally prefixed with ``!``
to indicate a forbidden trait, in the same format as the ``required``
query parameter. This restricts allocation requests in the response to
only those whose (non-sharing) tree's root resource provider satisfies
the specified trait requirements.
This is to support use cases like, "Land my VM on a host that is capable
of multi-attach," or, "Reserve my Windows-licensed hosts for special
use."
Story: #2005575
Task: #33753
Change-Id: I76cad83248920fa71da122711f1f763c4ebdb1ba
This is a spec for several nested features which has been split
off from the original spec for nested magic [1] in an effort to
not delay progress on these features while 'can_split' is being
discussed.
This spec describes a cluster of Placement API work to support several
interrelated use cases for Train around:
* Modeling complex trees such as NUMA layouts, multiple devices,
networks.
* Requesting affinity (in the NUMA sense) between/among the various
providers/allocations in allocation candidates against such layouts.
* Describing granular groups more richly to facilitate the above.
* Requesting candidates based on traits/aggregates that are not
necessarily associated with resources.
In particular, it describes the new GET /allocation_candidates
features:
* arbitrary group suffixes
* same_subtree query parameter
* resourceless request groups
* root_required, root_member_of
[1] I7c00b06e85879ab1bf877ce32979e8cc898bfd9e
Co-Authored-By: Eric Fried <openstack@fried.cc>
Change-Id: I55973aa7de4a85b63dff4a7d1afb6c36796af71a
Story: #2005575
Task: #30949
openSUSE and SLES have Placement packages, but they are named slightly
differently and the default Apache configuration is slightly different
than what was documented. See the package definition in OBS[1]. This
patch makes those corrections.
[1] https://build.opensuse.org/package/show/Cloud:OpenStack:Stein/openstack-placement
Change-Id: Id0eca721d850d849c7a273683c7f393e5a216682
This is the code used to run placement with the wsgi
profiling described in a blog post [1]. It has proven
useful enough that we may wish to include it in the
released code. It is added in a way that is off by
default and makes no changes to requirements.
Brief docs are included in testing.rst. They are
brief because it's assumed that someone who wants to
do this already mostly knows what they want to do and
merely needs the specifics on how to do it in this
environment.
[1] https://anticdent.org/profiling-wsgi-apps.html
Change-Id: I342512732b94bc19bd711684ba3ec9480cc51f81
To support QoS minimum bandwidth policy during server scheduling
Neutron needs to know which resource provider provides the bandwidth
resource for each port in the server create request.
Story: 2005575
Task: 30804
Change-Id: Iafdb0eab9b41f4c34c93cada08a4da27cf4b1499