Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

3.3.3.2. Go 模板操作

define 操作命名将包含已处理模板的文件。

{{define "/var/lib/haproxy/conf/haproxy.config"}}pipeline{{end}}

表 3.2. 模板路由器功能

功能含义

processEndpointsForAlias(alias ServiceAliasConfig, svc ServiceUnit, action string) []Endpoint

返回有效端点列表。当操作为"shuffle"时,端点的顺序是随机的。

env(variable, default …​string) string

尝试从容器集获取 named 环境变量。如果未定义或为空,它将返回可选的第二个参数。否则,它将返回空字符串。

matchPattern(pattern, s string) bool

第一个参数是包含正则表达式的字符串,第二个参数是要测试的变量。返回一个布尔值,指示作为第一个参数提供的正则表达式是否与作为第二个参数提供的字符串匹配。

isInteger(s string) bool

确定给定变量是否为整数。

firstMatch(s string, allowedValues …​string) bool

将给定字符串与允许字符串的列表进行比较。通过列表向右返回第一个匹配扫描.

matchValues(s string, allowedValues …​string) bool

将给定字符串与允许字符串的列表进行比较。如果字符串为允许的值,则返回 "true",否则返回 false。

generateRouteRegexp(hostname, path string, wildcard bool) string

生成与路由主机(和路径)匹配的正则表达式。第一个参数是主机名,第二个参数是路径,第三个参数是通配符布尔值。

genCertificateHostName(hostname string, wildcard bool) string

生成用于服务/匹配证书的主机名。第一个参数是主机名,第二个参数是通配符布尔值。

isTrue(s string) bool

确定给定变量是否包含"true"。

这些功能由 HAProxy 模板路由器插件提供。