私は少しAntのn00bですが、この質問があまりにもn00bishではないことを願っています:
リモート プロセスを監視し、それが成功したか失敗したかを報告する必要がある Ant スクリプトのセクションがあります。リモート情報は REST リソースとして公開されます。その背後にあるプロセスには数分かかる場合があるため、「進行中」以外の結果が得られるまでに数回ポーリングする必要があります。
非常に大まかな擬似コードでは、次のようなものが必要です。
while(true) {
get REST resource status
if status='success' or status='failure'
break;
sleep 10
}
タスクを(悪用) 使用し<waitfor>
て状態を繰り返し評価できることはわかっていますが、その状態がどうあるべきかを一生理解することはできません。私が思いつくことができる最善の方法は、を使用することですが、Rhino JS (Ant が使用する) がREST クエリを送信する必要<scriptcondition>
がないという問題に直面しています。XMLHttpRequest
Ant スクリプトの他の部分では、<exec>
curl コマンドを実行して REST サービスと対話するために使用していますが、<waitfor>
.
編集: Ant 1.7.1 で (当分の間) 立ち往生していることを忘れていました。また、これを外部 (bash、python、php など) スクリプトにプッシュする方が簡単かもしれませんが、Ant スクリプトに保持することをお勧めします。