Azure CLI で Azure Functions に接続文字列を追加する方法 #Azure リレー

この記事はFIXER Advent Calendar 2021( https://adventar.org/calendars/6837 )8日目の記事です。

そしてAzure リレーの記事でもあります!!

リレーの前回は藤井さんの「Azure でハイブリッドクラウドを導入するときの4つの事前検討事項#Azure リレー 」でした!

はじめに

こんにちは、サトハルです。

今回はタイトル通りAzure CLI を用いて Functions の接続文字列を追加する方法について解説します。

忙しい人向けの「答え」

az webapp config connection-string set を使う

Azure Portal と Azure CLI

Azure のリソースを管理する方法は複数あります。

多くの人が最初に触ることになるのはAzure Portalでしょう。

GUIを用いてリソースの管理したい場合にはAzure Portalを用いることになります。

一方、CLIを用いてリソース管理したい場合には複数選択肢があります。

Azure CLI」、「Azure PowerShell」の二つのどちらを使うかと、それらを「ローカルにインストールして実行する」か 「Azure Cloud Shell を用いてWebから実行する」かです。

Windows の PowerShell に慣れている人以外は CLI の方を使うことになると思います。

Azure Portal で Functions に接続文字列を追加する

先ずはPortalから追加してみます。

「構成」のブレードから「新しい接続文字列」を押して追加します。

「アプリケーション設定」ではないので注意してください。

Azure CLI で Functions に接続文字列を追加する

続いて Azure CLI で接続文字列を追加します。

ログインします。

テナントIDを指定しないと面倒なことになりやすいのでちゃんと指定しましょう。

az login -t <テナントID>

Functions の名前とリソースグループの名前を確認し、以下のコマンドで接続文字列を追加します。

az webapp config connection-string set -t <種類> -g <リソースグループ名> -n <Functionsリソース名> --settings <Key>=<Value>

先ほどのFunctionsに実際に値を追加してみると以下のようになります。

まとめ

さらっと解説してしまったんですが、 Functionsに接続文字列を追加したい場合には WebApps用 のコマンドを叩く必要があります。

Functions側には接続文字列を追加するコマンドはないですが、アプリケーション設定を追加するコマンドはあります。

そのせいでよりややこしくなっているような気がします。

そのうちFunctions側にも追加される気がしますが、今日(2021年12月)時点ではまだ無いようです。

リソース生成は最初は手作業で最終的にはIaC化されるのが主流だと思いますので、CLIで管理されるのは中々レアケースな気もしますが誰かの助けになれば幸いです。