Volgens stable/postgresql
roerkaart, initdbScripts
is een woordenboek van init-scriptnamen die uit meerdere regels bestaan:
Laten we aannemen dat we de volgende init.sql
. hebben script:
CREATE USER helm;
CREATE DATABASE helm;
GRANT ALL PRIVILEGES ON DATABASE helm TO helm;
Wanneer we een tekst met meerdere regels in waarden gaan invoegen, moeten we omgaan met inspringing in YAML.
Voor het bovenstaande specifieke geval is het:
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
Er is enige uitleg bij het bovenstaande voorbeeld:
- Als de naam van het script
.
het moet een escapeteken zijn, zoals"init\.sql"
. - De inhoud van het script staat tussen dubbele aanhalingstekens, omdat het een tekenreeksvariabele met meerdere regels is.