Стадия жизненного цикла модуля: Experimental
У модуля есть требования для установки
Добавление Helm-репозитория
Для добавления репозитория создайте ресурс HelmClusterAddonRepository:
apiVersion: helm.deckhouse.io/v1alpha1
kind: HelmClusterAddonRepository
metadata:
name: podinfo
spec:
url: https://stefanprodan.github.io/podinfoПосле создания репозитория можно просмотреть доступные в нём Helm-чарты:
d8 k get helmclusteraddoncharts.helm.deckhouse.io -l repository=podinfoПример вывода:
NAME AGE LABELS
podinfo-chart-podinfo 11d chart=podinfo,heritage=deckhouse,repository=podinfoДля просмотра списка версий, доступных для заданного чарта:
d8 k get helmclusteraddonchart podinfo-podinfo -o yamlПример вывода:
apiVersion: helm.deckhouse.io/v1alpha1
kind: HelmClusterAddonChart
metadata:
labels:
chart: podinfo
heritage: deckhouse
repository: podinfo
name: podinfo-podinfo
status:
versions:
- version: 6.11.0
- version: 6.10.2Развёртывание приложения
Для развёртывания приложения создайте ресурс HelmClusterAddon, указав имя репозитория, имя и версию чарта, а также целевое пространство имён:
apiVersion: helm.deckhouse.io/v1alpha1
kind: HelmClusterAddon
metadata:
name: podinfo
spec:
namespace: test
chart:
helmClusterAddonChart: podinfo
helmClusterAddonRepository: podinfo
version: 6.10.2Одновременно допускается развёртывание только одного экземпляра HelmClusterAddon, использующего заданный Helm-чарт из заданного репозитория. При этом из одного репозитория одновременно могут быть развёрнуты разные Helm-чарты.
Параметр .spec.chart.version является необязательным. Если он не указан, будет установлена последняя доступная версия чарта.
Ручной запуск реконсиляции
Чтобы запустить немедленную реконсиляцию ресурса, не дожидаясь следующей запланированной синхронизации, добавьте к нему аннотацию reconcile.helm.deckhouse.io/force. Контроллер обнаружит аннотацию, выполнит полный цикл реконсиляции и автоматически удалит аннотацию после завершения обработки.
Запуск реконсиляции для HelmClusterAddon:
d8 k annotate helmclusteraddon podinfo reconcile.helm.deckhouse.io/force="$(date -u +%Y-%m-%dT%H:%M:%SZ)" --overwriteЗапуск реконсиляции для HelmClusterAddonRepository:
d8 k annotate helmclusteraddonrepository podinfo reconcile.helm.deckhouse.io/force="$(date -u +%Y-%m-%dT%H:%M:%SZ)" --overwriteЗначение аннотации не имеет значения — контроллер проверяет только её наличие на ресурсе. После завершения реконсиляции аннотация удаляется автоматически.