1

Vagrant+Chef Solo で構築されたシステムで、Test Kitchen を使用して Serverspec 統合スモーク テストを実行しています。キッチン テストを実行すると、収束が成功した直後にテストが開始され、システムが初めて完全に起動するまでに時間がかかるため、一部のテストが失敗します。

それで、収束と検証の間に遅延を挿入する良い方法は何だろうと思っています。それ以外の場合は、キッチン テストのデフォルトの動作を維持しますか? 現在、私は次のアイデアを持っています:

  1. kitchen converge +converge が失敗したかどうかを確認してから、abort+ sleep xx + kitchen verify +成功した場合はkitchen destroyを実行するシェル スクリプトを作成します。しかし、これでは複数のスイートを並行して実行することはできません (システムの複数のバージョンをテストしています)。
  2. sleep xxを実行するだけのレシピを作成し、chef 実行リストの最後に追加します。これは機能しているように見えますが、私には少し「ハッキー」に見えます。

誰かがより良い方法を知っていますか?

ターヴィ

4

1 に答える 1

1

今のところ、私はアイデア 2 を続けました。機能リクエストも作成しました: https://github.com/test-kitchen/test-kitchen/issues/598

于 2015-02-05T12:52:36.260 に答える