Ошибка: ошибка анализа YAML - ошибка преобразования YAML в JSON: yaml: управляющие символы недопустимы - PullRequest
0 голосов
/ 17 апреля 2020

Я использую таблицу управления PostgreSQL и сталкиваюсь с проблемой при добавлении сценария init. sql в /charts/postgresql/files/docker-entrypoint-initdb.d и запускаю helm install, и у меня возникает следующая проблема -

Error: YAML parse error on iriusrisk/charts/postgresql/templates/._metrics-configmap.yaml: error converting YAML to JSON: yaml: control characters are not allowed

Я полагаю, что это больше связано с проблемой, представленной Ма c В настоящее время я использую версию MacOS Mojave - 10.14.6

Я загрузил файлы здесь https://github.com/prav10194/helm-chart и https://github.com/prav10194/helm-chart/blob/master/charts/postgresql-8.6.16.tgz - это тот, у которого есть скрипт sql, а https://github.com/prav10194/helm-chart/blob/master/charts/postgresql-8.6.12.tgz - без сценария sql.

Запуск на версии minikube: v1.6.2

Версия руля:

version.BuildInfo{Version:"`v3.0.2`", GitCommit:"19e47ee3283ae98139d98460de796c1be1e3975f", GitTreeState:"clean", GoVersion:"go1.13.5"}

1 Ответ

1 голос
/ 18 апреля 2020

Ваша ошибка не имеет большого отношения к Ма c. Хотя это не информативно, похоже, проблема в том, что Helm не может найти диаграмму версии 8.1.16: она не существует в репозитории Bitnami и версия не обновляется в вашем локальном Chart.yaml. Вот что я сделал, чтобы воспроизвести его:

  1. Клонировал репозиторий.
  2. Изменена версия в requirements.yaml с * на 8.6.16.
  3. Ран helm install . --generate-name

Получил эту ошибку:

Error: YAML parse error on iriusrisk/charts/postgresql/templates/.__helpers.tpl: error converting YAML to JSON: yaml: control characters are not allowed

Если ваша ошибка имеет то же происхождение, вот что вы можете сделать, чтобы исправить ее (при условии, что вы начинаете с чистого клона репо):

  1. Удалить архив для 8.6.12.
  2. Распаковать архив для 8.6.16 и удалить его. Теперь у вас будет каталог charts/postgresql.
  3. Go до charts/postgresql/Chart.yaml и обновите там версию до 8.6.16.
  4. Go до requirements.yaml и измените версию на 8.6.16. Вы также можете удалить / прокомментировать строку repository при использовании локальной диаграммы.
  5. Удалить requirements.lock.
  6. Выполнить helm install . <your name or --generate-name>

Теперь у вас должно быть установлено 8.6.16 в вашем кластере minikube.

Протестировано с использованием minikube 1.9.0 на macOS 10.15.4 (19E266) с Helm 3.1.2.

...