2

私はCloudFormationでスタックを起動、更新、削除できるAWS CloudFormation管理プラットフォームに取り組んでいます。スタックが完全に削除されたときのAWS Cloudformationコールバック

スタックが起動すると、テンプレート(作成するリソースの集合)と顧客に関連付けるためのDBエントリが作成されます。ユーザーはスタックに発生した最新のイベント、つまり「CREATION_IN_PROGRESS」、「CREATION_COMPLETED」を呼び出して表示できます。

現在、スタックが削除されたときに、私はすぐにDBから削除し、「あなたのスタックは削除されています」以外の情報はユーザに提供されません。

deleteStack()の実行時に現在使用可能なコールバックは、スタックの削除が開始されると、すでに返されています。

削除されている間にさらに情報とイベントを提供したいと思います。スタックが完全に削除されたら、私のDBから削除してください。

これを実行する唯一の方法は、一定時間間隔でスタックの存在をチェックする関数を実行し、いったんなくなればデータベースから削除することです。

私はこれを仮定するのが間違っていますか、これを読んでいる人は、より良いアイデアや実装をしていますか?

任意の情報を歓迎します。

+1

あなたは間違っていません。スタックがいつ削除されたかを知る唯一の方法は、状態の変化をポーリングすることです。 – idbehold

+0

訂正、彼は間違っていましたが、[Waitersの紹介](https://aws.amazon.com/de/blogs/developer/waiters-in-the-aws-sdk-for-java/)の早い段階から2016年8月、下記のより広範な回答をご覧ください。 –

答えて

2

ポーリング自分利用可能のオプションであることをを使用しますが、AWS SDK for Java 1.11.25リリースは概要/導入のためWaiters in the AWS SDK for Javaを参照して、com.amazonaws.waitersパッケージを導入しました。

ウェイターは依然としてフードの下でポーリングを行いますが、その論理を抽象化して、run()経由でブロックするか、runAsync()を経由してコールバック指向の方法で待つようにします。

明示的なユースケースについては、AmazonCloudFormationWaiters.stackDeleteComplete()を調べる必要があります。

+0

これは私が知る必要があったものです。ありがとうございます。 –

関連する問題