【问题标题】:How to add a dependency file in AWS Lambda Console with CloudFormation Package如何使用 CloudFormation 包在 AWS Lambda 控制台中添加依赖文件
【发布时间】:2021-07-24 07:02:54
【问题描述】:

我的 AWS lambda 函数 MyLambda 需要一个名为 auxiliary.json 的文件。我在控制台中手动创建了函数和文件,它工作正常。

现在,我想使用 CloudFormation 执行此操作,这样我就可以在控制台上看到 lambda 函数代码和文件内容,并且它的工作方式与手动创建的相同。我不想将其打包为 zip 并将其推送到 S3 存储桶。

我的代码文件夹中的文件结构如下:

.
├── lambda-template.yaml
└── lambdas/
    ├── mylambda.py
    └── auxiliary.json

lambda-template.yaml 中,我有如下 lambda 资源:

Resources:
  MyLambda:
    Type: AWS::Lambda::Function
    Properties:      
      FunctionName: "MyLambda"
      Code: lambdas/mylambda.py
      Handler: "MyLambda.lambda_handler"
      Runtime: "python3.8"
      Timeout: 30
      MemorySize: 128

像下面这样运行aws cloudformation package 后,我将mylambda.py 中的代码添加到mylambda-template.packaged.yaml 文件中。

aws cloudformation package \
   --template-file mylambda-template.yaml \
   --s3-bucket example-bucket \
   --output-template-file mylambda-template.packaged.yaml \
   --profile myawsprofile \
   --region us-east-1

而且,我可以毫无问题地部署如下打包的模板:

aws cloudformation deploy \
   --template-file mylambda-template.packaged.yaml \
   --stack-name mylambda \
   --profile myawsprofile \
   --region us-east-1

但是,我无法使用 CloudFormation 在控制台中添加所需的文件 auxiliary.json。我该怎么做?

【问题讨论】:

    标签: amazon-web-services aws-lambda amazon-cloudformation


    【解决方案1】:

    您的Code 是只有 mylambda.py 的路径

    Code: lambdas/mylambda.py
    

    你应该进入目录:

    Code: lambdas
    

    【讨论】:

    • 呃,它就像魔术一样!非常感谢,@Marcin!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-12-10
    • 1970-01-01
    • 2021-05-11
    • 2019-01-28
    • 2020-11-05
    • 2014-11-08
    • 2017-03-04
    相关资源
    最近更新 更多