ヤマムギ

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


最後までお読みいただきましてありがとうございました!
【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。

 - AWS ,

ad

ad

  関連記事

AWS Summit 2016 Tokyoに参加してきました (Day3)

飛天3日目です。 JAWS-UGブースのすぐ前にあったこのお水がめちゃめちゃおい …

EC2 Auto Recovery機能を設定しておいた

以前EC2インスタンスのリタイア対象になったこともあり、というより、やっておいて …

Redmineの添付ファイルをS3に同期する

RedmineをAWS上で構築するデザインを考えていて、せっかくなので冗長化しよ …

WordPressをAmazon CloudFrontで配信してついでにACM(AWS Certificate Manager)を使って常時SSL化する

当サイトの500と502の発生状況がドイヒーであるとの苦情をいただきまして、Am …

EC2 Amazon Linux 2 にAmazon LinuxからWordPressを移行

このブログを新しいインスタンスに移行することにしました。 2015年5月にAma …

Amazon Elasticsearch ServiceにMySQLのデータを投入してkibanaで可視化してみる

MySQLのデータの可視化にAmazon Elasticsearch Servi …

ブログの画像を別アカウントのS3に移動するためにIAMロールでクロスアカウントアクセス

ずっと先延ばしにしていたのですが、このブログの画像はEC2から直接配信しています …

AWS CodeStarで静的webサイトのテンプレートプロジェクトを作成する

執筆環境の検討中です。 CodeCommitは使うつもりで、コミットしたときにE …

Amazon Connectの新規作成からプッシュボタン入力と発信元電話番号をLambdaで処理するまで

とりあえずやりたいことはタイトルに書いたとおり、「電話をかけて、プッシュボタンに …

「JAWS-UG in AWS Cloud Roadshow 2017 大阪」で運営をしました

AWS Cloud Roadshow 2017 大阪のナイトイベントで、「JAW …