Según stable/postgresql
gráfico de timón, initdbScripts
es un diccionario de nombres de secuencias de comandos de inicio que son variables de varias líneas:
Supongamos que tenemos el siguiente init.sql
guión:
CREATE USER helm;
CREATE DATABASE helm;
GRANT ALL PRIVILEGES ON DATABASE helm TO helm;
Cuando vamos a inyectar un texto de varias líneas en los valores, debemos lidiar con la sangría en YAML.
Para el caso particular anterior es:
helm install stable/postgresql -n testpg \
--set global.postgresql.postgresqlDatabase=testpg \
--set global.postgresql.postgresqlUsername=testpg \
--set global.postgresql.postgresqlPassword=testpg \
--set global.postgresql.servicePort=5432 \
--set initdbScripts."init\.sql"="CREATE USER helm;
CREATE DATABASE helm;
GRANT ALL PRIVILEGES ON DATABASE helm TO helm;" \
--set service.type=LoadBalancer
Hay alguna explicación para el ejemplo anterior:
- Si el nombre del script tiene
.
debe escaparse, como"init\.sql"
. - El contenido del script está entre comillas dobles, porque es una variable de cadena de varias líneas.