Поделиться через


Создание и публикация шаблонов рабочих процессов для Azure Logic Apps

Область применения: Azure Logic Apps (стандартная версия)

Azure Logic Apps предоставляет предварительно созданные шаблоны рабочих процессов интеграции, которые можно использовать для ускорения процесса создания приложений интеграции. Эти шаблоны следуют часто используемым шаблонам и помогают упростить разработку, предоставляя начальную точку или базовый план с предопределенной бизнес-логикой и конфигурациями.

Не только вы можете начать разработку с помощью шаблонов рабочих процессов, вы можете создавать шаблоны рабочих процессов для собственного использования или совместно использовать их с другими пользователями. Шаблон может включать артефакты, такие как схемы, карты и пользовательские сборки. Чтобы добавить шаблон в коллекцию шаблонов в портал Azure, создайте пакет шаблона с помощью этого руководства. По завершении посетите репозиторий шаблонов рабочего процесса в GitHub для Azure Logic Apps, где можно создать запрос на вытягивание для пакета шаблона и просмотреть шаблон в команде Azure Logic Apps .

Ограничения

Шаблоны рабочих процессов в настоящее время поддерживают только стандартные приложения логики и отдельные рабочие процессы.

Что такое пакет шаблона?

В следующей таблице описаны необходимые и необязательные файлы в пакете шаблона:

Имя файла Обязательное поле Описание
workflow.json Да JSON-файл с определением рабочего процесса.
manifest.json Да JSON-файл со сведениями о рабочем процессе и связанных компонентах.
< image-name>-dark.png Да Файл изображения с рабочим процессом в виде снимка экрана только для чтения в формате .png и работает с темной темой браузера.
< image-name>-light.png Да Файл изображения с рабочим процессом как снимок экрана только для чтения в формате .png и работает с светлой темой браузера.
< map-name>.json, .xml или .xslt No Все артефакты, такие как карты и схемы, поддерживающие шаблон рабочего процесса.
< custom-assembly>.dll No Все пользовательские сборки, поддерживающие шаблон рабочего процесса.
readme.md No Файл Markdown с инструкциями, процедурами или другими сведениями для шаблона рабочего процесса.

Вы также можете включить любые другие файлы для поддержания и поддержки шаблона, например файлов с тестами или примерами данных.

Создание папки пакета шаблона

  • Прежде чем создать папку пакета шаблона, ознакомьтесь с соглашениями о именах и стилях.

  • Чтобы репозиторий шаблонов было проще просматривать, упорядочивать и поддерживать, используйте следующий синтаксис для имени папки и наименьшее количество слов, чтобы избежать превышения ограничения символов для путей к файлам:

    < workflow-task-product-pattern-or-protocol><><, если таковой есть>

    Примеры см. в репозитории шаблонов рабочего процесса для Azure Logic Apps в GitHub.

  • Чтобы правильно зарегистрировать папку пакета шаблона, необходимо добавить имя папки в корневой файл manifest.json репозитория.

Создание файла workflow.json

Файл workflow.json содержит базовое определение рабочего процесса в формате JSON. Чтобы создать файл workflow.json , необходимо скопировать и сохранить определение рабочего процесса в виде файла с именем workflow.json.

Чтобы получить определение рабочего процесса проще всего и лучше всего, создайте рабочий процесс с помощью конструктора. Ознакомьтесь с рекомендациями по рабочему процессу вместе с соглашениями о именах и стилях. Кроме того, в качестве отправной точки можно использовать предварительно созданные шаблоны рабочих процессов из коллекции шаблонов в портал Azure.

При создании рабочего процесса конструктор автоматически включает ссылки на все добавленные встроенные подключения, подключения поставщика услуг, управляемые подключения API или библиотеки в базовом определении рабочего процесса.

После завершения скопируйте определение базового рабочего процесса в пустой файл workflow.json .

