TeamCity 2023.11 にはマトリックスビルドやビルドキャッシュなど、ビルドの構成をより簡単にすることが大いに期待される機能が多数備わっています。
GitHub、GitLab、Bitbucket、Azure DevOps などの Git ホスティングプラットフォームとの統合が強化され、認証をより容易にするオプションが搭載されました。
EC2 および S3 プラグインの UI を全面的に作り直すことで、Amazon サービスと簡単に連携できるようにしました。
新機能の詳細は以下をお読みください。
TeamCity のマトリックスビルドを利用することで、ビルドのマトリックスを作成するためのパラメーターと対応する値の組み合わせを定義できます。 個々のパラメーター値を組み合わせて固有のビルドを生成した後、 並列実行する複数のビルドでマトリックスビルドが構成されます。
マトリックスビルドはオペレーティングシステムやブラウザーのバージョンなどが異なる複数の構成でソフトウェアをテストする場合に特に役立ちます。
マトリックスビルドの詳細は、ドキュメントをご覧ください。
CI/CD では使い捨てのビルドエージェントを使用するのがベストプラクティスであり、最も安全な手法とみなされています。 ただし、このベストプラクティスには問題がないわけではありません。
使い捨てのビルドエージェントでビルドを実行する際は、毎回大きなライブラリまたは複数のライブラリをインターネットからダウンロードしてビルドを実行する必要があります。 これはビルド時間が長くなり、ビルドの開始に遅延が発生する原因となります。
もうこの問題は起きません!
ビルドキャッシュはプロジェクトが依存しているファイルをダウンロードしてプロジェクト内で再利用することにより、CI/CD のビルド時間を最適化するのに役立ちます。
ビルドキャッシュの詳細は、ドキュメントをご覧ください。
2023.11 リリースでは、クラウドのプロファイルとイメージを設定する手法を全面的に再考しました。 新しい UI では、関連する設定オプションを提案しながらプロセスを進められるようにしています。
スポットプレイスメントスコアを利用した AWS EC2 スポットインスタンスのビルドエージェントの実行など、EC2 Mac インスタンスを使用するメリットを得られるようになりました。
S3 プラグインにも Amazon S3 バケットと S3 対応ストレージの両方を考慮して設計された新しい直感的で合理化された UI が実装されました。
詳細は、ドキュメントをご覧ください。
2023.05 では、新しい種類の GitHub 接続が導入されました。 従来の OAuth ベースのリポジトリアクセスを使用する代わりに、GitHub App を使用できます。
バージョン 2023.11 からは GitHub での手動構成と新しいアプリの登録が不要になり、このような接続をより効率よく確立できるようになりました。
認証に関しては、Commit Status Publisher、Pull Requests(プルリクエスト)ビルド機能、GitHub 課題トラッカーの設定ページで GitHub App 接続用の個人を特定しないリフレッシュ可能なアクセストークンも発行できるようになりました。
バージョン 2023.11 からは GitLab の Pull Requests(プルリクエスト)ビルド機能で下書きのマージリクエストを無視するように TeamCity を構成できるようになりました。
GitLab リポジトリをターゲットとする Commit Status Publisher と Pull Request(プルリクエスト)は、リフレッシュ可能な OAuth トークンを使用して認証を通過できるようになっています。
GitLab リポジトリをターゲットとする Commit Status Publisher と Pull Request(プルリクエスト)は、リフレッシュ可能なアプリケーショントークンを使用して認証を通過できるようになっています。
TeamCity が Azure DevOps の Commit Status Publisher と Pull Request(プルリクエスト)ビルド機能において、リフレッシュ可能な OAuth トークンをサポートするようになりました。
詳細は、ドキュメントをご覧ください。
このリリースでは、Bitbucket 認証をさまざまな方法で強化しています。
TeamCity は Bitbucket Cloud の Pull Request(プルリクエスト)ビルド機能の認証方式として、アプリパスワードと VCS Root 資格情報による認証だけでなく、リフレッシュ可能で永続的なアクセストークンもサポートしています。
Pull Request(プルリクエスト)機能では、Bitbucket Server / Data Center のリポジトリにアクセスする際にリフレッシュ可能な OAuth トークンを使用できるようになりました。
詳細は、ドキュメントをご覧ください。
既存の Swarm と TeamCity の統合も改善されました。 この統合により、Swarm で TeamCity のビルドステータスを使用したり、TeamCity UI から Swarm のインターフェースに移動したりできます。
バージョン 2023.11 より、Commit Status Publisher ビルド機能の TeamCity Perforce Helix Swarm パブリッシャーを Swarm 環境にある既存のカスタムワークフローと統合できるようになりました。 また、Commit Status Publisher で管理者アクセス付きのユーザーの資格情報が不要になりました。
TeamCity で Swarm 管理者レベル資格情報を使用せずに統合をセットアップできるようになりました。 この統合の更新により、TeamCity のチェックに基づくクオリティゲートをカスタムワークフローに含められるようにもなっています。
詳細は、ドキュメントをご覧ください。
特定のエージェントプールをお気に入りに指定し、単一の場所からそのプールにアクセスできるようになりました。 自分が担当しているエージェントプールにアクセスする必要がある場合に便利です。
エージェントターミナルは、TeamCity UI からリモートターミナルを直接開いて素早く簡単にエージェントマシンに直接アクセスできる TeamCity 固有の機能です。 Linux、Windows(PowerShell を使用)、macOS でサポートされています。
バージョン 2023.11 からはタブを切り替えてエージェントターミナルを開く必要がなくなりました。エージェントターミナルは TeamCity UI の同じページで開くようになっています。