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


Настройка ALM Accelerator вручную

Вы можете настраивать компоненты ALM Accelerator for Power Platform с помощью предусмотренного приложения для администрирования или вручную. Эта статья содержит руководство по настройке приложения вручную и состоит из семи разделов:

Предварительные условия

Перед установкой ALM Accelerator for Power Platform убедитесь, что выполнены следующие предварительные условия.

  • ALM Accelerator должен устанавливаться в среде Power Platform, в которой есть база данных Microsoft Dataverse. Во всех средах, в которых вы развертываете решения с помощью ALM Accelerator, также должна быть база данных Dataverse.

    Заметка

    ALM Accelerator не совместимо с Dataverse for Teams. Приложение ALM Accelerator для и связанные с ним конвейеры предполагают, что вы используете полнофункциональную версию Dataverse во всех средах.

    Мы рекомендуем устанавливать ALM Accelerator в одной среде с другими решениями CoE Starter Kit. Узнайте больше о том, как определить наилучшую стратегию для своей организации:

  • ALM Accelerator использует Azure DevOps для контроля версий и развертываний. Если у вас нет организации Azure DevOps, зарегистрируйтесь бесплатно (до пяти пользователей) на сайте Azure DevOps.

  • Для выполнения описанных в этом разделе действий вам требуются следующие пользователи и разрешения в Azure, Azure DevOps и Power Platform:

    • Лицензированный пользователь Azure с разрешениями на создание и просмотр групп Microsoft Entra, создание регистраций приложения и предоставление согласия администратора на регистрацию приложений в Microsoft Entra ID
    • Лицензированный пользователь Azure DevOps с разрешениями на создание конвейеров, подключений служб, репозиториев и расширений и управление всем этим.
    • Лицензированный пользователь Power Platform с разрешениями на создание пользователей приложений и предоставление им административных разрешений.
  • Должны быть доступны следующие соединители, используемые вместе в среде, в которую импортируется ALM Accelerator:

  • Установите «Набор создателя» в среде, в которой вы устанавливаете ALM Accelerator.

Базовая установка

Следующие действия являются общими для всех функциональных возможностей ALM Accelerator и не относятся к какому-либо конкретному проекту или решению.

Создайте регистрацию приложения в своей среде Microsoft Entra

Создайте регистрацию приложения для ALM Accelerator для предоставления приложению и связанным с ним конвейерам разрешений, необходимых для выполнения операций в Azure DevOps и Power Apps или Dataverse. Это необходимо сделать только один раз.

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

Создание регистрации приложения

  1. Войдите на портал Azure.

  2. Выберите Microsoft Entra ID>Регистрации приложений.

  3. Выберите + Создать регистрацию, а затем дайте регистрации имя, например: ALMAcceleratorServicePrincipal.

  4. Во всех остальных параметрах оставьте значения по умолчанию и нажмите Регистрация.

Добавление разрешений в регистрацию приложения

  1. На левой боковой панели выберите Разрешения API.

  2. Выберите + Добавить разрешение.

  3. Выберите Dynamics CRM, а затем выберите Делегированные разрешения и user_impersonation.

  4. Выберите Добавить разрешения, чтобы добавить разрешение Dynamics CRM API user_impersonation в регистрацию приложения.

  5. Снова нажмите + Добавить разрешение.

  6. Откройте вкладку API, которые использует моя организация. Найдите и выберите PowerApps-Advisor, а затем выберите Делегированные разрешения и Analysis.All (согласие администратора не требуется).

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

  7. Выберите Добавить разрешения, чтобы добавить разрешение PowerApps-Advisor API Analysis.All в регистрацию приложения.

  8. Снова нажмите + Добавить разрешение.

  9. На вкладке API Майкрософт или на вкладке API, которые использует моя организация выберите Azure DevOps, а затем выберите Делегированные разрешения и user_impersonation.

    Это разрешение необходимо для подключения к Azure DevOps посредством настраиваемого соединителя в приложении ALM Accelerator.

  10. Если вы добавили разрешение Azure DevOps на вкладке API, которые использует моя организация, скопируйте Идентификатор приложения (клиента) для использования в дальнейшем в данной процедуре.

    Вы будете использовать его как Идентификатор приложения (клиента) DevOps, и с ним не следует путать Идентификатор приложения (клиента), которые вы скопируете позже в этой процедуре.

    Снимок экрана: окно запроса разрешений API с вкладкой «API, которые использует моя организация» и выделенным идентификатором приложения (клиента).

    Если вы не можете найти разрешение Azure DevOps на вкладке API, которые использует моя организация, выполните указанные ниже действия, чтобы получить Идентификатор приложения (клиента) DevOps .

    1. Откройте окно браузера в приватном режиме и перейдите перейдите по адресу https://dev.azure.com/<your devops organization>/_apis.
    2. На странице входа скопируйте значение параметра client_id в URL-адресе.

    Снимок экрана: страница входа в организацию Azure DevOps с выделенным параметром client_id в URL-адресе.

  11. Выберите Добавить разрешения, чтобы добавить разрешение Azure DevOps API user_impersonation в регистрацию приложения.

  12. Выберите Предоставить согласие администратора для <ваш клиент>.