Рекомендации по рабочему процессу

  • Используйте встроенные операции как можно больше. Например, соединитель Хранилище BLOB-объектов Azure имеет следующие версии, доступные для стандартных рабочих процессов:

    • Встроенная версия поставщика услуг, которая отображается в коллекции соединителей с меткой In App . Эта версия размещается и запускается с помощью среды выполнения Azure Logic Apps с одним клиентом, предлагая более высокую производительность, пропускную способность и другие преимущества.

    • Версия API, управляемая корпорацией Майкрософт, которая отображается в коллекции соединителей с общей меткой. Эта версия размещена и запущена в мультитенантной среде Azure с помощью общих глобальных ресурсов.

  • Не используйте жестко закодированные свойства и их значения в определениях триггеров и действий.

  • Укажите больше контекста о определениях триггеров и действий, добавив описательные и полезные комментарии.

Копирование определения базового рабочего процесса

  1. В портал Azure в меню рабочего процесса в разделе "Разработчик" выберите "Код".

  2. В окне представления кода скопируйте полное определение рабочего процесса, например:

    Снимок экрана: портал Azure, окно представления кода и определение рабочего процесса

  3. Сохраните определение рабочего процесса в пустом файле с именем workflow.json.

Ссылки на параметры в workflow.json

При ссылке на параметры в файле workflow.json необходимо отразить имена параметров, которые используют суффикс _#workflowname# следующим образом:

"name": "@parameters('<parameter-name>_#workflowname#')"

Например:

"name": "@parameters('sharepoint-folder-path_#workflowname#')"

Ссылки на подключения в workflow.json

При ссылке на подключения в файле workflow.json необходимо отразить имена подключений, которые используют суффикс _#workflowname# следующим образом:

"referenceName": "<connector-ID>_#workflowname#",
"connectionName": "<connector-ID>_#workflowname#"

Например:

"referenceName": "azureaisearch_#workflowname#",
"connectionName": "azureaisearch_#workflowname#"

Дополнительные сведения об идентификаторе соединителя см. в разделе "Поиск идентификатора соединителя".

Создание образа шаблона рабочего процесса

В портал Azure каждый шаблон рабочего процесса имеет область обзора в коллекции шаблонов рабочих процессов. Эта область включает в себя образ предварительного просмотра только для чтения для рабочего процесса, который создает шаблон, а также другие сведения о шаблоне.

Чтобы создать этот образ предварительной версии, выполните следующие действия.

  1. В конструкторе настройте рабочий процесс для создания двух снимков экрана.

    Необходимо создать версию для светлой темы браузера и темной темы.

  2. Создайте снимки экрана рабочего процесса с помощью предпочтительного средства записи экрана. Не включайте слишком много пробелов в рабочем процессе.

  3. Сохраните каждое изображение с помощью расширения имени файла .png и любого нужного имени, следуя соглашениям о именах и стилях.

  4. В файле manifest.json для пакета шаблона рабочего процесса добавьте те же имена образов в images раздел без расширения имени файла .png, например:

    "images": {
        "dark": "workflow-dark",
        "light": "workflow-light"
    }
    

Создание файла manifest.json

Файл manifest.json описывает связь между рабочим процессом и связанными компонентами. В настоящее время необходимо вручную создать этот файл или перепрофилировать файл manifest.json из существующего предварительно созданного шаблона в репозитории шаблонов рабочих процессов Azure Logic Apps в GitHub. При создании файла manifest.json обязательно просмотрите имена и соглашения о стиле.

В следующей таблице описаны атрибуты в файле manifest.json :

Attribute name Обязательное поле значение Описание
title Да < заголовок шаблона> Заголовок, отображаемый в коллекции шаблонов, который открывается при добавлении рабочего процесса из шаблона в портал Azure.
description Да < template-description> Описание шаблона, которое отображается в области обзора шаблона в коллекции шаблонов.
prerequisites No < предварительные требования к шаблону> Все необходимые условия для использования шаблона. Отображается в области обзора шаблона. Вы можете связаться с другими документами из этого раздела.
tags No < шаблон-tags-array> Теги шаблонов, используемые для поиска или фильтрации шаблонов.
skus Да standard, consumption Тип рабочего процесса приложения логики, поддерживаемый шаблоном. Если вы не уверены, используйте standard.
kinds No stateful, stateless Режим рабочего процесса, определяющий, хранятся ли состояния журнала выполнения и операций.

