Skip to content

Commit 0d31492

Browse files
committed
chore(registries): add SCIM examples for User registryRoles operations
1 parent 8278022 commit 0d31492

File tree

3 files changed

+172
-40
lines changed

3 files changed

+172
-40
lines changed

wandb-scim/examples/__init__.py

Whitespace-only changes.

wandb-scim/examples/user_example.py

Lines changed: 36 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
11
# calling_module.py
22

3-
import requests
43
import sys
5-
sys.path.append('../')
4+
5+
import requests
6+
7+
sys.path.append("../")
68
from users import User # Assuming the User class is defined in user_module.py
79

10+
811
def create_user(user, email, name):
912
"""
1013
Creates a new user.
@@ -23,6 +26,7 @@ def create_user(user, email, name):
2326
except requests.exceptions.RequestException as e:
2427
print(f"Error occurred during API request: {str(e)}")
2528

29+
2630
def get_user(user, user_id):
2731
"""
2832
Retrieves details of a specific user.
@@ -38,6 +42,7 @@ def get_user(user, user_id):
3842
except requests.exceptions.RequestException as e:
3943
print(f"Error occurred during API request: {str(e)}")
4044

45+
4146
def get_all_users(user):
4247
"""
4348
Retrieves details of all users in the organization.
@@ -52,6 +57,7 @@ def get_all_users(user):
5257
except requests.exceptions.RequestException as e:
5358
print(f"Error occurred during API request: {str(e)}")
5459

60+
5561
def activate_user(user, user_id):
5662
"""
5763
Activates a user.
@@ -67,6 +73,7 @@ def activate_user(user, user_id):
6773
except requests.exceptions.RequestException as e:
6874
print(f"Error occurred during API request: {str(e)}")
6975

76+
7077
def deactivate_user(user, user_id):
7178
"""
7279
Deactivates a user.
@@ -82,6 +89,7 @@ def deactivate_user(user, user_id):
8289
except requests.exceptions.RequestException as e:
8390
print(f"Error occurred during API request: {str(e)}")
8491

92+
8593
def delete_user(user, user_id):
8694
"""
8795
Deletes a user.
@@ -97,6 +105,7 @@ def delete_user(user, user_id):
97105
except requests.exceptions.RequestException as e:
98106
print(f"Error occurred during API request: {str(e)}")
99107

108+
100109
def assign_org_role_to_user(user, user_id, role_name):
101110
"""
102111
Assigns a org-level role to a user.
@@ -109,8 +118,7 @@ def assign_org_role_to_user(user, user_id, role_name):
109118
try:
110119
# Assign a role to the user
111120
assign_org_role_response = user.assign_org_role(
112-
user_id,
113-
request_payload={"roleName": role_name}
121+
user_id, request_payload={"roleName": role_name}
114122
)
115123
print(assign_org_role_response)
116124
except requests.exceptions.RequestException as e:
@@ -130,14 +138,34 @@ def assign_team_role_to_user(user, user_id, team_name, role_name):
130138
try:
131139
# Assign team role to a user
132140
assign_team_role_response = user.assign_team_role(
133-
user_id,
134-
request_payload={"roleName": role_name, "teamName": team_name}
141+
user_id, request_payload={"roleName": role_name, "teamName": team_name}
135142
)
136143
print(assign_team_role_response)
137144
except requests.exceptions.RequestException as e:
138145
print(f"Error occurred during API request: {str(e)}")
139146

140-
147+
148+
def assign_registry_role_to_user(user, user_id, registry_name, role_name):
149+
"""
150+
Assigns a registry-level role to a user.
151+
152+
Args:
153+
user (User): An instance of the User class.
154+
user_id (str): The ID of the user to assign the registry role to.
155+
registry_name (str): The name of the registry to assign the role from.
156+
role_name (str): The name of the role to assign.
157+
"""
158+
try:
159+
# Assign team role to a user
160+
assign_registry_role_response = user.assign_registry_role(
161+
user_id,
162+
request_payload={"roleName": role_name, "registryName": registry_name},
163+
)
164+
print(assign_registry_role_response)
165+
except requests.exceptions.RequestException as e:
166+
print(f"Error occurred during API request: {str(e)}")
167+
168+
141169
if __name__ == "__main__":
142170
username = "your_username"
143171
api_key = "your_api_key"
@@ -154,4 +182,4 @@ def assign_team_role_to_user(user, user_id, team_name, role_name):
154182
# activate_user(user, "user_id")
155183
# delete_user(user, "user_id")
156184
# assign_org_role_to_user(user, "user_id", "role_name")
157-
# assign_team_role_to_user(user, "user_id", "team_name", "role_name")
185+
# assign_team_role_to_user(user, "user_id", "team_name", "role_name")

0 commit comments

Comments
 (0)