0

我正在使用 AWS Ruby 开发工具包与 Amazon Beanstalk 进行交互。我有更多或更多运行环境的应用程序。我的 Ruby 代码很容易知道应用程序名称,但环境名称是动态生成的,因此不容易获得。

我希望 delete_application 方法也能自动终止所有正在运行的环境,但是尝试删除具有运行环境的 Beanstalk 应用程序会导致以下错误:

Unable to delete application dsw88-test-app-prod because it has a version that is deployed to a running environment.

在 AWS 控制台中手动删除应用程序也能够自动删除正在运行的环境。有没有办法使用 Ruby SDK 轻松删除应用程序及其所有运行环境?

4

1 回答 1

0

经过更多研究,我认为这是不可能的。相反,您必须使用以下过程:

  1. 使用 describe_environments 调用获取应用程序中所有环境的列表
  2. 使用 terminate_environment 调用终止每个正在运行的环境
  3. 一旦完成(您应该等待它们完成),然后您可以运行 delete_application 调用来删除您的应用程序

如果 Amazon 提供了一种通过一个命令以编程方式删除所有内容的方法(就像他们在 UI 中所做的那样),那就太好了,但它看起来目前不受支持。

于 2013-08-01T15:43:26.707 回答