Files
kubevela/docs/examples/insert-secret/insertsecret.yaml

60 lines
1.3 KiB
YAML

apiVersion: core.oam.dev/v1beta1
kind: ComponentDefinition
metadata:
name: secretconsumer
spec:
workload:
definition:
apiVersion: apps/v1
kind: Deployment
schematic:
cue:
template: |
output: {
apiVersion: "apps/v1"
kind: "Deployment"
spec: {
selector: matchLabels: {
"app.oam.dev/component": context.name
}
template: {
metadata: labels: {
"app.oam.dev/component": context.name
}
spec: {
containers: [{
name: context.name
image: parameter.image
if parameter["dbSecret"] != _|_ {
env: [
{
name: "username"
value: dbConn.username
},
{
name: "DB_PASSWORD"
value: dbConn.password
},
]
}
}]
}
}
}
}
parameter: {
// +usage=Which image would you like to use for your service
// +short=i
image: string
// +usage=Referred db secret
// +insertSecretTo=dbConn
dbSecret?: string
}
dbConn: {
username: string
password: string
}