Выбор ответа Middle CI: пайплайны и артефакты спрашивают часто обновлено
Собрать один раз
Вопрос
Пайплайн собирает отдельный Docker-образ для stage и для prod с разными переменными окружения внутри. В чём главный риск?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: В прод уходит не тот артефакт, что проверяли на stage. Принцип build once, deploy many: один и тот же артефакт проверяется и продвигается.
Варианты ответа
- Образы займут вдвое больше места в реестре и быстрее упрёмся в квоту
- В прод уходит не тот артефакт, что проверяли на stageправильный ответ
- Docker не умеет собирать два образа с разными ARG в одном пайплайне
- Переменные окружения нельзя задавать при сборке, только при запуске
Разбор
Принцип build once, deploy many: один и тот же артефакт проверяется и продвигается. Две сборки могут получить разные зависимости, базовый образ или состояние кеша, и тест на stage ничего не гарантирует для prod. Конфиг окружения подставляют при запуске (env, ConfigMap, секреты). Место в реестре вторично, остальные варианты просто неверны: ARG при сборке задавать можно.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Ещё по теме «CI: пайплайны и артефакты»
- Какие сервисы пересобрать в монорепо
- concurrency в GitHub Actions
- Ключ кеша зависимостей
- Conventional Commits
- Как ускорить пайплайн
- GitHub Actions: отмена устаревших запусков
- GitHub Actions: раннер и зависимость джоб
- GitLab CI: артефакты со сроком жизни