Конвейеры сборки Power BI Project (PBIP) и Azure DevOps для проверки
Объединение интеграции Git Fabric с Azure DevOps позволяет подключить рабочую область к ветви в репозитории Azure DevOps и автоматически синхронизировать их.
Интеграция формата PBIP с Azure DevOps позволяет использовать Azure Pipelines для автоматизации конвейеров непрерывной интеграции и непрерывного развертывания (CI/CD). Эти конвейеры обрабатывают файлы метаданных PBIP и применяют ряд проверок качества к разработке перед развертыванием в рабочей системе.
В этой статье мы сосредоточимся на непрерывной интеграции и о том, как создать конвейер Azure DevOps, который гарантирует рекомендации для всех семантических моделей и отчетов в рабочей области Fabric. Реализуя автоматизированные тесты качества, вы можете предотвратить распространенные ошибки и повысить эффективность команды. Например, этот подход гарантирует, что новые члены команды соответствуют установленным стандартам для семантической модели и разработки отчетов.
Дополнительные сведения об интеграции PBIP и Fabric Git см. в обзоре проекта и интеграции с Fabric Git.
На следующей схеме показан комплексный сценарий с двумя рабочими процессами разработки, которые активируют конвейер Azure DevOps для проверки качества разработки. Конвейер выполняет следующие действия:
Пользователь 1 разрабатывается с помощью Power BI Desktop.
- Создание ветви из основной функции с помощью VS Code (feature/datasetchange)
- Внесение изменений в семантику модели с помощью Power BI Desktop
- Фиксация изменений в ветви удаленный репозиторий с помощью VS Code
- Создание запроса на вытягивание в основную ветвь с помощью Azure DevOps
В то же время пользователь 2 разрабатывается с помощью другой рабочей области Fabric.
- Создание ветви из основной функции с помощью Fabric Git (feature/reportchange)
- Внесение изменений в отчет в рабочей области Fabric
- Фиксация изменений в ветви удаленный репозиторий с помощью Fabric Git
- Создание запроса на вытягивание в основную ветвь с помощью Azure DevOps
Руководитель группы проверяет запросы на вытягивание и синхронизирует изменения в рабочей области команды с помощью Fabric Git.
Запрос на вытягивание активирует конвейер Azure DevOps для проверки семантической модели и качества разработки отчетов.
Примечание.
В этом примере конвейер использует два средства сообщества с открытым кодом, которые позволяют разработчику применять (настраиваемые) правила рекомендаций к метаданным семантических моделей и отчетов в папке Проекта Power BI:
Подход, аналогичный примеру в этой статье, будет применяться к другим средствам сообщества. В этой статье не рассматриваются особенности упомянутых ранее средств сообщества, а также создание и редактирование правил. Подробные сведения об этих разделах см. в приведенных ссылках. Основное внимание в этой статье уделяется процессу создания шлюза качества между системой управления версиями и рабочей областью Fabric. Важно отметить, что упомянутые средства сообщества разрабатываются сторонними участниками, и корпорация Майкрософт не предлагает поддержку или документацию для них.
Шаг 1. Подключение рабочей области Fabric к Azure DevOps
Подключите рабочую область Fabric к Azure DevOps:
Когда интеграция Git Fabric завершит экспорт элементов рабочей области, ветвь Azure DevOps будет содержать папку для каждого элемента в рабочей области:
Шаг 2. Создание и запуск конвейера Azure DevOps
Чтобы создать новый конвейер, выполните приведенные действия.
На вкладке "Конвейеры" в меню навигации слева выберите "Создать конвейер " :
Выберите Azure Repos Git и выберите первый репозиторий (тот же репозиторий, который подключен к рабочей области Fabric):
Выберите Простейший конвейер.
В редакторе появится следующий код YAML:
Скопируйте и вставьте код YAML из конвейера режима разработчика Power BI в созданный конвейер:
Нажмите кнопку "Сохранить и запустить ", чтобы зафиксировать новый конвейер в репозитории.
Azure DevOps запускает конвейер и запускает два задания сборки параллельно:
- Build_Datasets
- Загружает двоичные файлы табличного редактора.
- Скачайте правила анализатора рекомендаций по умолчанию. Чтобы настроить правила, добавьте Rules-Dataset.json в корневой каталог репозитория.
- Переключите все папки элементов семантической модели и запустите правила BPA табличного редактора.
- Build_Reports
- Скачайте двоичные файлы инспектора PBI.
- Скачайте правила инспектора PBI по умолчанию. Чтобы настроить правила, добавьте Rules-Report.json в корневой каталог репозитория.
- Циклический цикл по всем папкам элементов отчета и запуск правил Инспектора Power BI.
По завершении Azure DevOps создает отчет обо всех предупреждениях и ошибках, которые он столкнулся:
Щелкните ссылку, чтобы открыть более подробное представление двух заданий:
Если отчет или семантическая модель завершается сбоем правила с более высоким уровнем серьезности, сборка завершается ошибкой и выделена ошибка:
Шаг 3. Определение политик ветви
После запуска конвейера включите политики ветви в главной ветви. Этот шаг гарантирует, что фиксации не могут быть сделаны непосредственно в основную. Запрос на вытягивание всегда требуется для объединения изменений обратно в main, и вы можете настроить конвейер для выполнения с каждым запросом на вытягивание.
Выберите политики ветвей основной>ветви:>
Настройте созданный конвейер в качестве политики сборки для ветви:
Шаг 4. Создание запроса на вытягивание
Если вы вернеесь в рабочую область Fabric, внесите изменения в одну из отчетов или семантических моделей и попытаейтесь зафиксировать это изменение, вы получите следующую ошибку:
Вы можете вносить изменения только в основную ветвь с помощью запроса на вытягивание. Чтобы создать запрос на вытягивание новой ветви, чтобы внести изменения в:
Создайте ветвь непосредственно из рабочей области Fabric:
В области управления версиями выберите новую ветвь и укажите имя ветви.
Кроме того, можно выбрать разработку в отдельной изолированной рабочей области или в Power BI Desktop. Дополнительные сведения см. в статье "Разработка с помощью другой рабочей области"
Зафиксируйте изменения в этой новой ветви.
После фиксации создайте запрос на вытягивание в основную ветвь на портале Azure DevOps.
Рабочий процесс запроса на вытягивание не только позволяет проверять и проверять изменения, но и автоматически активировать конвейер.
Если в одном из правил возникает ошибка высокой серьезности, вы не сможете завершить запрос на вытягивание и объединить изменения обратно в основную ветвь.
Дополнительные сведения об интеграции PBIP и Fabric Git см. в записи блога.