Обзор конвейеров Power Platform

Назначение конвейеров в Power Platform — демократизировать управление жизненным циклом приложений (ALM) для пользователей Power Platform и Dynamics 365 путем реализации в этих службах возможностей автоматизации ALM и непрерывной поставки и непрерывной интеграции (CI/CD) в максимально доступном для создателей, администраторов и разработчиков виде.

Пример функции «Конвейеры развертывания»

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

  • Администраторы легко настраивают автоматизированные конвейеры развертывания за считаные минуты, а не дни или недели.
  • Создатели получают в свое распоряжение интуитивно понятный пользовательский интерфейс для простого развертывания своих решений.
  • Профессиональные разработчики могут (необязательно) расширять конвейеры и запускать их с помощью интерфейса командной строки Power Platform.

Администраторы централизованно управляют конвейерами

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

  • Более низкая совокупная стоимость владения:

    • Конвейеры значительно повышают производительность создателей, разработчиков и администраторов. Конвейеры позволяют вашим бизнес-решениям выходить на рынок быстрее и с более высоким качеством благодаря безопасному и управляемому процессу.
    • Минимальные усилия для внедрения безопасных и индивидуализированных процессов управления изменениями в вашей организации или команде.
  • Экономия времени и денег:

    • система выполняет всю «тяжелую работу» и обеспечивает текущее обслуживание, чтобы вам не приходилось этим заниматься.
  • Масштабирование ALM в вашем собственном темпе:

    • Независимо от того, на каком этапе своего движения к ALM вы находитесь, вы можете расширять конвейеры в соответствии с растущими потребностями вашего бизнеса. Мы стремимся делать так, чтобы это движение было максимально плавным и легким. Больше информации: Группа команд pac pipeline Microsoft Power Platform CLI
  • Достижение целей соответствия, безопасности, мониторинга и автоматизации за счет следующих возможностей:

    • Безопасная производственная среда с одобрением на основе делегированных развертываний.
    • Настройки и журнал аудита сохраняются автоматически и легко доступны.
    • Готовая аналитика обеспечивает лучшую просматриваемость из централизованного расположения.
    • Вы можете просматривать готовые отчеты Power BI в приложении конвейеров или создавать собственные. Дополнительные сведения: Обзор отчетов для приложений на основе моделей
    • Настраивайте конвейеры в соответствии с потребностями вашей организации с помощью расширяемости конвейеров и Power Automate.

Создатели запускают предварительно сконфигурированные конвейеры

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

  • Отсутствие необходимости в предварительных знаниях о процессах или системах ALM. Разработчики-любители часто рассматривают конвейеры как управляемый процесс управления изменениями.
  • Развертывания решений проходят предварительную проверку в целевой среде, чтобы предотвратить ошибки и повысить показатели успеха. Например, отсутствующие зависимости и другие проблемы обнаруживаются до развертывания, и создатели сразу же получают инструкции, позволяющие принять соответствующие меры.
  • Подключения и переменные среды предоставляются заранее и проверяются перед началом развертывания.
    • Это обеспечивает развертывание приложений и средств автоматизации без ручной постобработки и их подключение к соответствующим источникам данных в каждой среде.
    • Администраторы могут даже предварительно сконфигурировать определенные подключения, которые будут использоваться.

Разработчики могут использовать и расширять конвейеры

Профессиональные разработчики работают более продуктивно, поскольку конвейеры теперь обрабатывают сложные фоновые операции. Разработчики могут сообщать системе, чего они хотят достичь, вместо того чтобы выполнять различные базовые задачи, необходимые для достижения той же цели. Используя интерфейс командной строки Power Platform, разработчики могут:

  • Выводить списки конвейеров для просмотра соответствующих сведений (например, какие этапы и среды готовы для развертывания их решений).
  • Развертывать решение с помощью одной команды:
    • При использовании конвейеров разработчики просто задают необходимые параметры, а система координирует все операции развертывания «от начала до конца» в соответствии с политиками организации.
    • Нет необходимости подключаться к нескольким средам, экспортировать решения, загружать файлы решений, вручную создавать подключения и заполнять файлы параметров развертывания, импортировать решения или выполнять различные другие задачи, которые требовались ранее.

