AWS CodeCommitセットアップガイド - リポジトリ作成から初期設定まで

AWS CodeCommitを実際に使用するためのセットアップ手順を、コード例とともに詳細に解説します。リポジトリ作成からIAM設定、Git認証設定、開発環境の構築まで、実際の運用で必要な設定を段階的に進めます。

前提条件

必要な権限とリソース

セットアップを始める前に、以下の前提条件を確認してください:

前提条件チェックリスト

  • AWSアカウント: 管理者権限またはCodeCommit管理権限
  • IAMユーザー作成権限: ユーザーとポリシー管理権限
  • KMS使用権限: 暗号化を使用する場合
  • ローカル環境: Git クライアント (2.14以降推奨)
  • AWS CLI: バージョン2.0以降推奨
  • ネットワーク: HTTPS (443) アウトバウンド接続

環境確認手順

セットアップを始める前に、必要なツールがインストールされていることを確認します。

環境確認では、以下の項目を確認してください:

  1. Gitクライアント: コマンドプロンプトでgit --versionを実行してバージョンを確認
  2. AWS CLI: aws --versionでAWS CLIがインストールされていることを確認
  3. AWS認証情報: aws sts get-caller-identityで現在の認証情報を確認

ステップ1:IAMユーザーとアクセス設定

IAMユーザーの作成

CodeCommitを使用するための専用IAMユーザーを作成し、適切な権限を設定します。

AWSコンソールでの手順:

  1. IAMコンソールへアクセス: AWSマネジメントコンソールからIAMサービスを選択します。

  2. ユーザー作成: 「ユーザー」メニューから「ユーザーを作成」をクリックし、CodeCommit用のユーザー名を入力します。

  3. 権限ポリシーの作成: 新しいポリシーを作成し、CodeCommitの基本操作権限を設定します。

  4. ポリシーのアタッチ: 作成したポリシーをユーザーにアタッチして権限を付与します。

権限レベルの選択では、開発者用と管理者用の2つのレベルがあります。開発者用は基本的なGit操作のみ、管理者用はリポジトリ管理を含む全権限を持ちます。

Git認証情報の設定

CodeCommitでGit操作を行うための認証情報を設定します。

AWSコンソールでの手順:

  1. IAMコンソールで作成したCodeCommitユーザーを選択します。
  2. 「セキュリティ認証情報」タブで「AWS CodeCommit の Git 認証情報」を選択します。
  3. 「認証情報の生成」ボタンをクリックし、ユーザー名とパスワードを取得します。
  4. 生成された認証情報を安全な場所に保存します。

ローカル環境でのGit設定:

Gitクライアントで認証情報を設定します:

bash
# Git credential helperを設定(基本設定)
git config --global credential.helper store

これでCodeCommitへのアクセス準備が完了します。初回Git操作時にユーザー名とパスワードの入力が求められます。

ステップ2:リポジトリの作成と設定

リポジトリ作成

AWSコンソールでの手順:

  1. CodeCommitコンソールにアクセス: AWSマネジメントコンソールからCodeCommitサービスを選択します。

  2. リポジトリ作成: 「リポジトリを作成」ボタンをクリックし、リポジトリ名と説明を入力します。

  3. 暗号化設定: 必要に応じてKMSキーを選択し、データの暗号化を設定します。

  4. タグ設定: 管理用のタグ(Environment、Project、ManagedBy等)を追加します。

AWS CLIでのリポジトリ作成(コンソール操作の代替):

bash
# 基本的なリポジトリ作成
aws codecommit create-repository --repository-name my-project

または、AWSコンソールからの作成も可能で、より直感的な操作ができます。

初期ファイル構造の作成

リポジトリ作成後は、プロジェクトタイプに応じた初期構造を構築します。

一般的なプロジェクト構造

  • README.md(プロジェクト概要)
  • .gitignore(不要ファイルの除外設定)
  • docs/(ドキュメント用ディレクトリ)
  • src/(ソースコード用ディレクトリ)
  • tests/(テスト用ディレクトリ)

AWSコンソールでの初期ファイル追加:

  1. CodeCommitリポジトリのページで「ファイルの作成」を選択
  2. README.mdを作成してプロジェクト概要を記載
  3. .gitignoreファイルを作成して除外パターンを設定
  4. 必要に応じてディレクトリ構造用の.gitkeepファイルを配置

プロジェクトタイプ別設定

Node.jsプロジェクトの場合

  • package.json(依存関係とスクリプト定義)
  • .gitignoreでnode_modules/を除外
  • src/index.js(エントリーポイント)

