Устранение несоответствия CI p... Заметка
DEV Community на русском

Устранение несоответствия CI pgvector в бэкенде FastAPI RAG

Проект mini-agent, бэкенд на FastAPI для демонстрации ИИ-агента поддержки, столкнулся с сбоем CI. Этот сбой произошел из-за того, что тестовый набор зависел от расширения pgvector для PostgreSQL. Рабочий процесс GitHub Actions ошибочно использовал универсальное изображение PostgreSQL, которое не включало это необходимое расширение. В результате шаг инициализации базы данных завершился неудачно при попытке создать расширение вектора. Это несоответствие между тестовой средой и требованиями приложения привело к остановке рабочего процесса на этапе выполнения тестов. Исправление заключалось в изменении образа службы PostgreSQL в конфигурации GitHub Actions. Обновленный образ, pgvector/pgvector:0.8.6-pg17, специально включает необходимое расширение pgvector. Это изменение в одну строку гарантировало, что служба базы данных в CI теперь соответствует возможностям приложения. После этого изменения рабочий процесс CI успешно завершился, восстановив надежное интеграционное тестирование. Извлеченный урок подчеркивает необходимость рассматривать расширения базы данных как явные зависимости времени выполнения для CI.