如何从 Azure DevOps Pipeline 创建 Azure 服务队列?
How to create a Azure Service Queue from Azure DevOps Pipeline?
我创建了一个 Azure 函数,它由 Azure 服务总线队列 触发。我也在 Azure 中通过 Azure Pipeline 部署了这些功能。
我的问题是:
- 我可以在 Azure 门户 中手动创建队列。但是如何在构建和发布管道期间创建 Azure 服务总线队列?
- 我可以为 Azure 函数 手动添加应用程序配置(服务总线连接字符串)。但是如何在构建和发布管道中添加它?
Azure 管道任务:
Release Pipeline 中有许多任务可用于创建 Azure 服务总线队列:
- Azure CLI
- PowerShell
- ARM 模板部署
- 地形
Azure CLI 或 PowerShell 可以解决您的问题,您只需在脚本中授权并使用您喜欢使用的任何命令 - 创建 Azure 服务总线并将配置设置为 Azure Functions。
CLI 中有示例:
创建 Azure 服务总线队列(来自 documentation)
# Create a resource group
resourceGroupName="myResourceGroup"
az group create --name $resourceGroupName --location eastus
# Create a Service Bus messaging namespace with a unique name
namespaceName=myNameSpace$RANDOM
az servicebus namespace create --resource-group $resourceGroupName --name $namespaceName --location eastus
# Create a Service Bus queue
az servicebus queue create --resource-group $resourceGroupName --namespace-name $namespaceName --name BasicQueue
# Get the connection string for the namespace
connectionString=$(az servicebus namespace authorization-rule keys list --resource-group $resourceGroupName --namespace-name $namespaceName --name RootManageSharedAccessKey --query primaryConnectionString --output tsv)
将设置设置为 Azure Functions(来自 documentation)
az functionapp config appsettings set --name <FUNCTION_APP_NAME> \
--resource-group <RESOURCE_GROUP_NAME> \
--settings CUSTOM_FUNCTION_APP_SETTING=12345
我创建了一个 Azure 函数,它由 Azure 服务总线队列 触发。我也在 Azure 中通过 Azure Pipeline 部署了这些功能。
我的问题是:
- 我可以在 Azure 门户 中手动创建队列。但是如何在构建和发布管道期间创建 Azure 服务总线队列?
- 我可以为 Azure 函数 手动添加应用程序配置(服务总线连接字符串)。但是如何在构建和发布管道中添加它?
Azure 管道任务:
Release Pipeline 中有许多任务可用于创建 Azure 服务总线队列:
- Azure CLI
- PowerShell
- ARM 模板部署
- 地形
Azure CLI 或 PowerShell 可以解决您的问题,您只需在脚本中授权并使用您喜欢使用的任何命令 - 创建 Azure 服务总线并将配置设置为 Azure Functions。
CLI 中有示例:
创建 Azure 服务总线队列(来自 documentation)
# Create a resource group resourceGroupName="myResourceGroup" az group create --name $resourceGroupName --location eastus # Create a Service Bus messaging namespace with a unique name namespaceName=myNameSpace$RANDOM az servicebus namespace create --resource-group $resourceGroupName --name $namespaceName --location eastus # Create a Service Bus queue az servicebus queue create --resource-group $resourceGroupName --namespace-name $namespaceName --name BasicQueue # Get the connection string for the namespace connectionString=$(az servicebus namespace authorization-rule keys list --resource-group $resourceGroupName --namespace-name $namespaceName --name RootManageSharedAccessKey --query primaryConnectionString --output tsv)
将设置设置为 Azure Functions(来自 documentation)
az functionapp config appsettings set --name <FUNCTION_APP_NAME> \ --resource-group <RESOURCE_GROUP_NAME> \ --settings CUSTOM_FUNCTION_APP_SETTING=12345