What is the default format of Vault Agent template , is it in GO struct or pure key-value pairs?

Hi there,

I am trying to inject secrets to k8s pod via sidecar and I am a bit confused about the default format of the injected secrets.

In this blog , https://www.hashicorp.com/blog/injecting-vault-secrets-into-kubernetes-pods-via-a-sidecar/ . it says the secret is in GO struct format , something like:

data: map[password:foobarbazpass username:foobaruser]
metadata: map[created_time:2019-12-16T01:01:58.869828167Z deletion_time: destroyed:false version:1]

Yet in this Vault document , https://www.vaultproject.io/docs/platform/k8s/injector/. It mentions “If no template is provided the following generic template is used:”

{{ with secret “/path/to/secret” }}
{{ range $k, $v := .Data }}
{{ $k }}: {{ $v }}
{{ end }}
{{ end }}

So I am not clear in which case the secret format is GO struct and in which the format is pure key-value pairs? Appreciate if anyone can help to explain this.

Best regards,
James You