【问题标题】:Prevent the serverless framework from uploading artifact防止无服务器框架上传工件
【发布时间】:2021-06-27 18:24:55
【问题描述】:

我正在使用serverless framework 来尝试实现AWS Step functions。我的 Lambda 函数运行正常。这些封装在 .jar 中,我已手动上传到 AWS s3。

然后我在我的serverless.yaml 文件中指向 s3 上的这个 .jar 路径:

service: serverless-card-issue

package:
  artifact: https://s3.amazonaws.com/integration-builds/serverless/HelloWorldFunction-1.0-SNAPSHOT.jar

我跑:

sls deploy --stage integration-beta

这需要 10-15 分钟才能完成 - 太长了。在我看到的日志中:

Serverless: Running "serverless" installed locally (in service node_modules)
Serverless: Packaging service...
Serverless: Uploading CloudFormation file to S3...
Serverless: Uploading artifacts...
Serverless: Uploading service HelloWorldFunction-1.0-SNAPSHOT.jar file to S3 (72.14 MB)...

首先,我不知道它是如何在本地找到 HelloWorldFunction-1.0-SNAPSHOT.jar 文件的——它位于完全不同的目录中。

其次,我不希望无服务器上传任何 .jar - 它已经在 s3 上。

我该怎么做?

【问题讨论】:

  • 我已经编写了 2 个 lambdas 函数并在 jar 中上传到 s3。现在使用无服务器创建步进函数工作流,并在 jar 中触发 lambda 函数...
  • 本地运行完美,所以现在想在 AWS 上试试

标签: java amazon-web-services aws-lambda serverless-framework


【解决方案1】:

deploy 目标在后台自动执行package 目标,即它自动创建 JAR 文件,并且不使用任何本地现有的 JAR。此外,deploy 目标还会自动将工件部署到 S3,因此如果您想跳过该部分,请将参数 --noDeploy 添加到您的命令中。另见https://www.serverless.com/framework/docs/providers/aws/cli-reference/deploy/

【讨论】:

  • 谢谢,尝试这个,但出现新错误,可能无关
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-07-07
  • 1970-01-01
  • 1970-01-01
  • 2019-10-02
  • 2020-08-22
  • 2015-01-03
  • 1970-01-01
相关资源
最近更新 更多