2009-09-02 15 views
3

TeamCityを継続的な統合サーバーとして使用し始めました。「リリース」設定の現在のビルド番号を「夜間ビルド」設定に入れますか?

私たちは 'リリース'設定を持っています。これは1.0.0。{0} のようなビルドバージョンを持っています。ビルド番号は1.0.0.0です。{build.vcs.number.1}

したがって、最初の2桁はOK、メジャー+マイナーバージョンです。 3番目の方法は、私たちのプロセスに合わせて手動でセットアップすることになっています(まれですが)。 お分かりのように、「リリース」ごとに最後のものが増えます。

質問は - 私は、TCの現在の4桁目(またはそのすべて)の 'リリース'を '夜間ビルド'のものにコピーさせるにはどうすればよいですか?

答えて

3

一つの方法は、

  1. にある夜間のリリースにsnap shot dependencyを持っていることを確認します。
  2. リリースの内部ビルドIDを確認します。
  3. % dep.releaseid.system.build.numberの%

のように見えること夜間にビルド番号の形式を使用する。リリースIDは、IDの設定は{build.vcs.number.1}

ステップ2で見つけました。これにより、%...というもの全体がリリースのビルド番号に置き換えられます。

依存関係のプロパティについてはTeamCity 4.5 Docsがこれについて説明し、内部IDの検索方法を示します。

+0

ありがとうございます!これは解決策のようです!しかし、どういうわけか、依存関係を設定すると、毎晩毎回リリースが起動します。それは絶対に受け入れられません。私は "適切なものがあれば新しいビルドを実行しない"チェックボックスを設定しました。それが起こるのを防ぐのではないでしょうか? – arconaut

+0

@arconaut:あなたはそうだと思います。毎晩働くためだけにリリースのビルドを行う必要はありません。彼らは同じvcsのルートを使用していますか?チーム・シティーのバージョンは何ですか? –

+0

TeamCity Professional 4.5.4(ビルド9071)を使用しています。はい、同じvcsルートを使用します。さて、releaseはアセンブリ情報を更新し(最後の数字を増やす)、それをvcsにコミットするからです。次回夜間に起動すると、リリースには少なくとも1つの変更が保留されます。スナップショットの依存関係をこれまでに起動しない方法はありますか?またはさらに良い - いくつかの構成の現在のカウンタを取得しますか? – arconaut

1

ビルドスクリプトでそのことが分かっている場合は、ビルド中にチーム都市に送信できます。 Hereがその指示です。リリースビルドからビルド番号を取得するための2つの戦略について考えることができますが、どれもエレガントではありません。最も明白なのは、基本的にビルド番号を持つテキストファイルであるリリースビルドの成果物を公開し、ビルドスクリプトからその成果物を取得することです。 4.5でそれを行うには

関連する問題