确保 Go 模板中的路径始终以斜杠结尾
Make sure path in Go template always ends with slash
我正在为一堆部署编写 Helm 图表。我提供的值可以是:
my_value: "/opt/my-path"
或my_value: "/opt/my-path/"
现在我想确保路径的末尾始终有一个 /
。
如何使用 Go
模板执行此操作?
您可以 trim 后缀 /
与 trimSuffix
功能,文档在这里 http://masterminds.github.io/sprig/strings.html,并在末尾手动添加 /
。因此,无论原始值如何,最后总是会得到 /
。
例子
values.yaml:
path_with_slash: "/my/path/"
path_without_slash: "/my/path"
在模板文件中:
{{ $path_with_slash := trimSuffix "/" .Values.path_with_slash }}
{{ $path_without_slash := trimSuffix "/" .Values.path_without_slash }}
path_with_slash: "{{ $path_with_slash }}/"
path_without_slash: "{{ $path_without_slash }}/"
渲染文件:
path_with_slash: "/my/path/"
path_without_slash: "/my/path/"
我正在为一堆部署编写 Helm 图表。我提供的值可以是:
my_value: "/opt/my-path"
或my_value: "/opt/my-path/"
现在我想确保路径的末尾始终有一个 /
。
如何使用 Go
模板执行此操作?
您可以 trim 后缀 /
与 trimSuffix
功能,文档在这里 http://masterminds.github.io/sprig/strings.html,并在末尾手动添加 /
。因此,无论原始值如何,最后总是会得到 /
。
例子
values.yaml:
path_with_slash: "/my/path/"
path_without_slash: "/my/path"
在模板文件中:
{{ $path_with_slash := trimSuffix "/" .Values.path_with_slash }}
{{ $path_without_slash := trimSuffix "/" .Values.path_without_slash }}
path_with_slash: "{{ $path_with_slash }}/"
path_without_slash: "{{ $path_without_slash }}/"
渲染文件:
path_with_slash: "/my/path/"
path_without_slash: "/my/path/"