ヤマムギ

growing hard days.

*

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

   


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

@yamamanx

開発ベンダー5年、ユーザ企業システム部門通算9年、ITトレーナー1年目のSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。

このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。

また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。

 - AWS ,

ad

ad

  関連記事

S3に置いたMP3ファイルをTwilioから電話再生する(AWS Lambda Python)

Google Calendar Twilio ReminderのTwilioを使 …

Amazon Rekognitionでイベント参加者の顔写真を解析して似ている人ランキングをその場で作る

2017/9/21に開催されたAWS Cloud Roadshow 2017 大 …

Amazon LinuxにAlfresco Community Editionをインストールする

ダウンロード準備 Alfresco公式サイトで、「エンタープライズコンテンツ管理 …

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

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

CUSTOMINEを使ってkintoneからAWS Lambdaを実行する(Cognito認証付き)

先日の記事「kintoneのカスタマイズ開発を超速にするCUSTOMINE」で書 …

AWS EC2 Amazon Linux にEC-CUBE3をnginx+MySql環境へインストール(手順検証中)

EC2インスタンスを作成する 少し古い記事で恐縮ですが試したい事があるのでAWS …

JAWS FESTA 2017 Reverse X re:Birth

JAWS FESTA 2017 中四国 今年はブログタイトル「JAWS FEST …

Microsoft TeamsのOutgoing Webhooksを使ってAWS Lambda(Python), Amazon API Gatewayとbot

Microsoft Teamsの検証その2、Slackで実装しているbotも対応 …

RDS + VPC + Lambda + API Gateway + CloudFront + WAF + ACMでAPIを構築する

RDSのMySQLの情報を与えられたリクエストをキーにしてjsonで返すAPIを …

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

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