Exemplo de script da CLI do Azure - criar uma aplicação lógica
Aplica-se a: Azure Logic Apps (Consumo)
Este script cria uma aplicação lógica de exemplo através da extensão do Logic Apps da CLI do Azure (az logic
). Para obter um guia detalhado sobre como criar e gerir aplicações lógicas através da CLI do Azure, veja o início rápido do Logic Apps para a CLI do Azure.
Aviso
A extensão do Logic Apps da CLI do Azure é atualmente experimental e não é abrangida pelo suporte ao cliente. Utilize esta extensão da CLI com cuidado, especialmente se optar por utilizar a extensão em ambientes de produção.
Pré-requisitos
- Uma conta do Azure com uma subscrição ativa. Se não tiver uma subscrição do Azure, crie uma conta gratuita.
- A CLI do Azure instalada no seu computador local.
- A extensão da CLI do Azure do Azure do Logic Apps instalada no computador. Para instalar esta extensão, utilize este comando:
az extension add --name logic
- Uma definição de fluxo de trabalho para a sua aplicação lógica. Este ficheiro JSON tem de seguir o esquema de linguagem Definição de Fluxo de Trabalho.
- Uma ligação de API a uma conta de e-mail através de um conector do Azure Logic Apps suportado no mesmo grupo de recursos que a sua aplicação lógica. Este exemplo utiliza o conector Office 365 Outlook, mas também pode utilizar outros conectores, como Outlook.com.
Verificação de pré-requisitos
Valide o seu ambiente antes de começar:
Inicie sessão no portal do Azure e verifique se a sua subscrição está ativa ao executar
az login
.Verifique a sua versão da CLI do Azure num terminal ou janela de comandos ao executar
az --version
. Para obter a versão mais recente, consulte as notas de versão mais recentes.- Se não tiver a versão mais recente, atualize a instalação ao seguir o guia de instalação do seu sistema operativo ou plataforma.
Explicação do fluxo de trabalho de exemplo
Este ficheiro de definição de fluxo de trabalho de exemplo cria o mesmo exemplo básico Fluxo de trabalho da aplicação lógica de consumo como no início rápido da portal do Azure.
Este fluxo de trabalho de exemplo:
Especifica um esquema,
$schema
, para a aplicação lógica.Define um acionador para a aplicação lógica na lista de acionadores,
triggers
. O acionador repete-se (recurrence
) a cada 3 horas. As ações são acionadas quando é publicado um novo item de feed (When_a_feed_item_is_published
) para o feed RSS especificado (feedUrl
).Define uma ação para a aplicação lógica na lista de ações,
actions
. A ação envia um e-mail (Send_an_email_(V2)
) através do Microsoft 365 com detalhes dos itens do feed RSS, conforme especificado na secção do corpo (body
) das entradas da ação (inputs
).
Definição de fluxo de trabalho de exemplo
Antes de executar o script de exemplo, primeiro tem de criar uma definição de fluxo de trabalho de exemplo.
Crie um ficheiro
testDefinition.json
JSON no seu computador.Copie o seguinte conteúdo para o ficheiro JSON:
{ "definition": { "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#", "actions": { "Send_an_email_(V2)": { "inputs": { "body": { "Body": "<p>@{triggerBody()?['publishDate']}<br>\n@{triggerBody()?['title']}<br>\n@{triggerBody()?['primaryLink']}</p>", "Subject": "@triggerBody()?['title']", "To": "test@example.com" }, "host": { "connection": { "name": "@parameters('$connections')['office365']['connectionId']" } }, "method": "post", "path": "/v2/Mail" }, "runAfter": {}, "type": "ApiConnection" } }, "contentVersion": "1.0.0.0", "outputs": {}, "parameters": { "$connections": { "defaultValue": {}, "type": "Object" } }, "triggers": { "When_a_feed_item_is_published": { "inputs": { "host": { "connection": { "name": "@parameters('$connections')['rss']['connectionId']" } }, "method": "get", "path": "/OnNewFeed", "queries": { "feedUrl": "https://www.pbs.org/now/rss.xml" } }, "recurrence": { "frequency": "Hour", "interval": 3 }, "splitOn": "@triggerBody()?['value']", "type": "ApiConnection" } } }, "parameters": { "$connections": { "value": { "office365": { "connectionId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/testResourceGroup/providers/Microsoft.Web/connections/office365", "connectionName": "office365", "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Web/locations/westus/managedApis/office365" }, "rss": { "connectionId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/testResourceGroup/providers/Microsoft.Web/connections/rss", "connectionName": "rss", "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Web/locations/westus/managedApis/rss" } } } } }
Atualize os valores do marcador de posição com as suas próprias informações:
Substitua o endereço de e-mail do marcador de posição (
"To": "test@example.com"
). Tem de utilizar um endereço de e-mail compatível com conectores do Logic Apps. Para obter mais informações, veja os pré-requisitos.Substitua os detalhes adicionais do conector se estiver a utilizar outro conector de e-mail do que o conector Office 365 Outlook.
Substitua os valores de subscrição do marcador de posição (
00000000-0000-0000-0000-000000000000
) dos identificadores de ligação (connectionId
eid
) no parâmetro de ligações ($connections
) pelos seus próprios valores de subscrição.
Guarde as alterações.
Script de exemplo
Nota
Este exemplo foi escrito para a bash
shell. Se quiser executar este exemplo noutra shell, como Windows PowerShell ou Linha de Comandos, poderá ter de efetuar modificações ao script.
Antes de executar este script de exemplo, execute este comando para ligar ao Azure:
az login
Em seguida, navegue para o diretório no qual criou a definição do fluxo de trabalho. Por exemplo, se tiver criado o ficheiro JSON de definição de fluxo de trabalho no ambiente de trabalho:
cd ~/Desktop
Em seguida, execute este script para criar uma aplicação lógica.
#!/bin/bash
# Create a resource group
az group create --name testResourceGroup --location westus
# Create your logic app
az logic workflow create --resource-group "testResourceGroup" --location "westus" --name "testLogicApp" --definition "testDefinition.json"
Limpar a implementação
Depois de terminar de utilizar o script de exemplo, execute o seguinte comando para remover o grupo de recursos e todos os recursos aninhados, incluindo a aplicação lógica.
az group delete --name testResourceGroup --yes
Explicação do script
Este script de exemplo utiliza os seguintes comandos para criar um novo grupo de recursos e uma aplicação lógica.
Comando | Notas |
---|---|
az group create |
Cria um grupo de recursos no qual os recursos da sua aplicação lógica são armazenados. |
az logic workflow create |
Cria uma aplicação lógica com base no fluxo de trabalho definido no parâmetro --definition . |
az group delete |
Elimina um grupo de recursos e todos os recursos aninhados. |
Passos seguintes
Para obter mais informações sobre a CLI do Azure, veja a documentação da CLI do Azure.
Pode encontrar exemplos adicionais de scripts da CLI do Logic Apps no browser de exemplos de código da Microsoft.