AWS Cloud9とCodeCommitを連携させてみた


AWS Cloud9が立ち上がったので(前回)、次は、Cloud9とCodeCommitを連携させましょう。
なお、今回、Cloud9はEC2のAmazonLinux2で動かしてます。

CodeCommitとは、AWSマネージドのコード管理サービスです。gitのコマンドが使えます。

CodeCommitリポジトリを作ろう

リポジトリを作成をクリックします

今回、LambdaとCodePipelineでつないでCI/CD環境を作っていくのを目指しているので、lambda-testという名前のリポジトリを作ります。

これにて、リポジトリの作成は完了です。

AWS Cloud9での設定

もう、ここに書いてある通りなのですが、Cloud9のターミナルで以下のコマンドを実行します。
ユーザネームとメールは、各自のものを設定します。

git config --global credential.helper '!aws codecommit credential-helper $@'
git config --global credential.UseHttpPath true
git config --global user.name "Mary Major"
git config --global user.email [email protected]

で、Cloud9ターミナルからgit cloneしてみましょう。

クローンできました。CodeCommitとCloud9をあっさりと連携することができました!
(空のリポジトリなので警告が出ています)

ではCodeCommitにcommitしましょう

早速ですが、以下のような簡単なコードをPythonで準備して、test.pyでlambda-testディレクトリ以下に保存しました。

あとは、ターミナルにて

git add -A
git commit -m "init"
git push origin master

を実行します。

で、AWSマネコンに戻り、CodeCommitを確認すると

空だったリポジトリにファイルが追加され、

中身もきちんと反映されていました。

まとめ

今回は、Cloud9からCodeCommitの連携を行い、実際にコードをPUSHしました。
さすがどちらもAWSサービスだけあって、シームレスに統合することができました。
CodePipelineなんか使って、S3にデプロイすれば、すでに静的Webサイトのホスティングが、開発も、CI/CDも、コード管理も、ぜーんぶクラウドベースでできちゃうことになります。
AWSさまさまですね。