TeamCity 2020.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 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).

The general policy is that bugfix updates (indicated by changes in the Z part of the X.Y.Z TeamCity version) do not change data format, so you can freely upgrade/downgrade within the bugfix versions. However, when upgrading to the next major or minor version (changed X or Y in X.Y.Z TeamCity version), you will not be able to downgrade with the data preservation: you will need to restore a backup of the appropriate version.

On upgrade, all the TeamCity configuration settings and other data are preserved unless noted in Upgrade Notes. If you have customized TeamCity installation (like Tomcat server settings change), you will need to repeat the customization after the upgrade.

The general approach to upgrade is to remove all the files of the previous installation in the TeamCity server home and place the new files into the same location. Make sure to preserve the TeamCity Data Directory and the database intact (making a backup beforehand), backing up and restoring previously customized settings (for example, in ...\conf\server.xml, ...\conf\web.xml files) is also necessary. The logs directory (...\logs) can be left with the old installation files.

Agents connected to the server are upgraded automatically.

If you accidentally performed an inconsistent upgrade, check the recovery instructions.

Automatic Update

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 Administration | Updates 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.

The automatic update procedure is as follows:

  1. The TeamCity server is stopped.

  2. The update script is run to do the following:
    1. Create a backup of the current installation in the <TeamCity Home Directory>/.old directory.

    2. Update the stopped server to the new version.

  3. Next, the updated server starts.
    The update progress is logged to the <TeamCity Home Directory>/logs/teamcity-update.log file.

Current automatic update limitations:

  • some customizations, for example, installations with changed server context, are not supported by automatic update

  • only manual upgrade is possible if the server is deployed from a .war distribution、またはAWS CloudFormationテンプレートまたはAzure Resource Managerテンプレートで開始された公式のTeamCity Dockerコンテナーで実行されます。

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

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

  • マルチノード設定では、メインのTeamCityサーバーのみが自動更新でき、セカンダリノードは手動で更新する必要があります。

手動アップグレード

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プラグイン

すべてのユーザーが、使用中のTeamCityサーバーバージョンと互換性のある最新バージョンにIDEプラグインを定期的に更新することをお勧めします。少なくとも、ユーザープロファイルのTeamCityサーバーのツールセクションから入手できるバージョンまで。
通常、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を使ってサービスを開始します。

最終更新日: 2020年8月26日