ヤマムギ

growing hard days.

*

AWS Code Commitをプライベートリポジトリとして使う

      2019/05/02

GitHubでもいいんですが、アクセスキーとかパスワードとかコンフィグ系で書いてるコードをマスクして上げているので、マスクしてないのもどこかで管理したくてAWS Code Commitを使う事にしました。
多分仕事でも使うと思いますがそのためにもノウハウは掴んでおきたく。

AWS Code Commitの設定

マネージメントコンソールで開発者用ツールの[Code Commit]をクリックします。
codecommit-1

2016/6/25現在でリージョンは「米国東部(バージニア北部)」のみですので他のリージョンの場合はリージョンを変更する画面になりますので変更します。
AWS_Management_Console_2

[Get Started]をクリックします。
AWS_CodeCommit_Management-3

[Repository Name]と[Desciption]を入力します。
AWS_CodeCommit_Management_4

Dashboardに作成したリポジトリが出来てます。
右の[URL]-[SSH]をクリックしてSSH URLをコピーしておきます。
(といいつつも、あとでコピーしようがいつでもいいです。お好きなタイミングでww)
AWS_CodeCommit_Management-5

キーペアの作成

Macで操作してます。
Linuxも同じ方法でいいと思います。
WindowsはPuttyGenとかで作りましょう。

Terminal.appを起動して下記コマンドを実行します。

キー名を聞かれるので適当に「code_commit」とかにします。
人それぞれのポリシーかと思いますが、パスフレーズは今回はなしにしてそのままEnterで進めました。

code_commit.pubが出来ているので中身を表示してコピーしておきます。

IAM(Identity & Access Management)の設定

マネジメントコンソールでセキュリティ & アイデンティティの [Identity & Access Management]をクリックします。
iam-1

Code Commitを使用するユーザの[アクセス許可]タブで[ポリシーのアタッチ]をクリックします。
フィルターに「codecommit」とか入れて、フィルタリングされた結果から[AWSCodeCommitPowerUser]を選択して[ポリシーのアタッチ]をクリックします。
IAM_Management_Console-2

[認証情報]タブの一番下に[AWS CodeCommit]のSSHキーという項目が出来ているので[SSH公開キーのアップロード]をクリックします。
IAM_Management_Console-3

フィールドにcode_commit.pubの中身を貼り付けて[SSH公開キーのアップロード]をクリックします。
IAM_Management_Console-4

エラーなくアップロードが出来ればOKです。
生成されたSSHキーIDがリポジトリにアクセスする時のユーザーIDになるのでコピーしておきます。
IAM_Management_Console-5

ローカルにリポジトリを作成

SSH接続するためにssh configファイルを作成します。
(すでにあれば追記してください)

UserにはIAMでSSH公開キーをアップロードした際に生成されたSSHキーIDを設定します。

configのパーミッションを600にします。

ローカルリポジトリを作成したいディレクトリに移動して git cloneします。

エラーがなければ成功です。
ディレクトリに.gitディレクトリが出来ています。

リポジトリで管理したいコード郡をローカルリポジトリディレクトリに移動してコミットしてプッシュします。

AWS Code Commitで確認出来ました。
AWS_CodeCommit_Management-end


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第2版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS ,

ad

ad

  関連記事

S3 過去のオブジェクトバージョンをコピーしてロールバックしました

バージョニングを有効にしているS3バケットで、オブジェクトを以前のバージョンに戻 …

DynamoDBテーブル項目をS3にエクスポート

DynamoDBテーブルを一時テーブルとして使っていて、毎回使い捨てしてます。 …

JAWS-UG関西「AI で人を笑わせてみよう!ハンズオン」に参加しました

AI で人を笑わせてみよう!ハンズオン 灼熱の7月最終日にJAWS-UG関西のオ …

IAMセッションポリシーの利用(GetFederationToken)

GetFederationTokenでのセッションポリシーは、呼び出し元のIAM …

AWS Certificate Manager証明書とAmazon Route 53でAmazon API GatewayのAPIのカスタムドメイン名前解決する

AWS Certificate ManagerとAmazon Route 53と …

[JapanTaxi] Athena 指向アナリティクス 〜真面目に手を抜き価値を得よ〜(AWS Summit Tokyo 2017)を聞いてきました

Athenaのユースケースとして聞きにいきましたが、最近触ってるRe:dashも …

AWS CDKでリージョンをまたいだクロススタックリファレンスはできなかった

例えばこんなコードが実行できるかというと、 [crayon-662cfbc725 …

AWS Organizations SCPがリソースベースのポリシーには影響しないことを確認

AWS Organizations SCPで許可ポリシーの設定をし継承の関係を確 …

AWS Storage Gateway File Gateway on EC2インスタンスにmacOSからNFS接続

S3バケットの作成 S3バケットはあらかじめ作成しておきました。 マネジメントコ …

別アカウントのVPCからAWS PrivateLinkを使う

VPC エンドポイントサービス (AWS PrivateLink)を参考にしまし …