← Все этапы маршрута

Один артефакт проходит все среды · R8

R8. CI/CD и артефакты

Цель

Собрать воспроизводимый pipeline и понимать, почему delivery — это больше, чем YAML-файл.

Что освоить

  • lint, test, build, scan, publish, deploy
  • runners, artifacts и cache
  • immutable image tags и environments
  • approvals, secrets и smoke test
  • promotion и rollback

Материалы основного пути

  1. GitHub Actions — документация RU · Документация
    • Начать здесь. workflow syntax, events, jobs, steps, artifacts и secrets
  2. DORA: Continuous delivery EN · Исследование
    • Обязательно. deployment automation, test automation и deployment pipeline
  3. GitHub Skills EN · Тренажёр
    • Практика. Hello GitHub Actions и Publish packages exercises

Практика

PR запускает tests; tag собирает image; staging получает тот же image; production требует approval.

Проверьте результат

Падающий тест блокирует выпуск; в проверенных логах нет секретов; между средами продвигается тот же артефакт. Выполните rollback и запишите фактическое время; для учебного стенда можно поставить цель до 10 минут.

Вопросы, условия приёмки и доказательства

Ответьте и покажите

  • Почему один artifact должен проходить все среды?
  • Чем cache отличается от artifact?

Условия приёмки

  • Bad test blocks pipeline
  • Один digest promoted
  • Secrets masked, smoke и rollback доказаны

Учебный отказ: Выпустить заведомо failing version и восстановить предыдущий digest в пределах 10 минут.

Артефакт: URL pipeline/release + immutable image digest + rollback log

Падающий тест блокирует выпуск; staging/prod получают один digest; проверенные логи не раскрывают секреты. Выполнен rollback того же артефакта, записано фактическое время и объяснены отклонения от учебной цели.

Хорошее доказательство: URL CI/release + digest во всех средах + timed rollback log.

Недостаточно: Пересборка image для production или ручной deploy без audit trail и approval.

Углубление и справочные материалы

Темы для углубления

  • progressive delivery
  • ephemeral environments
  • provenance и policy gates

Добавить preview environment, artifact attestation и canary/blue-green rollout с автоматическим abort по smoke.

Результат: Один immutable artifact продвигается между средами; provenance проверяется; неуспешный rollout откатывается автоматически.

Дополнительные материалы