Добро пожаловать в StackOverflow.
Боюсь, что нет встроенной функции, позволяющей инициализировать DbSchema непосредственно из файла SQL в текущем состоянии диаграммы Vitess Helm.Вы можете определить любой из его настраиваемых параметров с помощью команды helm inspect <chart_name>
.
Однако вы можете попробовать настроить его в соответствии со своими потребностями следующими способами:
Оставайтесь с ApplySchema{-sql =} mode
, но пусть схема SQL отбрасывается из статического файла как часть шаблона диаграммы Helm
(например, из static / initial_schema.sql location):
Так что просто добавьте фрагмент кода управления, как этот:
{{ if .Values.initialSchemaSqlFile.enabled }}
{{- $files := .Files }}
{{- range tuple "static/initial_schema.sql" }}
{{ $schema := $files.Get . }}
{{- end }}
{{ else }}
# Default inline schema from Values.topology.cells.keyspaces[0].schema
{{ end }}
Узнайте больше об использовании встроенных объектов Helm, таких как File здесь
Использовать режим ApplySchema {-sql-file =}
Адаптировать фрагмент кода
здесь , где создается команда vtctlclient.
Это также потребует введения нового KubernetesОбъект тома (
nfs или
Git на основе репо являются хорошими вариантами здесь), который вы можете
смонтировать на задании, по определенному пути, откуда файл initial_schema.sql будетбыть использованы.