mirror of
https://github.com/hashicorp/vault.git
synced 2025-11-28 22:21:30 +01:00
Fix issue with merging observations config (#31248)
This commit is contained in:
parent
611ca3036f
commit
e59eb00ce1
@ -447,8 +447,8 @@ func (c *Config) Merge(c2 *Config) *Config {
|
||||
if c2.Observations.LedgerPath != "" {
|
||||
result.Observations.LedgerPath = c2.Observations.LedgerPath
|
||||
}
|
||||
result.Observations.TypePrefixDenylist = append(c.Observations.TypePrefixDenylist, c2.Observations.TypePrefixDenylist...)
|
||||
result.Observations.TypePrefixAllowlist = append(c.Observations.TypePrefixAllowlist, c2.Observations.TypePrefixAllowlist...)
|
||||
result.Observations.TypePrefixDenylist = append(result.Observations.TypePrefixDenylist, c2.Observations.TypePrefixDenylist...)
|
||||
result.Observations.TypePrefixAllowlist = append(result.Observations.TypePrefixAllowlist, c2.Observations.TypePrefixAllowlist...)
|
||||
if c2.Observations.FileMode != "" {
|
||||
result.Observations.FileMode = c2.Observations.FileMode
|
||||
}
|
||||
|
||||
@ -139,6 +139,27 @@ func Test_ObservationSystemConfigMerge(t *testing.T) {
|
||||
require.Equal(t, "0777", merged.Observations.FileMode)
|
||||
}
|
||||
|
||||
// Test_ObservationSystemConfigMergeFromNoObservations checks merge for observation system config from a config
|
||||
// without an observation system defined
|
||||
func Test_ObservationSystemConfigMergeFromNoObservations(t *testing.T) {
|
||||
config, err := LoadConfigFile("./test-fixtures/config.hcl")
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, config)
|
||||
|
||||
config2, err := LoadConfigFile("./test-fixtures/observations_allow_deny.hcl")
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, config2)
|
||||
|
||||
merged := config.Merge(config2)
|
||||
require.NotNil(t, merged)
|
||||
require.NotNil(t, merged.Observations)
|
||||
require.Equal(t, "/var/ledger.log", merged.Observations.LedgerPath)
|
||||
require.Equal(t, []string{"deny1", "deny2"}, merged.Observations.TypePrefixDenylist)
|
||||
require.Equal(t, []string{"allow1", "allow2", "allow3"}, merged.Observations.TypePrefixAllowlist)
|
||||
require.Equal(t, "0777", merged.Observations.FileMode)
|
||||
require.Equal(t, true, merged.EnableUI)
|
||||
}
|
||||
|
||||
// TestDuplicateKeyValidationHcl checks that the server command displays a warning when the HCL config file contains duplicate keys.
|
||||
func TestDuplicateKeyValidationHcl(t *testing.T) {
|
||||
testDuplicateKeyValidationHcl(t)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user