advanced

Jenkins

Понимайте архитектуру controller-agent, pipelines as code, plugins, credentials и операционное сопровождение self-hosted CI.

Jenkins — self-hosted сервер автоматизации с controllers, agents, pipelines as code (`Jenkinsfile`), credentials и большой экосистемой plugins. Сила — гибкость; цена — операции.

					pipeline {
  agent any
  stages {
    stage('Test') {
      steps {
        sh 'npm ci && npm test'
      }
    }
  }
}
				

Команды сами отвечают за апгрейды, образы agents, CVE plugins, ёмкость очереди и бэкап состояния controller. Эфемерные agents улучшают воспроизводимость против долгоживущих mutable машин.

На интервью: модель controller-agent, риск plugins, scope credentials, почему уходят на hosted CI, review pipeline-as-code.

Типовые ошибки: немaintained plugins; mutable agents с drift; широкие credentials на все jobs.

Компромисс — безграничная кастомизация против патчей безопасности и операционной рутины.

Чеклист:

  • Jenkins как управляемая инфраструктура.
  • Воспроизводимые agents (образы, не snowflakes).
  • Ограничьте blast radius plugins и credentials.
  • Версионируйте и review Jenkinsfiles в Git.