つばろぐ

主に C#, .NET, Azure の備忘録です。たまに日記。

microsoft/azurechat をデプロイする

娘に使ってもらおうと microsoft/azurechat をデプロイしました。

github.com

デプロイ

自分は Azure Developer CLI でデプロイできるものはそれを使う派なので、README に沿ってコマンドでデプロイしました。

azd init -t microsoft/azurechat
azd up

init の際に環境名 (environment name) の入力を求められます。
開発環境だからといって dev とつけてしまうと、リソースグループやリソースの名前も dev だけついて、なんのリソースだか分からなくなるので注意です。

$ azd init -t microsoft/azurechat

Initializing an app to run on Azure (azd init)

  () Done: Initialized git repository
  () Done: Downloading template code to: /home/yuta/source/azd/azure-chat

? Enter a new environment name: azurechatdev

また、たまにリソースはデプロイできても、アプリのデプロイに失敗するときがあります。
そのときは再度 azd up を実行します。

認証の準備

Azure Chat は2種類の IdP を設定することができます。

  1. GitHub
  2. Microsoft Entra ID (Microsoft 365)

今回は Entra ID の認証の構成を行います。

azurechat/docs/5-add-identity.md at main · microsoft/azurechat · GitHub

Entra ID にアプリケーションを登録し、デプロイ後に作成された Azure Web App をリダイレクト URI に指定します。
また、クライアントシークレットを発行し、Azure Chat の環境変数に設定します。

AZURE_AD_CLIENT_ID=
AZURE_AD_CLIENT_SECRET=
AZURE_AD_TENANT_ID=

なお AZURE_AD_CLIENT_SECRET のみ、Azure Key Vault シークレットに登録し、それを参照する設定にしました。

aadojo.alterbooth.com

ログイン

では Azure Chat から Entra ID でログインします。
いつものように初回のアクセス許可の要求を経て、無事に Azure Chat を使い始めることができました。

画像も生成できる

いつの間にか Azure Chat から画像を生成できるようになっていました。
試しに「海辺でソフトクリームを食べるジャイアントパンダ」の画像を要求してみましたが、DALL-E 3 モデルでいい感じです。

GitHubのコミットとプルリクエストをAzure Boardsのアイテムにリンクする

※前回

tsubalog.hatenablog.com


コミットのリンク

統合した Azure Boards と GitHub の連携として、GitHub で行ったコミットを Azure Boards のアイテムにリンクしてみます。
ドキュメントはこちら。

learn.microsoft.com

learn.microsoft.com

作業内容となる Issue はこちら。このアイテムに付与された ID は「593」となっています。

コードの変更を行い、コミットメッセージに AB#593 を含めます。
この「593」というのは、コミットをリンクしたい Azure Boards のアイテムの ID となります。

コミットをリポジトリにプッシュすると、Azure Boards にもコミットがリンクされました。

プルリクエストのリンク

先程のコミットのプルリクエストを作成します。
このときプルリクエストの本文 (Description) に AB#539 を含めます。

すると自動的に Azure Boards のアイテムにプルリクエストがリンクされました。

プルリクエストを(マージせずに)クローズすると、Azure Boards でもクローズされたことが分かります。

プルリクエストのタイトルや本文に AB#539 が含まれていないプルリクエストは、Azure Boards に自動的にリンクされませんでした。
その場合は手動でリンクすることができます。

Azure BoardsとGitHubを統合する

久しぶりに Azure Boards と GitHub の検証をしようと思っているので、まずはこの2つを連携できるよう統合設定を行います。
手順はこのドキュメントに沿って行います。

learn.microsoft.com

Azure DevOps プロジェクトを作成し、プロジェクトの設定から GitHub アカウントへの接続を行います。

GitHub アカウントへの認証が終わると、Azure DevOps と接続をする GitHub アカウントや Organization を指定します。
今回は自分のアカウントにあるリポジトリを選択します。

GitHub にインストールされた Azure Boards アプリを、どのリポジトリにアクセスできるようにするかという設定に移ります。
今回の検証用の GitHub リポジトリが含まれているようにします。

連携が完了すると、対象の GitHub リポジトリが一覧に表示されました。


Azure Boards と GitHub を統合する作業は、一旦これで終わりです。