gpt4 book ai didi

python - zappa将环境变量上传到哪里?

转载 作者:行者123 更新时间:2023-12-01 23:12:09 25 4
gpt4 key购买 nike

tl;博士

zappa_settings.json 中设置的环境变量不会作为环境变量上传到 AWS Lambda。他们去哪里?

ts;wm

我有一个使用 Zappa 框架配置、部署和管理的 Lambda 函数。在 zappa_settings.json 中,我设置了许多环境变量。当我的应用程序成功运行时,这些变量肯定存在,但是,当尝试在控制台或 AWS CLI 中检查 Lambda 函数环境变量时,我发现没有环境变量上传到 Lambda 函数本身。

从 zappa_settings.json 中摘录:

{
"stage-dev": {
"app_function": "project.app",
"project_name": "my-project",
"runtime": "python3.7",
"s3_bucket": "my-project-zappa",
"slim_handler": true,
"environment_variables": {
"SECRET": "mysecretvalue"
}
}
}

aws lambda get-function-configuration --function-name my-project-stage-dev 的输出:

{
"Configuration": {
"FunctionName": "my-project-stage-dev",
"FunctionArn": "arn:aws:lambda:eu-west-1:000000000000:function:my-project-stage-dev",
"Runtime": "python3.7",
"Role": "arn:aws:iam::000000000000:role/lambda-execution-role",
"Handler": "handler.lambda_handler",
"CodeSize": 12333025,
"Description": "Zappa Deployment",
"Timeout": 30,
"MemorySize": 512,
"LastModified": "...",
"CodeSha256": "...",
"Version": "$LATEST",
"TracingConfig": {
"Mode": "PassThrough"
},
"RevisionId": "..."
},
"Code": {
"RepositoryType": "S3",
"Location": "..."
}
}
尽管

Environment 包含在 zappa_settings 中,但输出中不存在,并且 AWS 文档指示应包含它(如果存在),这可以通过在控制台中检查来确认。我想知道 zappa 将环境变量上传到哪里,如果可能的话,为什么要这样做而不是使用 Lambda 的内置环境?

AWS CLI 文档: https://docs.aws.amazon.com/cli/latest/reference/lambda/get-function-configuration.html

最佳答案

environment_variables 创建部署包时(运行 zappa package STAGE 并浏览存档)保存在 zappa_settings.py 中,然后通过修改 os.environ 动态设置为环境变量在handler.py中。

要设置 native AWS变量,您需要使用 aws_environment_variables .

关于python - zappa将环境变量上传到哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60206006/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com