AWS cil lambda上的文档指出:...You provide only the parameters you want to change...
我认为这意味着其余设置将保持不变。
但是,说我的lambda函数具有环境变量:var1=old_val1
var2=old_val2
var3=old_val3
然后当我尝试做这样的事情:
aws lambda update-function-configuration --function-name dummy_fun --environment '{"Variables":{"var1":"new_val1","var2":"new_val2"}}'
为了更新变量:
var1和var2分别具有新值new_val1和new_val2,尽管这两个变量确实得到更新,但是第三个变量var3被删除!
难道我做错了什么 ?还是有办法确保这种情况不会发生?
我绝对可以使用一种解决方法来处理它,在该方法中,我可以获取当前配置,然后在本地更新env变量,然后通过python代码等推送所有更新的配置。
但是,这是唯一的方法吗?还是可以有一种更简单的方法?
最佳答案
您误解了文档的意图。
您仅提供要更改的参数。--environment
是您指定的(单个)“参数”,应该更改-而不是单个变量。
环境变量是整体配置的,因此没有概念仅指定您想要不同的某些环境变量。