【发布时间】:2020-04-29 19:21:41
【问题描述】:
我正在使用无服务器框架来测试我的 lamdba 函数,但它要求我访问我的 yaml 文件以获取特定变量。为了清楚起见,我将在下面添加文件和代码:
我需要访问的 YAML 变量是 tableName
environment:
tableName: notes_project
这是 lambda 函数:
import json
import boto3
import uuid
dynamodb = boto3.resource('dynamodb')
table = dynamodb.Table('notes_project')
def lambda_handler(event, context):
data = json.loads(event['body'])
item = {
'user_id': event['requestContext']['identity']['cognitoIdentityId'],
'note_id': str(uuid.uuid1()),
'note_text': data
}
table.put_item( Item = item)
目前,您可以看到表名是硬编码的,但我想避免这种情况。
到目前为止我尝试过的:
我查看了Get yaml key value in python 和其他涉及 os.environ 的建议,但如果我要将代码部署到 AWS,我不确定这些是否是正确的选择。我几乎不知道 lambda 代码在部署后如何访问这些 yaml 变量。解释将不胜感激。
【问题讨论】:
标签: python aws-lambda serverless-framework