Включение Code Quality везде одновременно означает, что каждая команда начинает видеть Code Quality выводы по их запросам на вытягивание в тот же день, что может быть удивительно и разрушительным. В этом руководстве вы узнаете, как развернуть его на этапах: ввести выводы в небольшую группу сначала, откалибировать пороговые значения, а затем развернуть. Вы докажете значение, прежде чем оно влияет на всю организацию.
Необходимые условия
- Владелец предприятия разрешил Code Quality вашей организации. См . раздел AUTOTITLE.
- Вы являетесь владельцем организации, поэтому вы можете включить Code Quality и настроить наборы правил на уровне организации.
Планирование пилотного проекта
Начните с небольшой пилотной группы , а не всей организации. Хорошая пилотная группа — это отдельная инженерная группа или связанный набор приложений, который достаточно активен для создания значимых результатов и владельцев людей, которые могут дать вам отзыв о результатах.
Для целевой группы используйте параметр Code Qualityдоступа к репозиторию вашей организации. У вас есть два хороших варианта для пилотного проекта:
- Выбранные репозитории: Выберите фиксированный список пилотных репозиториев вручную. Лучше всего, если пилотная группа является небольшой и стабильной.
- Сопоставление фильтра: Включите каждый репозиторий, соответствующий заданным критериям, например пользовательскому свойству, например
code-quality-enabled: true. Лучше всего, если вы хотите, чтобы пилотный проект автоматически рос по мере того, как команды помечают больше репозиториев.
Нацеливание на пользовательское свойство, а не именование репозиториев по одному, означает, что пилотный проект можно расширить позже, задав свойство для нескольких репозиториев. Если вы хотите использовать пользовательское свойство:
- Создайте настраиваемое свойство. См . раздел AUTOTITLE.
- Включите Code Quality на уровне организации для репозиториев, соответствующих фильтру. См . раздел AUTOTITLE.
Включение наборов правил качества в режиме оценки
Сначала включите пороговые значения качества в режиме оценки. В этом режиме отчеты о том, Code Quality какие запросы на вытягивание будут заблокированы, не блокируя их, чтобы пилотные команды могли видеть влияние, прежде чем оно станет принудительно.
Настройте пороговые значения в качестве набора правил организации, ограниченного пилотными репозиториями, и оставьте его в режиме оценки, пока вы не собрали достаточное количество действий запроса на вытягивание, чтобы оценить влияние, как правило, неделю или два. См . раздел AUTOTITLE.
Настройка пороговых значений
Используйте результаты в режиме оценки для калибровки пороговых значений. Проверьте аналитические сведения о наборе правил (журнал набора правил ), чтобы увидеть, какие запросы на вытягивание были заблокированы и почему. Если слишком много запросов на вытягивание будет заблокировано, пороговые значения могут быть более строгими, чем ваша база кода готова к работе. Если почти ни один из них не будет заблокирован, вы можете заставить их ужесточить. Отрегулируйте, пока ворота не отражают панель качества, которую вы действительно хотите применить.
Переход к принудительному режиму
Когда результаты вычисляемого режима выглядят правильно, переключите набор правил с "Оценка на активный". Пороговые значения теперь начинают блокировать запросы на вытягивание, которые не соответствуют им. Ваши пилотные команды испытывают принудительные ворота, давая вам окончательный контроль перед расширением развертывания.
Развертывание в организации
Разверните развертывание, используя то, что вы узнали из пилотного проекта. Его можно расширить двумя способами:
- Добавьте репозитории в список выбранных репозиториев или задайте пользовательское свойство для дополнительных репозиториев, соответствующих фильтру.
- После того как вы уверены в пороговых значениях, переключите параметр доступа репозитория ко всем репозиториям , чтобы применить Code Quality к всей организации в одном изменении.
Некоторые сведения о том, как работает включение на уровне организации, поэтому вы можете выбрать правильный подход:
- Выбор доступа к репозиторию применяется как к существующим, так и к будущим репозиториям, поэтому репозитории, созданные позже, наследуют ваш выбор автоматически. Это верно для всех репозиториев, сопоставления фильтра и без репозиториев.
- Включение принудительного доступа для гарантированной базовой базы, которую администраторы репозитория не могут переопределить. Оставьте его отключенным или выберите "Разрешить репозиториям принять решение", чтобы позволить командам принять участие на собственной временной шкале.
- Включение Code Qualityне включает автоматическое включение покрытия кода. Охват включен для каждого репозитория. Он начинает отчеты только после добавления рабочего процесса, который отправляет данные покрытия, чтобы команды могли сначала принять Code Quality и добавить покрытие позже. См . раздел AUTOTITLE.
Полный список параметров доступа и способ применения см. в разделе Включение качества кода в организациях и организациях.
Масштабирование программным способом
Для большинства развертываний включение через пользовательский интерфейс является лучшей отправной точкой: она позволяет фильтровать и целевые репозитории напрямую, что труднее воспроизвести в скрипте.
Если вам нужна автоматизация вокруг развертывания, вы можете получить Code Quality результаты через REST API, который полезен для создания отчетов о ходе развертывания. Вы также можете включить Code Quality репозитории через REST API, чтобы включить включение сценариев в организации вместо включения каждого репозитория в пользовательском интерфейсе. См . раздел AUTOTITLE.
Дальнейшие действия
- Оценка работоспособности в организации. См . раздел AUTOTITLE.