我有一个 Lambda 函数,当前在 Python 3.9 上运行。
现在我正在尝试将运行时升级到 python 3.11。
所以我将我的 aws cli 和 python 更新到最新版本。
aws --version` is `aws-cli/2.13.17 Python/3.11.5 Windows/10 exe/AMD64 prompt/of
但我在这里收到此错误:
“provider.runtime”处的配置错误:必须等于允许值之一[dotnet6、go1.x、java17、java11、java8、java8.al2、nodejs14.x、nodejs16.x、nodejs18.x、提供的、提供.al2、python3.7、python3.8、python3.9、python3.10、ruby2.7]
我正在寻找解决方案,但在尝试更改依赖项或其他任何内容时总是遇到此错误。
也许有人可以帮忙,提前谢谢:)
我正在通过 Serverless 部署我的 Lambda,这是我的 serverless.yaml:
service: name
frameworkVersion: '3'
configValidationMode: error
custom:
pythonRequirements:
dockerizePip: true
stage: ${opt:stage, self:provider.stage}
profile:
dev: dev
prod: prod
deploymentBucket:
dev: bucket-dev
prod: bucket-prod
environment: ${self:custom.environments.${self:custom.stage}, self:custom.environments.dev}
environments: ${file(environment-definition.yaml)}
provider:
name: aws
runtime: python3.11
region: eu-central-1
stage: dev
profile: ${self:custom.profile.${self:custom.stage}}
deploymentMethod: direct
deploymentBucket:
name: ${self:custom.deploymentBucket.${self:custom.stage}}
functions:
lambda_handler:
handler: handler.lambda_handler
timeout: 300
environment: ${self:custom.environment.envVars}
events:
- eventBridge:
schedule: cron(0 0 ? * 4#1 *)
package:
exclude:
- node_modules/**
- __pycache__
plugins:
- serverless-python-requirements
- serverless-better-credentials
我必须更新我的无服务器本地版本。之后 python 3.11 可用。 感谢您的宝贵时间:)