Add file to the reno documentation build to show release notes for
stable/yoga.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/yoga.
Sem-Ver: feature
Change-Id: Id7b917a26bbaecf08a20e83375bf5940d08cc4c7
The new microversion adds support for the ``in:`` syntax in the ``required``
query parameter in the ``GET /resource_providers`` API as well as to the
``required`` and ``requiredN`` query params of the
``GET /allocation_candidates`` API. Also adds support for repeating the
``required`` and ``requiredN`` parameters in the respective APIs. So
required=in:T3,T4&required=T1,!T2
is supported and it means T1 and not T2 and (T3 or T4).
Story: 2005345
Story: 2005346
Change-Id: I66543c0c5509739d1461af2fb2c327a003202d74
During the development of the any-traits feature the signature of the DB
methods are changed and to allow gradual change in the caller sites
fallback logic was added to accept the old signature as well.
Now that all the call sites uses a new signature such code is removed.
Story: 2005345
Story: 2005346
Change-Id: Icdbdbb8e68bba37a2a5c1ffb81df231581c4ae02
The patch I8704fe7350f74e0567e574eb00fc40b330817381 added support for
any-traits in the DB query when considering RP trees. This patch extends
the allocation candidates code path to be able to parse the extended
'in:' syntax of the 'required' query parameter as well as to handle the
nested required trait structure both in the unnamed and in the name
request groups.
This patch refers to microversion 1.39 which has not been added yet so
the changes in this patch cannot be triggered from the REST API. A later
patch will add the microversion bump.
Note that supporting the 'in:' syntax in root_required query param was
not planned and it is not implemented as part of this patch series and
API microversion.
Story: 2005345
Story: 2005346
Change-Id: I760be29201bce8dfc6d4e571bc8a842404eaff09
The patch Id908822e8e03b872b204016345fba30b05ff5b1f added support for
any-traits in the DB layer. This patch extends the resource provider
object and API layer to be able to parse the extended 'in:' syntax of
the 'required' query parameter as well as to handle the nested required
trait structure.
This patch refers to microversion 1.39 which has not been added yet so
the changes in this patch cannot be triggered from the REST API. A later
patch will add the microversion bump after the allocation_candidates
code path also gained support for the same query structure.
Story: 2005345
Story: 2005346
Change-Id: I1ef8e31c73ffbc84ecdfed806098ca860c60a396
This extends the RP tree query at the DB layer to support any-traits with a
nested required_traits syntax [{A, B}, {C}] meaning ((A or B) and C).
The object and API layers do not support such queries yet.
Story: 2005345
Story: 2005346
Change-Id: I8704fe7350f74e0567e574eb00fc40b330817381
The documentation of the research_context._get_trees_with_traits
function was not complete. So this patch adds characterisation tests for
this function and documents the behavior of the call.
The behavior might seem to be broken at first as it returns RPs that
are actually forbidden by forbidden traits. Still a later call in the
call chain does a proper trait filtering with a comment that this
later filtering should be moved to _get_trees_with_traits. So this is
probably not a bug just a limitation of the current
_get_trees_with_traits call.
Change-Id: I3216b951ac755a09326357809748823426f20acd
Update get_provider_ids_having_any_trait to only depend on the internal
trait IDs in signature. In implementation it only depends on that anyhow
and all call sites already has access to the trait ids.
Later this change will help to use this call from call sites which only
have access to the trait ids but not the names any more.
Story: 2005345
Story: 2005346
Change-Id: Id1b3d6fb2c1a50909649583dbd8ca6e841468366
This extends the RP query at the DB layer to support any-traits with a
nested required_traits syntax [{A, B}, {C}] meaning ((A or B) and C).
The object and API layers do not support such queries yet.
Story: 2005345
Story: 2005346
Change-Id: Id908822e8e03b872b204016345fba30b05ff5b1f
Since consumer_types was added to the API in
I24c2315093e07dbf25c4fb53152e6a4de7477a51 the two perfload jobs are
getting errors from placement as they are using the latest microversion
but does not specify the consumer_type when creating allocations.
The server could not comply with the request since it is either malformed
or otherwise incorrect.\n\n JSON does not validate: 'consumer_type' is a
required property
This patch changes the allocation request to specify TEST as consumer
type.
Change-Id: I31500e3e6df5717d6bdb6ed7ed43325653d49be5
Resolves the following class of warnings issued when building the
package sdist:
UserWarning: Usage of dash-separated 'python-requires' will not be
supported in future versions. Please use the underscore name
'python_requires' instead
Change-Id: Ie4f6c7b17ace67669cdeec84ce4f163aededa8e4
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Our minimum constraint for this dependency is now at the correct
version, meaning we no longer need this filter. Remove it.
Change-Id: I94485a3f16b0cd47ae1e2331efc6b19eb4f6278b
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Some of our gabbit tests have the 'verbose' flag set, which means they
are rather noisy, dumping the (mostly) raw HTTP requests to stdout.
Resolve this by dropping the 'verbose' flag.
Tests for the 'placement-status' command don't capture stdout which
means we see their output. Resolve this by simply capturing stdout.
Change-Id: If6c1f88fbb94cb13459c9506c04cfbeee7ac9619
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
This prepares for the changes necessary to support multiple `required`
query params and then `in:` syntax.
Story: 2005345
Story: 2005346
Change-Id: Ifa2c55a77b34d7579e38e6618c361b9494553858
This patch adds some tests to prove the following for both GET
/resource_providers and /allocation_candidates API:
* in:trait1,trait2 is not yet supported, this will makes sure we don't
leak the support to older microversions
* repeated `required` query params are not supported. Interestingly the
current behavior is that one `required` query param will overwrite the
rest.
Story: 2005345
Story: 2005346
Change-Id: I67d1af5b8b6e945c744180358d588e95e13c33f6
This is a reproposal of a nova spec to placement, originally
proposed in I9695f0cb2c0263cd0e8ca552d3a9dd720690e466.
Previously-Approved: Stein
Story: 2005345
Task: 30295
Change-Id: Ibada21dcabbb3824c8d9fdb7584d45abf844be68
This is a reproposal of a nova spec to placement, originally
proposed in I57c5611d7443070c176d213118857261b37eca0c
Change-Id: I0e47b654d5bdae1125737cf54d9c301bdba3236f
Previously-Approved: Stein
Story: 2005346
Task: 30296
To be compatible with recent setuptools 58.0.0 which removed the support
for use_2to3 we need to bump the minimum version we support for
decorator from 3.4.0 to 4.0.0.
This is needed to unblock the gate.
Change-Id: I456f8136f882a2c6621549b2b0f80e213e5430df
Add file to the reno documentation build to show release notes for
stable/xena.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/xena.
Sem-Ver: feature
Change-Id: Ifa543f0d6265bf7937937b62f7ae2ff23fc6b4ba