Pythonプロジェクトの場合

  • requirements.txt(依存ライブラリ一覧)
  • .gitignoreで__pycache__/を除外
  • src/init.py(パッケージ初期化)

Javaプロジェクトの場合

  • Maven/Gradleの設定ファイル
  • .gitignoreでtarget/やbuild/を除外
  • src/main/java/(ソースディレクトリ)

ステップ3:ローカル開発環境のセットアップ

リポジトリのクローンと初期設定

リポジトリ作成後は、ローカル環境にクローンして開発環境を整えます。

リポジトリのクローン:

bash
# HTTPSクローン(推奨)
git clone https://git-codecommit.region.amazonaws.com/v1/repos/repository-name

クローン後は、GitユーザーTTL名とメールアドレスをローカルで設定し、必要に応じて開発用ブランチを作成します。

ステップ4:チーム開発環境の構築

チーム用アクセス設定

チーム開発では、メンバーの役割に応じたアクセス制御を設定します。IAMコンソールでグループを作成し、開発者、リード開発者、管理者の役割に応じて異なる権限レベルを設定します。

ステップ5:セットアップの確認と検証

設定確認手順

セットアップ完了後は、IAMユーザーの作成、リポジトリの作成、初期ファイルの設置、アクセス権限の設定、ローカル環境での基本操作が正常に動作することを確認します。

5. ローカル環境の確認

基本的な動作確認として、リポジトリのクローン、Git設定の確認、テストコミットを実行します。これにより、CodeCommitへの接続と基本的なGit操作が正常に動作することを確認できます。

セットアップ完了サマリー

セットアップが正常に完了した場合は、以下の項目を確認できます:

  • リポジトリ作成完了: CodeCommitコンソールでリポジトリが表示される
  • IAMユーザー設定完了: 管理者ユーザーが作成されている
  • Git認証情報設定完了: HTTPSアクセス用の認証情報が生成済み
  • チームアクセス設定完了: 必要なチームメンバーのユーザー作成完了

次のステップ

  1. チームメンバーに認証情報を共有
  2. ブランチ保護ルールの設定
  3. CI/CDパイプラインの構築
  4. 開発ワークフローの確立

使用例

基本的なセットアップ手順

個人開発用のシンプルな設定

  1. IAMユーザー「codeecommit-admin」を作成
  2. リポジトリ「my-project」を作成
  3. Pythonプロジェクト向けの.gitignoreとrequirements.txtを追加
  4. ローカル環境にクローンして開発開始

動作確認

リポジトリをローカルにクローンし、テストファイルを作成してCodeCommitにプッシュすることで、セットアップが正常に完了していることを確認できます。

チーム開発用セットアップ手順

チーム用の組織的な設定

  1. 管理者ユーザーの作成(codecommit-admin)
  2. リポジトリの作成(team-project)
  3. チームグループの作成:
    • Developersグループ(dev1, dev2)
    • Leadsグループ(lead1)
    • Adminsグループ(admin1)
  4. 権限ポリシーをグループにアタッチ
  5. KMS暗号化を有効化

チームメンバーへの共有

  • 各ユーザーのGit認証情報を安全に共有
  • Clone URLとアクセス手順をチームに共有
  • 開発ワークフローガイドラインを策定

トラブルシューティング

よくある問題と解決方法

Git認証エラー: IAMコンソールでGit認証情報を再生成し、credential helperの設定を確認します。

リポジトリアクセスエラー: リポジトリ名とリージョンの確認、IAM権限の再設定を行います。

クローン失敗: ファイアウォール設定でHTTPSポートを許可し、正しいClone URLを使用します。

まとめ

AWS CodeCommitのセットアップは、適切な手順に従うことで確実に実行できます。

セットアップチェックリスト

  • [ ] AWS CLIとGitクライアントのインストール
  • [ ] IAM権限の設定
  • [ ] CodeCommit用IAMユーザーの作成
  • [ ] Git認証情報の生成と設定
  • [ ] リポジトリの作成
  • [ ] 初期プロジェクト構造の構築
  • [ ] ローカル開発環境の設定
  • [ ] チームアクセス権限の設定
  • [ ] 動作確認(clone、push、pull)

次のステップ

セットアップ完了後は、以下の記事を参考にさらなる設定を行ってください:

  1. セキュリティ設定: 詳細なアクセス制御と監査
  2. ワークフロー構築: ブランチ戦略とコラボレーション
  3. CI/CD統合: パイプライン構築と自動化

適切なセットアップにより、CodeCommitは効率的なソースコード管理の基盤となります。