我正在使用适用于PHP的AWS开发工具包(但该平台无关紧要),并希望更新我的Elastic Beanstalk环境的环境属性:
我已经阅读了文档,我能找到的唯一似乎更新配置的操作是UpdateConfigurationTemplate。
此操作是否可以在单个环境中更新单个环境属性,而无需触及任何已保存的配置?我对“模板”命名感到困惑。
否则,在单个环境中以编程方式更新单个环境属性的正确操作是什么?
答案 0 :(得分:3)
在updateEnvironment操作中找到它:
$elasticBeanstalkClient->updateEnvironment([
'EnvironmentName' => $environment,
'OptionSettings' => [
[
'Namespace' => 'aws:elasticbeanstalk:application:environment',
'OptionName' => $key,
'Value' => $value
]
]
]);
我在describeConfigurationSettings返回的值中找到了正确的Namespace
,对于任何应用程序/环境,这都可能是相同的。
答案 1 :(得分:0)
只是为了向Google提供此功能,以下是使用Amazonica在Clojure中执行此操作的方法:
添加到 project.clj :
:dependencies [[amazonica "0.2.10"]]
然后,在您的代码(或REPL)中:
(require '[amazonica.core :as aws]
'[amazonica.aws.elasticbeanstalk :as eb])
(def aws-access-key "YOUR ACCESS KEY")
(def aws-secret-key "YOUR SECRET KEY")
(def eb-env-name "YOUR ELASTIC BEANSTALK ENVIRONMENT NAME")
(aws/defcredential aws-access-key aws-secret-key)
(eb/update-environment :environment-name eb-env-name
:option-settings [{:namespace "aws:elasticbeanstalk:application:environment"
:option-name "KEY"
:value "VALUE"}])