TeamCity 2019.1ヘルプ

アップグレード

TeamCityは、以前のバージョンからそれ以降のバージョンへのアップグレードをサポートしています。アップグレードノートに記載がない限り、すべての設定とデータは保持されます。

少なくともいくつかのバグ修正のアップデートがリリースされた後は、最新のTeamCityバージョンを実行するために定期的なアップグレードを計画することをお勧めします。これにより、最新の修正とセキュリティパッチを適用した完全サポート版を実行できます。

このページで:

アップグレードの前に

TeamCityをアップグレードする前に:

  1. メジャーアップグレードの場合は、新機能で何が得られるかを確認します(以前のメジャーリリースからアップグレードしない場合は、新機能の下部にあるリンクをたどります)。

  2. 同じメジャーな X.X バージョンのバグ修正リリースの範囲内でアップグレードしていない限りライセンスキーを確認します

  3. ダウンロード(英語)新しいTeamCityバージョン( 拡張ダウンロードオプション(英語)を )。

  4. アップグレードノートを注意深く見直してください。

  5. テストサーバーでアップグレードを調べることを検討してください

  6. バンドルされていないプラグインがインストールされている場合は、新しいバージョンとの互換性についてプラグインページを確認し、必要に応じてプラグインをアップグレードまたはアンインストールします。

サーバーをアップグレードするには

  1. 現在のTeamCityデータをバックアップする
  2. アップグレード手順を実行する :

本稼動のTeamCityインストールをアップグレードする予定の場合は、メインサーバーをアップグレードする前にテストサーバーをインストールして環境内でその機能を確認することをお勧めします。

ライセンス

アップグレードする前に、ライセンスのメンテナンス期間がまだ経過していないことを確認してください(管理 | ライセンス TeamCityサーバーWeb UIページを使用して、ライセンスキーをリストします)。ライセンスは、メンテナンス期間内の有効なリリース日を持つTeamCityのバージョンに対してのみ有効です。リリースリスト(英語)で有効なリリース日を確認します。
通常、すべてのバグ修正アップデート( X.Y.Z TeamCityバージョンの Z 部分の変更によって示される)は、同じ有効リリース日(メジャー/マイナーリリースのもの)を使用します。
すべてのライセンスが対象バージョンのリリース日をカバーしていない場合は、アップグレード前にライセンスを更新すること(英語)を検討してください(アップグレード前でも古いライセンスキーを更新されたものに置き換えることができます)。

新しいバージョンのみを評価する場合は、ダウンロードページ(英語)で評価ライセンスを取得(英語)できます。各TeamCityバージョンは1回しか評価できないことに注意してください。評価期間を延長するには、JetBrains営業部門にお問い合わせ(英語)ください。

TeamCity 4.x以前からアップグレードする場合、TeamCityバージョン5.0以降のライセンスポリシーは、以前のTeamCityバージョンのライセンスポリシーとは異なります。公式サイトのライセンスポリシーページとライセンスとアップグレード(英語)セクションを確認してください。

TeamCityサーバーをアップグレードする

TeamCityは、以前のバージョンから現在のバージョンへのアップグレードをサポートしています。
特に断りのない限り、データを保存したままダウングレードすることは major.minor バージョンを変更することでは不可能で、バグ修正リリース内では可能です( major.minor バージョンを変更せずに)。

一般的な方針は、バグ修正の更新( X.Y.Z TeamCityバージョンの Z 部分の変更によって示される)はデータ形式を変更しないため、バグ修正バージョン内で自由にアップグレード/ダウングレードすることができます。ただし、次のメジャーバージョンまたはマイナーバージョン( X.Y.Z TeamCityのバージョンで X または Y を変更)にアップグレードするときは、データを保存したままダウングレードすることはできません。適切なバージョンのバックアップを復元する必要があります。

