Как дебажить медленный CI build?

Middle
286 просмотров
AFK Offer AI

Измерить время каждого шага — найти bottleneck. Частые причины: медленная установка зависимостей (нет кэша), большой Docker context, медленные тесты, ненужные шаги. Оптимизация: кэшировать node_modules/pip/go modules, multi-stage Docker build с layer caching, параллельные jobs, test splitting (pytest-split, jest --shard), shallow git clone (fetch-depth: 1). GitHub Actions cache action для зависимостей. Docker layer ordering: редко меняющиеся слои (COPY package.json, RUN npm install) — раньше, часто меняющиеся (COPY . .) — позже.

Следующий вопрос

Как работают requests и limits для CPU и памяти?