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 5 years have passed since last update.

Bot Builder v4 : DevOps リリースパイプライン作成 - Azure リソースの構成

Last updated at Posted at 2019-06-09

前回の記事では Azure DevOps を使ってビルドパイプラインを作りました。今回は開発したボットをリリースする先となる Azure リソースを見ていきます。

Azure Bot Services

BotBuilder SDK を使った開発したボットは、Azure Bot Services に接続する型で公開します。
Azure Bot Services については Azure Bot Service : サービスの概要と初めての Web App Bot 作成 を参照してください。

ボットチャンネル登録と App Service

本番環境でボットを展開する場合、少なくとも「テスト環境」と「本番環境」が必要となります。この場合の検討事項を以下に示します。

  • ボットクライアントは「ボットチャネル登録」経由でボットと接続される
  • ボットチャネル登録に設定できる「メッセージングエンドポイント」は 1 つだけ
  • 各環境の切り替えは瞬時に行える必要がある
  • ロールバックを視野に入れる

上記を考えた場合の最小構成が以下の様になります。

  • 1 つの App Service を複数スロットで運用
  • ボットチャネル登録は環境数分用意

image.png

環境の構築

1. https://portal.azure.com より Azure ポータルに接続し、新しいリソースグループを作成。
image.png

2. まず本番用に、リソースの追加より「Web App Bot」を作成。
image.png

3. ユニークな名前を設定し、ボットテンプレートから C# の Echo Bot を選択。他は任意の設定で「作成」をクリック。
image.png

4. 同じ手順でテスト用の「Web App Bot」も作成。
image.png

5. 初めに作った本番用の App Service を開く。
image.png

6.「デプロイ スロット」より「スロットの追加」をクリック。
image.png

7. 設定の複製を選択して新しいスロットを追加。
image.png

8. 追加されたスロットを選択。
image.png

9.「構成」をクリック。MicrosoftAppId と MicrosoftAppPassword があることを確認。¥image.png

10. 新しいタブで、別に作成したテスト用 App Service に接続。
image.png

11.「構成」より「高度な編集」をクリック。
image.png

12. MicrosoftAppId と MicrosoftAppPassword の値をコピー。
image.png

13. 追加したスロット側の構成にペースト。slotSetting と true に変更して保存。これによりスロットスワップ時に構成情報が入れ替わらない。
image.png

14.「概要」よりアドレスをコピー。
image.png

15. テスト用の「ボットチャネル登録」を開き、設定より「メッセージングエンドポイント」を更新。
image.png

16. テスト用の「Web App Bot」を作成した際に登録された App Service と App Plan を削除。
image.png

これで 2 つのスロットを持った App Service 1 つと、それぞれのスロットをポイントしている「ボットチャネル登録」2 が完成です。

まとめ

今回はリリース先となるリソースを Azure 上に作成しました。次回はリリースパイプラインを作ります。

次の記事へ
目次に戻る

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?