1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Code Pipelineのチュートリアルやってみた!~CodeCommit編~

Posted at

はじめに

Code Pipelineのチュートリアルをやってみたので記事にしようと思います。

やってみる

今回は「チュートリアル: シンプルなパイプラインを作成する (CodeCommit リポジトリ)」をやりました。

事前準備

前回の記事で紹介したように、IAMユーザを作成します。今回は、前回与えたポリシーに加えて、AWSCodeCommitFullAccessも追加しました。

1. CodeCommitリポジトリを作成する

まずはリポジトリを作成します。
CodeCommitコンソールを開き、「リポジトリを作成」ボタンからリポジトリを作成します。
適当な名前を入力して、あとは特に何もいじりませんでした。

2. リポジトリをクローンする

先程作成したリポジトリを手元にクローンします。
まずは、こちらの記事の「ステップ 3: CodeCommit への HTTPS 接続用の Git 認証情報を作成する」を参考に、クローン出来るように、IAMユーザに設定を追加します。
使用しているIAMユーザの詳細を開き、「セキュリティ認証情報」タブを選択します。
「AWS CodeCommit の HTTPS Git 認証情報」の欄があるので、そこから認証情報を生成します。
ユーザ名とパスワードが生成されるので、メモするか認証情報をダウンロードします。

CodeCommitリポジトリに戻り、「URLのクローン」からHTTPSを選択してクローンするためのURLをコピーします。
それを手元の任意のフォルダで実行し、手元にクローンします。
実行時にユーザ名とパスワードを聞かれるので生成した認証情報を入力します。

3. 手元のリポジトリにサンプルコードを展開する

こちらのリンクからサンプルコードをダウンロードして、先程クローンしたリポジトリに展開します。
CodeCommitリポジトリへのcommitやpushは、通常のGitと同じやり方です。

3. デプロイするインスタンスを作成する

サンプルコードをデプロイするためのインスタンスを作成します。
AMIはAmazon Linux 2 Kernel 5.10 SSDを選択しました。
インスタンスプロフィールは、前回のチュートリアルで作成したものを利用します。
インスタンスタイプはt2.microを選択し、インスタンスを一台起動します。

4. CodeDeployでデプロイグループを作成する

こちらは前回のチュートリアルと同様の手順で行います。

サービスロール

サービスロールは、インスタンスに割り当てたIAMロールと同じように作成します。ユースケースでCodeDeployを選択すると自動的にAWSCodeDeployRoleポリシーが含まれるようになるので、何もせず確認画面から作成を行います。

アプリケーション

アプリケーションはCodeDeployコンソールに移動し、アプリケーションタブからアプリケーションの作成を行います。
コンピューティングプラットフォームを選択するところではEC2/オンプレミスを選択します。

デプロイグループ

先程作成したアプリケーションの画面からデプロイグループの作成を行います。

  • Service role:先程作成したサービスロールを選択
  • Deployment typeIn-place
  • 環境設定EC2インスタンスを選択し、キーの部分にはName、値の部分には先程作成したインスタンス名を入力。
    インスタンスを作成する際につけた名前は、自動的に「Name: インスタンス名」というタグとしてインスタンスに付与されるので、これを指定します。
  • AWSSystems Manager によるエージェント設定今すぐアップデートをスケジュールする
  • デプロイ設定CodeDeployDefault.OneAtaTime
  • ロードバランシングの有効化:なし(チェックを外す)

この設定でデプロイグループを作成します。

5. CodePipelineでパイプラインを作成する

こちらも前回のチュートリアルと同様の手順ですが、ソースステージのところは「CodeCommit」を選択します。

パイプラインの設定を選択する

適当な名前を入力し、サービスロールの作成を選択します。
高度な設定は特に変更しません。

ソースステージを追加する

ソースプロバイダーにCodeCommitを選択します。
リポジトリには作成したものを、ブランチは表示されるものを選択します。(何も変更していなければmasterが表示されるはずです)
検出オプションは特に変更せず、次に進みます。

ビルドステージを追加する

こちらはビルドステージをスキップボタンを押してスキップします。

デプロイステージを追加する

デプロイプロバイダーにCodeDeployを、アプリケーションとデプロイグループは4.で作成したものを選択します。

ここまで設定したらパイプラインを作成し、パイプラインの実行が完了するのを待ちます(数分かかります)。

パイプラインが成功したら、インスタンスのパブリックDNS名にアクセスするとSuceessページが表示されるはずです!

6. コードを変更してみる

ローカルリポジトリでindex.htmlを編集し、背景色を変えてブランチにpushしてみましょう!
パイプラインが再度実行されて、先程表示したページに変更が表示されるはずです。

おわりに

CodePipelineと仲良くなれそうな気がしてきました。

参考

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?