Редагування лімітів історії pipelines в Jenkins

1. Загальний опис

Jenkins дозволяє зберігати історію builds pipelines за певний проміжок та/або певну їх кількість. В цій інструкції наведені кроки для редагування лімітів історії pipelines в Jenkins.

2. Виконання

  1. Внесення змін до pipelines центрального Jenkins.

    1. Редагування pipelines job-provisions в центральному Jenkins.

      1. В центральному Jenkins перейдіть до pipelines job-provisions за шляхом job-provisions/ci. За даним шляхом знаходяться job-provisions для cluster-mgmt та реєстрів (default-<версія реєстру>), які потрібно модифікувати.

        Якщо на кластері не залишилось реєстрів попередньої версії та не планується їх створення - оновіть тільки default-<актуальна версія Платформи> та cluster-mgmt за вказаними далі кроками.

      2. Перейдіть до pipeline (наприклад, cluster-mgmt), далі до "Configure" та перейдіть до блоку "Build".

      3. Змініть значення у всіх pipelineJob.logRotator.numToKeep на потрібне, за потреби видаліть pipelineJob.logRotator.daysToKeep, та збережіть зміни.

        Приклад змін:

        jenkins history 1

      4. Повторіть кроки 1-3 для потрібних pipelines default-<версія реєстру>.

    2. Редагування pipelines реєстрів в центральному Jenkins.

      В кожній папці реєстрів необхідно модифікувати pipelines для застосування змін лімітів історії пайплайнів, не чекаючи запуску Create-release-<назва реєстру> (або Create-release-cluster-mgmt для cluster-mgmt).

      Розглянемо зміни на прикладі Create-release-cluster-mgmt.

      1. Перейдіть до pipeline (на приклад, cluster-mgmt), далі до "Configure" та в блоці "General" знайдіть параметр Strategy зі значенням Log Rotation.

      2. Змініть параметри "Days to keep builds" та "Max # of builds to keep" на потрібні.

        Приклад змін:

        jenkins history 2

      3. Повторіть кроки 1-2 для потрібних pipelines реєстрів.

  2. Внесення змін до pipelines Jenkins реєстру.

    1. Редагування репозиторію jenkins-operator.

      Необхідну для редагування гілку репозиторію jenkins-operator можна знайти в блоці jenkins-operator у файлі helmfile.yaml в гілці master репозиторію реєстру.

      1. У файлі deploy-templates/JobProvisioner.groovy змінити значення у всіх pipelineJob.logRotator.numToKeep на потрібне та збережіть зміни.

        Приклад змін:

        jenkins history 3

      2. MASTER-Build pipeline реєстру в Jenkins.

        Поетапно запустіть MASTER-Build pipeline реєстрів в Jenkins та дочекайтесь їх успішного завершення.

        У разі відсутності можливості запустити MASTER-build pipeline реєстру - виконайте опціональний крок b.

    2. Опціонально: Редагування pipelines job-provisions в Jenkins реєстру.

      Даний крок потрібно виконати у разі відсутності можливості запустити MASTER-build pipeline реєстру.

      Повторіть кроки 1-3 для pipeline job-provisions/ci/registry та 1-2 підрозділу 1 для pipelines реєстрів в реєстровому Jenkins, окрім cleanup-job та form-storage-migration.

3. Перевірка застосування змін

  1. Перевірка пайплайну job-provisions/ci/registry.

    1. Перейдіть в Jenkins реєстру, далі до pipeline job-provisions/ci/registry, далі до "Configure" та перейдіть до блоку "Build".

    2. Знайдіть параметр pipelineJob.logRotator.numToKeep та перевірте, що його значення змінилось на потрібне.

      Приклад змін:

      jenkins history 4

  2. Перевірка pipelines реєстру.

    1. Перейдіть до pipeline (на приклад, registry-regulations/MASTER-Build-registry-regulations), далі до "Configure" та в блоці "General" знайдіть параметр Strategy зі значенням Log Rotation.

    2. Знайдіть параметри "Days to keep builds" та "Max # of builds to keep" та перевірте, що їх значення змінились на потрібні.

      Приклад змін:

      jenkins history 5