Кроме того, разработчики могут расширять конвейеры и интегрировать их с другими инструментами CI/CD.

Вопросы и ответы

Что развертывают конвейеры?

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

Внимание

Панели мониторинга Power BI (предварительная версия) и наборы данных Power BI (предварительная версия) в настоящее время не поддерживаются в конвейерах.

Почему я не вижу мой конвейер из своей среды?

Во-первых, убедитесь, что исходная и целевая среды правильно связаны. Вы сможете просматривать свой конвейер только в назначенных исходных средах, например в средах разработки. При связывании каждой из ваших сред с конвейером во время настройки у вас есть возможность выбрать тип среды Среда разработки или Целевая среда. Если средам, связанным с конвейером, назначен правильный тип, ваш конвейер появится в качестве параметра в исходной среде разработки.

Сохраняют ли конвейеры автоматически резервные копии решений?

Да. Как управляемые, так и неуправляемые решения автоматически экспортируются и сохраняются на узле конвейеров для каждого развертывания.

Может ли настройка обойти этап развертывания, такой как контроль качества?

№ Решения экспортируются при отправке запроса на развертывание (когда создатель выбирает Развернуть в своей среде разработки). При этом развертывается тот же артефакт решения. Аналогичным образом система не экспортирует решение для развертывания на последующих этапах конвейера. Один и тот же артефакт решения должен проходить через этапы конвейера в последовательном порядке. Система также предотвращает любые несанкционированные действия или модификацию экспортированного артефакта решения. Это гарантирует, что настройка не сможет обойти среду контроля качества или ваши процессы утверждения.

Требуются ли отдельные лицензии для использования конвейеров?

  • Среды разработки не обязательно должны быть управляемыми средами. Их можно использовать для разработки и тестирования с планом разработчика.
  • Хост конвейеров должен быть производственной средой, но хост конвейеров не обязательно должен быть управляемой средой.
  • Все остальные среды, используемые в конвейерах, должны быть включены как управляемые среды.
  • Лицензии, предоставляющие права на использование премиум-класса, необходимы для всех управляемых сред.

Пример обычной настройки:

Назначение среды Тип среды Требуется отдельная лицензия
Хост Производственный экземпляр Нет
Разработка Среда разработки Нет
Контроль качества Среда разработки Нет
Производственный экземпляр Производственный экземпляр Да

Могу ли я настроить утверждения для развертывания?

Да. См. Делегированное развертывание.

Могу ли я использовать разные субъекты-службы для разных конвейеров и этапов?

Да.

Какие подключения можно использовать?

Как и при разработке выполнение конвейеров может предоставлять свои собственные подключения или подключения, к которым у них есть доступ. Подключение субъекта-службы также можно использовать для соединителей, поддерживающих проверку подлинности субъекта-службы, включая пользовательские соединители.

Почему я не могу обновить существующие ссылки на подключение?

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

Кому принадлежат развернутые объекты решения?

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

Можно ли развертывать конвейеры в другом клиенте?

№ Для реализации такого сценария мы рекомендуем использовать Azure DevOps или GitHub.

Что делать, если моя среда разработки или целевая среда сброшена или удалена?

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

Можно ли использовать конвейеры в среде по умолчанию?

Да. Однако не всем клиентам рекомендуется использовать среду по умолчанию в качестве узла конвейера.

Можно ли выполнять развертывания с использованием своего собственного субъекта-службы?

Да. Дополнительные сведения: Развертывание конвейеров в качестве субъекта-службы или владельца конвейера.

Можно ли использовать конвейеры с Azure DevOps, GitHub или ALM Accelerator?

