【AWS】Github/CodeDeploy/CodePipelineを利用したCI/CD

AWS

CodeCommitとCodeDeployとS3をからめた、CI/CDもありますが今回はより単純に実装する為に下記の構成で行います。

使用する項目
・EC2
・Github
・CodeDeploy
・CodePipeline

EC2の準備

EC2にCodeDeployにアクセスするroleをIAMで作成。

EC2にログインしてCodeDeployのエージェントをインストールします。

https://docs.aws.amazon.com/ja_jp/codedeploy/latest/userguide/codedeploy-agent-operations-install-linux.html

まずはインストール環境を作成する為に下記を実行

sudo yum update
sudo yum install ruby
sudo yum install wget

次に下記を実行

#!/bin/bash
CODEDEPLOY_BIN="/opt/codedeploy-agent/bin/codedeploy-agent"
$CODEDEPLOY_BIN stop
yum erase codedeploy-agent -y
cd /home/ec2-user
wget https://aws-codedeploy-ap-northeast-1.s3.ap-northeast-1.amazonaws.com/latest/install
chmod +x ./install
sudo ./install auto

これでdeployするEC2のセットアップは完了です。

Githubの準備

次にgithubにサンプルをアップして、EC2にデプロイできるかテストします。
下記を参考に進めます。

https://docs.aws.amazon.com/ja_jp/codedeploy/latest/userguide/tutorials-github-upload-sample-revision.html

deploy用のサンプルをawsのチュートリアルのように取得するには、AWS clientをインストールと準備する必要がありますので前回の記事を参考に準備をお願いします。

CodeDeployの実行