Eu tentei usar kustomize para carregar o arquivo de propriedades como um configmap.
Para isso, criei um conjunto de amostra como no github link .
Com arquivos básicos:
#kustomize build base
apiVersion: v1
data:
config: |-
dbport=1234
dcname=sfsdf
dbssl=false
locktime=300
domainuser=
kind: ConfigMap
metadata:
labels:
owner: sara
name: database-configmap
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: nginx
owner: sara
name: nginx
spec:
replicas: 1
selector:
matchLabels:
app: nginx
owner: sara
template:
metadata:
labels:
app: nginx
owner: sara
spec:
containers:
- image: nginx
name: nginx
Com arquivo externo:
#kustomize build file
apiVersion: v1
data:
config: "dbport=156767\r\ndcname=dfsd\r\ndbssl=false\r\nlocktime=300\r\ndomainuser=somedts"
kind: ConfigMap
metadata:
labels:
env: dev
owner: sara
name: dev-database-configmap
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: nginx
env: dev
owner: sara
name: dev-nginx
spec:
replicas: 1
selector:
matchLabels:
app: nginx
env: dev
owner: sara
template:
metadata:
labels:
app: nginx
env: dev
owner: sara
spec:
containers:
- image: nginx
name: nginx
Se você observar, o configmap |
é removido e também substituído por \r\n
uma única string. Como corrigir esse alinhamento?
Postando isso como wiki da comunidade, sinta-se à vontade para editar e expandir.
Como @mdaniel mencionou no comentário :
Você pode verificar isso obtendo os detalhes do configmap do cluster kubernetes
json
e ver se eles são armazenados da mesma maneira (exceto para os adicionais\r
mencionados acima):e
Há uma resposta no StackOverflow que mostra em breve a diferença entre \n , \r e \r\n .