Aracılığıyla paylaş


Azure CLI betik örneği - mantıksal uygulama oluşturma

Şunlar için geçerlidir: Azure Logic Apps (Tüketim)

Bu betik , Azure CLI Logic Apps uzantısı (az logic) aracılığıyla örnek bir mantıksal uygulama oluşturur. Azure CLI aracılığıyla mantıksal uygulama oluşturma ve yönetmeye yönelik ayrıntılı bir kılavuz için Bkz. Azure CLI için Logic Apps hızlı başlangıcı.

Uyarı

Azure CLI Logic Apps uzantısı şu anda deneyseldir ve müşteri desteği kapsamında değildir. Özellikle uzantıyı üretim ortamlarında kullanmayı seçerseniz bu CLI uzantısını dikkatli kullanın.

Önkoşullar

Ön koşul kontrolü

Başlamadan önce ortamınızı doğrulayın:

  • Azure portalında oturum açın ve komutunu çalıştırarak az loginaboneliğinizin etkin olup olmadığını denetleyin.

  • komutunu çalıştırarak az --versionbir terminalde veya komut penceresinde Azure CLI sürümünüzü denetleyin. En son sürüm için en son sürüm notları bölümüne bakın.

Örnek iş akışı açıklaması

Bu örnek iş akışı tanım dosyası , Azure portalı için hızlı başlangıçtaki tüketim mantığı uygulaması iş akışının aynı temel örneğini oluşturur.

Bu örnek iş akışı:

  1. Mantıksal uygulama için bir şema ( $schema) belirtir.

  2. Tetikleyici listesinde mantıksal uygulama için bir tetikleyici tanımlar. triggers Tetikleyici 3 saatte bir yinelenir (recurrence). Eylemler, belirtilen RSS akışı () için yeni bir akış öğesi yayımlandığında (When_a_feed_item_is_publishedfeedUrl) tetiklenir.

  3. Eylem listesinde mantıksal uygulama için bir eylem tanımlar. actions Eylem, eylemin girişlerinin () gövde bölümünde (Send_an_email_(V2)) belirtildiği gibi RSS akışı öğelerindeki ayrıntıları içeren bir e-posta (bodyinputs) Microsoft 365 üzerinden gönderir.

Örnek iş akışı tanımı

Örnek betiği çalıştırmadan önce örnek bir iş akışı tanımı oluşturmanız gerekir.

  1. Bilgisayarınızda bir JSON dosyası testDefinition.json oluşturun.

  2. Aşağıdaki içeriği JSON dosyasına kopyalayın:

    
    {
        "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"
                    }
                }
            }
        }
    }
    
    
  3. Yer tutucu değerlerini kendi bilgilerinizle güncelleştirin:

    1. Yer tutucu e-posta adresini ()"To": "test@example.com" değiştirin. Logic Apps bağlayıcılarıyla uyumlu bir e-posta adresi kullanmanız gerekir. Daha fazla bilgi için önkoşullara bakın.

    2. Office 365 Outlook bağlayıcısından başka bir e-posta bağlayıcısı kullanıyorsanız ek bağlayıcı ayrıntılarını değiştirin.

    3. Connections parametresinin (00000000-0000-0000-0000-000000000000) altındaki bağlantı tanımlayıcılarınızın (connectionId ve id) yer tutucu abonelik değerlerini ($connections) kendi abonelik değerlerinizle değiştirin.

  4. Değişikliklerinizi kaydedin.

Örnek senaryo

Uyarı

Bu örnek bash kabuğu için yazılmıştır. Bu örneği Windows PowerShell veya Komut İstemi gibi başka bir kabukta çalıştırmak istiyorsanız, betiğinizde değişiklik yapmanız gerekebilir.

Bu örnek betiği çalıştırmadan önce şu komutu çalıştırarak Azure'a bağlanın:


az login

Ardından, iş akışı tanımınızı oluşturduğunuz dizine gidin. Örneğin, masaüstünüzde iş akışı tanımı JSON dosyasını oluşturduysanız:


cd ~/Desktop

Ardından bir mantıksal uygulama oluşturmak için bu betiği çalıştırın.


#!/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"

Dağıtımı Temizle

Örnek betiği kullanmayı tamamladıktan sonra, kaynak grubunuzu ve mantık uygulaması da dahil olmak üzere, iç içe geçmiş tüm kaynaklarını kaldırmak için aşağıdaki komutu çalıştırın.


az group delete --name testResourceGroup --yes

Senaryo açıklaması

Bu örnek betik, yeni bir kaynak grubu ve mantıksal uygulama oluşturmak için aşağıdaki komutları kullanır.

Komut Notes
az group create Mantıksal uygulamanızın kaynaklarının depolandığı bir kaynak grubu oluşturur.
az logic workflow create parametresinde --definitiontanımlanan iş akışını temel alan bir mantıksal uygulama oluşturur.
az group delete Bir kaynak grubunu ve onun iç içe geçmiş tüm kaynaklarını siler.

Sonraki Adımlar

Azure CLI hakkında daha fazla bilgi için Azure CLI belgelerine bakın.

Ek Logic Apps CLI betik örneklerini Microsoft'un kod örnekleri tarayıcısında bulabilirsiniz.