CaC(構成のコード化)により、自動 CI/CD パイプラインをレベルアップできます。TeamCity のビルド構成をバージョン管理システムに保管して管理すれば、再利用性、移植性、保守性、および一貫性が向上します。
プロジェクト間でのビルドロジックの複製、複数の構成への確実な更新の適用、パイプラインの体系的な管理を効率的に行えます。
ビルド構成を簡単に古いバージョンに戻せます。
更新のたびにピアレビュープロセスを実施できます。
パイプラインロジックへのアクセスを管理できます。
各変更の監査ログを管理します。
TeamCity Cloud と TeamCity On-Premises からお選びください。
VCS をビルド構成とアプリケーションコードの SSoT(信頼できる唯一の情報源)とすることで、ソース管理のすべてのメリットを活用できます。TeamCity では、ウェブ UI で行った変更内容を自動的にバージョン管理システムに同期するか、UI からのビルド構成の編集を無効にしてすべての変更をコード化することを要求するかを選択できます。
Kotlin DSL を使うと、パイプラインをコードとして作成するように設計された DSL の強みを兼ね備えた完全なプログラミング言語のあらゆるメリットを享受できます。
直感的で統計的に型付けされた言語からすべての TeamCity ビルド機能にアクセスできます。
独自のクラス、関数、およびライブラリを定義することで、効率的で合理化されたパイプラインロジックを記述できます。外部ライブラリから機能をインポートできます。
IntelliJ IDEA からビルド構成を作成し、コードナビゲーション、自動補完、構文ハイライト、およびリファクタリングの提案を利用できます。
理解しやすいコードで、順次および並列ビルドチェーンを構成できます。特定の構成の設定を TeamCity UI でプレビューできます。
Kotlin を使用すると多くのメリットがもたらされ、パイプラインの構成が YAML よりも簡単になります。Kotlin を使用したことがない方には特に最初は難しく見えるかもしれませんが、そんなことはありません。Kotlin での構成の記述を支援するため、すべての設定の DSL コードは TeamCity が自動的に生成します。このコードは管理者 UI でプレビュー可能です。
複数の異なるプラットフォームに対して複数バージョンの個々のフレームワークやソフトウェア開発キットを使って変更のビルドとテストを行う場合、ビルド構成の数が一気に増大します。これらの構成をコードとして管理すれば、スクリプトを再利用して設定をわずか数行のコードにカプセル化することができます。
TeamCity の Kotlin DSL ならパイプラインの構成を再利用と管理が容易なコードに合理化できるため、ビルドジョブごとの設定を瞬時に更新できるようになります。
「当社は TeamCity の UI からの編集を無効にする方針をとっています。パイプラインの標準化を目標の 1 つとしているためです。この標準化はコード化された構成を使用することで達成しています。すべてのビルド構成は、それぞれのリポジトリに Kotlin コードとして保管されています。当社は TeamCity の Kotlin DSL をベースに独自の DSL を構築しました。その結果、20 行以内のコードでパイプラインを定義できるようになりました。」
– Ivan Babiankou、Picnic ソフトウェアエンジニア
TeamCity の Kotlin DSL にはプロジェクトをセットアップする際に参照できる明快なドキュメントが豊富に用意されています。ドキュメントに掲載されている例をコピーしてコードベースに直接貼り付けるだけで、次に使用する関数を確実に理解できます。
TeamCity で CI/CD パイプラインの構成をコード化すると、継続的なフィードバックと改善という DevOps の目標へさらに一歩近づけます。TeamCity の UI から設定を変更しているのか、コードを変更しているのかに関係なく、パイプラインに対する更新はデプロイされる前に一連の手動チェックと自動化テストが毎回行われます。
TeamCity がニーズに対応できるか判断できませんか?ご相談ください。TeamCity でプロジェクトの構成をコード化する方法に関する詳しい情報をご提供します。デモセッションもご予約いただけます。
構成のコード化は、確立された CI サーバー向けの手法です。この手法には、VCS リポジトリによるバージョン管理のサポート、構成の変更に関する監査の単純化、および構成の移植性の改善などのメリットがあります。UI からポイントアンドクリックで構成するよりも、コードを好むユーザーもいます。
概念としては、UI でビルドを構成するよりもコードを使って構成する方が優れています。リポジトリにコードを保管して変更をより細かく管理できるほか、古いバージョンへのロールバックや変更履歴の確認を行えます。また、設定をコードとして管理して転送する方が、UI ですべてを再構成し直すよりも簡単です。
構成をコードとして保管する方法にはいくつかありますが、TeamCity では XML と Kotlin DSL の 2 つの方法をサポートしています。
プロジェクト設定をコードとして構成する場合、Kotlin DSL には XML よりも多くのメリットがあります。
プロジェクト構成をコードとして保管するチーム向けの強力な CI/CD