ヤマムギ

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 クラウドプラクティショナー」という本を書きました。

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

 - AWS ,

ad

ad

  関連記事

Cloud9でSAMローカルテスト

せっかくテストするので、Amazon CloudSearchからAmazon E …

Cloud9 Python3でpipも3にする

このブログは、2019/10/20に書いた、 Cloud9のAMIがCloud9 …

AWS Lambda(Python3.7)でPandocを実行する際にCSSもLayerから読み込む

Pandocで必要そうなオプションを確認しておく 先日の「AWS Lambda( …

Amazon Data Lifecycle Manager(DLM)が東京リージョンで使えるようになったのでLambdaでAMI自動取得から乗り換えた

EBSのスナップショットを自動で作成してくれるAmazon Data Lifec …

NGINXで500と502のエラーが実は頻発していたらしい

先日Mackerelで当ブログの外形監視を始めたのですが、500と502のエラー …

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

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

再会の日 ~re:Union 2018 Osaka by JAWS-UG~

8/5は大阪でre:Unionでした。 「再会」と名うったこのイベントは、6月に …

AWSのAmazon LinuxにGitマスターサーバをインストールしてRedmineリポジトリブラウザで見る

Amazon LinuxにGitをインストールする Gitをインストールして自動 …

slackのbotに天気を教えてもらう(Python on AWS Lambda + API Gateway)

slackのbotにAPIの定番ともいえる天気情報を教えてもらいました。 環境は …

TwilioからのリクエストをAPI Gateway+LambdaでTwimlを返して処理する

Twilioで着信した時のリクエスト先としてTwimlをWebサーバやS3で用意 …