Настройте секрет клиента и URI перенаправления

  1. На левой боковой панели выберите Сертификаты и секреты.

  2. Выберите + Создать секрет клиента.

  3. Выберите дату окончания срока действия, а затем нажмите Добавить.

  4. Скопируйте Значение секрета клиента для последующего использования. Это единственный случай, когда можно скопировать это значение. Обязательно сделайте это, прежде чем покинуть страницу.

  5. На левой боковой панели выберите Обзор.

  6. Скопируйте Идентификатор приложения (клиента) и Идентификатор каталога (клиента).

  7. Выберите Настроить.

Предоставление разрешения на управление Power App для вашей регистрации приложения

Предоставьте разрешения на управление Power App своей регистрации приложения, чтобы конвейеры могли выполнять необходимые действия в ваших средах. Для этого запустите следующий командлет PowerShell от имени интерактивного пользователя, у которого есть административные привилегии Power Apps. Вам нужно выполнить эту команду только один раз после создания регистрации приложения.

Внимание

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

Install-Module -Name Microsoft.PowerApps.Administration.PowerShell
Install-Module -Name Microsoft.PowerApps.PowerShell -AllowClobber
New-PowerAppManagementApp -ApplicationId <the Application (client) ID you copied when you created the app registration>

Установка расширений Azure DevOps

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

  1. Выполните вход в Azure DevOps.

  2. Выберите Параметры организации.

  3. Выберите Общие>Расширения.

  4. Найдите и установите следующие расширения:

Клонируйте конвейеры YAML из GitHub в свой экземпляр Azure DevOps

  1. Перейдите на страницу https://aka.ms/coe-alm-accelerator-templates-latest-release и скопируйте URL-адрес самого последнего выпуска.

  2. Выполните вход в Azure DevOps.

  3. Создайте проект или выберите существующий проект.

  4. Выберите Репозитории, а затем выберите Импорт репозитория в списке репозиториев.

  5. Вставьте URL-адрес, скопированный на шаге 1, в параметр URL-адрес клона, а затем выберите Импорт.

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

    Если это не так, выберите три вертикальные точки (), соответствующие основной ветви, и из . В меню «Дополнительные параметры» выберите Установить как ветвь по умолчанию.

    Заметка

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

Создание конвейеров для импорта, удаления и экспорта решений

Создайте конвейеры импорта, удаления и экспорта на основе YAML в репозитории Azure DevOps. Эти конвейеры работают, когда вы используете приложение для фиксации решения в Git, импорта решения или удаления решения.

Заметка

Если вы ожидаете, что во всех ваших операциях экспорта будут выполняться одни и те же действия независимо от решения, для которого запущен конвейер, вы можете создать один конвейер экспорта, как описано в этом разделе. Однако в зависимости от решения действия во время экспорта могут отличаться. В этом случае вы можете добавить имя решения к конвейеру export-solution-to-git (например: export-solution-to-git-SampleSolution), чтобы приложение выполняло ваши конкретные конвейеры решения, когда вы выполняете действия в приложении.

В следующей таблице показано соответствие между файлом YAML в репозитории и сопутствующим ему конвейером.

