Навык: GitLab
gitlab-skill — встроенный навык для работы с GitLab через программный интерфейс GitLab и обычные команды git.
Он полезен, когда нужно не только изменить локальные файлы, но и посмотреть или изменить состояние проекта в GitLab: найти проекты, создать репозиторий, открыть задачу, проверить запрос на слияние, посмотреть ветки, коммиты или проверки.
Когда использовать
Навык подходит для таких запросов:- «Покажи мои проекты в GitLab».
- «Создай закрытый проект в GitLab».
- «Создай задачу в проекте group/project».
- «Покажи открытые запросы на слияние».
- «Проверь проверки для основной ветки».
- «Склонируй репозиторий GitLab в эту папку».
Что умеет навык
Навык помогает Велесу:- получать список проектов и искать проекты по названию;
- создавать новые проекты;
- клонировать репозитории;
- просматривать, создавать и обновлять задачи;
- просматривать и создавать запросы на слияние;
- работать с ветками, коммитами и проверками;
- обрабатывать страницы выдачи GitLab, когда результатов много;
- показывать результат в виде понятных таблиц и ссылок.
Доступ
Для работы с закрытыми данными GitLab нужен адрес GitLab и личный ключ доступа. Рекомендуемый способ — сохранить ключ доступа через секреты Велеса:skills.gitlab-skill.env.GITLAB_TOKEN— личный ключ доступа GitLab.
GITLAB_TOKEN как секрет. Если значение сохранено в панели секретов, Велес подставит его в переменную окружения только на время выполнения ответа.
GITLAB_HOST — обычная настройка с адресом GitLab, например https://gitlab.com. Её можно задать как переменную окружения процесса или в пользовательском файле конфигурации, но это не секрет.
Также поддерживается файл ~/.veles/gitlab_config.json:
veles/skills/gitlab-skill/scripts/config.json: этот файл оставлен только как заглушка для совместимости. Для постоянной настройки лучше использовать секрет Велеса skills.gitlab-skill.env.GITLAB_TOKEN.
Вспомогательные команды
Основная команда находится вveles/skills/gitlab-skill/scripts/gitlab_api.py.
Примеры:
--insecure. Используйте этот режим только там, где понимаете сетевой риск.
Ограничения
- Для операций записи нужен ключ доступа с подходящими правами.
- Для клонирования должен быть доступен
git. - Если название проекта неоднозначно, лучше указывать путь
group/projectили числовой идентификатор проекта. - Перед удалением веток или другими разрушительными действиями Велес должен отдельно подтвердить намерение пользователя.