アップグレード時には、アップグレードノートに記載がない限り、すべてのTeamCity構成設定およびその他のデータが保持されます。(Tomcatサーバー設定の変更のように)TeamCityのインストールをカスタマイズした場合は、アップグレード後にカスタマイズを繰り返す必要があります。

アップグレードの一般的なアプローチは、TeamCityサーバーのホームにある以前のインストールのすべてのファイルを削除し、新しいファイルを同じ場所に配置することです。TeamCityデータディレクトリーとデータベースをそのまま保存して(事前にバックアップを作成してください)、以前にカスタマイズした設定(たとえば、...\conf\server.xml , ...\conf\web.xml ファイル)のバックアップと復元も必要です。logsディレクトリー(...\logs)には、古いインストールファイルを残すことができます。

サーバーに接続されているエージェントは自動的にアップグレードされます。

誤って矛盾するアップグレードを実行した場合は、回復手順を確認してください。

自動アップデート

TeamCity 2017.2から自動更新オプションが利用可能です。それが機能するためには、TeamCityサーバーはhttps://www.jetbrains.com(英語)サイトに連絡できるはずです。
TeamCityの新しいバージョンが検出されると、サーバーはシステム管理者に対応するヘルスアイテムを表示します。アイテムはサーバーの管理 | 更新ページを指しており、そこにはアップデートに利用可能なすべてのバージョンがリストされています。このページには、ライセンスの互換性に関するメモ、新しいバージョンの説明、および手動更新手順を実行する代わりに自動アップグレードを使用する場合に実行するための制御が含まれています。

自動更新手順は以下のとおりです。

  1. TeamCityサーバーが停止しています。

  2. 更新スクリプトが実行され、次のことが行われます。
    1. 現在のインストールのバックアップを<TeamCityホームディレクトリー> /。oldディレクトリーに作成します。

    2. 停止したサーバーを新しいバージョンに更新します。

  3. 次に、更新されたサーバーが起動します。
    更新の進行状況は<TeamCityホームディレクトリー> /logs/teamcity-update.logファイルに記録されます。

現在の自動更新の制限事項

  • 一部のカスタマイズ、たとえばサーバーコンテキストの変更されたインストールは自動更新ではサポートされていません。

  • サーバーが .war distribution からデプロイされている場合、またはAWS CloudFormationテンプレートまたはAzure Resource Managerテンプレートで開始された公式のTeamCity Dockerコンテナーで実行されている場合は、手動によるアップグレードのみが可能です。

  • Windowsのアンインストーラーはアップグレード中に更新されないため、何度か更新しても古いTeamCityバージョンはWindowsリストに表示されます。アンインストール中に、すべてのTeamCityインストールファイルが削除されるとは限りません。

  • バンドルされているJavaは更新されません

  • 複数ノードのインストールでは、メインのTeamCityサーバーのみが自動更新され、Running Buildsノードは手動で更新する必要があります。

手動アップグレード

