Расширение конвейера в Power Platform
Конвейеры могут быть адаптированы для удовлетворения уникальных потребностей организации. Например, вы можете добавлять утверждения, развертывание с помощью субъектов-служб и интеграцию с внутренними системами учета, Azure DevOps, GitHub и т. д. Поскольку используются бизнес-события Microsoft Dataverse, бизнес-логика может выполняться внутри Power Automate или различных других подписчиков. Неважно, насколько сложен конвейер, процесс развертывания остается простым для разработчиков.
Внимание
- Новые расширения конвейеров постепенно развертываются во всех регионах и, возможно, еще недоступны в вашем регионе.
- Существующим пользователям конвейера может потребоваться обновить приложение конвейеров Power Platform, чтобы активировать новые функции. Вы можете управлять обновлениями в Центре администрирования Power Platform.
- Персональные конвейеры, созданные в Power Apps (make.powerapps.com), не могут быть расширены.
Доступно расширения с проверкой
Развертывание конвейеров проходит через несколько заранее определенных шагов до завершения. Расширения с проверкой вставляют пользовательские шаги в процесс, позволяя выполнять пользовательскую бизнес-логику. Это как ваш личный поезд, где вы сами контролируете, где он останавливается и когда продолжает движение.
Если включена, каждое расширение вставляет пользовательский шаг в разные точки процесса развертывания. Расширения можно использовать по отдельности или вместе.
Предварительный экспорт шаг Обязательно позволяет запускать пользовательскую логику проверки при отправке запроса на развертывание. Конвейеры не будут экспортировать решение из среды разработки, пока этот шаг не будет помечен как завершенный. Включайте только для первого этапа конвейера. Например, приемочное тестирование пользователями (UAT).
Делегированное развертывание выполняет развертывания с использованием идентификатора субъекта-службы или владельца этапа конвейера вместо идентификатора запрашивающего создателя. Этот идентификатор гарантирует, что разработчики смогут запрашивать развертывание без повышенного (или какого-либо) доступа в целевых средах. Требуется одобрение уполномоченного лица.
Предварительное развертывание шаг Обязательно обеспечивает дополнительную гибкость для вставки пользовательского шаг после одобрения развертывания. Например, если требуется окончательное одобрение.
Шаги, добавленные путем включения расширения с проверкой, находятся в состоянии ожидания до тех пор, пока ваша бизнес-логика не выполнится и не подаст сигнал узлу конвейеров о необходимости завершения или отклонения шага. Разработчики могут видеть, когда развертывание находится в ожидании, а также отменить свой запрос на развертывание до последнего этапа развертывания.
Заметка
После экспорта артефактов управляемого и неуправляемого решения система сохраняет их на узле конвейеров и запрещает любое вмешательство или модификацию. Один и тот же управляемый артефакт для каждой версии будет развернут на всех последующих этапах конвейера в последовательном порядке. Это гарантирует, что ни одно решение не сможет обойти среды контроля качества или процессы утверждения.
Понимание триггеров и действий конвейеров
Каждый шаг развертывания конвейера запускает событие в реальном времени в начале и завершении шага, для которого вы можете инициировать пользовательскую логику. Дополнительные триггеры создаются при включении расширений с проверкой. Они соответствуют пользовательскому шагу, вставленному при включении расширения на этапе конвейера.
В таблицах здесь указаны триггеры и действия, необходимые для каждого расширения. Выходные параметры каждого триггера можно использовать на последующих этапах облачного потока.
Расширение с проверкой | Триггер начала шага | Триггер завершения шага | Несвязанное действие | Подключение для использования |
---|---|---|---|---|
Требуется шаг перед экспортом | OnDeploymentRequested | Неприменимо | UpdatePreExportStepStatus | Любое удостоверение с доступом для обновления записи выполнения этапа развертывания |
Делегированное развертывание | OnApprovalStarted | OnDeploymentCompleted | Создайте подключение в качестве субъекта-службы или владельца этапа конвейера, как настроено на этапе конвейера. Владелец этапа конвейера должен быть владельцем субъекта-службы в Microsoft Microsoft Entra ID. | |
Требуется шаг перед развертыванием | OnPreDeploymentStarted | OnPreDeploymentCompleted | UpdatePreDeploymentStepStatus | Любое удостоверение с доступом для обновления записи выполнения этапа развертывания |
Заметка
Триггеры OnDeploymentRequested для всех развертываний.
Триггеры
Триггеры доступны в облачных потоках Power Automate в хост-среде конвейеров в триггере под названием При выполнении действия соединителя в Dataverse.
- Каталог: Microsoft Dataverse Общий.
- Категория: Power Platform Трубопроводы.
- Имя таблицы: (Нет).
- Имя действия: Выберите вариант из списка. Конвейеры предоставляют следующие пользовательские действия, которые создают триггер в облачных потоках Power Automate. События, связанные с утверждением и OnPreDeployment*, срабатывают только при включении соответствующего расширения.
OnDeploymentRequested
OnApprovalStarted
OnApprovalCompleted
OnPreDeploymentStarted
OnPreDeploymentCompleted
OnDeploymentStarted
OnDeploymentCompleted
Здесь приведен пример снимка экрана с триггером.
Условия триггера
Условия триггера Power Automate позволяют настроить триггер так, чтобы поток запускался только при соблюдении определенных условий. Например, вам может потребоваться запустить разные потоки и связанную с ними бизнес-логику в разных конвейерах или этапах конвейера. Это также помогает поддерживать низкое потребление выполнения потоков и запросов Power Platform.
Запуск потока для определенного конвейера
Запускает выполнение потока для всех этапов конвейера (Contoso Pipeline). В этом примере замените Contoso Pipeline на имя вашего конвейера:
@equals(triggerOutputs()?['body/OutputParameters/DeploymentPipelineName'], 'Contoso Pipeline')
Запуск потока для определенного этапа в конвейере
Запускает поток для этапа развертывания с именем этапа аналогичным «Contoso UAT»:
@equals(triggerOutputs()?['body/OutputParameters/DeploymentStageName'], 'Contoso UAT')
Запуск потока для определенных этапов в конвейере
Запускает поток для этапов развертывания с именем этапа содержащим «QA»:
@contains(triggerOutputs()?['body/OutputParameters/DeploymentStageName'], 'QA')
Дополнительные сведения о выражениях, используемых в условиях, см. в разделе Использования выражений в условиях для проверки нескольких значений.
Действия
После запуска нужной логики в облачных потоках используйте команду Выполнить несвязанное действие в сочетании с соответствующим действием для каждого расширения с проверкой.
Эти параметры предоставляются в действиях для соответствующих расширений с проверкой.
- UpdatePreExportStepStatus, UpdateApprovalStatus и PreDeploymentStepStatus:
- 10 — статус ожидания, установленный системой.
- 20 за выполнение шаг.
- 30 за отклонение шаг. Развертывание не будет продолжено, и статусом будет «Сбой». Вы также можете добавить комментарии как для разработчика, так и для администратора, чтобы указать причину отклонения.
- ApprovalComments и комментарии перед развертыванием:
- Комментарии, которые видны разработчику в журнале выполнения конвейеров. Предназначены для того, чтобы утверждающие могли делиться комментариями с запрашивающим разработчиком. Например, почему их развертывание было отклонено или содержать информацию о конкретных процессах компании.
- PreExportProperties и ApprovalProperties:
- Администраторы могут хранить здесь информацию или пользовательские параметры, не раскрывая их разработчикам — например, ссылку на выполнение или утверждение потока или другие соответствующие данные. Цель состоит в том, чтобы обеспечить гибкость и упростить пользовательские отчеты для данных, связанных с развертыванием.
Примеры
Загрузите и затем импортируйте требуемое управляемое решение или решения в среду размещения конвейеров. Эти примеры можно настроить в соответствии с уникальными потребностями вашей организации.
Примеры расширения конвейеров
Этот загружаемый файл содержит примеры облачных потоков для использования вышеуказанных триггеров и действий с конвейерами. Дополнительная информация: Загрузка образца решения
Примеры делегированного развертывания
Этот загружаемый файл содержит примеры облачных потоков для управления утверждениями и совместного использования развернутых приложений на основе холста и потоков в целевой среде. Дополнительная информация: Загрузка образца решения
Следующие шаги
Прокладка трубопроводов Power Platform
Связанный контент
Что такое облачные потоки?
Используйте Dataverse коннектор с облачными потоками