【问题标题】:How do I satisfy the AWS CDK Lambda's CfnFunction "code" parameter in Python?如何在 Python 中满足 AWS CDK Lambda 的 CfnFunction“代码”参数?
【发布时间】:2020-06-11 20:53:56
【问题描述】:

我正在尝试使用 Python 将 YAML CloudFormation 模板转换为 AWS 的 CDK。我目前坚持实例化 lambda CfnFunction。看来我不满足所需的“代码”参数。

我当前的代码如下:

firehose_trans_lambda = _lambda.CfnFunction(self, "FirehoseTransformLambda",
        description="foo", 
        code=, 
        handler="lambda_function.handler", 
        role="LambdaTransformRole.Arn",
        runtime="python3.8",
    )

根据CDK documentation,“code”字段的类型应该是(Union[Forwardref, IResolvable])。我不知道这意味着什么,文档也不是很有帮助。有没有人知道我可以在那里放什么来满足要求?我正在考虑尝试引用一些 lambda 或一段内联代码,但不知道如何去做(我尝试了各种方法,但我的 Python 技能不是最强的)。

【问题讨论】:

    标签: python amazon-web-services yaml


    【解决方案1】:

    code 参数需要CfnFunction.CodeProperty 的实例。它的__init__ 接受以下参数(都是可选的,类型为str

    • s3_bucket
    • s3_key
    • s3_object_version
    • zip_file

    您可以将您在 CloudFormation 模板中使用的相同值传递给 CfnFunction.CodeProperty()https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html

    AWS CDK Python Reference 中没有提到 Afaik CfnFunction.CodeProperty。通用 CDK 文档mentions it,但仅作为接口。

    【讨论】:

    • 谢谢!这暂时解决了我的问题......继续下一个。
    猜你喜欢
    • 2020-12-04
    • 1970-01-01
    • 2021-02-02
    • 2021-04-08
    • 1970-01-01
    • 2020-02-22
    • 2021-10-11
    • 1970-01-01
    • 2020-03-10
    相关资源
    最近更新 更多