0Pricing
Helm Academy · Урок

Что такое хуки и когда они запускаются

pre-install, post-upgrade и полный набор событий

«Что такое хуки и когда они запускаются» — бесплатный урок Helm Academy на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Helm Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Helm Academy содержит 4 уроков всего.

Зачем нужны хуки

Иногда работу нужно выполнить в точно определённый момент выпуска, например заполнить базу данных начальными данными. Хук Helm запускает ресурс в выбранный момент жизненного цикла.

Хук — это просто аннотированный ресурс

Хук — это обычный манифест Kubernetes с одной дополнительной аннотацией. Аннотация helm.sh/hook сообщает Helm, что ресурс нужно обрабатывать особым образом, а не как обычное содержимое релиза.

metadata:
  annotations:
    "helm.sh/hook": pre-install

События установки

При новой установке срабатывают два события. pre-install выполняется до создания ресурсов чарта, а post-install — после их применения.

"helm.sh/hook": pre-install

События обновления

У обновлений есть собственная пара событий. pre-upgrade срабатывает до применения обновления, а post-upgrade — после размещения новых ресурсов.

"helm.sh/hook": pre-upgrade,post-upgrade

События отката

Откат к предыдущей редакции также запускает хуки. pre-rollback выполняется до возврата, а post-rollback — после восстановления прежнего состояния.

События удаления

При удалении срабатывает пара событий. pre-delete выполняется до удаления ресурсов, оставляя вам время заранее освободить ресурсы или создать резервные копии.

"helm.sh/hook": pre-delete

Событие test

Есть ещё одно особое событие. Хук test не срабатывает при установке; он запускается только когда вы выполняете helm test для существующего релиза.

"helm.sh/hook": test

Хуки часто являются заданиями

Большинство хуков — это Kubernetes Job, поскольку задание выполняется до конца и сообщает об успехе. Helm ждёт завершения этого Job, прежде чем продолжить работу с релизом.

kind: Job
metadata:
  annotations:
    "helm.sh/hook": post-install

Helm ждёт успешного завершения

Для каждого веса Helm ждёт, пока ресурс хука не достигнет состояния готовности, и только после этого продолжает работу. Неудачный хук останавливает всю установку или обновление.

Вне обычного отслеживания

Ресурсы хуков существуют вне обычного жизненного цикла релиза. Они не обновляются вместе с чартом, поэтому их удаление нужно настраивать с помощью отдельных политик удаления.

Объединяйте несколько событий

Один ресурс может использоваться в нескольких случаях. Перечислите события вместе, например post-install,post-upgrade, чтобы одно и то же задание запускалось после новой установки и обновления.

"helm.sh/hook": post-install,post-upgrade

Быстрая проверка

Вы хотите, чтобы Job запустился после первой установки нового чарта.

Повторение

Хуки — это аннотированные манифесты, срабатывающие при событиях жизненного цикла: установке, обновлении, откате, удалении и тестировании. Helm ждёт успешного завершения каждого из них. 🪝

Часто задаваемые вопросы

Урок «Что такое хуки и когда они запускаются» бесплатный?

Да — полный текст урока «Что такое хуки и когда они запускаются» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Helm Academy, подпишись на CoddyKit PRO. Курс Helm Academy содержит 4 уроков всего.

Чему я научусь в уроке «Что такое хуки и когда они запускаются»?

pre-install, post-upgrade и полный набор событий Ты практикуешь Helm Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Helm Academy?

Предыдущий опыт не требуется. Helm Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.

Сколько времени занимает урок «Что такое хуки и когда они запускаются»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Helm Academy?

Да. Каждый урок Helm Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Что такое хуки и когда они запускаются
  2. Задание миграции DB перед обновлением
  3. Вес и порядок хуков
  4. Политики удаления хуков
← Назад к Helm Academy