2017-01-16 16 views
3

スクリプトを実行してすべてのTeamCityプロジェクトのビルドトリガーを無効にする方法はありますか?TeamCity:すべてのTeamCityプロジェクトのビルドトリガーを無効にする

ビルドが実行されないように、すべてのビルドトリガーを無効にする必要があるというシナリオがあります。これは、時には、1日以上かかるエージェントマシンのビルドでいくつかのアップグレードプロセスを実行する必要が生じることがあるためです。

私は、TeamCityプロジェクトごとにビルドトリガーごとに無効化ボタンを手動でクリックしたくありません。このプロセスを自動化する方法はありますか?

ありがとうございます。

答えて

3

チームシティREST APIを使用します。あなたのチームの都市を考える

http://dummyhost.comで展開されていて、システム管理者の役割を持つゲストアクセス有効(URLでそうちょうどにguestAuthから切り替えるhttpAuthを、要求にパスワードを持つユーザーを指定して、詳細はマニュアルを参照しています)あなたは、次の操作を行うことができます

  1. はすべて、各ビルド構成の場合 GET http://dummyhost.com/guestAuth/app/rest/buildTypes/
  2. は、すべてのトリガ を取得した構成を構築しなさい各トリガの
  3. PUT http://dummyhost.com/guestAuth/app/rest/buildTypes/id:***YOUR_BUILD_CONFIGID***/triggers/***YOUR_TRIGGER_ID***/disabled

それを無効にhere

+0

驚くばかり!素晴らしい返信をありがとうございました。これはまさに私がTeamCity RestAPIを使用して探しているものです。 – IAMbeginner

+0

注:承認されていない場合(httpAuthなど)、TeamCityバージョン10のエラーメッセージは「HTTPステータス405 - リクエストメソッド」が「サポートされていません」です。ログインすると、上記のURLへのPUTはチャームのように機能します。 – Izmaki

+0

ヒントをありがとう。ここで適切な権限を持ってスクリプトの執筆をしています:http://stackoverflow.com/a/43998789/603516 – Vadzim

2

ビルドキューを一時停止することができます。 this videoを参照してください。この方法では、ビルド構成にはまったく触れる必要はありません。 TCを停止させるだけです。

エージェント固有のアップグレードの場合は、作業中のエージェントだけを無効にすることをお勧めします。 hereを参照してください。

尋ねたとおり、これらはどちらも「スクリプトを実行する」ものではありませんが、多くのGUIクリックを避けるためにスクリプト化されたソリューションを求めていました。

+0

感謝。あなたはそうです、私はこの手作業を自動化できるスクリプトソリューションを探しています。ビルドトリガーの設定を保持し、トリガーを無効にするためにXMLタグを取得するためのスクリプトを開発する方法はありますか?ちょうど好奇心が強い – IAMbeginner

0

完全なマニュアルを参照してください別の解決策は、単純にエージェントを無効にすることがないので、これ以上実行されますビルドをすることがあります。ここで

0

は、バルクのポーズにbashスクリプトのすべてが(まだ一時停止していない)チームシティーREST API経由でプロジェクト名パターンによる構成を構築です:返信用

TEAMCITY_HOST=http://teamcity.company.com 
CREDS="-u domain\user:password" 
curl $CREDS --request GET "$TEAMCITY_HOST/app/rest/buildTypes/" \ 
| sed -r "s/(<buildType)/\n\\1/g" | grep "Project Name Regex" \ 
| grep -v 'paused="true"' | grep -Po '(?<=buildType id=")[^"]*' \ 
| xargs -I {} curl -v $CREDS --request PUT "$TEAMCITY_HOST/app/rest/buildTypes/id:{}/paused" --header "Content-Type: text/plain" --data "true" 
関連する問題