B 9a@s.ddlmZmZmZmZGdddejZ dS)) aws_lambdaaws_lambda_event_sourcesaws_iamcorecs(eZdZejeddfdd ZZS) LambdaStackN)scopeidreturnc stj||f|tjdgdgd}tjddg|gd}tj|dtjjdtd||gt j d ||d d |_ |j t|t j|d d |j jddS)Nz)elasticloadbalancing:DescribeTargetHealth*)actions resourcesz$elasticloadbalancing:RegisterTargetsz&elasticloadbalancing:DeregisterTargetsPrivatelinkRdsDemoLambdaz%elb_hostname_as_target.lambda_handlerz"./PrivatelinkRdsDemoNlbUpdater.zip-)Z ELB_TG_ARNZ TARGET_FQDN)runtimehandlercodeinitial_policytimeout environmentOutputzFunction ARN: )value)super__init__iamPolicyStatement_lambdaFunctionRuntime PYTHON_3_7 AssetCoderDurationsecondsfunctionadd_event_sourceeventsZSnsEventSource CfnOutput function_arn) selfrr rds_endpoint sns_topictarget_group_arnkwargsZpolicy_describe_targetgroupZpolicy_update_targetgroup) __class__P/home/aaron/repos/aws-cdk-examples/python/privatelink-rds/stacks/lambda_stack.pyr s&   zLambdaStack.__init__)__name__ __module__ __qualname__r Constructstrr __classcell__r-r-)r,r.rsrN) aws_cdkrrrr$rrrStackrr-r-r-r.s