4

別のバッチ プロセスを開始する前に、Jenkins を一時停止するか、Jenkins にバッチ ファイルからタスクを完了させる方法を探しています。基本的に私が欲しいのは、実行に似たものです:

start /wait batchfile.bat

しかし、この Jenkins を実行するとハングアップし、プロセスが実際に完了することはありません。次のようなものを実行すると:

run %startpath%\firstbatch.bat

run %startpath%\secondbatch.bat

Jenkins は両方のバッチ ファイルを異なるスレッドで実行するため、大きな問題が発生します。アセットをクックしてコピーするため、バッチ プロセスを完了する必要があります。トリガーされる最後のバッチは、アセットを圧縮して途中で送信しますが、アセットのコピーが完了していない場合、zip はディレクトリ内のすべてのファイルなしで開始されます。これを回避する唯一の方法は、各バッチを異なるビルドに入れ、Jenkins に休止期間を追加することですが、それはバッチ スクリプトが実際に実行されている時間の推測にすぎません。前もって感謝します。

4

2 に答える 2

2

バッチファイルの実行が完了するまでブロックする「call batchfile.bat」を使用してみてください。

于 2012-11-27T21:49:34.387 に答える
1

バッチファイルを順番に実行する場合は、バッチファイルごとに個別のビルドジョブを作成する必要がありますが、実行にかかる時間を推測する必要はありません。firstbatch.batを実行するジョブの構成で、[ビルド後のアクション]セクションで[他のプロジェクトをビルドする]を選択し、secondbatch.batを実行するジョブを指定します。このジョブは、最初のジョブが終了するまで開始されません。

于 2012-11-27T21:17:11.140 に答える