如何通过 ebextensions 覆盖 Elastic Beanstalk 环境变量?

How to overwrite Elastic Beanstalk environment variables through ebextensions?

我的 EB 环境有一些我通过 AWS Web 控制台设置的环境变量。但是,我现在希望通过 ebextensions 设置这些环境变量。

问题是我似乎无法覆盖最初通过 AWS Web 控制台设置的变量。

不过,覆盖由 ebextensions 显式设置的环境变量没问题。

这是我的 ebextensions 文件的样子:

option_settings:
  aws:elasticbeanstalk:application:environment:
    oldVar: updatedTestValue
    newVar: newValue
每当我更新我的 ebextensions 文件时,

newVar 都会更新。但是 oldVar,这是我通过控制台设置的一个变量,拒绝更新。

关于如何让 ebextensions 按需要工作有什么想法吗?我真的很想避免这样一种情况,即我必须删除我以前设置的环境变量并快速部署包含 ebextensions 更改的更新。谢谢

根据 docs on precedence,似乎如果您使用控制台(或一般的 API/SDK)设置了环境变量,那么该值将优先于来自 .ebextensions。不幸的是,这意味着您必须从控制台中删除之前设置的变量,并将它们包含在您的 ebextensions 中。