Файл YAML Имя конвейера
export-solution-to-git.yml export-solution-to-git
import-unmanaged-to-dev-environment.yml import-unmanaged-to-dev-environment
delete-unmanaged-solution-and-components.yml delete-unmanaged-solution-and-components
  1. В Azure DevOps перейдите Конвейеры>Создать новый конвейер.

  2. Выберите Azure Repos Git для своего репозитория кода и укажите на репозиторий Azure DevOps, который вы создали и заполнили шаблонами конвейеров на предыдущих шагах.

  3. На странице Настройте свой конвейер выберите Существующий YAML-файл Azure Pipelines и укажите /Pipelines/export-solution-to-git.yml, /Pipelines/import-unmanaged-to-dev-environment.yml или /Pipelines/delete-unmanaged-solution-and-components.yml.

  4. Выберите Продолжить, а затем нажмите Сохранить.

  5. Выберите меню Дополнительно () рядом с пунктом Запустить конвейер, а затем выберите Переименовать/переместить.

  6. При необходимости поменяйте имя конвейера на export-solution-to-git, import-unmanaged-to-dev-environment или delete-unmanaged-solution-and-components.

  7. Выберите Сохранить.

Создайте переменные конвейера экспорта (необязательно)

Вы можете задать переменные конвейера в конвейере export-solution-to-git, чтобы определить, какая информация должна сохраняться в системе управления версиями. Если эти параметры нужно применить глобально, задайте переменные в своем конвейере export-solution-to-git. Если же вы хотите применить эти параметры к конкретным решениям при экспорте, создайте конвейер экспорта для своего решения, как было описано в примечании в предыдущем разделе, и задайте переменные в этом конвейере.

Чтобы гарантировать, что текущие значения переменных среды никогда не будут зафиксированы в системе управления версиями во время процесса экспорта, создайте переменную DoNotExportCurrentEnvironmentVariableValues в своем конвейере export-solution-to-git и установите в ней значение True.

Внимание

Рекомендуется создать эту переменную конвейера, чтобы вы могли использовать функциональность настройки развертывания в ALM Accelerator.

Чтобы гарантировать, что при экспорте решения будут заданы значения определенных переменных среды по умолчанию, создайте переменную VerifyDefaultEnvironmentVariableValues в своем конвейере export-solution-to-git и установите в ней значение True. Задайте значения переменных среды по умолчанию в customDeploymentSettings.json, как описано в руководстве по настройке развертывания.

  1. В Azure DevOps выберите Конвейеры>Библиотека>Создать новую группу переменных.

  2. Назовите новую группу переменных alm-accelerator-variable-group — точно так, как указано здесь.

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

  3. Добавьте следующие переменные в группу переменных:

    Полное имя Описание: Стоимость
    AADHost Конечная точка авторизации Microsoft Entra Для общедоступных облаков используйте login.microsoftonline.com. Для правительственных облаков используйте соответствующий URL-адрес авторизации.
    ProcessCanvasApps Распаковываются ли приложения на основе холста при экспорте и упаковываются ли они при сборке Если задано значение false, значит приложения на основе холста не распаковываются во время экспорта и не упаковываются во время сборки. Функция распаковки и упаковки приложений на основе холста находится в стадии предварительной версии, и в настоящее время ее не рекомендуется использовать в рабочих средах. Однако вы не сможете просматривать исходный код холста в системе управления версиями, если для этой переменной не будет установлено значение True.
  4. (Необязательно) Если вы используете автоматизацию тестирования Canvas Studio в своих конвейерах, добавьте в группу переменных следующие переменные:

    Полное имя Стоимость
    TestAutomationLoginMethod CloudIdentity
    TestAutomationMakerPortalUrl URL-адрес из портала создателей Power Apps, обычно *https://make.powerapps.com*
    TestAutomationUsername Учетная запись пользователя, используемая для выполнения автоматизированных тестов
    TestAutomationPassword Пароль учетной записи пользователя, используемой для выполнения автоматизированных тестов
  5. (Необязательно) По умолчанию доступ к глобальным переменным ограничен, и вам необходимо настроить доступ для каждого конвейера. Можно упростить эту задачу и разрешить доступ для любого конвейера. В разделе Группа переменных (Конвейеры>Библиотека>alm-accelerator-variable-group) выберите Разрешения конвейера в верхнем меню, нажмите (), а затем выберите Открыть доступ.

Установка разрешений для службы сборки проекта

Внимание

