Azure PipelinesでARM TemplateのCI/CDパイプラインを実装してみた-事前準備編-

以前の記事で、Azure Resource Managerのデプロイモードについてご紹介しました。

blog.jbs.co.jp

デプロイモードの仕組みを理解したことで、ARM TemplateでもCI/CDのパイプラインを作ることができるのではないかと思い、今回試してみることにしました。

本記事ではAzure PipelinesでARM TemplateのCI/CDパイプラインを作成するための事前準備をしていきます。

CI/CDとは

CI/CDとは継続的インテグレーション(Continuous Integration)と継続的デリバリー(Continuous Delivery)の略称です。

CI/CDはソフトウェア等の変更を継続的にテストし、自動でデプロイするようにした開発手法のことを指します。

事前準備

今回は以下のドキュメントを参考にし、CI/CDのパイプラインを作成していきます。

learn.microsoft.com

パイプラインを作成するにあたり、いくつか事前準備が必要です。

Azure DevOps組織の設定

CI/CDパイプラインの実装にAzure Pipelinesを利用するため、Azure DevOps組織を作成する必要があります。

本記事では詳細な手順は省きますが、Azure DevOps組織がない場合は以下のドキュメントを参考にし、Azure DevOps組織を作成してください。

learn.microsoft.com

Azure DevOpsプロジェクトの作成

Azure Pipelinesを利用するためには、DevOpsプロジェクトが必要になるため、作成していきます。

まずAzure DevOpsにサインインし、「+New Project」をクリックします。

プロジェクト名を入力し、「Create」をクリックします。

しばらく待つとプロジェクトが作成され、自動で作成したプロジェクトに遷移します。

これでプロジェクトが作成できました。

続いて、Azure PipelinesでAzureに対してデプロイするためにはサービスプリンシパルが必要なため、 サービス接続設定をしていきます。

※設定方法は以下のドキュメントをご参照ください。

learn.microsoft.com

先ほど作成したプロジェクトの左下にある「Project settings」をクリックします。

Pipelinesの下にある「Service connections」をクリックします。

「Create service connection」をクリックします。

設定画面が表示されたら「Azure Resource Manager」を選択し、「Next」をクリックします。

「Service principal (automatic)」を選択し、「Next」をクリックします。

以下の設定値を入力し、「Save」をクリックします。

設定項目
Scope level Subscription
Subscription 利用するサブスクリプション
Resource group 入力しない
Service connection name 任意のサービス接続名
Grant access permission to all pipelines チェックを入れる

しばらく待つとサービス接続が作成されます。

これでプロジェクトの設定は完了です。

リポジトリの作成

次はリポジトリの作成をします。

Azure Pipelinesを利用するために、ソースコードを格納するリポジトリを準備する必要があります。今回はAzure Reposを利用するため、Azure Reposのリポジトリを作成していきます。

先ほどのプロジェクト画面の左メニューより、「Repos」をクリックします。

ソースコードを格納するブランチを作成します。画面一番下にある「Initialize」をクリックしてmainブランチを作成します。

※本記事ではReposの画面から作成していますが、ブランチの作成方法及びブランチ名は問いません。

mainブランチが作成されました!

ソースコードのプッシュ

先ほど作成したリポジトリのmainブランチに、ARM Templateをプッシュします。

ARM Templateは以前の記事で利用したARM Templateを利用していきます。

また、リポジトリにソースコードをプッシュするためにはGitが必要になるため、インストールされていない方は以下のURLを参考に、インストールをします。 www.atlassian.com

まずはリポジトリをクローンするために、「Clone」をクリックしてURLを取得します。

赤枠をクリックしてURLをコピーし、控えておきます。

URLが取得できたので、Gitコマンドが利用できるターミナルで以下のコマンドを実行し、リポジトリをクローンします。

# 任意のディレクトリに移動
cd xxxxxx

# リポジトリをクローンする
git clone [先ほど控えたURL]

クローン後、ARM TemplateファイルをREADME.mdと同じ階層に配置します。

配置できたら以下のコマンドを実行し、リモートリポジトリのmainブランチにプッシュします。

# 現在の状態を確認する
git status

# 変更されたファイルを追加する
git add .

# 現在の状態を確認する
git status

#コミットする
git commit -m "add ARM Template"

#リモートリポジトリのmainブランチにプッシュする
git push origin main

プッシュできたので、Azure Reposの画面で実際に確認していきます。

mainブランチにARM Templateファイルが追加されたことを確認できました!

これで事前準備は完了です。

まとめ

今回はAzure PipelinesでARM TemplateのCI/CDパイプラインを作成するための事前準備についてご紹介しました。

次回はAzure Pipelinesの設定をしていきます。

執筆担当者プロフィール
近藤 結梨香

近藤 結梨香(日本ビジネスシステムズ株式会社)

業務では主にAzureに携わっています。映画好きで良く映画館に籠っています。

担当記事一覧