簡體   English   中英

aws cdk 將值傳遞給 lambda 自定義資源

[英]aws cdk passing values to a lambda custom resource

我需要將一些值從我的 cdk v2 堆棧 (Python3.8) 傳遞到 lambda function (Python3.8),這是堆棧執行時調用的自定義資源。

這是lambda

def lambda_handler(event, context):
    
    print('lambda executed')
    print('request: {}'.format(json.dumps(event)))

這就是它在堆棧中的連接方式

from constructs import Construct
from aws_cdk import (
    Stack,
    custom_resources as cr,
    aws_lambda as _lambda,
    CustomResource
)

    cust_res_lambda = _lambda.Function(
        self, 'crLambda',
        runtime=_lambda.Runtime.PYTHON_3_8,
        code=_lambda.Code.from_asset('my-resources'),
        handler='lambda.lambda_handler',
        function_name='cr_Lambda'
    )
    
    res_provider = cr.Provider(
        self,'crProvider',
        on_event_handler= cust_res_lambda
    )
    
    CustomResource(self, 'cust_res',service_token= res_provider.service_token)

當堆棧運行 lambda 時,我可以在 cloudwatch 日志中看到打印語句。 如何從堆棧向此 lambda function 發送一些自定義值。 諸如自定義字符串或 json 字符串之類的東西,其中包含帳號、區域和我需要發送到 lambda 的任何其他內容?

在創建 CustomResource 時傳遞 map 個鍵值的屬性字段。 對於 lambda,屬性將作為事件 object 的輸入傳遞。檢查以下文檔

https://docs.aws.amazon.com/cdk/api/v2/python/aws_cdk/CustomResource.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM