CodeCatalystのGitHubリポジトリとのソースリポジトリリンク機能を試してみた

CodeCatalystのGitHubリポジトリとのソースリポジトリリンク機能を試してみた

CodeCatalystのGitHubリポジトリとのソースリポジトリリンクでなにができるのか確認しました。
Clock Icon2025.04.18

データ事業本部の鈴木です。

Amazon CodeCatalystはソフトウェア開発プロセスに継続的インテグレーションとデプロイのプラクティスを採用するソフトウェア開発チーム向けの統合サービスです。

類似のサービスにはGitHubなどがあり、こちらを採用されている方も多くいらっしゃると思います。

CodeCatalystにはソースリポジトリのリンク機能があり、GitHubリポジトリをリンクすることができます。

https://docs.aws.amazon.com/ja_jp/codecatalyst/latest/userguide/source-repositories-link.html

リンクについては具体的にどのような機能なのか使ってみないと分からなかったため、この記事では簡単にですがどのようなことができるのかご共有します。

まとめ

以下、この記事の要点です。

  • CodeCatalystのプロジェクトにGitHubリポジトリを紐づけることができる。
  • リンクしたGitHubリポジトリのイシューをCodeCatalystから作ることはできない。CodeCatalystプロジェクトのイシューで起票・管理できる。
  • CodeCatalystのワークフローを作成・実行できる。ワークフロー定義はGitHubリポジトリにコミットされる。GitHubリポジトリ側のブランチの変更をトリガーにキックすることもできる。
  • CodeCatalystでEnvironmentを作成し、リポジトリのコードを編集できる。
  • GitHubリポジトリをミラーしたリポジトリがCodeCatalystにできたり、CodeCatalystを経由してCloneができるわけではない。
  • 東京リージョンはまだサポートしていない。
  • PullリクエストはCodeCatalystのリポジトリのみ作成できる。
  • ブループリントはGitHubリポジトリからも作成できる。

やってみた

1. リンクのやり方

今回はCodeCatalystのプロジェクト作成から行いました。既存プロジェクトでも類似の動線になると思います。

CodeCatalystにログインし、プロジェクトを作成しました。

プロジェクトを作成

Bring your own codeから、GitHubリポジトリをリンクする既存のリポジトリとして選びました。

リンクする既存のリポジトリ

GitHubリポジトリ向けの拡張をインストールするか確認されるため、installを押しました。

GitHubリポジトリ向けの拡張をインストール

この後、GitHubに遷移し、どのリポジトリをリンク対象にするか確認されるため、リンクするリポジトリを選択しました。

既存のcotecatalyst_linkリポジトリのみ選んだため、以下のようになりました。

選択した既存リポジトリ

以下のようにGitHubリポジトリのリンクが作成されました。

GitHubリポジトリのリンク

2. イシューの作成

イシューはCodeCatalystのもののみ作成できます。リンクしたGitHubリポジトリを含むプロジェクト単位のものとなります。

イシューの作成

3. ワークフローの作成と実行

リンクしたGitHubリポジトリに対してもワークフローが作成できました。

WorkflowsよりCreate workflowを押すとポップアップが出るため、リポジトリとブランチを選択してCreateを押しました。

Create workflow

ポップアップ

以下のようにワークフローの雛形が作成されたため、適当にアクションを追加してcommitしました。

ワークフローの雛形

このようにGitHub側にワークフロー定義が作成されました。ディレクトリ構造から分かるように、GitHub Actionsではなく、CodeCatalystのワークフローになります。

GitHub側にできたワークフロー定義

https://docs.aws.amazon.com/ja_jp/codecatalyst/latest/userguide/workflows-concepts.html

ワークフローを実行すると、CodeCatalyst側でワークフローが実行されました。

ワークフローの実行

4. Environmentでのコード編集

Code > Dev Environmentsなどから開発環境を作り、クローンしたGitリポジトリを編集することもできました。

Environmentの作成

AWS側での認証およびVSCodeでの必要ツールのインストールが行われたのち、ローカルのVSCodeから環境へアクセスできました。

なお、今回のようにSSHする場合はローカルPCでSession Managerプラグインなどの用意が必要になります。

https://docs.aws.amazon.com/ja_jp/codecatalyst/latest/userguide/devenvironment-connect-ssh.html

5. リンクしたリポジトリのクローン

リンクしたリポジトリのクローンは、GitHubのクローン用のリンクで行うようでした。

例えばCodeCatalystのリポジトリはクローンのボタンがありますが、該当するものはありませんでした。

CodeCatalystのリポジトリのクローンボタン

特に、GitHubリポジトリをミラーしたリポジトリがCodeCatalystにできたり、CodeCatalystを経由してCloneができるかは気になっていました。
CodeCommitが新規アカウントでリポジトリを作成できなくなったため、CodeCatalyst経由でリンクしたリポジトリをクローンして利用できれば便利そうですが、そういうことはできなさそうです。

6. リージョンの選択

CodeCatalystでスペースを作成すると分かりますが、記事執筆時点では以下の2リージョンがサポートされています。

  • US West(Oregon)
  • Europe(Ireland)

リージョンのサポート

CodeCatalystでリポジトリを作成し、例えばVPCエンドポイントでアクセスできますが、この場合は東京リージョンのエンドポイントからは直接アクセスできず、対応リージョンのVPCとPeeringするなど工夫が必要になります。

7. そのほか細かい確認事項

PullリクエストはGitHubリポジトリをリンクしたプロジェクト内であっても、CodeCatalystのリポジトリのみを対象に作成できました。

Pullリクエスト

ブループリントの作成はリンクしたGitHubリポジトリからも可能でした。

ブループリントの作成

最後に

CodeCatalystのソースリポジトリのリンク機能でGitHubリポジトリをプロジェクトにリンクした際になにができるのかを確認しました。参考になりましたら幸いです。

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.