По умолчанию все рабочие процессы доступны как в режиме без отслеживания состояния, так и в режиме без отслеживания состояния. Если рабочий процесс выполняется только в режиме с отслеживанием состояния, используйте этот атрибут, чтобы сделать это требование явным.
detailsDescription No См. описание. Любые другие подробные сведения о описании шаблона.
details No См. описание. Сведения о шаблоне для фильтрации коллекции шаблонов.

- By: издатель шаблона, например Microsoft.

- Type: Workflow

- Trigger: тип триггера, например , RecurrenceEventили Request.
artifacts Да < артефакты-массив> Все соответствующие файлы в пакете шаблона и включают следующие атрибуты:

- type: тип файла, определяющий подходящее расположение для копирования файла, например workflow.

- file: имя файла и расширение, например workflow.json.
images Да См. описание. Имена файлов образа рабочего процесса для светлых и темных тем браузера:

- light: имя изображения для светлой темы, например рабочий процесс-свет

- dark: имя изображения для темной темы, например рабочий процесс темный.
parameters Да, но может быть пустым, если нет. < массив workflow-parameters-array> Параметры действий в шаблоне рабочего процесса. Для каждого параметра необходимо указать следующие свойства:

- name: имя параметра должно иметь суффикс, _#workflowname#. Используйте только буквенно-цифровые символы, дефисы или символы подчеркивания и следуйте этому формату:

<parameter-name>_#workflowname#

- displayName: понятное отображаемое имя параметра. См . соглашения о именах и стилях.

- type: тип данных параметра, например String или Int.

- default: значение по умолчанию параметра, если таковое имеется. Если нет, оставьте это значение пустой строкой.

- description Сведения о параметре и другие важные или полезные сведения.

- required: true или false.
connections Да, но может быть пустым, если нет. < массив подключений> Подключения для создания с помощью шаблона рабочего процесса. Каждое подключение имеет следующие свойства:

- connectorId: идентификатор соединителя должен иметь суффикс, _#workflowname#. Используйте только буквенно-цифровые символы, дефисы или символы подчеркивания и следуйте этому формату:

<connector-ID>_#workflowname#

Чтобы найти идентификатор соединителя, ознакомьтесь с идентификатором соединителя.

- kind: тип узла среды выполнения соединителя, который предназначен inapp для встроенных операций и соединителей поставщика услуг или shared управляемых соединителей, размещенных в Azure. В коллекции соединителей встроенные операции и соединители поставщика услуг помечены как In App, а управляемые соединители помечены как Общие.
featuredConnections No < featured-connections-array> По умолчанию в коллекции шаблонов отображаются значки для предварительно созданных операций и соединителей в Azure Logic Apps, используемых каждым шаблоном. Чтобы включить значки для любых других операций, можно использовать featuredConnections атрибут. Каждая операция должна иметь следующие атрибуты:

- kind: тип операции

- type: тип операции

Сведения о поиске этих значений см. в разделе "Поиск типа и типа операции" для раздела FeaturedConnections.

Поиск идентификатора соединителя

Чтобы найти идентификатор соединителя для подключения в файле manifest.json или ссылку на подключение в файле workflow.json, выполните следующие действия.

  1. Откройте ресурс приложения логики на портале Azure.

  2. В меню приложения логики в разделе "Рабочие процессы" выберите "Подключения".

  3. Выберите вкладку "Представление JSON".

  4. В зависимости от типа подключения выполните следующие действия.

    • Для управляемого подключения к API общего доступа, размещенного и запускаемого в Azure:

      1. Найдите раздел managedApiConnections.

      2. В атрибуте connection скопируйте и сохраните id значение, но замените любые личные или конфиденциальные данные, такие как идентификатор подписки, имя группы ресурсов и т. д. следующим #<item>#образом:

        /subscriptions/#subscription#/providers/Microsoft.Web/locations/#location#/managedApis/<connection-name>

        Например, в следующем тексте показан идентификатор соединителя для соединителя SharePoint:

        /subscriptions/#subscription#/providers/Microsoft.Web/locations/#location#/managedApis/sharepointonline

    • Для подключения поставщика услуг, размещенного в среде выполнения Azure Logic Apps с одним клиентом:

      1. Найдите раздел serviceProviderConnections.

      2. Для каждого подключения найдите id атрибут в атрибуте serviceProvider .

      3. Скопируйте и сохраните следующее значение:

        /serviceProviders/<connection-name>

        Например, в следующем тексте показан идентификатор соединителя для соединителя поиска ИИ Azure:

        /serviceProviders/azureaisearch.