Windowsインストーラを使用する

  1. バックアップを作成します。TeamCity 6.0+からアップグレードするとき、更新されたTeamCityスタートのTeamCityメンテナンスモードページの「基本」プロファイルでバックアップを作成する機会もあります。

  2. TeamCityサーバーを実行するために使用されたユーザー名に注意してください。新しいバージョンのインストール中に必要になります。

  3. カスタマイズしたWindowsサービス設定がある場合は、保存して後でカスタマイズを繰り返します。

  4. 64ビットJavaを使用してサービスを実行している場合(たとえば、サーバーの管理 | 診断のJava VM情報またはスレッドダンプで64を確認します)、<TeamCityホームディレクトリー> \ jreディレクトリーのバックアップを検討してください。

  5. バンドルされているTomcatサーバー(port、httpsプロトコルなど)、JREなどのカスタマイズがある場合は、バックアップして後でカスタマイズを繰り返します。

  6. ローカルエージェントをインストールしている場合は注意してください(ただし、ローカルエージェントをインストールすることはお勧めできません )。インストーラで同じオプションを選択できます。

  7. 新しいインストーラを実行して、TeamCityがインストールされている場所と同じ場所を指定します(インストールに使用された場所は自動的に記憶されます)。前のインストールのアンインストールを確認してください。TeamCityアンインストーラーは適切なアンインストールを保証しますが、アンインストールが完了した後にTeamCityサーバーのインストールディレクトリーにカスタマイズされていないファイルが含まれていないことを確認したいかもしれません。ある場合は、インストールを続行する前にバックアップ/削除してください。

  8. プロンプトが表示されたら、前のインストールで使用された<TeamCityデータディレクトリー> /を指定します。

  9. (これらはアップグレードによって上書きされないためオプションです)外部データベースドライバがインストールされていることを確認してください(これは外部データベースを使用する場合にのみ適用されます)。

  10. 必要なWindowsサービスとTomcat構成のカスタマイズを確認して復元します。バージョン7.1以前からアップグレードする場合は、必ずサーバーのメモリー設定環境変数に転送してください。

  11. サーバーの実行に64ビットJavaを使用していた場合は、以前にバックアップした<TeamCityホームディレクトリー> / \ jreディレクトリーを復元するか、64ビットJavaのインストール手順を繰り返します。

  12. conf\teamcity-server-log4j.xml ファイルでカスタマイズLog4jの構成を使用し、それを保存する場合(ただし、ファイルをカスタマイズすることは実際には推奨されないことを、使用ログのプリセットの代わりに)を比較し、との既存のコピーからインストーラによって作成された conf\teamcity-server-log4j.xml.backup をマージし、デフォルトファイルはデフォルト名で保存されます。 conf\teamcity-*-log4j.xml.dist ファイルを対応する conf\teamcity-*-log4j.xml ファイルと比較し、.xml ファイルにすべての.dist ファイルのデフォルトが含まれていることを確認します。ロギング設定の変更が本当に必要になるまで、.dist ファイルを対応する .xml ファイルにコピーすることをお勧めします。

  13. TeamCityサーバー(およびインストーラと一緒にインストールされている場合はエージェント)を起動します。

  14. TeamCityメンテナンスモードページを確認して問題が発生していないことを確認し、対応するボタンをクリックしてアップグレードを確認します。それ以降、すべてのデータが新しい形式に変換されます。

解決できないエラーが発生した場合は、古いTeamCityが動作していないこと、または起動時に起動しないことを確認し、マシンを再起動して、インストール手順を繰り返します。

.tar.gzまたは.warディストリビューションを使用した手動アップグレード

