Voorbeeld van Azure CLI-script - een logische app maken
Van toepassing op: Azure Logic Apps (verbruik)
Met dit script maakt u een logische voorbeeld-app via de Azure CLI Logic Apps-extensie (az logic
). Zie de quickstart voor Logic Apps voor de Azure CLI voor een gedetailleerde handleiding voor het maken en beheren van logische apps via de Azure CLI.
Waarschuwing
De Azure CLI Logic Apps-extensie is momenteel experimenteel en niet gedekt door klantenondersteuning. Wees voorzichtig wanneer u deze CLI-extensie gebruikt, vooral als u ervoor kiest de extensie in productieomgevingen te gebruiken.
Vereisten
- Een Azure-account met een actief abonnement. Als u nog geen abonnement op Azure hebt, maak dan een gratis account.
- Azure CLI, geïnstalleerd op uw lokale computer.
- De Azure CLI Logic Apps-extensie, geïnstalleerd op uw computer. Gebruik de volgende opdracht om deze extensie te installeren:
az extension add --name logic
- Een werkstroomdefinitie voor uw logische app. Dit JSON-bestand moet het taalschema voor de werkstroomdefinitie volgen.
- Een API-verbinding met een e-mailaccount via een ondersteunde Azure Logic Apps-connector in dezelfde resourcegroep als uw logische app. In dit voorbeeld wordt de Office 365 Outlook-connector gebruikt, maar u kunt ook andere connectors gebruiken, zoals Outlook.com.
Controle van vereisten
Valideer uw omgeving voordat u begint:
Meld u aan bij de Azure-portal en controleer of uw abonnement actief is door
az login
uit te voeren.Controleer uw Azure CLI-versie in een terminal- of opdrachtvenster door
az --version
uit te voeren. Bekijk de meest recente releaseopmerkingen voor de nieuwste versie.- Als u de nieuwste versie niet hebt, werkt u uw installatie bij door de installatiehandleiding voor uw besturingssysteem of platform te volgen.
Uitleg van voorbeeldwerkstroom
In dit voorbeeld van een werkstroomdefinitiebestand wordt dezelfde eenvoudige voorbeeldwerkstroom voor de logische app Verbruik gemaakt als in de quickstart voor de Azure Portal.
Deze voorbeeldwerkstroom:
Hiermee geeft u een schema,
$schema
, voor de logische app.Definieert een trigger voor de logische app in de lijst met triggers,
triggers
. De trigger komt (recurrence
) elke 3 uur terug. De acties worden geactiveerd wanneer een nieuw feeditem wordt gepubliceerd (When_a_feed_item_is_published
) voor de opgegeven RSS-feed (feedUrl
).Hiermee definieert u een actie voor de logische app in de lijst met acties,
actions
. De actie verzendt een e-mail (Send_an_email_(V2)
) via Microsoft 365 met details van de RSS-feeditems zoals opgegeven in de hoofdtekst (body
) van de invoer van de actie (inputs
).
Voorbeeld van werkstroomdefinitie
Voordat u het voorbeeldscript uitvoert, moet u eerst een voorbeeld van een werkstroomdefinitie maken.
Maak een JSON-bestand
testDefinition.json
op uw computer.Kopieer de volgende inhoud naar het JSON-bestand:
{ "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" } } } } }
Werk de waarden van de tijdelijke aanduidingen bij met uw eigen gegevens:
Vervang het e-mailadres van de tijdelijke aanduiding (
"To": "test@example.com"
). U moet een e-mailadres gebruiken dat compatibel is met Logic Apps-connectors. Zie de vereisten voor meer informatie.Vervang aanvullende connectorgegevens als u een andere e-mailconnector gebruikt dan de Office 365 Outlook-connector.
Vervang de tijdelijke abonnementswaarden (
00000000-0000-0000-0000-000000000000
) voor uw verbindings-id's (connectionId
enid
) onder de parameter verbindingen ($connections
) door uw eigen abonnementswaarden.
Sla uw wijzigingen op.
Voorbeeldscript
Notitie
Dit voorbeeld is geschreven voor de bash
shell. Als u dit voorbeeld wilt uitvoeren in een andere shell, zoals Windows PowerShell of opdrachtprompt, moet u mogelijk wijzigingen aanbrengen in uw script.
Voordat u dit voorbeeldscript uitvoert, voert u deze opdracht uit om verbinding te maken met Azure:
az login
Navigeer vervolgens naar de map waarin u de werkstroomdefinitie hebt gemaakt. Als u bijvoorbeeld het JSON-bestand met de werkstroomdefinitie op uw bureaublad hebt gemaakt:
cd ~/Desktop
Voer vervolgens dit script uit om een logische app te maken.
#!/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"
Opschonen van implementatie
Nadat u klaar bent met het voorbeeldscript, voert u de volgende opdracht uit om uw resourcegroep en alle geneste resources te verwijderen, inclusief de logische app.
az group delete --name testResourceGroup --yes
Uitleg van het script
In dit voorbeeldscript worden de volgende opdrachten gebruikt om een nieuwe resourcegroep en logische app te maken.
Opdracht | Opmerkingen |
---|---|
az group create |
Hiermee maakt u een resourcegroep waarin de resources van uw logische app worden opgeslagen. |
az logic workflow create |
Hiermee maakt u een logische app op basis van de werkstroom die is gedefinieerd in de parameter --definition . |
az group delete |
Hiermee verwijdert u een resourcegroep en alle geneste resources. |
Volgende stappen
Raadpleeg de documentatie van Azure CLI voor meer informatie over de Azure CLI.
Aanvullende Logic Apps CLI-voorbeeldscripts vindt u in Microsoft's voorbeeldcodebrowser.