Поиск свойств операции "kind" и "type" для featuredConnections

В файле manifest.json раздел может содержать значки для любых других операций, featuredConnections которые необходимо включить в коллекцию шаблонов в портал Azure. Для этого раздела, являющегося массивом, необходимо указать kind атрибуты type для каждой операции.

Чтобы получить эти значения атрибутов, выполните следующие действия в портал Azure с открытым рабочим процессом:

  1. В меню рабочего процесса в разделе "Разработчик" выберите "Код".

  2. В окне представления кода в actions разделе найдите нужную операцию, а затем найдите и type значенияkind.

Добавление пакета шаблона в репозиторий GitHub

Чтобы опубликовать шаблон в коллекции шаблонов в портал Azure, настройте GitHub и создайте запрос на вытягивание с пакетом шаблона для проверки и проверки:

  1. Создайте учетную запись GitHub, если у вас нет учетной записи.

    Дополнительные сведения см. в статье "Начало работы с учетной записью GitHub".

  2. Перейдите в репозиторий шаблонов рабочего процесса с именем LogicAppsTemplates для Azure Logic Apps в GitHub.

  3. Создайте собственную вилку, которая является удаленной копией репозитория LogicAppsTemplates в GitHub.

    Дополнительные сведения см. в разделе "Вилка репозитория".

  4. Чтобы локально работать, клонируйте вилку на компьютер.

    1. Выполните следующие действия, чтобы скачать, установить и настроить Git.

    2. Перейдите в вилку с следующим URL-адресом:

      https://github.com/<your-username>/LogicAppsTemplates

    3. На локальном компьютере создайте папку с именем GitHub, если у вас еще нет. Не клонируйте приложение синхронизации OneDrive папку.

    4. Выполните следующие действия, чтобы клонировать вилку, а не рабочий репозиторий.

    5. В локальном репозитории выполните следующие действия, чтобы создать рабочую ветвь.

    6. После получения рабочей ветви перейдите на корневой уровень в локальном репозитории и создайте папку пакета шаблона.

    7. Добавьте файлы шаблонов в папку пакета шаблона и обновите файл manifest.json корневого уровня с именем папки.

    8. Когда вы будете готовы зафиксировать изменения в локальном репозитории, например сохранение моментального снимка, выполните следующие команды с помощью средства командной строки Git или других средств:

      git add .

      git commit -m "<commit-short-description>"

    9. Чтобы отправить моментальный снимок в удаленный вилку, выполните следующую команду:

      git push origin <your-working-branch>

  5. В GitHub создайте запрос на вытягивание для сравнения <рабочей ветви с основной ветвью> в репозитории LogicAppsTemplates.

    1. Перейдите на страницу запросов на вытягивание репозитория и выберите новый запрос на вытягивание.

    2. В разделе "Сравнение изменений" выберите "Сравнить между вилками".

    3. Убедитесь, что запрос на вытягивание имеет следующие параметры, а затем нажмите кнопку "Создать запрос на вытягивание".

      Базовый репозиторий База Головной репозиторий Сравнить
      Azure/LogicAppsTemplates main < user-name>/LogicAppsTemplates < ваша рабочая ветвь>

      Снимок экрана: параметры запроса на вытягивание и GitHub.

    4. Введите название и описание запроса на вытягивание. Чтобы завершить работу, нажмите кнопку "Создать запрос на вытягивание".

    5. Подождите, пока команда Azure Logic Apps рассмотрит ваш запрос на вытягивание.

    Дополнительные сведения см. в разделе "Создание запроса на вытягивание из вилки".

