Skip to content

Commit

Permalink
Merge pull request #232 from noqdev/bug/en-1869-err-listing-okta-groups
Browse files Browse the repository at this point in the history
EN-1869 err listing okta groups
  • Loading branch information
Will-NOQ authored Mar 13, 2023
2 parents 9be66b2 + ff6a501 commit f43524d
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 10 deletions.
8 changes: 6 additions & 2 deletions iambic/plugins/v0_1_0/okta/app/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ async def list_app_user_assignments(
app_user_list, _, err = await retry_controller(handle_okta_fn, fn)
if err:
log.error("Error encountered when listing app users", error=str(err))
raise Exception(f"Error listing app users: {str(err)}")

user_assignments = []
if app_user_list:
Expand Down Expand Up @@ -155,11 +156,14 @@ async def list_all_apps(okta_organization: OktaOrganization) -> List[App]:
next_apps, err = await retry_controller(handle_okta_fn, resp.next)
if err:
log.error("Error encountered when listing apps", error=str(err))
return []
raise Exception("Error encountered when listing apps")
raw_apps.append(next_apps)

if not raw_apps:
return []

tasks = []
apps = []

for app_raw in raw_apps:
app = App(
id=app_raw.id,
Expand Down
35 changes: 27 additions & 8 deletions iambic/plugins/v0_1_0/okta/group/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,16 +34,23 @@ async def list_all_users(okta_organization: OktaOrganization) -> List[User]:
) as retry_controller:
fn = functools.partial(client.list_users)
users, resp, err = await retry_controller(handle_okta_fn, fn)
if err:
log.error("Error encountered when listing users", error=str(err))
raise Exception(f"Error listing users: {str(err)}")

while resp.has_next():
async with GlobalRetryController(
fn_identifier="okta.list_users"
) as retry_controller:
next_users, err = await retry_controller(handle_okta_fn, resp.next)
if err:
log.error("Error encountered when listing users", error=str(err))
return []
raise Exception(f"Error listing users: {str(err)}")
users.append(next_users)

if not users:
return []

users_to_return = []
for user in users:
users_to_return.append(
Expand Down Expand Up @@ -80,18 +87,23 @@ async def list_group_users(group: Group, okta_organization: OktaOrganization) ->
) as retry_controller:
fn = functools.partial(client.list_group_users, group.group_id)
users, resp, err = await retry_controller(handle_okta_fn, fn)
if err:
raise Exception(f"Error listing users: {str(err)}")
if err:
log.error("Error encountered when listing users in group", error=str(err))
raise Exception(f"Error listing users for group: {group.name}, {str(err)}")

while resp.has_next():
async with GlobalRetryController(
fn_identifier="okta.list_group_users"
) as retry_controller:
next_users, err = await retry_controller(resp.next)
next_users, err = await retry_controller(handle_okta_fn, resp.next)
if err:
log.error("Error encountered when listing users in group", error=str(err))
return group
raise Exception(f"Error listing users for group: {group.name}, {str(err)}")
users.append(next_users)

if not users:
return group

users_to_return = []
for user in users:
users_to_return.append(
Expand Down Expand Up @@ -127,16 +139,23 @@ async def list_all_groups(okta_organization: OktaOrganization) -> List[Group]:
) as retry_controller:
fn = functools.partial(client.list_groups)
groups, resp, err = await retry_controller(handle_okta_fn, fn)
if err:
log.error("Error encountered when listing groups", error=str(err))
raise Exception(f"Error listing groups: {str(err)}")

while resp.has_next():
async with GlobalRetryController(
fn_identifier="okta.list_groups"
) as retry_controller:
next_groups, err = await retry_controller(handle_okta_fn, resp.next)
if err:
log.error("Error encountered when listing users", error=str(err))
return []
log.error("Error encountered when listing groups", error=str(err))
raise Exception(f"Error listing groups: {str(err)}")
groups.append(next_groups)

if not groups:
return []

tasks = []
for group_raw in groups:
group = Group(
Expand Down Expand Up @@ -484,7 +503,7 @@ async def update_group_members(
_, err = await retry_controller(handle_okta_fn, fn)
if err:
log.error(
"Error removing user to group",
"Error removing user from group",
user=user,
group=group.name,
**log_params,
Expand Down

0 comments on commit f43524d

Please sign in to comment.