Метаданные выпуска через .Release
Имя, пространство имён, редакция и флаги установки
«Метаданные выпуска через .Release» — бесплатный урок DevOps Bootcamp на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения DevOps Bootcamp, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс DevOps Bootcamp содержит 4 уроков всего.
Знакомство с объектом Release
Если .Values содержит конфигурацию, то .Release содержит сведения об этой конкретной установке: как она называется, где размещена и какая у неё ревизия.
Имя релиза
.Release.Name — это имя, заданное вами при установке. Чаще всего его используют в начале имён ресурсов, чтобы они оставались уникальными. 🏷️
# helm install web ./mychart
name: {{ .Release.Name }}-configЦелевое пространство имён
.Release.Namespace — это пространство имён, в которое разворачивается релиз. Используйте его, когда шаблону нужно явно указать собственное пространство имён.
namespace: {{ .Release.Namespace }}Номер ревизии
.Release.Revision показывает, сколько раз этот релиз устанавливали или обновляли. При новой установке номер ревизии равен 1.
IsInstall и IsUpgrade
Два логических значения сообщают о выполняемой операции: .Release.IsInstall имеет значение true при первой установке, а .Release.IsUpgrade — true при каждом обновлении.
{{ if .Release.IsUpgrade }}upgrading{{ end }}Зачем добавлять имя релиза в начало
Повторная установка одного чарта в одном пространстве имён привела бы к конфликту. Добавление .Release.Name в начало имён сохраняет ресурсы разных релизов раздельными.
Поле Service
.Release.Service сообщает, какой движок выполняет рендеринг. При обычном запуске Helm его значение — просто Helm.
Поля релиза доступны только для чтения
Нельзя задать значения .Release из чарта: Helm заполняет их во время рендеринга. Считайте весь объект .Release доступным только для чтения.
Распространённый шаблон именования
Многие чарты объединяют имя релиза и имя чарта, создавая уникальное полное имя. .Release.Name — та часть, которая делает имя уникальным для конкретной установки.
{{ .Release.Name }}-{{ .Chart.Name }}Пишите имена полей с прописной буквы
В именах полей встроенных объектов первая буква должна быть прописной: .Release.Name, а не .release.name. Использование строчной буквы даёт пустой результат.
Условие для установки и обновления
Хук можно запускать только в первый раз, если ограничить его условием .Release.IsInstall. Так чарты заполняют данные только при первой установке.
{{ if .Release.IsInstall }}# seed once{{ end }}Быстрая проверка
Вы хотите, чтобы имя каждого ресурса было уникальным для этой конкретной установки.
Итоги: метаданные релиза
Вы познакомились с .Release: Name, Namespace, Revision, а также флагами IsInstall и IsUpgrade. Эти факты, доступные только для чтения, позволяют шаблонам учитывать конкретную установку.
Часто задаваемые вопросы
Урок «Метаданные выпуска через .Release» бесплатный?
Да — полный текст урока «Метаданные выпуска через .Release» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс DevOps Bootcamp, подпишись на CoddyKit PRO. Курс DevOps Bootcamp содержит 4 уроков всего.
Чему я научусь в уроке «Метаданные выпуска через .Release»?
Имя, пространство имён, редакция и флаги установки Ты практикуешь DevOps Bootcamp с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать DevOps Bootcamp?
Предыдущий опыт не требуется. DevOps Bootcamp на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «Метаданные выпуска через .Release»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке DevOps Bootcamp?
Да. Каждый урок DevOps Bootcamp включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Объект Values и вложенный доступ
- Метаданные выпуска через .Release
- Объекты Chart и Capabilities
- Files, Template и корневой контекст