Add role inference calls, domains
Also rework get_by_name_or_uuid method to work with multiple keys
and add get_by_name_or_uuid decorator for role assign, unassgin and check.
Change-Id: I808ce0c1aa1a7231875256ae6f22e986d78f8f00
Related-Issue: PROD-21388
diff --git a/_modules/keystonev3/endpoints.py b/_modules/keystonev3/endpoints.py
index 4230ad3..9f378d5 100644
--- a/_modules/keystonev3/endpoints.py
+++ b/_modules/keystonev3/endpoints.py
@@ -1,5 +1,5 @@
from keystonev3.common import send
-
+from keystonev3.arg_converter import get_by_name_or_uuid_multiple
try:
from urllib.parse import urlencode
except ImportError:
@@ -27,16 +27,16 @@
return url, None
-@send('get')
-def endpoint_list(**kwargs):
- url = '/endpoints?{}'.format(urlencode(kwargs))
- return url, None
-
-
+@get_by_name_or_uuid_multiple([('service', 'service_id')])
@send('post')
-def endpoint_create(**kwargs):
- url = '/endpoints'
+def endpoint_create(service_id, url, interface, **kwargs):
+ api_url = '/endpoints'
json = {
- 'endpoint': kwargs,
+ 'endpoint': {
+ 'service_id': service_id,
+ 'url': url,
+ 'interface': interface,
+ }
}
- return url, json
+ json['endpoint'].update(kwargs)
+ return api_url, json