Azure DevOps содержит несколько учетных записей службы сборки (Build Service), и это может привести к путанице при выполнении шагов, описанных в данном разделе. Обратите особое внимание на имена и формат, указанные в шагах 3 и 5 ниже. Возможно, вам придется искать конкретную учетную запись, если она не отображается в исходном списке.

  1. В Azure DevOps выберите Параметры проекта.

  2. Выбирать Репозитории>Безопасность.

  3. В разделе Пользователи найдите и выберите Служба сборки коллекции проекта (название вашей организации).

    Заметка

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

  4. Установите следующие разрешения для пользователя службы сборки:

    Разрешение Стоимость
    Участие Разрешение
    Участие в запросах на вытягивание Разрешение
    Создать ветвь Разрешение
    Изменить политики Разрешение
  5. В разделе Пользователи найдите и выберите Служба сборки имя вашего проекта (название вашей организации).

  6. Задайте те же значения, что и на шаге 4.

  7. Выберите Конвейеры, нажмите три точки () в правом верхнем углу, а затем выберите Управление безопасностью.

  8. Установите следующие разрешения для пользователя Служба сборки имя вашего проекта(название вашей организации):

    Разрешение Стоимость
    Изменить конвейер сборки Разрешение
    Изменить качество сборки Разрешение
    Управление очередью сборки Разрешение
    Переопределить проверку регистрации по сборке Разрешение
    Обновить сведения о сборке Разрешение
    Просмотреть конвейер сборок Разрешение
    Посмотреть сборки Разрешение
  9. Выберите Параметры проекта>Пулы агентов, выберите Безопасность, а затем выберите Добавить.

  10. Найдите и выберите Служба сборки имя вашего проекта (название вашей организации).

  11. Установите для Роль значение Читатель.

  12. Выберите Добавить.

  13. (Необязательно) По умолчанию разрешения конвейера для каждого репозитория ограничены, и вы должны настраивать их индивидуально. Можно упростить эту задачу и разрешить доступ для любого конвейера. В разделе Параметры проекта>Репозитории выберите по очереди каждый репозиторий. Выберите Безопасность в верхнем меню. Найдите блок Разрешения конвейера, нажмите (), а затем выберите Открыть доступ.

Настройка проекта разработки

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

Создание подключений к службам для доступа Azure DevOps к Power Platform

Каждая среда Dataverse — среда разработки, а также проверочная, тестовая и рабочая среды — должна иметь подключение к службе Power Platform в Azure DevOps. Выполните следующие действия для каждой из сред.

Заметка

Пользователи приложения ALM Accelerator видят только среды, в которых у них есть роль пользователя или администратора в отношении подключения к службе в Azure DevOps. Если они работают в персональных средах разработки, создатели должны иметь роль пользователя или администратора в отношении подключения к службе для своей персональной среды разработки. В случае проверочной, тестовой и рабочей сред для подключения к службе, например к службе сборки, требуются только разрешения, предоставленные конвейерам.

  1. Войдите в Azure DevOps и выберите свой проект.

  2. Выберите Параметры проекта>Подключения к службе, а затем выберите Создать подключение к службе.

  3. Найдите и выберите тип подключения к службе Power Platform.

  4. Выберите Далее.

  5. Для параметра URL-адрес сервера введите URL-адрес своей среды, например: https://myorg.crm.dynamics.com/.

    Внимание

    Вы должны включить косую черту (/) в конец URL-адреса, т. е. после .com в данном примере.

  6. Для параметра Имя подключения к службе введите тот же URL-адрес, что и на шаге 4, с косой чертой (/) в конце.

  7. Введите Идентификатор клиента, Идентификатор приложения (клиента) и Секрет клиента, которые вы скопировали из Microsoft Entra, когда вы создавали регистрацию приложения.

  8. Выберите Предоставить права доступа всем конвейерам.

  9. Выберите Сохранить.

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

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

  2. Выберите Дополнительно () в правом верхнем углу, а затем выберите Безопасность.

  3. В списке Группа или пользователь пользователя или группу, которым вы хотите предоставить пользовательские разрешения.

  4. Выберите Пользователь, выберите Роль, а затем выберите Добавить.

Повторите шаги, описанные в этом разделе, для каждой из ваших сред (разработка, проверка, тестирование и работа).

Задайте разрешения на использование подключений к службе для службы сборки проекта.

  1. В Azure DevOps выберите Параметры проекта>Подключения к службе.

  2. Нажмите () в правом верхнем углу, выберите Безопасность, а затем выберите Добавить.

  3. Найдите и выберите Служба сборки имя вашего проекта (название вашей организации).

  4. Задайте для Роль значение Администратор, а затем выберите Добавить.

Создание пользователя приложения в своей среде Dataverse

