Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Дайте агенту доступ к контексту репозитория, выпусков и запросов для расследования. Он может читать недавние изменения, находить связанные проблемы и открывать проблему или pull request в нужном репозитории или проекте, когда предоставляемые вами учетные данные это позволяют.
Этот учебник охватывает GitHub, Azure DevOps и GitLab. Соединения исходного кода используют страницу Code Access (Builder > Code Access), а не управляемый мастер коннектора. В этой статье внимание уделяется деталям исходного кода: как каждый сервис аутентифицируется и как проверить соединение.
Необходимые условия
- Действующий агент SRE и доступ к sre.azure.com.
- Разрешение на настройку агента.
- Аккаунт в сервисе с доступом к репозиториям или проектам, которые агент должен прочитать.
Для сервисов уведомлений см. Подключить сервис уведомлений.
Соединители исходного кода
| Разъём | Услуга | Authentication | Типичное использование |
|---|---|---|---|
| GitHub | GitHub и GitHub Enterprise Cloud | Приложение для самостоятельного GitHub (также поддерживаются OAuth и PAT для github.com) | Читайте репозитории, выпуски и pull requests между проектами и организациями; Создавайте проблемы или pull requests с одобрением |
| Azure DevOps | Azure DevOps | Управляемая идентичность (также поддерживаются OAuth и PAT) | Читайте репозитории и pull requests между проектами; Создавайте pull requests или рабочие задачи с одобрением |
| GitLab | GitLab | Личный маркер доступа (PAT) | Читайте репозитории, выпуски и запросы на слияние; Создавайте проблемы и комментарии с одобрением |
GitHub и Azure DevOps представляют аутентификационные опции в виде радиокнопок. GitLab использует личный токен доступа.
Шаг 1: Открытый доступ к коду
- Перейдите к sre.azure.com и выберите агент.
- В левой боковой панели разверните Builder и выберите Code Access.
- Выберите вкладку для вашего сервиса (GitHub, Azure DevOps или GitLab).
- Выберите "Добавить репозиторий".
Шаг 2: Аутентифицировать
Диалог «Добавить репозитории » открывается с помощью трёхшагового мастера: выберите платформу → Аутентификовать → добавить репозитории. После каждого шага выбирайте Далее. На последнем этапе есть кнопка «Сохранить ».
Используйте приложение «Bring your own GitHub App» для GitHub Enterprise Cloud или для охвата доступа по организации или установке.
- В разделе «Методы входа» выберите «Принести своё собственное приложение GitHub».
- Заполните поля настройки приложения, показанные мастером.
- Нажмите кнопку Далее.
GitHub Enterprise Cloud (.ghe.com) требует подключения к приложению GitHub. Для github.com также поддерживаются ваш аккаунт (OAuth, если он настроен под вашу среду) или токен Personal access, хотя опция GitHub App предпочтительна для производственных сценариев для более детальных разрешений и видимости аудита.
После подключения агент может искать репозитории, задачи и запросы по проектам и организациям, к которым имеет доступ ваше приложение или аккаунт.
Сервис видит удостоверение личности, авторизировавшей соединение. Проблемы, комментарии и активность pull-запросов, которые создаёт агент, появляются в этом аккаунте.
Шаг 3: Добавить репозитории
Шаг «Добавить репозитории » показывает таблицу, где указано, какие репозитории индексируют агенты. Каждая строка — это один репозиторий.
Если ваш сервис Azure DevOps, сначала выберите project из выпадающего меню Azure DevOps Project. Столбец URL репозитория заполняется репозиториями в этом проекте.
В столбце URL репозитория выберите репозиторий из выпадающего меню или введите URL напрямую. Для GitHub и GitLab выпадающие списки репозиториев, к которым могут получить доступ к вашим учетным данным. Для Azure DevOps он перечисляет репозитории в выбранном проекте.
В столбце «Отображаемое имя » введите короткое имя, которое агент использует для обращения к репозиторию.
По желанию заполните столбец «Описание », чтобы агент получил больше контекста относительно того, что содержит репозиторий.
Если ваш сервис — Azure DevOps, а репозиторий очень большой, включите галочку «Удалённо». Агент использует поиск на удалённой копии с помощью искусственного интеллекта вместо локального клонирования. Репозитории клонируются с ограничением диска 100 ГБ; включение Remote позволяет избежать этого ограничения.
Чтобы добавить ещё один репозиторий, выберите « Добавить » и заполните следующую строку.
Когда таблица заполнена, выберите Сохранить.
Шаг 4: Подтвердите ситуацию
Откройте чат с вашим агентом.
Задайте прочитанный вопрос, например:
List the open issues in the payments repository from the last week.Проверьте карту инструментов, чтобы увидеть, как агент ищет по сервису и результаты возвратов, основанные на ваших данных.
Когда появляются результаты, ссылающиеся на ваш репозиторий, соединение работает от конца до конца.
Troubleshooting
| Проблема. | Cause | Исправление |
|---|---|---|
| Поиск не возвращает результатов | Аккаунт не имеет доступа к проекту или репозиторию | Убедитесь, что аккаунт подключения видит проект или репозиторий, затем попробуйте снова. |
| Создание не удаётся из-за ошибки допуска | Токен или аккаунт не имеют область записи | Предоставьте необходимый объём токена или аккаунту, либо используйте учетные данные с доступом к записи. |
| GitHub Enterprise Cloud отклоняет соединение | GitHub Enterprise Cloud требует подключения к приложению GitHub | На странице доступа к коду отключите соединение GitHub, выберите «Добавить репозиторий», выберите GitHub, введите свой .ghe.com хост и выберите «Bring your own GitHub App» в качестве способа аутентификации. |