如何避免AWS SAM重建和重新加载带有未更改代码的gradle函数?

如何避免AWS SAM重建和重新加载带有未更改代码的gradle函数?,gradle,aws-lambda,micronaut,aws-sam,Gradle,Aws Lambda,Micronaut,Aws Sam,我正在使用micronaut开发一个应用程序,使用SAM CLI将其部署在AWS Lambda上。当我加入依赖项并开发新功能时,功能包变得越来越大(现在大约是250MB)。这使得部署需要一段时间 除此之外,每次我编辑template.yaml,然后运行sam build和&sam deploy在S3、RDS等上尝试新的配置。。。我必须等待gradle再次构建该函数(即使它自上次部署以来没有改变),然后将整个包上载到S3 当我试图在SAM上配置这个应用程序时,由于一些错误的配置,等待这个过程完成只

我正在使用micronaut开发一个应用程序,使用SAM CLI将其部署在AWS Lambda上。当我加入依赖项并开发新功能时,功能包变得越来越大(现在大约是250MB)。这使得部署需要一段时间

除此之外,每次我编辑
template.yaml
,然后运行
sam build和&sam deploy
在S3、RDS等上尝试新的配置。。。我必须等待gradle再次构建该函数(即使它自上次部署以来没有改变),然后将整个包上载到S3

当我试图在SAM上配置这个应用程序时,由于一些错误的配置,等待这个过程完成只是为了得到一个错误,这会适得其反

此外,我的SAM s3 bcuket在工作一天后就达到10GB大小。从长远来看,这可能会很昂贵


当功能代码保持不变时,有没有办法避免这些渐变重建和重新加载?

如果您只更新template.yml文件,您可以将新版本复制到
/.aws sam/build文件夹
,然后运行
sam deploy

$ cp template.yml ./.aws-sam/build/template.yml
$ sam deploy
如果您正在编辑lambda,您可以尝试自己更新函数代码(当然,在模板中创建并部署之后)。这可以通过AWS CLI命令完成:

更多信息可在此处找到:

我的SAM s3 bcuket的大小为10GB


呵呵。是的,开始删除东西。也许你可以用?

写一个脚本,我做了很多,所以我知道它很有效。我也不耐烦。这是个好问题。几个月前我自己也考虑了很多。关于清理存储的脚本-
rm index.zip 
cd lambda 
zip –X –r ../index.zip *
cd .. 
aws lambda update-function-code --function-name MyLambdaFunction --zip-file fileb://index.zip