如何从sam deploy命令中排除文件夹?

时间:2018-01-22 21:35:31

标签: amazon-web-services aws-lambda aws-sam-cli

我运行它来部署我的lambda:

   0145874 1 -----------X---X----X-------------X--X-X---------

虽然有效但这段代码是版本控制的,而且sam也在上传.git文件夹。我如何让gam忽略像gitignore那样的文件夹?

1 个答案:

答案 0 :(得分:3)

您需要检查模板中是否提供了有效的CodeUri路径,它应该看起来像这样:

AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Resources:
  Followers:
    Type: AWS::Serverless::Function
    Properties:
      CodeUri: ./src
      Handler: lambda.handler
      Runtime: nodejs8.10
      Timeout: 300

AWS docs state,如果未提供CoreUri,则将压缩并上传整个工作目录(我认为这是您遇到的情况)。

  

如果您在[CodeUri]中指定文件,该命令将直接将其上传到S3存储桶。如果指定文件夹,该命令将压缩该文件夹,然后上载.zip文件。对于大多数资源,如果您未指定路径,则该命令将压缩并上传当前工作目录。