Azure CLI を使用してタスクを自動化する
Azure タスクの自動化は、ホスト環境への継続的デプロイのための一般的な要件です。 タスクを管理し、任意の場所からデプロイするために、JavaScript 開発者には Azure CLI をお勧めします。
JavaScript 開発者のための一般的なタスク コマンドについて説明します。
Azure CLI を使用した自動化
Azure CLI を自動化するには、環境に CLI をインストールする必要があります。 一般的な方法を次に示します。
サンプル コマンドの使用
- 山かっこ
<...>
内の変数を実際の値に置き換えます。 <MY_GITHUB_DEFAULT_BRANCH_NAME>
に対するご自身の GitHub リポジトリの値は、使用するリポジトリに固有です。 現在、一般的な値はmain
またはdefault
です。 以前のリポジトリでは、master
を使用することもあります。
Azure CLI を使用した自動化されたタスクのためのマネージド ID による認証
自動化のために、マネージド ID を使用して Azure CLI への az login を認証します。
az login --identity
Azure CLI を使用した自動化されたタスクのためのサービス プリンシパルによる認証
サービス プリンシパルが作成された後に、ユーザーのサービス プリンシパルでログインします。
read -sp "Azure password: " AZ_PASS && echo && \
az login --service-principal \
-u <MY-SP-APP-URL> \
-p $AZ_PASS \
--tenant <MY-TENANT>
Azure CLI を使用した自動化されたタスクのためのユーザー資格情報による認証
次のコマンドを使用して、ユーザー資格情報により認証します。
az login -u <MY_AZURE_USERNAME> -p <MY_AZURE_PASSWORD>
リソースのリソースグループを作成する
リソース グループは、Azure リソースの論理的なコレクションです。 論理グループは、プロジェクトの特定のリージョンで必要とされるサービスに基づいています。 名前付け規則について確認してください。 Azure サービス リソースを作成する前に、az group create コマンドを使用してリソース グループを作成します。
az group create \
--name <MY-AZURE-RESOURCE_GROUP_NAME> \
--location <AZURE_REGION_LOCATION>
Azure Static Web アプリ を作成する
az staticwebapp create コマンドを使用して、新しい静的 Web アプリを作成します。
az staticwebapp create \
--name <MY_AZURE_WEB_APP_NAME> \
--resource-group <MY-AZURE-RESOURCE_GROUP_NAME> \
--source https://github.com/<MY_GITHUB_ACCOUNT_NAME>/<MY_AZURE_WEB_APP_NAME> \
--location <AZURE_REGION_LOCATION> \
--branch <MY_GITHUB_DEFAULT_BRANCH_NAME> \
--app-artifact-location "<MY_WEB_APP_BUILD_DIRECTORY_NAME>" \
--token <MY_GITHUB_PERSONAL_ACCESS_TOKEN>
Azure 静的 Web アプリをデプロイする
アプリをデプロイするには、前のセットのリソース作成時に設定されたリモートの GitHub ブランチにプッシュします。
git push <REMOTE_NAME> <MY_GITHUB_DEFAULT_BRANCH_NAME>
このコマンドの例は次のとおりです。
git push origin main
静的 Web アプリを削除する
az staticwebapp delete コマンドを使用して、静的 Web アプリを削除します。
az staticwebapp delete && \
--name <MY_AZURE_WEB_APP_NAME> && \
--resource-group <MY-AZURE-RESOURCE_GROUP_NAME>
Azure 関数アプリを作成する
使用量ベースの関数アプリには、関数アプリとストレージ リソースの両方が必要です。
az storage account create でストレージ リソースを作成します。
az storage account create \ --name <MY-AZURE-STORAGE> \ --location <AZURE_REGION_LOCATION> \ --resource-group <MY-AZURE-RESOURCE_GROUP_NAME> \ --sku Standard_LRS
az functionapp create で関数アプリ リソースを作成します。
az functionapp create \ --name <MY-AZURE-FUNCTION> \ --storage-account <MY-AZURE-STORAGE> \ --consumption-plan-location <AZURE_REGION_LOCATION> \ --resource-group <MY-AZURE-RESOURCE_GROUP_NAME> \ --functions-version 2
Azure 関数 API エンドポイントを作成する
ローカル開発プロジェクト用の Azure 関数 API エンドポイントを作成するための Azure CLI コマンドはありません。 Visual Studio Code の Azure 関数拡張機能は、ローカルの Azure 関数プロジェクトを作成し、API エンドポイントをプロジェクトに追加するために推奨される方法です。
Azure 関数デプロイ スロットを作成する
デプロイ スロットを作成した後にスワップすると、デプロイをすばやく元に戻すことができます。 az functionapp deployment slot create コマンドを使用してデプロイ スロットを作成します。
az functionapp deployment slot create \
--name <MY-AZURE-FUNCTION> \
--resource-group <MY-AZURE-RESOURCE_GROUP_NAME> \
--slot <MY-SLOT-NAME> \
--configuration-source <MY-PRODUCTION-SLOT>
git から Azure 関数アプリをデプロイする
az functionapp deployment source config を使用して、git または Mercurial リポジトリからのデプロイを管理します。--repository-type
設定のリポジトリの種類として、externalgit、git、github、localgit、mercurial のいずれかを選択します。
az functionapp deployment source config --repo-url \
--branch <MY-REPO-BRANCH> \
--git-token <MY-GIT-TOKEN> \
--name <MY-AZURE-FUNCTION> \
--repository-type <MY-REPO-TYPE> \
--resource-group <MY-AZURE-RESOURCE_GROUP_NAME> \
--slot <MY-SLOT-NAME> \
Azure 関数スロットをスワップする
az functionapp deployment slot swap コマンドを使用してスロットをスワップします。 スロット アクションの選択肢は次のとおりです: preview、reset、swap
az functionapp deployment slot swap \
--resource-group <MY-AZURE-RESOURCE_GROUP_NAME> \
--name <MY-AZURE-FUNCTION> \
--slot <MY-SLOT-NAME> \
--action <YOUR-ACTION> \
--target-slot <MY-OTHER-SLOT-NAME>
Azure 関数を削除する
関数アプリを削除するには、az functionapp delete コマンドを使用します。
az functionapp delete \
--resource-group <MY-AZURE-RESOURCE_GROUP_NAME> \
--name <MY-AZURE-FUNCTION>
次のステップ
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示