in projects/enable-irsa/src/main.py [0:0]
def main(account, cluster_name, role_name, region):
global iam, eks, sts
iam.region_name = region
eks.region_name = region
sts.region_name = region
if account == None:
account = sts.get_caller_identity()["Account"]
cluster, thumbprint = describe_cluster(ClusterName=cluster_name)
check_cluster_version(cluster.version)
create_odic_provider(OidcUrl=cluster.issuer, Thumbprint=thumbprint)
trust_policy = create_trust_policy(Account=account, OidcUrl=cluster.issuer)
role_arn = create_iam_role(RoleName=role_name, TrustPolicy=trust_policy)
attach_role_policy(RoleName=role_name)
context = choose_context()
if context == None:
api_client = create_clientset(ApiEndpoint=cluster.endpoint, ClusterName=cluster_name, Certificate=cluster.data)
update_cni_sa(RoleArn=role_arn, Context=context, Clientset=api_client)
patch_aws_node(Context=context, Clientset=api_client)
else:
update_cni_sa(RoleArn=role_arn, Context=context)
patch_aws_node(Context=context)