적용 대상: Azure Logic Apps(소비)
이 스크립트는 Azure CLI Logic Apps 확장을 통해 샘플 논리 앱을 만듭니다(az logic). Azure CLI를 통해 논리 앱을 만들고 관리하는 방법에 대한 자세한 가이드는 Azure CLI에 대한 Logic Apps 빠른 시작을 참조하세요.
경고
Azure CLI Logic Apps 확장은 현재 실험 단계이며 고객 지원에서 다루지 않습니다. 특히 프로덕션 환경에서 이 확장을 사용하도록 선택하는 경우 이 CLI 확장을 주의해서 사용해야 합니다.
필수 조건
- 활성 구독이 있는 Azure 계정. Azure 구독이 없는 경우 무료 계정을 만드십시오.
- 로컬 컴퓨터에 설치된 Azure CLI
- 컴퓨터에 설치된 Logic Apps Azure CLI 확장 입니다. 이 확장을 설치하려면
az extension add --name logic명령을 사용합니다. - 논리 앱에 대한 워크플로 정의 입니다. 이 JSON 파일은 워크플로 정의 언어 스키마를 따라야 합니다.
- 논리 앱과 동일한 리소스 그룹에 있는 지원되는 Azure Logic Apps 커넥터를 통해 이메일 계정으로의 API 연결입니다. 이 예제에서는 Office 365 Outlook 커넥터를 사용하지만 Outlook.com 같은 다른 커넥터도 사용할 수 있습니다.
사전 요구 사항 확인
시작하기 전에 현재 환경의 유효성을 검사합니다.
Azure Portal에 로그인하고
az login을 실행하여 구독이 활성 상태인지 확인합니다.터미널 또는 명령 창에서
az --version을 실행하여 Azure CLI 버전을 확인합니다. 최신 버전은 최신 릴리스 정보를 참조하세요.- 최신 버전이 없는 경우 사용 중인 운영 체제 또는 플랫폼의 설치 가이드에 따라 설치를 업데이트합니다.
샘플 워크플로 설명
이 예제 워크플로 정의 파일은 Azure Portal에 대한 빠른 시작과 동일한 기본 예제 소비 논리 앱 워크플로를 만듭니다.
이 샘플 워크플로:
논리 앱에 대한 스키마
$schema를 지정합니다.트리거 목록에서 논리 앱에 대한 트리거를 정의합니다
triggers. 트리거는 3시간마다 (recurrence) 되풀이됩니다. 지정된 RSSWhen_a_feed_item_is_published피드()에 대한 새 피드 항목(feedUrl)이 게시될 때 작업이 트리거됩니다.작업 목록에서 논리 앱에 대한 작업을
actions정의합니다. 이 작업은 작업 입력()의 본문 섹션(Send_an_email_(V2))에 지정된 대로 RSS 피드 항목의 세부 정보가 포함된 전자 메일(body)을 Microsoft 365를 통해 보냅니다inputs.
샘플 워크플로 정의
샘플 스크립트를 실행하기 전에 먼저 샘플 워크플로 정의를 만들어야 합니다.
컴퓨터에 JSON 파일을
testDefinition.json만듭니다.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" } } } } }자리 표시자 값을 사용자 고유의 정보로 업데이트합니다.
자리 표시자 이메일 주소(
"To": "test@example.com")를 교체합니다. Logic Apps 커넥터와 호환되는 이메일 주소를 사용해야 합니다. 자세한 내용은 필수 구성 요소참조하세요.Office 365 Outlook 커넥터 외에 다른 전자 메일 커넥터를 사용하는 경우 추가 커넥터 세부 정보를 바꿉니다.
연결 매개 변수(
00000000-0000-0000-0000-000000000000) 아래에서 연결 식별자(connectionId및id)에 대한 자리 표시자 구독 값($connections)을 고유의 구독 값으로 바꿉니다.
변경 내용을 저장합니다.
샘플 스크립트
비고
이 샘플은 셸용으로 작성되었습니다 bash . Windows PowerShell 또는 명령 프롬프트와 같은 다른 셸에서 이 샘플을 실행하려면 스크립트를 수정해야 할 수 있습니다.
이 샘플 스크립트를 실행하기 전에 다음 명령을 실행하여 Azure에 연결합니다.
az login
다음으로 워크플로 정의를 만든 디렉터리로 이동합니다. 예를 들어 데스크톱에서 워크플로 정의 JSON 파일을 만든 경우:
cd ~/Desktop
그런 다음, 이 스크립트를 실행하여 논리 앱을 만듭니다.
#!/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"
배포 정리
샘플 스크립트 사용을 완료한 후 다음 명령을 실행하여 리소스 그룹 및 논리 앱을 포함한 모든 중첩된 리소스를 제거합니다.
az group delete --name testResourceGroup --yes
스크립트 설명
이 샘플 스크립트는 다음 명령을 사용하여 새 리소스 그룹 및 논리 앱을 만듭니다.
| 명령어 | 비고 |
|---|---|
az group create |
논리 앱의 리소스가 저장되는 리소스 그룹을 만듭니다. |
az logic workflow create |
매개 변수 --definition에 정의된 워크플로를 기반으로 논리 앱을 만듭니다. |
az group delete |
리소스 그룹 및 해당 중첩된 모든 리소스를 삭제합니다. |
다음 단계
Azure CLI에 대한 자세한 내용은 Azure CLI 설명서를 참조하세요.
Microsoft의 코드 샘플 브라우저에서 추가 Logic Apps CLI 스크립트 샘플을 찾을 수 있습니다.