0
私はこれに興味がありますmethodget_waiter(waiter_name)
。ウェイターの例はpageです。私はどこからでも見ましたが、この特定のサービスのための完全なウェイターのリスト(PythonとPHPのためにも)を見つけることができませんでした。AWS SDK |弾性ビーンズトークのウェイターのリスト
基本的には、アプリや環境のステータスを取得し、それが次のタスクに移行する前に良いことを確認することです。
私の現在のアプローチは、AWS応答のステータスが予想していたステータスと一致する場合はループとbreak
を使用することです。私はこれがこれに対処する最善の方法ではないと思う。私が間違っているなら、私を修正してください。
ここではPythonで書かれた私のコードからの抜粋です:
# Check the application status
while True:
try:
response = eb.describe_application_versions(
ApplicationName=app_name,
VersionLabels=[
new_app_version
]
)
status = 'PROCESSED'
app_status = response['ApplicationVersions'][0]['Status']
if status == app_status:
print('Application Status:\t', app_status)
break
except:
raise
# Deploy the app to Elastic Beanstalk
try:
response = eb.update_environment(
ApplicationName=app_name,
EnvironmentId=env_id,
VersionLabel=new_app_version
)
except:
raise
# Check environment health
while True:
try:
response = eb.describe_environment_health(
EnvironmentId=env_id,
AttributeNames=[
'Status'
]
)
status = 'Ready'
env_status = response['Status']
if status == env_status:
print('Environment Status:\t', env_status)
break
except:
raise