Integrate nested resource providers in allocation candidates

Registered by Jay Pipes on 2018-03-19

We need to account for nested resource providers in the calculation of allocation requests returned by the GET /allocation_candidates HTTP endpoint

Blueprint information

Alex Xu
Jay Pipes
Tetsuro Nakamura
Series goal:
Accepted for rocky
Milestone target:
milestone icon rocky-3
Started by
Jay Pipes on 2018-03-19
Completed by
Matt Riedemann on 2018-06-29

Related branches



Gerrit topic:,topic:bp/nested-resource-providers-allocation-candidates,n,z

Addressed by:
    tests for alloc candidates with nested and traits

Addressed by:
    placement: resource requests for nested providers

Addressed by:
    Handle nested providers for allocation candidates

Addressed by:
    Fix comments in get_all_with_shared()

Addressed by:
    remove unnecessary short cut in placement

Addressed by:
    Fix allocation_candidates not to ignore shared RPs

Addressed by:
    Consider nested RPs in get_all_with_shared

Addressed by:
    Support shared and nested allocation candidates

Addressed by:
    Return all nested providers in tree

Addressed by:
    Return all resources in provider_summaries

Addressed by:
    Return resource providers without inventories

Addressed by:
    Consult the dictionary for root provider ids

Addressed by:
    Improve getting nested providers with capacity

Gerrit topic:,topic:bug/1760276,n,z

Addressed by:
    Support nested alloc cands without shared RPs

Approved for Rocky. -- mriedem 20180419

Gerrit topic:,topic:bp/placement-return-all-resources,n,z

Addressed by:
    Return nested providers in get_by_request

Gerrit topic:,topic:bp/nested-resource-providers-allocation-candidate,n,z

Addressed by:
    Add traits check in nested provider cadidates

Addressed by:
    Fix broken allocation candidates with traits

Addressed by:
    Support nested alloc cands with sharing providers

Addressed by:
    Add tests for _get_trees_matching_all() function

Gerrit topic:,topic:bug/1772243,n,z

Addressed by:
    Use list instead of set for duplicate check

Addressed by:
    Fix nits in nested provider allocation candidates

Gerrit topic:,topic:placement-return-all-resources,n,z

Addressed by:
    Add microversion for nested allocation candidate

Gerrit topic:,topic:nested-resource-providers-allocation-candidates,n,z

Addressed by:
    Squash: exclude nested alloc cands in older microversions

Addressed by:
    Fix nits in placement-return-all-resources series

Marking this complete for Rocky. It sounds like there still needs to be some testing done to make sure that requests < 1.29 have not regressed, but those would be bugs if we did regress something so I don't see the need to hold the blueprint open for that testing. -- mriedem 20180629

Addressed by:
    [placement] api-ref: add description for 1.29

Addressed by:
    api-ref: fix min_version for parent_provider_uuid in responses


Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.