Amazon CodeCatalyst
開発チームのプロジェクト管理、CI/CD、クラウド開発環境を統合するサービス
何ができるか
Amazon CodeCatalyst は、ソフトウェア開発に必要なツール (ソースリポジトリ、CI/CD パイプライン、課題管理、クラウド開発環境) を 1 つのサービスに統合した開発プラットフォームです。プロジェクトの作成からコードの記述、テスト、デプロイまでの開発ライフサイクル全体をカバーします。ブラウザベースの開発環境 (Dev Environment) も提供しており、ローカル環境のセットアップなしで開発を開始できます。
どのような場面で使うか
新しいプロジェクトを立ち上げる際に、リポジトリ、CI/CD パイプライン、開発環境を一括でセットアップする場面で活用されています。また、チームメンバーが統一された開発環境で作業することで「自分の環境では動くのに」という問題を解消したり、ブループリント (テンプレート) を使ってベストプラクティスに沿ったプロジェクト構成を素早く構築する場面でも利用されます。 この分野について体系的に学びたい方は、関連書籍 (Amazon) も参考になります。
身近な例え
オフィスの総合受付に例えるとわかりやすいでしょう。新入社員が入社すると、デスク (開発環境)、メールアカウント (リポジトリ)、プロジェクト管理ツール (課題管理)、社内連絡網 (CI/CD) をそれぞれ別の部署に申請する必要があります。CodeCatalyst は総合受付で、1 か所で全部まとめて手配してくれるサービスです。
CodeCatalyst とは
この記事は約 2 分で読めます。 Amazon CodeCatalyst は、ソフトウェア開発のワークフロー全体を統合するサービスです。従来、開発チームはソースコード管理に GitHub、CI/CD に Jenkins、課題管理に Jira、開発環境に各自のローカル PC と、複数のツールを組み合わせて使っていました。CodeCatalyst はこれらの機能を 1 つのプラットフォームに統合し、ツール間の連携設定や管理の手間を削減します。
ブループリントとワークフロー
ブループリントは、プロジェクトのテンプレートです。Web アプリケーション、サーバーレス API、データパイプラインなど、用途に応じたブループリントを選択すると、リポジトリ構成、CI/CD パイプライン、インフラ定義が自動的にセットアップされます。ワークフローは CI/CD パイプラインの定義で、YAML ファイルで記述します。コードのプッシュやプルリクエストをトリガーに、ビルド、テスト、デプロイを自動実行します。
Dev Environment
Dev Environment は、クラウド上に構築される開発環境です。ブラウザから VS Code ベースのエディタにアクセスでき、ローカル PC に開発ツールをインストールする必要がありません。プロジェクトごとに必要なランタイムやツールが事前設定された環境が提供されるため、チーム全員が同じ環境で開発できます。ローカルの VS Code や JetBrains IDE からリモート接続して使うことも可能です。
はじめかた
CodeCatalyst を使い始めるには、codecatalyst.aws にアクセスしてスペースを作成します。スペース内にプロジェクトを作成する際、ブループリントを選択すると必要な構成が自動生成されます。AWS アカウントを接続すれば、ワークフローから直接 AWS 環境にデプロイできます。無料利用枠として、月間 2,000 分のビルド時間と 60 時間の Dev Environment 利用が含まれています。
Azure・オンプレミスとの比較
AWS の優位点
- ブループリントにより、リポジトリ、CI/CD、インフラ定義を含むプロジェクト全体を数分でセットアップでき、初期構築の工数を大幅に削減できる
- クラウドベースの Dev Environment で統一された開発環境を提供し、ローカル環境の差異による問題を排除できる
- AWS サービスへのデプロイが統合されており、IAM ロールの設定だけで CodeCatalyst から直接 AWS 環境にデプロイできる
注意点
- CodeCatalyst は AWS アカウントとは別に、Builder ID でサインインする。AWS IAM ユーザーとは認証体系が異なる点に注意
- 無料利用枠を超えると従量課金が発生する。特に Dev Environment の長時間起動はコストに影響するため、使わないときは停止すること
- 既存の GitHub リポジトリとも連携可能。CodeCatalyst 独自のリポジトリに移行する必要はない
さらに詳しく知りたい方は、関連書籍 (Amazon) で理解を深められます。