mirror of
https://github.com/optim-enterprises-bv/vault.git
synced 2025-10-29 17:52:32 +00:00
Apply default MaxConnsPerHost in agent even if template_config block is missing (#24989)
This commit is contained in:
@@ -1106,6 +1106,9 @@ func parseTemplateConfig(result *Config, list *ast.ObjectList) error {
|
||||
|
||||
templateConfigList := list.Filter(name)
|
||||
if len(templateConfigList.Items) == 0 {
|
||||
result.TemplateConfig = &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
|
||||
@@ -92,6 +92,9 @@ func TestLoadConfigFile_AgentCache(t *testing.T) {
|
||||
ServiceAccountTokenFile: "/tmp/serviceaccount/token",
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Vault: &Vault{
|
||||
Address: "http://127.0.0.1:1111",
|
||||
CACert: "config_ca_cert",
|
||||
@@ -197,6 +200,9 @@ func TestLoadConfigDir_AgentCache(t *testing.T) {
|
||||
ServiceAccountTokenFile: "/tmp/serviceaccount/token",
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Vault: &Vault{
|
||||
Address: "http://127.0.0.1:1111",
|
||||
CACert: "config_ca_cert",
|
||||
@@ -267,6 +273,9 @@ func TestLoadConfigDir_AutoAuthAndListener(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
}
|
||||
|
||||
config.Prune()
|
||||
@@ -330,6 +339,9 @@ func TestLoadConfigDir_VaultBlock(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
}
|
||||
|
||||
config.Prune()
|
||||
@@ -397,6 +409,9 @@ func TestLoadConfigFile_AgentCache_NoListeners(t *testing.T) {
|
||||
ServiceAccountTokenFile: "/tmp/serviceaccount/token",
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Vault: &Vault{
|
||||
Address: "http://127.0.0.1:1111",
|
||||
CACert: "config_ca_cert",
|
||||
@@ -476,6 +491,9 @@ func TestLoadConfigFile(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
}
|
||||
|
||||
config.Prune()
|
||||
@@ -524,6 +542,9 @@ func TestLoadConfigFile_Method_Wrapping(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
}
|
||||
|
||||
config.Prune()
|
||||
@@ -563,6 +584,9 @@ func TestLoadConfigFile_Method_InitialBackoff(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
}
|
||||
|
||||
config.Prune()
|
||||
@@ -602,6 +626,9 @@ func TestLoadConfigFile_Method_ExitOnErr(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
}
|
||||
|
||||
config.Prune()
|
||||
@@ -628,6 +655,9 @@ func TestLoadConfigFile_AgentCache_NoAutoAuth(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
}
|
||||
|
||||
config.Prune()
|
||||
@@ -762,6 +792,9 @@ func TestLoadConfigFile_AgentCache_AutoAuth_NoSink(t *testing.T) {
|
||||
UseAutoAuthTokenRaw: true,
|
||||
ForceAutoAuthToken: false,
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
}
|
||||
|
||||
config.Prune()
|
||||
@@ -805,6 +838,9 @@ func TestLoadConfigFile_AgentCache_AutoAuth_Force(t *testing.T) {
|
||||
UseAutoAuthTokenRaw: "force",
|
||||
ForceAutoAuthToken: true,
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
}
|
||||
|
||||
config.Prune()
|
||||
@@ -848,6 +884,9 @@ func TestLoadConfigFile_AgentCache_AutoAuth_True(t *testing.T) {
|
||||
UseAutoAuthTokenRaw: "true",
|
||||
ForceAutoAuthToken: false,
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
}
|
||||
|
||||
config.Prune()
|
||||
@@ -889,6 +928,9 @@ func TestLoadConfigFile_Agent_AutoAuth_APIProxyAllConfig(t *testing.T) {
|
||||
EnforceConsistency: "always",
|
||||
WhenInconsistent: "forward",
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
}
|
||||
|
||||
config.Prune()
|
||||
@@ -939,6 +981,9 @@ func TestLoadConfigFile_AgentCache_AutoAuth_False(t *testing.T) {
|
||||
UseAutoAuthTokenRaw: "false",
|
||||
ForceAutoAuthToken: false,
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
}
|
||||
|
||||
config.Prune()
|
||||
@@ -973,6 +1018,9 @@ func TestLoadConfigFile_AgentCache_Persist(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
}
|
||||
|
||||
config.Prune()
|
||||
@@ -1008,6 +1056,12 @@ func TestLoadConfigFile_TemplateConfig(t *testing.T) {
|
||||
MaxConnectionsPerHost: 10,
|
||||
},
|
||||
},
|
||||
"missing": {
|
||||
"./test-fixtures/config-template_config-missing.hcl",
|
||||
TemplateConfig{
|
||||
MaxConnectionsPerHost: 10,
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
for name, tc := range testCases {
|
||||
@@ -1141,6 +1195,9 @@ func TestLoadConfigFile_Template(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Templates: tc.expectedTemplates,
|
||||
}
|
||||
|
||||
@@ -1237,6 +1294,9 @@ func TestLoadConfigFile_Template_NoSinks(t *testing.T) {
|
||||
},
|
||||
Sinks: nil,
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Templates: tc.expectedTemplates,
|
||||
}
|
||||
|
||||
@@ -1271,6 +1331,9 @@ func TestLoadConfigFile_Template_WithCache(t *testing.T) {
|
||||
},
|
||||
},
|
||||
Cache: &Cache{},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Templates: []*ctconfig.TemplateConfig{
|
||||
{
|
||||
Source: pointerutil.StringPtr("/path/on/disk/to/template.ctmpl"),
|
||||
@@ -1316,6 +1379,9 @@ func TestLoadConfigFile_Vault_Retry(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Vault: &Vault{
|
||||
Address: "http://127.0.0.1:1111",
|
||||
Retry: &Retry{
|
||||
@@ -1361,6 +1427,9 @@ func TestLoadConfigFile_Vault_Retry_Empty(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Vault: &Vault{
|
||||
Address: "http://127.0.0.1:1111",
|
||||
Retry: &Retry{
|
||||
@@ -1396,6 +1465,9 @@ func TestLoadConfigFile_EnforceConsistency(t *testing.T) {
|
||||
EnforceConsistency: "always",
|
||||
WhenInconsistent: "retry",
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
}
|
||||
|
||||
config.Prune()
|
||||
@@ -1425,6 +1497,9 @@ func TestLoadConfigFile_EnforceConsistency_APIProxy(t *testing.T) {
|
||||
EnforceConsistency: "always",
|
||||
WhenInconsistent: "retry",
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
}
|
||||
|
||||
config.Prune()
|
||||
@@ -1468,6 +1543,9 @@ func TestLoadConfigFile_Disable_Idle_Conns_All(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Vault: &Vault{
|
||||
Address: "http://127.0.0.1:1111",
|
||||
Retry: &Retry{
|
||||
@@ -1517,6 +1595,9 @@ func TestLoadConfigFile_Disable_Idle_Conns_Auto_Auth(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Vault: &Vault{
|
||||
Address: "http://127.0.0.1:1111",
|
||||
Retry: &Retry{
|
||||
@@ -1566,6 +1647,9 @@ func TestLoadConfigFile_Disable_Idle_Conns_Templating(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Vault: &Vault{
|
||||
Address: "http://127.0.0.1:1111",
|
||||
Retry: &Retry{
|
||||
@@ -1615,6 +1699,9 @@ func TestLoadConfigFile_Disable_Idle_Conns_Caching(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Vault: &Vault{
|
||||
Address: "http://127.0.0.1:1111",
|
||||
Retry: &Retry{
|
||||
@@ -1664,6 +1751,9 @@ func TestLoadConfigFile_Disable_Idle_Conns_Proxying(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Vault: &Vault{
|
||||
Address: "http://127.0.0.1:1111",
|
||||
Retry: &Retry{
|
||||
@@ -1713,6 +1803,9 @@ func TestLoadConfigFile_Disable_Idle_Conns_Empty(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Vault: &Vault{
|
||||
Address: "http://127.0.0.1:1111",
|
||||
Retry: &Retry{
|
||||
@@ -1768,6 +1861,9 @@ func TestLoadConfigFile_Disable_Idle_Conns_Env(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Vault: &Vault{
|
||||
Address: "http://127.0.0.1:1111",
|
||||
Retry: &Retry{
|
||||
@@ -1824,6 +1920,9 @@ func TestLoadConfigFile_Disable_Keep_Alives_All(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Vault: &Vault{
|
||||
Address: "http://127.0.0.1:1111",
|
||||
Retry: &Retry{
|
||||
@@ -1873,6 +1972,9 @@ func TestLoadConfigFile_Disable_Keep_Alives_Auto_Auth(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Vault: &Vault{
|
||||
Address: "http://127.0.0.1:1111",
|
||||
Retry: &Retry{
|
||||
@@ -1922,6 +2024,9 @@ func TestLoadConfigFile_Disable_Keep_Alives_Templating(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Vault: &Vault{
|
||||
Address: "http://127.0.0.1:1111",
|
||||
Retry: &Retry{
|
||||
@@ -1971,6 +2076,9 @@ func TestLoadConfigFile_Disable_Keep_Alives_Caching(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Vault: &Vault{
|
||||
Address: "http://127.0.0.1:1111",
|
||||
Retry: &Retry{
|
||||
@@ -2020,6 +2128,9 @@ func TestLoadConfigFile_Disable_Keep_Alives_Proxying(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Vault: &Vault{
|
||||
Address: "http://127.0.0.1:1111",
|
||||
Retry: &Retry{
|
||||
@@ -2069,6 +2180,9 @@ func TestLoadConfigFile_Disable_Keep_Alives_Empty(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Vault: &Vault{
|
||||
Address: "http://127.0.0.1:1111",
|
||||
Retry: &Retry{
|
||||
@@ -2124,6 +2238,9 @@ func TestLoadConfigFile_Disable_Keep_Alives_Env(t *testing.T) {
|
||||
},
|
||||
},
|
||||
},
|
||||
TemplateConfig: &TemplateConfig{
|
||||
MaxConnectionsPerHost: DefaultTemplateConfigMaxConnsPerHost,
|
||||
},
|
||||
Vault: &Vault{
|
||||
Address: "http://127.0.0.1:1111",
|
||||
Retry: &Retry{
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
# Copyright (c) HashiCorp, Inc.
|
||||
# SPDX-License-Identifier: BUSL-1.1
|
||||
|
||||
vault {
|
||||
address = "http://127.0.0.1:1111"
|
||||
retry {
|
||||
num_retries = 5
|
||||
}
|
||||
}
|
||||
|
||||
template {
|
||||
source = "/path/on/disk/to/template.ctmpl"
|
||||
destination = "/path/on/disk/where/template/will/render.txt"
|
||||
}
|
||||
Reference in New Issue
Block a user