.tar.gz または .exe TeamCityディストリビューションを使用することをお勧めします。 .war を使用することはTeamCityをインストールするための推奨される方法ではありません。

  1. バックアップを作成します

  2. 前回のインストール以降にカスタマイズされたバックアップファイル (おそらく [TOMCAT_HOME]/conf/server.xml )

  3. 古いインストールファイル( war ファイルからインストールする場合は <&gt;または [TOMCAT_HOME]/webapps/TeamCity/* 全体)を削除します。事前にディレクトリーをバックアップすることをお勧めします。

  4. TeamCityが以前にインストールされていた場所に新しいアーカイブを解凍します。

  5. Tomcatサーバー(独自のものか、または.tar.gz TeamCityディストリビューションにバンドルされているもの)を使用する場合は、work ディレクトリーの内容を削除することをお勧めします。これは、同じWebサーバーにデプロイされている他のWebアプリケーションに影響を与える可能性があることに注意してください。

  6. 上記の手順2でバックアップしたカスタマイズ設定を復元します。カスタマイズした [TOMCAT_HOME]/conf/server.xml ファイルがある場合は、デフォルトファイルの適切なセクションに変更内容を適用します。

  7. 以前に構成されたTeamCityサーバー始動プロパティー(存在する場合)がまだ実際のものであることを確認してください。

  8. TeamCityサーバーを起動します。

  9. TeamCityメンテナンスモードページを確認して問題が発生していないことを確認し、対応するボタンをクリックしてアップグレードを確認します。その後初めて、すべての設定データとデータベーススキーマはTeamCityコンバーターによって更新されます。

DockerイメージからTeamCityのアップグレードを開始

コンテナーに変更を加えていない場合は、実行中のコンテナーを停止し、通常のコマンドを使用して新しいバージョンの公式TeamCityイメージ(英語)とサーバーを取得するだけ(英語)です。イメージを変更した場合、新しいTeamCityサーバーイメージに変更を複製する必要があります。

AWS CloudFormationテンプレートからTeamCityのアップグレードを開始

専用ページを参照してください

IDEプラグイン

すべてのユーザーが、使用中のTeamCityサーバーのバージョンと互換性のある最新のバージョン (少なくともTeamCityサーバーのユーザープロファイルの「ツール」セクションから入手できるバージョンまで) にIDEプラグインを定期的に更新することをお勧めします。
一般に、IntelliJ IDEA TeamCityプラグイン、Eclipse TeamCityプラグイン、およびVisual Studio TeamCityアドインのバージョンは、TeamCityサーバーバージョンと同じである必要があります。一致しないプラグインバージョンを持つユーザーは、一致しないバージョンでTeamCityサーバーにログインしようとするとメッセージを受け取ります。
唯一の例外は、互換性のあるプロトコルを使用するTeamCityバージョンの9.0 - 9.1.xです。これらのバージョンの任意のプラグインは、これらのバージョンの任意のサーバーで使用できます。IDEプラグインを対応するサーバーのバージョンに更新することをお勧めします。

ビルドエージェントのアップグレード

自動ビルドエージェントのアップグレード

TeamCityサーバーの起動時(およびサーバー上のエージェントディストリビューションまたはプラグインの更新時)に、サーバーに接続されて正しくインストールされたTeamCityエージェントは、サーバーに対応するバージョンに自動的に更新されます。これは、サーバーのアップグレードとダウングレードの両方で発生します。エージェントに実行中のビルドがある場合、ビルドは終了します。エージェントがサーバーに対して最新の状態になっていない限り、エージェント上で新しいビルドは開始されません。

TeamCity 2018.2以降、エージェントのアップグレードを開始する前に、エージェントの空きディスク容量(デフォルトでは3 GB)が確認されます。アップグレードに必要な値を変更するには、teamcity.agent.upgrade.ensure.free.space エージェントプロパティーを設定します。

エージェントの更新手順は次のとおりです。エージェント(agent.bat , agent.shまたはエージェントサービス)は、TeamCityサーバーから現在のエージェントパッケージをダウンロードします。ダウンロードが完了し、エージェントがアイドル状態になると、アップグレードプロセスが開始されます(エージェントが停止し、エージェントファイルが更新され、エージェントが再起動されます)。このプロセスには、エージェントのハードウェアとネットワーク帯域幅に応じて数分かかる場合があります。アップグレードプロセスを中断しないでくださいを使用すると、アップグレードが失敗する可能性があるため、エージェントを手動で再インストールする必要があります。

TeamCity Web UIでエージェントが「エージェントが切断されます(アップグレードされます)」と表示されている場合は、エージェントコンソールを閉じたりエージェントプロセスを再起動したりしないでください。数分待ってください。

エージェントのアップグレード中は、さまざまなコンソールウィンドウを開閉できます。エージェントのアップグレードが完了するまで、しばらくお待ちください。プロセスを中断しないでください。

ビルドエージェントを手動でアップグレードする

接続されているすべてのエージェントは、正しくインストールされていれば自動的にアップグレードされるため、手動でアップグレードする必要はありません。

手動でエージェントをアップグレードする必要がある場合は、以下の手順に従ってください。

TeamCityエージェントは固有の情報を保持していないため、次の場合はエージェントをアップグレードする最も簡単な方法です。

  • <Agent Home>/conf/buildAgent.properties ファイルをバックアップします。

  • 既存のエージェントをアンインストール/削除します。

  • 新しいエージェントバージョンをインストールします。

  • 以前に保存した buildAgent.properties ファイルを同じ場所に復元します。

  • エージェントを起動します。

アップグレード後の清潔なチェックアウトを排除するためなど、すべてのエージェントデータを保持する必要がある場合は、次のことができます。

  • エージェントを停止します。

  • conf以外の、エージェントの.zipディストリビューションに存在するエージェントのインストール内のすべてのディレクトリーを削除します。

  • "conf" ディレクトリーをスキップして、.zip ディストリビューションをエージェントのインストールディレクトリーに解凍します。

  • エージェントを起動します。

後者の場合、サービスを使用してWindowsでエージェントを実行すると、以下に説明されているように Windowsサービスをアップグレードする必要もあるかもしれません。

ビルドエージェント Windows サービスラッパーのアップグレード

TeamCityバージョン1.xからのアップグレード

TeamCityのバージョン2.0は、ビルドエージェント用の新しいWindowsサービス管理方法(サービスラッパー)、つまりJava Service Wrapper libraryに移行しました。

新しいサービスラッパーを使用する利点の1つは、ビルドエージェントプロセスのJVMパラメータを変更できることです。

1.xバージョンはagentdという名前でWindowsサービスをインストールしましたが、2.xバージョンはTeamCityビルドエージェントサービス<ビルド番号>名を使用します。

サービスラッパーは自動的に新しいバージョンに移行されません。機能を必要としない限り(エージェントのJVMパラメータの変更など)、新しいサービスラッパーを使用する必要はありません。

新しいサービスラッパーを使用するには、(コントロールパネル | プログラムの追加と削除を使用して)古いバージョンのエージェントをアンインストールしてから、新しいエージェントをインストールします。

サービスを開始するユーザーをカスタマイズした場合は、新しくインストールしたサービスでそれをカスタマイズすることを忘れないでください。

TeamCityバージョン2.xからのアップグレード

サービスラッパーにアップデートが必要な場合は、新しいバージョンが <agent>/launcher.latest フォルダーにダウンロードされますが、変更は自動的には適用されません。

サービスラッパーを手動でアップグレードするには、次の手順に従います。

  1. <agent>/launcher.latest フォルダーが存在することを確認してください。

  2. <agent>\bin\service.stop.batを使ってサービスを停止します。

  3. service.uninstall.batを使ってサービスをアンインストールします。

  4. <agent>/launcher/conf/wrapper.conf ファイルをバックアップします。

  5. <agent>/launcherを削除します。

  6. <agent>/launcher.latest<agent>/launcherに名前変更します。

  7. <agent>/launcher/conf/wrapper.conf ファイルを編集します。 wrapper.java.command プロパティーが java.exe ファイルを指していることを確認します。レジストリを使用してjavaを検索するには、空白のままにします。「java.exe」のままにして、PATHjava.exe を検索します。スタンドアロンエージェントの場合、サービス値は ../jre/bin/javaである必要があります。サーバーにエージェントをインストールする場合、値は ../../jre/bin/javaである必要があります。 wrapper.conf ファイルのバックアップバージョンを使用できます。

  8. <agent>\bin\service.install.batを使用してサービスをインストールしてください。

  9. サービスが適切なユーザーアカウントで実行されていることを確認してください。SYSTEMを使用すると、MSBuild / Sln2005構成を使用するビルドが失敗する可能性があることに注意してください。

  10. <agent>\bin\service.start.batを使ってサービスを開始します。


関連事項:

概念 : TeamCityデータディレクトリー
管理者ガイド : TeamCityメンテナンスモード | TeamCityデータのバックアップ