From ba97594942bfe7532c9e13f68c4166308167727b Mon Sep 17 00:00:00 2001 From: Stephen Finucane Date: Fri, 26 Apr 2024 11:27:55 +0100 Subject: [PATCH] docs: Add missing identity v3 proxy API docs We also reorder the proxy API to combine two groups. Change-Id: Id9cb8f7cdffa374bdb4f744cf2d12fbe2709904e Signed-off-by: Stephen Finucane --- doc/source/user/proxies/identity_v3.rst | 78 +++++- openstack/identity/v3/_proxy.py | 305 ++++++++++++------------ 2 files changed, 217 insertions(+), 166 deletions(-) diff --git a/doc/source/user/proxies/identity_v3.rst b/doc/source/user/proxies/identity_v3.rst index 1afe30ed0..ccf541b8f 100644 --- a/doc/source/user/proxies/identity_v3.rst +++ b/doc/source/user/proxies/identity_v3.rst @@ -67,7 +67,29 @@ Project Operations .. autoclass:: openstack.identity.v3._proxy.Proxy :noindex: :members: create_project, update_project, delete_project, get_project, - find_project, projects + find_project, projects, user_projects + +Service Operations +^^^^^^^^^^^^^^^^^^ + +.. autoclass:: openstack.identity.v3._proxy.Proxy + :noindex: + :members: create_service, update_service, delete_service, get_service, + find_service, services + +User Operations +^^^^^^^^^^^^^^^ + +.. autoclass:: openstack.identity.v3._proxy.Proxy + :noindex: + :members: create_user, update_user, delete_user, get_user, find_user, users, + +Trust Operations +^^^^^^^^^^^^^^^^ + +.. autoclass:: openstack.identity.v3._proxy.Proxy + :noindex: + :members: create_trust, delete_trust, get_trust, find_trust, trusts Region Operations ^^^^^^^^^^^^^^^^^ @@ -100,25 +122,59 @@ Role Assignment Operations validate_user_has_system_role, assign_system_role_to_group, unassign_system_role_from_group, validate_group_has_system_role -Service Operations -^^^^^^^^^^^^^^^^^^ +Registered Limit Operations +^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. autoclass:: openstack.identity.v3._proxy.Proxy :noindex: - :members: create_service, update_service, delete_service, get_service, - find_service, services + :members: registered_limits, get_registered_limit, create_registered_limit, + update_registered_limit, delete_registered_limit -Trust Operations +Limit Operations ^^^^^^^^^^^^^^^^ .. autoclass:: openstack.identity.v3._proxy.Proxy :noindex: - :members: create_trust, delete_trust, get_trust, find_trust, trusts + :members: limits, get_limit, create_limit, update_limit, delete_limit -User Operations -^^^^^^^^^^^^^^^ +Application Credential Operations +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. autoclass:: openstack.identity.v3._proxy.Proxy :noindex: - :members: create_user, update_user, delete_user, get_user, find_user, users, - user_projects + :members: application_credentials, get_application_credential, + create_application_credential, find_application_credential, + delete_application_credential + +Federation Protocol Operations +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. autoclass:: openstack.identity.v3._proxy.Proxy + :noindex: + :members: create_federation_protocol, delete_federation_protocol, + find_federation_protocol, get_federation_protocol, + federation_protocols, update_federation_protocol + +Mapping Operations +^^^^^^^^^^^^^^^^^^ + +.. autoclass:: openstack.identity.v3._proxy.Proxy + :noindex: + :members: create_mapping, delete_mapping, find_mapping, get_mapping, + mappings, update_mapping + +Identity Provider Operations +^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +.. autoclass:: openstack.identity.v3._proxy.Proxy + :noindex: + :members: create_identity_provider, delete_identity_provider, + find_identity_provider, get_identity_provider, identity_providers, + update_identity_provider + +Access Rule Operations +^^^^^^^^^^^^^^^^^^^^^^ + +.. autoclass:: openstack.identity.v3._proxy.Proxy + :noindex: + :members: access_rules, access_rules, delete_access_rule diff --git a/openstack/identity/v3/_proxy.py b/openstack/identity/v3/_proxy.py index 1463f1fdd..35b59faed 100644 --- a/openstack/identity/v3/_proxy.py +++ b/openstack/identity/v3/_proxy.py @@ -1232,152 +1232,6 @@ class Proxy(proxy.Proxy): """ return self._list(_role_assignment.RoleAssignment, **query) - # ========== Registered limits ========== - - def registered_limits(self, **query): - """Retrieve a generator of registered_limits - - :param kwargs query: Optional query parameters to be sent to limit - the registered_limits being returned. - - :returns: A generator of registered_limits instances. - :rtype: :class: - `~openstack.identity.v3.registered_limit.RegisteredLimit` - """ - return self._list(_registered_limit.RegisteredLimit, **query) - - def get_registered_limit(self, registered_limit): - """Get a single registered_limit - - :param registered_limit: The value can be the ID of a registered_limit - or a :class: - `~openstack.identity.v3.registered_limit.RegisteredLimit` instance. - - :returns: One :class: - `~openstack.identity.v3.registered_limit.RegisteredLimit` - :raises: :class:`~openstack.exceptions.ResourceNotFound` - when no resource can be found. - """ - return self._get(_registered_limit.RegisteredLimit, registered_limit) - - def create_registered_limit(self, **attrs): - """Create a new registered_limit from attributes - - :param dict attrs: Keyword arguments which will be used to create a - :class:`~openstack.identity.v3.registered_limit.RegisteredLimit`, - comprised of the properties on the RegisteredLimit class. - - :returns: The results of registered_limit creation. - :rtype: :class: - `~openstack.identity.v3.registered_limit.RegisteredLimit` - """ - return self._create(_registered_limit.RegisteredLimit, **attrs) - - def update_registered_limit(self, registered_limit, **attrs): - """Update a registered_limit - - :param registered_limit: Either the ID of a registered_limit. or a - :class:`~openstack.identity.v3.registered_limit.RegisteredLimit` - instance. - :param dict kwargs: The attributes to update on the registered_limit - represented by ``value``. - - :returns: The updated registered_limit. - :rtype: :class: - `~openstack.identity.v3.registered_limit.RegisteredLimit` - """ - return self._update( - _registered_limit.RegisteredLimit, registered_limit, **attrs - ) - - def delete_registered_limit(self, registered_limit, ignore_missing=True): - """Delete a registered_limit - - :param registered_limit: The value can be either the ID of a - registered_limit or a - :class:`~openstack.identity.v3.registered_limit.RegisteredLimit` - instance. - :param bool ignore_missing: When set to ``False`` - :class:`~openstack.exceptions.ResourceNotFound` will be raised when - the registered_limit does not exist. When set to ``True``, no - exception will be thrown when attempting to delete a nonexistent - registered_limit. - - :returns: ``None`` - """ - self._delete( - _registered_limit.RegisteredLimit, - registered_limit, - ignore_missing=ignore_missing, - ) - - # ========== Limits ========== - - def limits(self, **query): - """Retrieve a generator of limits - - :param kwargs query: Optional query parameters to be sent to limit - the limits being returned. - - :returns: A generator of limits instances. - :rtype: :class:`~openstack.identity.v3.limit.Limit` - """ - return self._list(_limit.Limit, **query) - - def get_limit(self, limit): - """Get a single limit - - :param limit: The value can be the ID of a limit - or a :class:`~openstack.identity.v3.limit.Limit` instance. - - :returns: One :class: - `~openstack.identity.v3.limit.Limit` - :raises: :class:`~openstack.exceptions.ResourceNotFound` when no - resource can be found. - """ - return self._get(_limit.Limit, limit) - - def create_limit(self, **attrs): - """Create a new limit from attributes - - :param dict attrs: Keyword arguments which will be used to create - a :class:`~openstack.identity.v3.limit.Limit`, comprised of the - properties on the Limit class. - - :returns: The results of limit creation. - :rtype: :class:`~openstack.identity.v3.limit.Limit` - """ - return self._create(_limit.Limit, **attrs) - - def update_limit(self, limit, **attrs): - """Update a limit - - :param limit: Either the ID of a limit. or a - :class:`~openstack.identity.v3.limit.Limit` instance. - :param dict kwargs: The attributes to update on the limit represented - by ``value``. - - :returns: The updated limit. - :rtype: :class:`~openstack.identity.v3.limit.Limit` - """ - return self._update(_limit.Limit, limit, **attrs) - - def delete_limit(self, limit, ignore_missing=True): - """Delete a limit - - :param limit: The value can be either the ID of a limit or a - :class:`~openstack.identity.v3.limit.Limit` instance. - :param bool ignore_missing: When set to ``False`` - :class:`~openstack.exceptions.ResourceNotFound` will be raised when - the limit does not exist. When set to ``True``, no exception will - be thrown when attempting to delete a nonexistent limit. - - :returns: ``None`` - """ - self._delete(_limit.Limit, limit, ignore_missing=ignore_missing) - - # ========== Roles ========== - def assign_domain_role_to_user(self, domain, user, role): """Assign role to user on a domain @@ -1666,6 +1520,147 @@ class Proxy(proxy.Proxy): system = self._get_resource(_system.System, system) return system.validate_group_has_role(self, group, role) + # ========== Registered limits ========== + + def registered_limits(self, **query): + """Retrieve a generator of registered_limits + + :param kwargs query: Optional query parameters to be sent to limit + the registered_limits being returned. + + :returns: A generator of registered_limits instances. + :rtype: :class:`~openstack.identity.v3.registered_limit.RegisteredLimit` + """ + return self._list(_registered_limit.RegisteredLimit, **query) + + def get_registered_limit(self, registered_limit): + """Get a single registered_limit + + :param registered_limit: The value can be the ID of a registered_limit + or a + :class:`~openstack.identity.v3.registered_limit.RegisteredLimit` + instance. + + :returns: One :class:`~openstack.identity.v3.registered_limit.RegisteredLimit` + :raises: :class:`~openstack.exceptions.ResourceNotFound` + when no resource can be found. + """ + return self._get(_registered_limit.RegisteredLimit, registered_limit) + + def create_registered_limit(self, **attrs): + """Create a new registered_limit from attributes + + :param dict attrs: Keyword arguments which will be used to create a + :class:`~openstack.identity.v3.registered_limit.RegisteredLimit`, + comprised of the properties on the RegisteredLimit class. + + :returns: The results of registered_limit creation. + :rtype: :class:`~openstack.identity.v3.registered_limit.RegisteredLimit` + """ + return self._create(_registered_limit.RegisteredLimit, **attrs) + + def update_registered_limit(self, registered_limit, **attrs): + """Update a registered_limit + + :param registered_limit: Either the ID of a registered_limit. or a + :class:`~openstack.identity.v3.registered_limit.RegisteredLimit` + instance. + :param dict kwargs: The attributes to update on the registered_limit + represented by ``value``. + + :returns: The updated registered_limit. + :rtype: + :class:`~openstack.identity.v3.registered_limit.RegisteredLimit` + """ + return self._update( + _registered_limit.RegisteredLimit, registered_limit, **attrs + ) + + def delete_registered_limit(self, registered_limit, ignore_missing=True): + """Delete a registered_limit + + :param registered_limit: The value can be either the ID of a + registered_limit or a + :class:`~openstack.identity.v3.registered_limit.RegisteredLimit` + instance. + :param bool ignore_missing: When set to ``False`` + :class:`~openstack.exceptions.ResourceNotFound` will be raised when + the registered_limit does not exist. When set to ``True``, no + exception will be thrown when attempting to delete a nonexistent + registered_limit. + + :returns: ``None`` + """ + self._delete( + _registered_limit.RegisteredLimit, + registered_limit, + ignore_missing=ignore_missing, + ) + + # ========== Limits ========== + + def limits(self, **query): + """Retrieve a generator of limits + + :param kwargs query: Optional query parameters to be sent to limit + the limits being returned. + + :returns: A generator of limits instances. + :rtype: :class:`~openstack.identity.v3.limit.Limit` + """ + return self._list(_limit.Limit, **query) + + def get_limit(self, limit): + """Get a single limit + + :param limit: The value can be the ID of a limit + or a :class:`~openstack.identity.v3.limit.Limit` instance. + + :returns: One :class:`~openstack.identity.v3.limit.Limit` + :raises: :class:`~openstack.exceptions.ResourceNotFound` when no + resource can be found. + """ + return self._get(_limit.Limit, limit) + + def create_limit(self, **attrs): + """Create a new limit from attributes + + :param dict attrs: Keyword arguments which will be used to create + a :class:`~openstack.identity.v3.limit.Limit`, comprised of the + properties on the Limit class. + + :returns: The results of limit creation. + :rtype: :class:`~openstack.identity.v3.limit.Limit` + """ + return self._create(_limit.Limit, **attrs) + + def update_limit(self, limit, **attrs): + """Update a limit + + :param limit: Either the ID of a limit. or a + :class:`~openstack.identity.v3.limit.Limit` instance. + :param dict kwargs: The attributes to update on the limit represented + by ``value``. + + :returns: The updated limit. + :rtype: :class:`~openstack.identity.v3.limit.Limit` + """ + return self._update(_limit.Limit, limit, **attrs) + + def delete_limit(self, limit, ignore_missing=True): + """Delete a limit + + :param limit: The value can be either the ID of a limit or a + :class:`~openstack.identity.v3.limit.Limit` instance. + :param bool ignore_missing: When set to ``False`` + :class:`~openstack.exceptions.ResourceNotFound` will be raised when + the limit does not exist. When set to ``True``, no exception will + be thrown when attempting to delete a nonexistent limit. + + :returns: ``None`` + """ + self._delete(_limit.Limit, limit, ignore_missing=ignore_missing) + # ========== Application credentials ========== def application_credentials(self, user, **query): @@ -1695,9 +1690,9 @@ class Proxy(proxy.Proxy): :class:`~openstack.identity.v3.user.User` instance. :param application_credential: The value can be the ID of a - application credential or a :class: - `~openstack.identity.v3.application_credential. - ApplicationCredential` instance. + application credential or a + :class:`~openstack.identity.v3.application_credential.ApplicationCredential` + instance. :returns: One :class:`~openstack.identity.v3.application_credential.ApplicationCredential` @@ -2136,8 +2131,8 @@ class Proxy(proxy.Proxy): def access_rules(self, user, **query): """Retrieve a generator of access rules - :param user: Either the ID of a user or a :class:`~.user.User` - instance. + :param user: Either the ID of a user or a + :class:`~openstack.identity.v3.user.User` instance. :param kwargs query: Optional query parameters to be sent to limit the resources being returned. @@ -2150,8 +2145,8 @@ class Proxy(proxy.Proxy): def get_access_rule(self, user, access_rule): """Get a single access rule - :param user: Either the ID of a user or a :class:`~.user.User` - instance. + :param user: Either the ID of a user or a + :class:`~openstack.identity.v3.user.User` instance. :param access rule: The value can be the ID of an access rule or a :class:`~.access_rule.AccessRule` instance. @@ -2165,8 +2160,8 @@ class Proxy(proxy.Proxy): def delete_access_rule(self, user, access_rule, ignore_missing=True): """Delete an access rule - :param user: Either the ID of a user or a :class:`~.user.User` - instance. + :param user: Either the ID of a user or a + :class:`~openstack.identity.v3.user.User` instance. :param access rule: The value can be either the ID of an access rule or a :class:`~.access_rule.AccessRule` instance. :param bool ignore_missing: When set to ``False``