Source code for idem_aws.exec.aws.iam.group_membership

"""Exec module for managing IAM Group Membership."""


[docs]async def get(hub, ctx, name: str, resource_id: str): """Get IAM Group membership. Provide group name as input. Args: hub: required for functions in hub. ctx: context. name(str): An Idem name of the IAM group. resource_id(str): IAM Group Name """ result = dict(comment=[], ret=None, result=True) ret = await hub.exec.boto3.client.iam.get_group(ctx, GroupName=resource_id) if not ret["result"]: if "NoSuchEntity" in str(ret["comment"]): result["comment"].append( hub.tool.aws.comment_utils.get_empty_comment( resource_type="aws.iam.group_membership", name=name ) ) result["comment"] += list(ret["comment"]) return result result["result"] = False result["comment"] += list(ret["comment"]) return result users = ret["ret"].get("Users") result[ "ret" ] = hub.tool.aws.iam.conversion_utils.convert_raw_group_membership_to_present( group=resource_id, users=[user.get("UserName") for user in users] ) return result