Да, вместе эти инструменты эффективны и в то же время упрощают работу разработчиков. Подробнее: Расширение конвейеров

Можно ли откатиться до предыдущей версии?

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

Можно ли установить политики хранения для данных конвейеров?

Да. Вы можете настроить задания массового удаления в узле конвейеров Dataverse для удаления данных по определенному расписанию.

Можно ли указывать расширенные режимы импорта решений, такие как обновление или модернизация?

В данный момент нет. Поведение конвейеров по умолчанию при импорте — это Обновить с Заменить настройки.

Может ли среда быть связана с несколькими хостами?

№ Однако одна среда может быть связана с несколькими конвейерами в одном хосте. Чтобы связать среду с другим узлом, добавьте ее в конвейер на новом узле. Затем удалите запись среды из исходного узла и убедитесь, что все работает должным образом.

Можно ли настраивать или расширять собственное приложение и таблицы конвейера развертывания?

В данный момент нет. Однако доступны специальные перехватчики расширения для настройки логики конвейеров. Подробнее: Расширение конвейеров.

Где можно просматривать и запускать конвейеры?

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

Можно ли выполнять развертывания из одного региона в другой?

В данный момент нет. Хост и все среды, связанные с конвейерами в хосте, должны располагаться в одном географическом местоположении (указываемом при создании сред). Например, конвейер не может развертывать решения из Германии в Канаду. Кроме того, хост в Германии не должен управлять средами в Канаде. Вместо этого для Германии и Канады следует использовать отдельные хосты.

Можно ли развернуть одно и то же решение, используя разные конвейеры?

Да, это возможно, хотя мы рекомендуем начинать с одного и того же конвейера для данного решения. Это помогает избежать путаницы и непреднамеренных ошибок. Информация о запуске конвейера отображается в контексте одного конвейера и одного решения (в рамках интерфейса решения). Поэтому в других конвейерах может не отображаться последняя развернутая версия решения или другая важная информация о запуске, связанная с другими конвейерами. Обратите внимание, что приложение конфигурации конвейера развертывания показывает информацию о выполнении по всем конвейерам и всем решениям для текущего узла.

Можно ли использовать хост-среду также в качестве среды разработки или целевой среды?

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

Как посмотреть, что поменялось в одной версии по сравнению с другой версией?

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

Должна ли хост-среда совпадать с той, в которой установлены инструменты COE?

Это допустимая конфигурация, и ее следует оценивать с учетом потребностей и политик вашей организации.

Можно ли развертывать неуправляемые решения?

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

Можно ли развертывать по несколько решений одновременно?

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

Публикуют ли конвейеры неуправляемые настройки перед экспортом решения?

В данный момент нет. Мы рекомендуем публиковать отдельные объекты по мере их сохранения. Обратите внимание, что только некоторые объекты решений требуют публикации.

Можно ли использовать конвейеры для команд из нескольких разработчиков, работающих в изолированных средах разработки?

Текущая реализация предусматривает использование одной среды разработки для данного решения.

Чем конвейеры отличаются от ALM Accelerator?

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

Хотя существует множество других функциональных отличий, фундаментальное различие заключается в том, что конвейеры — это официальная функция продукта Microsoft Power Platform, то есть они проектируются, разрабатываются. тестируются, сопровождаются и поддерживаются специалистами по разработке продуктов Майкрософт. Конвейеры встроены в продукт, и к ним можно получить доступ в собственном интерфейсе продукта.

Когда следует использовать конвейеры вместо других инструментов?

Мы рекомендуем клиентам использовать конвейеры для работы с основными функциями развертывания и, при необходимости, расширять конвейеры для интеграции с другими инструментами CI/CD. При совместном использовании рабочие нагрузки, необходимые для инструментов CI/CD, часто становятся менее сложными и дорогостоящими в обслуживании.

Следующие шаги

Настройка конвейеровРасширение конвейеров