我有四个lambda要创建。我的文件夹结构如下
folder1ForLambda1
index.js
package.json
.env
folder2ForLambda2
index.js
package.json
.env
folder3ForLambda3
index.js
package.json
.env
folder4ForLambda4
index.js
package.json
.env
build.sh我有build.sh文件中所有lambdas的构建脚本。我想使用各自的.env文件为每个lambda设置环境变量。
pushd ./folder1ForLambda1
aws lambda create-function \
--function-name $PREFIX-$MODULE_NAME \
--runtime nodejs6.10 \
--handler "index.handler" \
--code S3Bucket=$BUCKET_NAME,S3Key=$ZIP_NAME.zip \
--environment Variables="" \
--memory-size 512 \
--timeout 5 \
--publish
popd我对每个lambda都有这个代码。如何使用.env设置环境变量?
发布于 2018-04-26 22:02:04
您可以使用source从文件(在本例中为.env)中读取环境变量
source ./folder1ForLambda1/.env更新
试试这个:
--environment Variables="{`cat .env | xargs | sed 's/ /,/g'`}" \k1=v11 k2=v33 k1=v11 k2=v33 因此,您的脚本将如下所示
pushd ./folder1ForLambda1
aws lambda create-function \
--function-name $PREFIX-$MODULE_NAME \
--runtime nodejs6.10 \
--handler "index.handler" \
--code S3Bucket=$BUCKET_NAME,S3Key=$ZIP_NAME.zip \
--environment Variables="{`cat .env | xargs | sed 's/ /,/g'`}" \
--memory-size 512 \
--timeout 5 \
--publish
popd发布于 2020-11-23 14:35:33
aws lambda create-function接受--environment选项。但是update-function-code不需要。
相反,使用update-function-configuration来创建/更新环境变量。
此命令链(如下)处理包含注释行和包含空格的值的.env文件。
输入:
# this is a comment
ABC=1
DEF="A blank is included"命令行:
aws lambda update-function-configuration \
--function-name API_Request_Builder_Gateway \
--environment Variables="{`cat .env | sed '/^#/d' | \
sed -e ':a' -e 'N' -e '$!ba' -e 's/\n/,/g'`}"sed提示:所以回答
https://stackoverflow.com/questions/50042409
复制相似问题