Создайте пользователя приложения в своих средах, чтобы конвейеры могли подключаться к Dataverse. Сделайте это в каждой среде, в которой вы планируете выполнять развертывание с использованием ALM Accelerator.

  1. Войдите в центр администрирования Power Platform.

  2. Выберите свою среду разработки, а затем выберите Параметры.

  3. Выберите Пользователи + разрешения>Пользователи приложения.

  4. Выберите + Новый пользователь приложения.

  5. Выберите + Добавить приложение, выберите ранее созданную вами регистрацию приложения, а затем выберите Добавить.

  6. Выберите бизнес-единицу.

  7. Нажмите значок карандаша справа от Роли безопасности и выберите роли безопасности для пользователя приложения.

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

  8. Выберите Создать.

Повторите эти действия для своих проверочной, тестовой и рабочей сред.

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

При создании решения в Dataverse вам потребуется создать конвейеры специально для этого решения. В каталог Pipelines в репозитории coe-alm-templates включены указанные ниже примеры конвейеров:

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

Внимание

YAML для конвейера вашего решения всегда хранится в том же репозитории, который вы используете для управления версиями для своего решения. Однако шаблоны конвейера (то есть папка Pipeline\Templates) могут находиться либо в том же репозитории, что и YAML конвейера вашего решения, либо в отдельном репозитории или проекте.

Создание конвейеров сборки и развертывания решения

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

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

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

Внимание

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

Имя файла YAML конвейера Имя конвейера Политика ветви включена Обязательно
build-deploy-validation-MyNewSolution.yml deploy-validation-MyNewSolution Да Да
build-deploy-test-MyNewSolution.yml deploy-test-MyNewSolution Нет Да
build-deploy-prod-MyNewSolution.yml deploy-prod-MyNewSolution Нет Нет (перейти к следующему разделу)

Заметка

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

Создание файла конвейера

  1. В Azure DevOps перейдите в репозиторий, содержащий папку с конвейерами, которую вы зафиксировали, и выберите папку Конвейеры.

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

  3. Обратите внимание на имя репозитория для использования в вашем конвейере.

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

  5. Создайте ветвь на основе вашей ветви по умолчанию и дайте ей имя, соответствующее вашему решению, например: MyNewSolution.

    Эта ветвь станет ветвью следующей версии (v-next) для вашего решения. Вся работа по разработке должна ответвляться от этой ветви в личную рабочую ветвь разработчика, а затем объединена в ветвь v-next для передачи на проверку и тестирование. Позже, когда выпуск будет готов, ветвь v-next можно объединить с основной или стандартной ветвью.

  6. Выберите Создать в верхнем меню, а затем выберите Папка.

  7. Дайте новой папке такое же имя, как у вашего решения.

  8. Дайте имя новому YAML-файлу конвейера, например: build-deploy-validation-SampleSolution.yml, build-deploy-test-SampleSolution.yml или build-deploy-prod-SampleSolution.yml.

  9. Выберите Создать.

Обновление и сохранение файла

  1. Вставьте YAML, скопированный на шаге 2 в предыдущем разделе, в новый файл конвейера.

  2. Измените следующие значения в YAML нового конвейера:

    • Введите в параметре Ресурсы>Репозитории>Имя имя репозитория, содержащего ваши шаблоны конвейера.

      В этом примере репозиторий называется coe-alm-accelerator-templates и существует в том же проекте, что и наш репозиторий MyNewSolution. Если ваш репозиторий шаблонов находится в другом проекте Azure DevOps, используйте формат ИмяПроекта/ИмяРепозитория. При необходимости вы также можете указать ветвь, в которой находятся ваши шаблоны, используя параметр ref.

    • Измените любое значение, которое ссылается на SampleSolutionName, указав уникальное имя вашего решения, например MySolutionName.

  3. Выберите Фиксация, чтобы сохранить изменения.

  4. В Azure DevOps перейдите в Конвейеры, а затем выберите Создать новый конвейер.

  5. Выберите Azure Repos Git для вашего репозитория кода.

  6. Выберите Репозиторий DevOps, который содержит YAML конвейера развертывания.

  7. На странице Настройте свой конвейер выберите Существующий YAML-файл Azure Pipelines, укажите на файл YAML в репозитории, который вы создали ранее, а затем выберите Продолжить.

  8. Выберите Сохранить, нажмите () рядом с Запустить конвейер, а затем выберите Переименовать/переместить.

  9. Поменяйте имя конвейера на deploy-validation-MyNewSolution, deploy-test-MyNewSolution или deploy-prod-MyNewSolution, где MyNewSolution — это имя вашего решения.

  10. Выберите Сохранить.

  11. Если ваш новый конвейер был создан не в ветви репозитория по умолчанию: выберите Изменить на конвейере. Нажмите () в правом верхнем углу, а затем выберите Триггеры. Выберите вкладку YAML, затем выберите Получить источники. Измените Ветвь по умолчанию для ручных и плановых сборок, указав свою ветвь решения. Подробнее о том, как настроить триггеры конвейера.

  12. Повторите предыдущие шаги, чтобы создать конвейер развертывания для каждой из ваших сред, используя в качестве образца пример YAML конвейера развертывания из репозитория coe-alm-accelerator-templates (deploy-validation-SampleSolution.yml, deploy-test-SampleSolution.yml и deploy-prod-SampleSolution.yml).

  13. Выберите Сохранить и поставить в очередь, затем выберите Сохранить.

