クイックスタート - Azure Logic Apps で Azure CLI を使用してワークフローを作成して管理する
適用対象: Azure Logic Apps (従量課金)
このクイックスタートでは、Azure CLI Logic Apps 拡張機能 (az logic
) を使用して、Azure Logic Apps で実行される自動ワークフローを作成して管理する方法について説明します。 コマンド ラインから、ロジック アプリ ワークフロー定義の JSON ファイルを使用して、マルチテナント Azure Logic Apps で従量課金プラン ロジック アプリを作成できます。 その後、コマンド ラインから、list
、show
(get
)、update
、delete
などの操作を実行してロジック アプリを管理できます。
警告
Azure CLI Logic Apps 拡張機能は、現在、"試験段階" であり、"カスタマーサポートの対象外" です。 この CLI 拡張機能は、特に運用環境での使用を選択する場合、慎重に使用してください。
このクイックスタートは現在、マルチテナント Azure Logic Apps で実行される従量課金ロジック アプリ ワークフローにのみ適用されます。 Azure CLI は現在、シングルテナント Azure Logic Apps で実行される Standard ロジック アプリ ワークフローでは使用できません。 詳細については、Azure Logic Apps のリソースの種類とホストの違いに関するページを参照してください。
Azure Logic Apps を初めて使用する場合は、Azure portal、Visual Studio、Visual Studio Code を使用して初めての従量課金ロジック アプリ ワークフローを作成する方法を学習してください。
前提条件
アクティブなサブスクリプションが含まれる Azure アカウント。 Azure サブスクリプションをお持ちでない場合は、無料アカウントを作成してください。
ご利用のローカル コンピューターに Azure CLI がインストールされていること。
ご利用のコンピューターに Azure Logic Apps CLI 拡張機能がインストールされていること。 この拡張機能をインストールするには、コマンド
az extension add --name logic
を使用します。ロジック アプリを作成する Azure リソース グループ。
前提条件の確認
開始する前に、環境を検証します。
Azure portal にサインインし、
az login
を実行して、ご利用のサブスクリプションがアクティブであることを確認します。az --version
を実行して、ターミナルまたはコマンド ウィンドウの Azure CLI のバージョンを確認します。 最新バージョンについては、最新のリリース ノートを参照してください。最新バージョンを使用していない場合は、オペレーティング システムまたはプラットフォーム用のインストール ガイドに従ってインストールを更新します。
例 - リソース グループの作成
ロジック アプリのリソース グループがまだない場合は、コマンド az group create
を実行してグループを作成します。 たとえば、次のコマンドを実行すると、場所 westus
に testResourceGroup
という名前のリソース グループが作成されます。
az group create --name testResourceGroup --location westus
リソース グループが正常に作成された場合、出力には、provisioningState
が Succeeded
として示されます。
<...>
"name": "testResourceGroup",
"properties": {
"provisioningState": "Succeeded"
},
<...>
ワークフロー定義
Azure CLI を使用して、新しいロジック アプリを作成するか、または既存のロジック アプリを更新する前に、ロジック アプリのワークフロー定義が必要です。 Azure portal で、デザイナー ビューからコード ビューに切り替えると、ロジック アプリの基になるワークフロー定義を JSON 形式で表示できます。
コマンドを実行してロジック アプリを作成または更新する場合、ワークフロー定義は必須パラメーター (--definition
) としてアップロードされます。 ワークフロー定義は、ワークフロー定義言語のスキーマに従う JSON ファイルとして作成する必要があります。
CLI からロジック アプリを作成する
Azure CLI からロジック アプリ ワークフローを作成するには、定義用の JSON ファイルと共にコマンド az logic workflow create
を使用します。
az logic workflow create --definition
--location
--name
--resource-group
[--access-control]
[--endpoints-configuration]
[--integration-account]
[--state {Completed, Deleted, Disabled, Enabled, NotSpecified, Suspended}]
[--tags]
コマンドには、次の必須パラメーターを含める必要があります。
パラメーター | 価値 | 説明 |
---|---|---|
ワークフロー定義 | --definition |
ロジック アプリのワークフロー定義を含む JSON ファイル。 |
場所 | --location -l |
ロジック アプリを配置する Azure リージョン。 |
名前 | --name -n |
ロジック アプリの名前。 名前に含めることができるのは、文字、数字、ハイフン (- )、アンダースコア (_ )、かっこ (() )、ピリオド (. ) のみです。 また、名前はリージョン全体で一意である必要があります。 |
リソース グループ名 | --resource-group -g |
ロジック アプリを作成する Azure リソース グループ。 ロジック アプリのリソース グループがまだない場合は、開始する前に、リソース グループを作成します。 |
さらに、省略可能なパラメーターを追加して、ロジック アプリのアクセス制御、エンドポイント、統合アカウント、状態、リソース タグを構成することもできます。
例 - ロジック アプリの作成
この例では、testLogicApp
という名前のワークフローを場所 westus
にあるリソース グループ testResourceGroup
に作成します。 JSON ファイル testDefinition.json
には、ワークフロー定義が含まれています。
az logic workflow create --resource-group "testResourceGroup" --location "westus" --name "testLogicApp" --definition "testDefinition.json"
ワークフローが正常に作成されると、CLI によって、新しいワークフロー定義の JSON コードが表示されます。 ワークフローの作成に失敗した場合は、発生する可能性のあるエラーの一覧を参照してください。
CLI からロジック アプリを更新する
Azure CLI からロジック アプリのワークフローを更新するには、コマンド az logic workflow create
を使用します。
コマンドには、ロジック アプリを作成する場合と同じ必須パラメーターを含める必要があります。 また、ロジック アプリを作成する場合と同じ省略可能なパラメーターを追加することもできます。
az logic workflow create --definition
--location
--name
--resource-group
[--access-control]
[--endpoints-configuration]
[--integration-account]
[--integration-service-environment]
[--state {Completed, Deleted, Disabled, Enabled, NotSpecified, Suspended}]
[--tags]
例 - ロジック アプリの更新
この例では、前のセクションで作成したサンプル ワークフローを更新して、別の JSON 定義ファイル newTestDefinition.json
を使用し、説明の値を含む 2 つのリソース タグ testTag1
と testTag2
を追加します。
az logic workflow create --resource-group "testResourceGroup" --location "westus" --name "testLogicApp" --definition "newTestDefinition.json" --tags "testTag1=testTagValue1" "testTag2=testTagValue"
ワークフローが正常に更新されると、CLI によって、ロジック アプリの更新されたワークフロー定義が表示されます。 更新が失敗した場合は、発生する可能性のあるエラーの一覧を参照してください。
CLI からロジック アプリを削除する
Azure CLI からロジック アプリのワークフローを削除するには、コマンド az logic workflow delete
を使用します。
コマンドには、次の必須パラメーターを含める必要があります。
パラメーター | 価値 | 内容 |
---|---|---|
名前 | --name -n |
ロジック アプリの名前。 |
リソース グループ名 | -resource-group -g |
ロジック アプリを配置するリソース グループ。 |
省略可能なパラメーターを含めて、確認プロンプト --yes -y
をスキップすることもできます。
az logic workflow delete --name
--resource-group
[--yes]
この後、CLI によって、ロジック アプリの削除を確認するように求められます。 コマンドで省略可能なパラメーター --yes -y
を使用すると、確認プロンプトをスキップできます。
Are you sure you want to perform this operation? (y/n):
ロジック アプリの削除を確認するには、CLI でロジック アプリの一覧を表示するか、または Azure portal でロジック アプリを表示します。
例 - ロジック アプリの削除
この例では、前のセクションで作成したサンプル ワークフローを削除します。
az logic workflow delete --resource-group "testResourceGroup" --name "testLogicApp"
確認プロンプトに y
で応答すると、ロジック アプリが削除されます。
考慮事項 - ロジック アプリの削除
ロジック アプリを削除すると、ワークフロー インスタンスに次のような影響が生じます。
進行中および保留中の実行があれば、それらのキャンセルを Azure Logic Apps がベスト エフォートで試みます。
大量のボリュームやバックログがあったとしても、ほとんどの実行は完了前または開始前にキャンセルされます。 ただし、キャンセル プロセスは完了までに時間がかかる場合があります。 その間、ランタイムがキャンセル プロセスに対処する傍ら、いくつかの実行が実行対象として選択されてしまう可能性があります。
Azure Logic Apps は、新しいワークフロー インスタンスを作成することも実行することもありません。
ワークフローを削除してから同じワークフローを再作成しても、再作成されたワークフローに、削除したワークフローと同じメタデータが割り当てられることはありません。 削除したワークフローの呼び出し元となったワークフローを再保存する必要があります。 これにより、呼び出し元は、再作成されたワークフローの正しい情報を取得します。 それ以外の場合、再作成したワークフローの呼び出しは、
Unauthorized
エラーで失敗します。 この動作は、統合アカウントのアーティファクトを使用するワークフローや、Azure 関数を呼び出すワークフローにも当てはまります。
CLI でロジック アプリを表示する
特定のロジック アプリ ワークフローを取得するには、コマンド az logic workflow show
を使用します。
az logic workflow show --name
--resource-group
コマンドには、次の必須パラメーターを含める必要があります
パラメーター | 価値 | 内容 |
---|---|---|
名前 | --name -n |
ロジック アプリの名前。 |
リソース グループ名 | --resource-group -g |
ロジック アプリを配置するリソース グループの名前。 |
例 - ロジック アプリの取得
この例では、デバッグ用に、リソース グループ testResourceGroup
内のロジック アプリ testLogicApp
が、完全なログと共に返されます。
az logic workflow show --resource-group "testResourceGroup" --name "testLogicApp" --debug
CLI でロジック アプリを一覧表示する
ロジック アプリをサブスクリプション別に一覧表示するには、コマンド az logic workflow list
を使用します。 このコマンドでは、ロジック アプリ ワークフローの JSON コードが返されます。
次の省略可能なパラメーターを使用して、結果をフィルター処理することができます。
パラメーター | 価値 | 説明 |
---|---|---|
リソース グループ名 | --resource-group -g |
結果をフィルター処理するリソース グループの名前。 |
項目数 | --top |
結果に含める項目の数。 |
Assert | --filter |
一覧で使用するフィルターの種類。 状態 (State )、トリガー (Trigger )、参照先リソースの識別子 (ReferencedResourceId ) でフィルター処理できます。 |
az logic workflow list [--filter]
[--resource-group]
[--top]
例 - ロジック アプリの一覧表示
この例では、リソース グループ testResourceGroup
内の有効化されたすべてのワークフローが ASCII テーブル形式で返されます。
az logic workflow list --resource-group "testResourceGroup" --filter "(State eq 'Enabled')" --output "table"
エラー
次のエラーは、Azure Logic Apps CLI 拡張機能がインストールされていないことを示します。 前提条件の手順に従って、ご利用のコンピューターに Logic Apps 拡張機能をインストールします。
az: 'logic' is not in the 'az' command group. See 'az --help'. If the command is from an extension, please make sure the corresponding extension is installed. To learn more about extensions, please visit https://learn.microsoft.com/cli/azure/azure-cli-extensions-overview
次のエラーは、ワークフロー定義をアップロードするためのファイル パスが正しくないことを示している可能性があります。
Expecting value: line 1 column 1 (char 0)
グローバル パラメーター
az logic
コマンドでは、次の省略可能なグローバル Azure CLI パラメーターを使用できます。
パラメーター | 価値 | 説明 |
---|---|---|
出力形式 | --output -o |
出力形式を既定の JSON から変更します。 |
エラーのみを表示 | --only-show-errors |
警告を表示せず、エラーのみを表示します。 |
"詳細" | --verbose |
詳細ログを表示します。 |
デバッグ | --debug |
すべてのデバッグ ログを表示します。 |
ヘルプ メッセージ | --help -h |
ヘルプ ダイアログを表示します。 |
クエリ | --query |
JSON 形式の出力の JMESPath クエリ文字列を設定します。 |
次のステップ
Azure CLI の詳細については、Azure CLI のドキュメントのページを参照してください。
Microsoft のコード サンプル ブラウザーで、その他の Azure Logic Apps CLI スクリプトのサンプルを確認できます。
次に、サンプル スクリプトとワークフロー定義を使用して、Azure CLI からサンプル アプリ ロジックを作成できます。