reseller (phase 1): top level projects as domains

Registered by Raildo Mascena de Sousa Filho

Implementing a support to limit sharing of resources both upwards and downwards in the hierarchy.
To achieve this, the domains construct will be merged with project, allowing to distribute users in any point of the hierarchy, instead of only in a single domain.

This blueprint covers the 1st phase of reseller, where projects can act as a domain, but only as a top level domain - i.e. no sub domains are allowed. A separate blueprint & spec will cover the augmentation of this to allow sub domains.

Blueprint information

Status:
Complete
Approver:
Steve Martinelli
Priority:
High
Drafter:
Raildo Mascena de Sousa Filho
Direction:
Approved
Assignee:
Raildo Mascena de Sousa Filho
Definition:
Approved
Series goal:
Accepted for mitaka
Implementation:
Implemented
Milestone target:
milestone icon mitaka-3
Started by
Morgan Fainberg
Completed by
Steve Martinelli

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/reseller,n,z

Addressed by: https://review.openstack.org/139824 (merged)
    Reseller Use case

Addressed by: https://review.openstack.org/153007 (merged)
    API changes for Reseller

Addressed by: https://review.openstack.org/143763 (abandoned)
    domain as project

Gerrit topic: https://review.openstack.org/#q,topic:bp/recursive-deletion,n,z

Addressed by: https://review.openstack.org/157152 (abandoned)
    Not allow create a project with slash in name

Addressed by: https://review.openstack.org/157427 (abandoned)
    Add is_domain field in Project Table

Addressed by: https://review.openstack.org/158314 (merged)
    Add tests to get subprojects of the parent_id

Addressed by: https://review.openstack.org/158372 (merged)
    Change project name constraint

Addressed by: https://review.openstack.org/158398 (merged)
    List projects filtering by is_domain flag

Gerrit topic: https://review.openstack.org/#q,topic:bug/1425108,n,z

Addressed by: https://review.openstack.org/159944 (merged)
    Add domain_id checking in create_project

Addressed by: https://review.openstack.org/160446 (abandoned)
    Expose create project with invalid domain_id

Addressed by: https://review.openstack.org/158720 (merged)
    Prohibit invalid ids in subtree and parents list

Addressed by: https://review.openstack.org/161378 (abandoned)
    Creating domain and filtering by parent_id

Addressed by: https://review.openstack.org/161408 (abandoned)
    Mirror domain entries to project table

Addressed by: https://review.openstack.org/161854 (abandoned)
    Bye bye domain table

Addressed by: https://review.openstack.org/164180 (abandoned)
    [WIP]Update inherited role assignments behavior

Addressed by: https://review.openstack.org/166354 (abandoned)
    Change domain_id FK in project table

Addressed by: https://review.openstack.org/170926 (merged)
    Move reseller spec for Liberty release

Addressed by: https://review.openstack.org/192495 (abandoned)
    New way to get a project scoped token by name after Reseller

Gerrit topic: https://review.openstack.org/#q,topic:bp/add-isdomain-to-token,n,z

Addressed by: https://review.openstack.org/200624 (merged)
    Clarify project hierachy and parent usage within the API

Addressed by: https://review.openstack.org/210600 (abandoned)
    Add is_domain parameter to get_project_by_name

Addressed by: https://review.openstack.org/211170 (abandoned)
    Replicate domain info in projects table

Addressed by: https://review.openstack.org/211219 (abandoned)
    Creating tests for projects acting as domains

Addressed by: https://review.openstack.org/212045 (merged)
    Unit tests for is_domain field in project's table

Addressed by: https://review.openstack.org/213273 (merged)
    Add is_domain field in Project Table

Addressed by: https://review.openstack.org/213448 (merged)
    Manager support for projects acting as domains

Addressed by: https://review.openstack.org/229549 (merged)
    Add test case passing is_domain flag as False

Gerrit topic: https://review.openstack.org/#q,topic:bug/1496943,n,z

Addressed by: https://review.openstack.org/224842 (merged)
    Filters is_domain=True in v2 get_project_by_name

Addressed by: https://review.openstack.org/231289 (merged)
    Projects acting as domains

Addressed by: https://review.openstack.org/233274 (abandoned)
    Removes project.domain_id FK

Addressed by: https://review.openstack.org/234907 (abandoned)
    Tests for subprojects acting as domains

Addressed by: https://review.openstack.org/235544 (merged)
    Sub projects acting as domains

Addressed by: https://review.openstack.org/262082 (merged)
    Create V9 version of resource driver interface

Addressed by: https://review.openstack.org/264533 (merged)
    Make project.domain_id column nullable

Gerrit topic: https://review.openstack.org/#q,topic:bug/1017606,n,z

Addressed by: https://review.openstack.org/269422 (abandoned)
    Add filter to control listing projects acting as domains

Addressed by: https://review.openstack.org/272369 (merged)
    Add tests in preparation of projects acting as a domain

Addressed by: https://review.openstack.org/286452
    Deprecate domain driver interface methods

Addressed by: https://review.openstack.org/286699
    Remove unused domain driver method in legacy wrapper

Addressed by: https://review.openstack.org/287233
    Add release notes for projects acting as domains.

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.