Создание конвейера развертывания решения (необязательно)

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

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

Внимание

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

Имя файла YAML конвейера Имя конвейера Политика ветви включена
deploy-prod-MyNewSolution.yml deploy-prod-MyNewSolution Нет
  1. В Azure DevOps перейдите в репозиторий, содержащий папку с конвейерами, которую вы зафиксировали, и выберите папку Конвейеры.

  2. Откройте образец конвейера развертывания (deploy-prod-pipelineartifact-SampleSolution.yml) и скопируйте его YAML для использования в новом конвейере.

  3. Обратите внимание на имя репозитория для использования в вашем конвейере.

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

  5. Выберите Создать в верхнем меню, а затем выберите Файл.

  6. Дайте новому YAML-файлу конвейера имя, например: deploy-prod-MyNewSolution.yml, где MyNewSolution — это имя вашего решения.

  7. Выберите Создать.

  8. Вставьте YAML, скопированный на шаге 2, в новый файл конвейера.

  9. Измените следующие значения в YAML нового конвейера:

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

    • Введите в параметре Ресурсы>Репозитории>Имя имя репозитория, содержащего ваши шаблоны конвейера.

      В этом примере репозиторий называется coe-alm-accelerator-templates и существует в том же проекте, что и наш репозиторий MyNewSolution. Если ваш репозиторий шаблонов находится в другом проекте Azure DevOps, используйте формат ИмяПроекта/ИмяРепозитория. При необходимости вы также можете указать ветвь, в которой находятся ваши шаблоны, используя параметр ref.

    • Обновите Ресурсы>Конвейеры>Источник, указав конвейер сборки, содержащий артефакты, которые должен развернуть этот конвейер. В данном случае вы собираетесь развернуть артефакты из тестового конвейера, созданного вами ранее, который собрал и развернул ваше решение в тестовой среде.

    • Измените любое значение, которое ссылается на SampleSolutionName, указав уникальное имя вашего решения, например MySolutionName.

  10. Повторите шаги с 11 по 20 из предыдущего раздела для deploy-validation-ALMAcceleratorSampleSolution и deploy-test-ALMAcceleratorSampleSolution, чтобы создать конвейер из YAML нового рабочего конвейера с именем deploy-prod-ALMAcceleratorSampleSolution.

Установка переменных конвейера развертывания

Для каждого ранее настроенного вами конвейера развертывания вы должны задать значения переменных EnvironmentName и ServiceConnection в соответствии с тем, в какой среде производят развертывание эти конвейеры. Вы также можете задать переменную EnableFlows для отключения потоков Power Automate в рамках развертывания.

Создание переменных среды и подключения службы (обязательно)

Для каждого конвейера развертывания требуются переменная среды EnvironmentName и переменная подключения к службе ServiceConnection.

  • EnvironmentNameуказывает среду Azure DevOps, в которой производится развертывание, чтобы было возможно отслеживание истории развертывания и можно было задать разрешения и утверждения для развертывания в определенных средах. Установите для нее подходящее значение: Проверка, Тестирование или Производство.

  • ServiceConnection указывает, как конвейер развертывания подключается к Power Platform. Допустимыми значениями являются имена созданных вами ранее подключений к службе.

  1. Выберите Редактировать в каждом из конвейеров развертывания.

  2. Выберите Переменные в определении конвейера развертывания, чтобы открыть редактор переменных.

  3. Чтобы добавить переменную, нажмите (+). Введите имя переменной и соответствующее значение.

