Выбор ответа Middle CI: пайплайны и артефакты обновлено
concurrency в GitHub Actions
Вопрос
Разработчик пушит в ветку PR пять раз за минуту, и запускается пять одинаковых долгих пайплайнов. Что поможет?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: concurrency с группой по ветке и cancel-in-progress: true. concurrency объединяет запуски в группу, а cancel-in-progress отменяет устаревший запуск при новом.
Варианты ответа
concurrencyс группой по ветке иcancel-in-progress: trueправильный ответstrategy.matrixс одним элементом, чтобы запуск не дублировалсяtimeout-minutes: 1, чтобы лишние запуски быстро завершалисьruns-on: self-hosted, чтобы запуски шли по очереди на одном раннере
Разбор
concurrency объединяет запуски в группу, а cancel-in-progress отменяет устаревший запуск при новом. Матрица отвечает за набор комбинаций параметров, таймаут убьёт и нужный запуск, а свой раннер не уменьшит число запусков.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Ещё по теме «CI: пайплайны и артефакты»
- Какие сервисы пересобрать в монорепо
- Следующая версия по Conventional Commits
- Собрать один раз
- Conventional Commits
- Как ускорить пайплайн
- GitHub Actions: отмена устаревших запусков
- GitHub Actions: раннер и зависимость джоб
- GitLab CI: артефакты со сроком жизни