Update server.go

This commit is contained in:
2023-07-28 07:43:49 +00:00
parent 48d2397a7e
commit dee540535e

View File

@@ -86,22 +86,26 @@ var (
m := o.UnstructuredContent()
spec := m["spec"].(map[string]interface{})
resources := spec["resources"].([]map[string]interface{})
resources := spec["resources"].([]interface{})
for _, res := range resources {
res := res.(map[string]interface{})
if res["@type"] == "type.googleapis.com/envoy.config.listener.v3.Listener" {
filterChains := res["filterChains"].([]map[string]interface{})
filterChains := res["filterChains"].([]interface{})
for _, filterChain := range filterChains {
filters := filterChain["filters"].([]map[string]interface{})
filterChain := filterChain.(map[string]interface{})
filters := filterChain["filters"].([]interface{})
for _, filter := range filters {
filter := filter.(map[string]interface{})
if filter["name"] == "envoy.filters.network.http_connection_manager" {
upgradeConfigs := filter["upgradeConfigs"].([]interface{})
typedConfig := filter["typedConfig"].(map[string]interface{})
upgradeConfigs := typedConfig["upgradeConfigs"].([]interface{})
upgradeConfigs = append(upgradeConfigs, map[string]interface{}{
"upgradeType": "tailscale-control-protocol",
})
filter["upgradeConfigs"] = upgradeConfigs
filter["useRemoteAddress"] = true
filter["xffNumTrustedHops"] = 1
typedConfig["upgradeConfigs"] = upgradeConfigs
typedConfig["useRemoteAddress"] = true
typedConfig["xffNumTrustedHops"] = 1
}
}
}