【发布时间】:2020-04-02 19:39:20
【问题描述】:
我需要使用放大 cli 添加的 Cloudfront 分发的 URL 作为环境变量。 状态:
我发现了如何在我的函数配置下的文件“api-cloudformation-template.json”中添加模板变量。
“hosting/S3AndCloudFront/template.json”的期望输出变量是CloudFrontSecureURL。
所以我在 lambda 配置文件中添加了行,如下所示:
{
"AWSTemplateFormatVersion": "2010-09-09",
"Description": "Lambda resource stack creation using Amplify CLI",
"Parameters": {
...
"hostingS3AndCloudFrontHostingBucketName": { // working example
"Type": "String",
"Default": "hostingS3AndCloudFrontHostingBucketName"
},
"hostingS3AndCloudFrontCloudFrontSecureURL": { // my example
"Type": "String",
"Default": "hostingS3AndCloudFrontCloudFrontSecureURL"
},
},
"Resources": {
"LambdaFunction": {
"Type": "AWS::Lambda::Function",
"Metadata": {
"aws:asset:path": "./src",
"aws:asset:property": "Code"
},
"Properties": {
...
"Environment": {
"Variables": {
...
"HOSTING_S3ANDCLOUDFRONT_HOSTINGBUCKETNAME": {
"Ref": "hostingS3AndCloudFrontHostingBucketName"
},
"HOSTING_S3ANDCLOUDFRONT_CLOUDFRONTSECUREURL": {
"Ref": "hostingS3AndCloudFrontCloudFrontSecureURL"
}
}
},
}
}
....
},
....
}
发布功能后,我在process.env.HOSTING_S3ANDCLOUDFRONT_CLOUDFRONTSECUREURL 中得到hostingS3AndCloudFrontCloudFrontSecureURL(默认值)。
【问题讨论】:
-
您能否发布您正在关注的教程,您正在尝试将“cloudfront”网址作为环境变量传递给 lambda,但您没有得到它,因为在通过放大部署,对吗?
标签: aws-lambda aws-amplify aws-amplify-cli