Skip to content

chore: привести инфраструктуру к канону кампании - #9

Merged
mokevnin merged 1 commit into
mainfrom
chore/modernization
Aug 13, 2026
Merged

chore: привести инфраструктуру к канону кампании#9
mokevnin merged 1 commit into
mainfrom
chore/modernization

Conversation

@mokevnin

Copy link
Copy Markdown
Contributor

Пачка python-репозиториев кампании docs/components-modernization.md.

CI ничего не проверял. Джобы с тестами или линтером здесь не было вообще: workflow собирал образ и пушил его в ghcr, то есть «зависимости обновлены» ничем не подтверждалось. Линтер добавлен.

Тесты остаются вне CI: tests/test_server.py интеграционный, он стучится на localhost:4000 к поднятому приложению, а данные берёт из внешней базы db.hexlet.app. Причина записана комментарием в самом workflow, локально это make compose плюс make test.

  • версия рантайма переезжает в .python-version (3.14, как в образах кита), requires-python >=3.12>=3.14
  • базовый образ python:3.12-slimpython:3.14-slim, uv приезжает готовым бинарником вместо pip install uv
  • в dependabot добавлен блок docker: тег базового образа никто не обновлял, отсюда и отставание на два мажора. Блок uv приведён к канону (labels, commit-message.prefix: chore)
  • добавлены .dockerignore (без него COPY . . затаскивает в образ хостовый .venv) и линт заголовка PR
  • устаревшее [tool.uv] dev-dependencies заменено на [dependency-groups] dev; uv печатал предупреждение о его удалении
  • check больше не равен одному линтеру

Проверено локально: make lint зелёный на 3.14.7, образ собран docker build — джоба deploy стоит под if: github.event_name == 'push' и на PR не проверяется.

🤖 Generated with Claude Code

Версия рантайма переезжает в .python-version и берётся оттуда uv-ом, базовый
образ поднят с python:3.12 до 3.14, uv приезжает в образ готовым бинарником
вместо pip install. В dependabot добавлен блок docker: тег базового образа
никто не обновлял, отсюда и отставание на два мажора.

CI до этого только собирал и пушил образ, поэтому «зависимости обновлены» ничем
не подтверждалось. Добавлен линтер. Тесты остаются вне CI: test_server.py
интеграционный, он стучится к поднятому приложению и во внешнюю базу.

Заодно .dockerignore, чтобы COPY . . не затаскивал в образ хостовый .venv, и
замена устаревшего tool.uv.dev-dependencies на dependency-groups.

Образ собран локально: деплой-джоб стоит под if push и на PR не проверяется.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@mokevnin
mokevnin merged commit 8031795 into main Aug 13, 2026
2 checks passed
@mokevnin
mokevnin deleted the chore/modernization branch August 13, 2026 00:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant