Each of these methods needs to be removed. Removing any of them will result in test failures, etc. Callers simply need to be revised from calling identity_api.method() to call assignment_api.method() directly (bypassing the proxy method being removed).
There is also an extensive amount of driver cross-reference causing a circular dependency between identity and assignment. All of these cross references to assignment_api should be removed:
The scope of work for this bug is quite extensive, so it likely needs to be completed in pieces.
All of the following methods are "proxy" methods in the identity manager:
https:/ /github. com/openstack/ keystone/ blob/c80282c3be e1ed1ee2ac5f1a4 a9e5b1f56d4e6d2 /keystone/ identity/ core.py# L455-L556
Each of these methods needs to be removed. Removing any of them will result in test failures, etc. Callers simply need to be revised from calling identity_ api.method( ) to call assignment_ api.method( ) directly (bypassing the proxy method being removed).
There is also an extensive amount of driver cross-reference causing a circular dependency between identity and assignment. All of these cross references to assignment_api should be removed:
https:/ /github. com/openstack/ keystone/ blob/c80282c3be e1ed1ee2ac5f1a4 a9e5b1f56d4e6d2 /keystone/ identity/ core.py# L62-L182
Even worse, assignment and identity drivers are interdependent and these dependencies need to be removed, for example:
https:/ /github. com/openstack/ keystone/ blob/c80282c3be e1ed1ee2ac5f1a4 a9e5b1f56d4e6d2 /keystone/ assignment/ backends/ sql.py# L29