Повторите эти действия, чтобы переменные EnvironmentName и ServiceConnection.

Создание переменной EnableFlows (необязательно)

Вы можете установить для переменной конвейера с именем EnableFlows значение False, чтобы пропустить шаги, на которых автоматически включаются потоки Power Automate в рамках развертывания. По умолчанию переменная EnableFlows содержит значение True.

Установка политик ветвей для проверки запросов на вытягивание

Создайте политику ветвей, чтобы созданный вами ранее конвейер выполнялся при создании запроса на вытягивание.

  1. В Azure DevOps перейдите в Репозитории, а затем выберите папку Ветви.

  2. Найдите ветвь, для которой вы хотите создать политику запросов на вытягивание. Нажмите () справа от ветви, а затем выберите Политики ветви.

  3. На странице Политика ветвей перейти к Проверка сборки.

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

  5. Выберите созданный вами ранее конвейер в списке Конвейер сборки.

  6. Укажите Фильтр путей (если это применимо), чтобы гарантировать, что только изменения в указанном пути будут запускать конвейер для запроса на вытягивание.

  7. Задайте Триггер как Автоматически.

  8. Установите Требование политики как Обязательно.

  9. Установить Срок действия сборки как Немедленно.

  10. Задайте Отображаемое имя для своей политики ветви, например: Проверка сборки PR.

  11. Выберите Сохранить.

Снимок экрана: выбор параметров для политики проверки сборки.

Установка разрешений на доступ к ресурсам для конвейеров

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

Предоставление доступа при первом запуске

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

  1. Запустите конвейер и откройте его выполнение в Azure DevOps.
  2. Выберите Просмотр в баннере «Требуется разрешение».
  3. Выберите Разрешить для каждого требуемого ресурса.

Предоставление разрешения явным образом

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

  1. В Azure DevOps откройте Параметры проекта.
  2. Выберите Репозитории, а затем выберите репозиторий.
  3. Выберите вкладку Безопасность.
  4. Прокрутите вниз до пункта Разрешения конвейера и нажмите +.
  5. Выберите конвейер, которому вы хотите предоставить доступ к репозиторию.

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

  1. В Azure DevOps выберите Конвейеры>Библиотека, а затем выберите группу переменных.
  2. Выберите Разрешения конвейера.
  3. Нажмите +, а затем выберите конвейер, которому вы хотите предоставить доступ к группе переменных.

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

  1. В Azure DevOps откройте Параметры проекта.
  2. Выберите Подключения к службе, а затем выберите подключение к службе.
  3. Выберите Дополнительные действия (), а затем выберите Безопасность.
  4. Прокрутите вниз до пункта Разрешения конвейера и нажмите +.
  5. Выберите конвейер, которому вы хотите предоставить доступ к подключению к службе.

Предоставление доступа всем конвейерам

Вы можете разрешить всем конвейерам (как тем, что у вас есть сейчас, так и тем, которые вы создадите в будущем) доступ к необходимым репозиториям.

  1. В Azure DevOps откройте Параметры проекта.
  2. Выберите Репозитории, а затем выберите репозиторий.
  3. Выберите вкладку Безопасность.
  4. Прокрутите вниз до Разрешения конвейера.
  5. Выберите Дополнительные действия (), выберите Открыть доступ и подтвердите свой выбор при появлении запроса.

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

  1. В Azure DevOps выберите Конвейеры>Библиотека, а затем выберите группу переменных.
  2. Выберите Разрешения конвейера.
  3. Выберите Дополнительные действия (), выберите Открыть доступ и подтвердите свой выбор при появлении запроса.

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

  1. В Azure DevOps откройте Параметры проекта.
  2. Выберите Подключения к службе, а затем выберите подключение к службе.
  3. Выберите Дополнительные действия (), а затем выберите Безопасность.
  4. Выберите подключение к службе, выберите Дополнительные действия (), а затем выберите Безопасность.
  5. Прокрутите вниз до Разрешения конвейера.
  6. Выберите Дополнительные действия (), выберите Открыть доступ и подтвердите свой выбор при появлении запроса.

Установка области авторизации для задания

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