Имена и соглашения о стиле

Площадь Соглашение
Конфиденциальные данные Не добавляйте и не добавляйте персональные и конфиденциальные данные в файлы шаблонов, снимки экрана, описания или тестовые данные. Например, эти данные включают идентификаторы подписок, имена пользователей, пароли и т. д.
Имена папок Чтобы упростить удобочитаемость, используйте строчные регистры и дефисы, когда это возможно. См . руководство по стилю Майкрософт.
Имена файлов изображений Используйте .png в качестве расширения имени файла, нижнего регистра и дефиса, например workflow-light.png.
Названия продуктов, услуг, технологий и фирменной марки Следуйте официальным орфографическим и прописным буквам. Например:

— Если вы ссылаетесь на имя службы или платформу, используйте Azure Logic Apps, а не "Logic Apps".

— При ссылке на ресурс или экземпляр используйте "приложения логики" или "приложение логики", а не "Приложение логики" или "Logic Apps".

— При ссылке на последовательность триггеров и действий используйте "рабочий процесс приложения логики" или "рабочий процесс".
Аббревиатуры и акронимы Используйте расширенное имя для продуктов, услуг, технологий, фирменной марки и необычных технических терминов, а не аббревиатур или акронимов. Допустимы распространенные акронимы, такие как HTTP и URL-адрес. Например, используйте Visual Studio Code, а не VS Code. См . акронимы — руководство по стилю Майкрософт.
Другой текст — Используйте вариант предложения для заголовков, заголовков и текста контента, что означает, что вы прописываете только первую букву, если у вас нет продукта, службы, технологии или фирменного названия.

- Не прописывайте обычные существительные и статьи, такие как "a", "a", "и", "or", "the" и т. д.
Голосовая связь — Используйте голос второго пользователя (вы и ваш), а не третий (пользователи, разработчики, клиенты), если вам не нужно ссылаться на определенные роли. См . руководство по стилю Майкрософт.

— Используйте активный, прямой, но понятный тон, когда это возможно. Активный голос фокусируется на теме и глаголах в тексте, а пассивный голос фокусируется на объекте в тексте.
Словарь — Используйте простые, распространенные, повседневные слова, такие как "use", а не "use" или "use".

- Не используйте слова, фразы, жаргон, коллоквиализмы, идиомы или сленги, которые не переводят хорошо на разных языках.

— Используйте "пожалуйста" только для определенных сценариев. См. руководство по стилю Майкрософт.

— Используйте "например" или "например", а не "например" или "т. е.".

— Не используйте направления, такие как "здесь", "здесь", "выше", "ниже", "справа" и "слева", которые не доступны.
Пунктуация — Для ряда элементов добавьте последнюю запятую перед объединением, например "и". Например, "яблоки, апельсины и бананы". См . руководство по стилю Майкрософт с запятыми.

— заканчивать полные предложения соответствующими знаками препинания. Не используйте восклицательные знаки. См . руководство по стилю Майкрософт.
Форматирование — Для кода следуйте соглашению о стиле для языка этого кода.

— Не используйте жестко закодированные ссылки, которые прерываются при изменении URL-адресов. В запросе pr попросите вместо этого использовать ссылку перенаправления.

— Для ссылок используйте следующий формат:

"For more information, see [descriptive-link-text](URL)].".

— Используйте описательный текст ссылки, а не универсальный или расплывчатый текст ссылки, например "See [here](URL)".

— Используйте числа только для шагов в процедуре, а не для списков, у которых нет определенного порядка. См . статью "Списки" — руководство по стилю Майкрософт.

— Используйте только одно пространство после препинания, если код отступа не выполняется.

Дополнительные рекомендации см. в руководстве по стилю Майкрософт и глобальных советах по написанию.

Создание рабочего процесса приложения логики уровня "Стандартный" из предварительно созданного шаблона