2021-12-04に更新

Azure Pipelineを使ったリリースの実施方法1

Azure Pipeline使って別のDataFactoryへのリリースをやってみたので、備忘録。
記載するのはAzure Pipelineを使ったリリースまでで、トリガーの設定変更や、削除したリソースの反映までは行っていない

実行したのは下記なので、それぞれ手順を記載
・mainブランチに変更が入った場合にトリガー起動でリリース
・adf_publishへの発行をトリガーとしてリリース

◆前提
増分デプロイ

◆使ったDataFactory
開発ADF:作業用:DevOpsにコラボレーションブランチを作成済み
本番ADF:開発ADFのリリース先:ライブモード

◆前準備
1.開発ADFのコラボレーションブランチを作成しているプロジェクトにサービス接続を作成する
 プロジェクトは作成していたけど、サービス接続を作成してなかったからリリースを作成してもデプロイできなかった
https://docs.microsoft.com/ja-jp/azure/azure-resource-manager/templates/deployment-tutorial-pipeline#create-a-devops-project
2.ブランチの役割を決めておく
 リリース先に反映するブランチを決めておく
 下記の構成で、mainブランチをデフォルトブランチにしてリリース設定をすると、workからのプルリクエストを許可した時点で本番ADFに反映される
 adf_publish:ライブモードの動作環境。mainブランチで発行することで、mainの内容が反映される
 mainブランチ:workの内容をプルリクエストでマージする先
 workブランチ:開発用

◆手順(mainブランチに変更が入った場合にトリガー起動でリリース)
1.ビルド用のパイプラインを作成する
参照:https://docs.microsoft.com/ja-jp/azure/data-factory/continuous-integration-delivery-improvements#create-an-azure-pipeline
 package.jsonの作成や場所は、リリース用のブランチのどこか
 公式のyamlの部分を作成環境に合わせて修正する
 $(Build.Repository.LocalPath)=ブランチの/(ルート)に該当するので、ブランチの直下に格納する場合は記載不要
 ブランチの直下に「build」フォルダを作成した場合は、「build」と記載する。
 $(Build.Repository.LocalPath)はコンテナ内にチェックアウトされたリソースフォルダを指している

2.リリースを作成する
参照:https://docs.microsoft.com/ja-jp/azure/data-factory/continuous-integration-delivery-automate-azure-pipelines
上記の手順の「Azure Pipelines リリースをセットアップする」6.で、↑の1で作成したパイプラインを指定すると、トリガー起動するようになる(Source typeで「Build」を選択する)
パイプライン設定

「Azure Resource Manager connection」では、前準備で作成したサービス接続を選択する
前準備で作成したサービス接続を選択しないとサブスクリプションやリソースグループを選択できない

タスクを設定する際に選択するARMテンプレートは、リリースするブランチに格納してある、ARMTemplateForFactory.jsonと、ARMTemplateParametersForFactory.json
今回は開発ADF→本番ADFなので、「Override template parameters」でfactoryNameを上書きしている
image

3.保存して動作確認
問題なければ、デフォルトブランチに変更内容を反映することでリリースまで実行される

★注意点
1で作成したビルド用のパイプラインで出力されるARMテンプレートは、adf_publishに反映されない
なので、adf_publishに反映する場合は「発行」を押下する必要がある

◆手順(adf_publishへの発行をトリガーとしてリリース)
※「mainブランチに変更が入った場合にトリガー起動でリリース」1の手順は不要

1.リリースを作成する
参照:https://docs.microsoft.com/ja-jp/azure/data-factory/continuous-integration-delivery-automate-azure-pipelines
上記の手順の通りにSource typeで「Azure Repos Git」を選択する
Defult branchでadf_publishを選択する

2.トリガーを設定する
稲妻のアイコンを押下して、トリガーを設定する
今回はadf_pulishへの発行をトリガーにするので、Continuous deployment triggerを有効にして、Branchに「adf_publish」を選択する
image

3.リリースを作成する
「mainブランチに変更が入った場合にトリガー起動でリリース」2と同じ

4.保存して動作確認

ツイッターでシェア
みんなに共有、忘れないようにメモ

ao-iro

Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。

また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!

有料記事を販売できるようになりました!

こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?

コメント