Установка области авторизации задания на уровне организации для всех проектов

  1. В Azure DevOps выберите Параметры организации > Конвейеры > Параметры.
  2. Отключите параметр Ограничить область авторизации задания текущим проектом для конвейеров выпуска.

Создание конфигурации развертывания (необязательно)

После развертывания решения вам необходимо создать несколько конфигураций в целевой среде. Эти конфигурации зависят от среды и включают в себя ссылки на подключения, переменные среды и разрешения для групп Microsoft Entra и рабочих групп Dataverse, а также совместное использование приложений на основе холста и обновление прав собственности на компоненты решения, такие как потоки Power Automate. Помимо этих конфигураций, для целевой среды часто требуются демонстрационные или конфигурационные данные, связанные с таблицами Dataverse в решении, чтобы обеспечить полностью все аспекты взаимодействия для осуществления ALM.

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

Импорт решения и настройка приложения

Импортируйте приложение на основе холста ALM Accelerator в свою среду Power Platform, а затем настройте прилагаемый настраиваемый соединитель для Azure DevOps.

Установка ALM Accelerator в Dataverse

  1. Решение ALM Accelerator зависит от набора создателя. Установите набор создателя прямо сейчас.

  2. Скачайте последнюю версию файла управляемого решения из GitHub. Прокрутите вниз до пункта Активы и выберите CenterofExcellenceALMAccelerator_<последняя версия>_managed.zip.

  3. Войдите в Power Apps и выберите среду, в которой вы хотите разместить приложение ALM Accelerator.

  4. На левой боковой панели выберите Решения.

  5. Выберите Импорт решения>Обзор, а затем перейдите к расположению загруженного вами файла управляемого решения и выберите его.

  6. Выберите Далее, затем снова выберите Далее.

  7. На странице Подключения выберите или создайте подключение, которое будет использоваться для подключения Подключение CDS DevOps к Dataverse.

    Когда вы создаете подключение для HTTP с Microsoft Entra используйте Microsoft Graph для обоих параметров.

  8. Выберите Импорт.

Настройка пользовательского соединителя DevOps

  1. Выберите Данные>Настраиваемые соединители>CustomAzureDevOps.

  2. Выберите Изменить. На странице Безопасность выберите Изменить, а затем задайте следующие поля:

    Полное имя Стоимость
    Тип проверки подлинности OAuth 2.0
    Поставщик удостоверений Azure Active Directory
    Идентификатор клиента Идентификатор приложения (клиента), который вы скопировали при создании регистрации приложения
    Секрет клиента Значение секрета приложения (клиента), которое вы скопировали при создании регистрации приложения
    Идентификатор клиента Оставьте значение по умолчанию (общий).
    URL-адрес ресурса Идентификатор приложения (клиента) DevOps, который вы скопировали, когда добавляли разрешения в регистрацию вашего приложения
    URL-адрес перенаправления Автоматическое создание. Если вы заметили флажок "Обновить уникальный URL-адрес перенаправления" под "URL-адрес перенаправления", установите его.
  3. Выберите Обновить соединитель.

Добавьте "URL-адрес перенаправления" в качестве "URI перенаправления"

Автоматически созданный "URL-адрес перенаправления" из приведенного выше раздела необходимо добавить в качестве "URI перенаправления" при регистрации приложения.

  1. Вернитесь к созданной вами регистрации приложения.

  2. На левой боковой панели выберите Обзор.

  3. Выберите Добавить URI перенаправления.

  4. Выберите + Добавить платформу, затем выберите Интернет.

  5. В поле URI перенаправления вставьте автоматически сгенерированный "URL-адрес перенаправления", скопированный из раздела выше.

  6. Выберите Настроить.

Тестирование настраиваемого соединителя

  1. Откройте меню Тест.

  2. Выберите Создать подключение и создайте подключение, следуя отображаемым инструкциям.

  3. В Power Apps выберите свою среду, а затем выберите Dataverse>Пользовательские соединители>CustomAzureDevOps.

  4. Выберите Изменить, перейдите на страницу Тестирование и найдите операцию GetOrganizations.

  5. Выберите Тест операции.

  6. Убедитесь, что в параметре Состояние ответа возвращено значение 200 и что Текст ответа представляет собой JSON-представление вашей организации Azure DevOps.

    Снимок экрана: проверка параметров безопасности для пользовательского соединителя Azure DevOps.

Настройка создателей для использования приложения ALM Accelerator

Подробнее