これはケーキの一枚でなければならないが、私は困惑している継続的な統合の人気のように感じる。私はHGでTeamCityを設定しています。 TeamCityが監視し、変更が反映されたリポジトリにチェンジセットをプッシュできるようにしたい。それは簡単です。TeamCity + HG。唯一のプル(プッシュ?)は、ビルドを渡す
次に、ビルドが合格すると、チェンジセットを渡すだけの "クリーン"リポジトリにそのチェンジセットをプルしたいと思います。簡単ですが...
TeamCity 6は複数のビルドステップをサポートしており、いずれかのステップが失敗した場合、残りの部分は実行されません。私の考えは、クリーンなリポジトリに渡すチェンジセットを取得するためにプル(またはオプションでプッシュ?)を行う最後のビルドステップを置くことでした。
私はPsExecを使用して、リポジトリのボックスでhgを実行しようとしています。
私は単に 'hg pull'を実行しようとすると、パスに設定されていても-hフラグを使用していてもhg.exeを見つけることができません。
私はリビジョンパラメータを取るきれいなリポジトリに.batファイルを置こうとしましたが、ローカルで正常に動作します。 PsExecを使用して.batファイルをリモートで実行しようとすると、すべてうまく実行されますが、ビルドエージェントで実行しようとします。 -w引数を設定しても、そこに.batファイルが実行されますが、ビルドエージェントボックスで内容を実行しようとします。
私のアプローチはちょっと離れていますか?このように思えるのはかなりわかりやすいことです。私のGoogleのスキルが低下しているか、誰もこれが書くのにふさわしいと誰も思っていません。いずれにせよ、私はSVNの土地に出かけるのをやめているので、助けていただければ幸いです!
これは実際に動作するように機能しました... ish。 –
これを答えとしてマークしてください... ish。あなたのためにそれについて何がありますか? –
申し訳ありませんが...投稿した後に昨夜それをやろうとしましたが、投稿してからスタックが約30秒間保守のためにダウンしました。 :) TeamCityサービスがリモートボックスへのアクセス権を持つアカウントで実行されていることを確認する必要がありました。唯一のことは、psexecを-dで実行すると、起動したPIDの終了コードが返されることです。 -dを指定せずに実行すると、無期限にハングアップします。残念ながら、TeamCityは、合否を判断するために終了コード0に依存しています。しかし、ヒントをありがとう、それは実際にバッチファイルを実行するものがあり、それは私が立ち往生していたものです。 –