TeamCity 2020.1ヘルプ

アップグレード

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

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

アップグレードの前に

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

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

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

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

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

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

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

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

  1. 設定、データベース、および補足データを含む現在のTeamCityデータをバックアップします。アップグレードが失敗した場合に備えて、バックアップを以前のバージョンにロールバックする必要があります。

  2. アップグレード手順を実行する :

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

ライセンス

Before upgrading, make sure the maintenance period of your licenses is not yet elapsed (use 管理 | ライセンス TeamCity server web UI page to list your license keys). The licenses are valid only for the versions of TeamCity with the effective release date within the maintenance period. Check the effective release date on the releases list(英語).
Typically all the bugfix updates (indicated by changes in the Z part of the X.Y.Z TeamCity version) use the same effective release date (that of the major/minor release).
If not all the licenses cover the target version release date, consider renewing the licenses before the upgrade (you can replace the old license keys with the renewed ones even before the upgrade).

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

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

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

TeamCity supports upgrades from any of the previous versions to the current one.
Unless specifically noted, downgrades with preserving the data are not possible with changing major.minor version and are possible within bugfix releases (without changing major.minor version).

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

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

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

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

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

自動アップデート

Since TeamCity 2017.2 automatic update option is available. For that to function, TeamCity server should be able to contact https://www.jetbrains.com site.
When a new version of TeamCity is detected, the server displays the corresponding health item for system administrators. The item points to the server's 管理 | 更新 page, where all the versions available for the update are listed. The page contains notes about licenses compatibility, the new version description and controls to perform the automatic upgrade if you want to use that instead of performing the manual updating procedure.

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

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

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

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

  3. Next, the updated server starts.
    The update progress is logged to the < TeamCityホームディレクトリ >/logs/teamcity-update.log file.

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

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

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

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

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

  • in a multinode setup, only the main TeamCity server can be auto-updated, the secondary nodes need to be updated manually.

手動アップグレード

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 ファイルからインストールする場合は <TeamCity Home Directory> または [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プラグイン

It is recommended for all users to regularly update their IDE plugins to the latest version compatible with the TeamCity server version in use. At least to the version available from the TeamCity server's Tools section on user profile.
Generally, versions of the IntelliJ IDEA TeamCity plugin, Eclipse TeamCity plugin, and Visual Studio TeamCity Addin have to be the same as the TeamCity server version. Users with non-matching plugin versions get a message on an attempt to log in to the TeamCity server with a non-matching version.
The only exception is TeamCity versions 9.0 - 9.1.x, which use a compatible protocol, and any plugin of these versions can be used with any server of these versions. Updating IDE plugins to the matching server version is still recommended.

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

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

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を使ってサービスを開始します。