установка диаграммы руля — произойдет сбой, если зависимость уже установлена

#kubernetes #kubernetes-helm

Вопрос:

У меня есть несколько диаграмм управления (каждая из них является микросервисом), но некоторые из них зависят от общей диаграммы (некоторые секреты, pvcs и т. Д.). Можно объявить зависимость между диаграммами и общей диаграммой, но если пакет уже установлен как зависимость — установка диаграммы руля завершится неудачей.

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

Есть ли какой-нибудь разумный способ справиться с этим ? Например, проверьте, установлена ли уже необходимая диаграмма, и обойдите ее, не нарушив весь процесс. Тнх

Ответ №1:

В идеале вы можете дать зависимости, используя

https://helm.sh/docs/helm/helm_dependency/

 # Chart.yaml
dependencies:
- name: nginx
  version: "1.2.3"
  repository: "https://example.com/charts"
- name: memcached
  version: "3.2.1"
  repository: "https://another.example.com/charts"
 

Диаграммы руля хранят свои зависимости в » диаграммах/». Для
разработчиков диаграмм часто проще управлять зависимостями в «Chart.yaml»
, который объявляет все зависимости.

Команды зависимостей работают с этим файлом, облегчая синхронизацию между желаемыми зависимостями и фактическими зависимостями, хранящимися в каталоге » диаграммы/».

Вы также можете использовать формат вложенной диаграммы и родительской диаграммы для управления зависимостями

Структура папок что-то будет выглядеть так

 ├── Chart.yaml
├── charts
│   └── django
│       ├── Chart.yaml
│       ├── templates
│       │   ├── deployment.yaml
│       │   ├── ingress.yaml
│       │   └── service.yaml
│       └── values.yaml
├── templates
└── values.yaml
 

Например : https://medium.com/craftech/one-chart-to-rule-them-all-3f685e0f25a9

Вы также можете прочитать больше в официальной документации : https://helm.sh/docs/chart_template_guide/subcharts_and_globals/

До этого момента мы работали только с одним графиком. Но диаграммы могут иметь зависимости, называемые вложенными диаграммами, которые также имеют свои собственные значения и шаблоны. В этом разделе мы создадим подсхему и рассмотрим различные способы доступа к значениям из шаблонов.

Комментарии:

1. Привет Thx за ваш ответ — но я говорил о другом варианте использования … Я уже объявляю зависимости — это работает. Но что произойдет, если 2 диаграммы управления будут использовать одну и ту же зависимость? Первое будет развернуто без каких — либо проблем, второе завершится неудачно-с ошибкой, что зависимость уже установлена, я ищу способ, который поможет игнорировать, если зависимость уже установлена, и устанавливать ее только при необходимости. зависимость уже установлена …