Ci/CD eventstream — конвейер интеграции и развертывания Git

В этой статье объясняется, как работают конвейеры интеграции и развертывания Git для Eventstream в Fabric. Узнайте, как синхронизировать рабочую область с репозиторием Git, зафиксировать элементы Eventstream в Git и развернуть их в разных рабочих областях.

Платформа Fabric предлагает конвейеры интеграции и развертывания Git для различных сценариев:

  • Используйте интеграцию Git для синхронизации рабочей области с репозиторием Git и управления инкрементными изменениями, совместной работой команды, фиксированием истории с использованием элементов Eventstream.
  • Используйте конвейеры развертывания для развертывания рабочей области (с элементами Eventstream) в разных средах разработки, тестирования и рабочей среды.

Prerequisites

Чтобы получить доступ к функциям CI/CD для Eventstream, необходимо выполнить следующие требования:

  • Возможности "Fabric" для использования всех поддерживаемых элементов "Fabric". Если у вас еще нет пробной версии, зарегистрируйтесь на бесплатную пробную версию.
  • Интеграция Git должна быть включена на портале администрирования: пользователи могут синхронизировать элементы рабочей области с репозиториями Git.
  • Доступ к существующему репозиторию из Azure DevOps или GitHub.
  • Вы являетесь администратором рабочей области Fabric.

Подключение рабочей области к репозиторию Git

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

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

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

  2. Перейдите к параметрам рабочей области и выберите снимок экрана интеграции Git, на котором показано подключение рабочей области к Git.

  3. Выберите репозиторий Git и введите папку Git. Одна рабочая область синхронизируется с папкой Git. Снимок экрана, показывающий, как ввести папку Git для синхронизации.

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

  4. В представлении рабочей области отображается состояние элемента Eventstream как синхронизированного. Снимок экрана: состояние Git в рабочей области.

Фиксация изменений eventstream в Git

После внесения изменений в элемент Eventstream вы увидите состояние uncommitted git рядом с элементом Eventstream в представлении рабочей области. Нажмите кнопку "Управление версиями" в верхней части представления и выберите элемент Eventstream, который будет зафиксирован.

Снимок экрана, на котором показан элемент uncommitted eventstream в рабочей области.

Перед фиксацией можно использовать встроенную функцию сравнения в панели управления версиями для проверки изменений на уровне элемента. Выберите элемент на вкладке "Изменения" , чтобы сравнить текущую версию рабочей области с последней зафиксированной версией, чтобы проверить изменения перед отправкой их в Git.

После синхронизации элемента Eventstream можно просмотреть последнее изменение Eventstream в репозитории Git.

Снимок экрана: последнее изменение eventstream в репозитории Git.

Обновление элементов Eventstream из Git

Если вы вносите изменения в элемент Eventstream в репозитории Git, вы увидите состояние Update Required Git рядом с элементом Eventstream в представлении рабочей области. Нажмите кнопку "Управление версиями" в верхней части представления и выберите "Обновить все", чтобы объединить последние изменения Eventstream. Вы также можете просмотреть дифф для каждого элемента на вкладке "Обновления " перед применением изменений, чтобы понять, что будет изменено в рабочей области.

Снимок экрана, на котором показаны элементы потока событий обновления из Git.

Развертывание элементов Eventstream с одного этапа на другой

  1. В представлении рабочей области выберите "Создать конвейер развертывания". Вы также можете создать конвейер из точки входа конвейеров развертывания в Fabric (в нижней части списка рабочих областей). Снимок экрана: место создания конвейера.
  2. Вы можете определить, сколько этапов он должен иметь и как они должны называться. Количество этапов является постоянным и не может быть изменено после создания конвейера.
  3. Присвойте конвейеру имя. Конвейер по умолчанию имеет три стадии: Разработка, Тест и Продакшн. Этапы можно переименовать, и их количество в конвейере может быть от 2 до 10. Затем нажмите кнопку "Создать" и продолжить. Снимок экрана: имя конвейера и этапа.
  4. После создания конвейера можно назначить рабочую область каждому этапу. Снимок экрана, демонстрирующий как назначить рабочую область каждому этапу.
  5. После того как содержимое размещено на этапе конвейера, можно выбрать элементы и развернуть их на следующем этапе, даже если в рабочей области следующего этапа уже есть содержимое. Парные элементы перезаписываются. Снимок экрана, на котором показано, как развернуть содержимое на разных этапах.

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

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

Поддержка CI/CD для компонентов потока событий

Функции CI/CD структуры включают интеграцию Git, конвейеры развертывания и общедоступные API. В этом разделе описывается совместимость различных компонентов Eventstream с разными функциями CI/CD. Понимание этих уровней поддержки важно для обслуживания и развертывания элементов Eventstream в рабочих областях.

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

Определения уровня поддержки

  • Полностью поддерживается: конфигурация полностью сохраняется во время развертывания.
  • Частично поддерживается: ресурс поддерживает CI/CD, но дополнительные параметры (например, список исключений столбцов БАЗЫ данных SQL Azure (CDC) не поддерживаются и будут возвращаться к значениям по умолчанию после развертывания.
  • Не поддерживается: компонент не поддерживает CI/CD через конвейеры интеграции и развертывания Git.

Матрица поддержки компонентов

Категория Полностью поддерживается Частично поддерживается Не поддерживается
Источники Стандартные источники GA (например, Центры событий Azure, Confluent, примерные данные) База данных SQL Azure (CDC)
Управляемый экземпляр SQL Azure (CDC)
База данных MySQL (CDC)
База данных PostgreSQL CDC
SQL Server на виртуальной машине (CDC)
Служебная шина Azure (предварительная версия)
Cribl (предварительная версия)
HTTP (предварительная версия)
MongoDB CDC (предварительная версия)
Направления Все назначения - -
Operators Filter
Управление полями
Агрегат
Присоединиться
Группировать по
Union
Развернуть
SQL Code (Пользовательский код) -
Features Общие возможности (например, вывод с несколькими схемами) - Приостановить/Возобновить состояние

Это важно

После CI/CD (конвейер интеграции и развертывания Git) все ресурсы в целевом потоке событий становятся активными, если только они не оказались отключены из-за проблем с подключением или конфигурацией. Ресурсы в исходном потоке событий (экспортированы в Git) и в развернутом потоке событий сохраняют свои состояния.

Предупреждение

При импорте источника пространства имен Azure Event Grid убедитесь, что у вас есть разрешения Член или выше в целевой рабочей области Fabric. Если нет, запросите разрешения участника для субъекта-службы Event Grid перед продолжением.

Ограничение

  • Интеграция Git и Git-конвейер развертывания имеют ограниченную поддержку сценариев между пространствами рабочих областей. Чтобы избежать проблем, убедитесь, что все конечные точки Eventstream находятся в одной и той же рабочей области. Развертывание между рабочими областями может не работать должным образом.
  • Если Eventstream включает назначение Eventhouse с использованием режима прямого приема данных, необходимо вручную перенастроить подключение после импорта или развертывания его в новой рабочей области.
  • Ссылки на подключения: Рекомендуется использовать ссылки для подключения (библиотека переменных) с целью централизации и повторного связывания подключений при развертывании элементов Eventstream в различных рабочих областях. Такой подход может уменьшить вручную перенастройку, например, когда назначения Eventhouse используют прямое внедрение.