24 lines
649 B
Go
24 lines
649 B
Go
package config
|
|
|
|
// SentinelConfig is configuration specific to Sentinel
|
|
type SentinelConfig struct {
|
|
// Imports are the configured imports
|
|
Imports []*SentinelImport `hcl:"import,expand"`
|
|
}
|
|
|
|
// SentinelImport is used per configured import
|
|
type SentinelImport struct {
|
|
Name string `hcl:",key"`
|
|
Path string `hcl:"path"`
|
|
Args []string `hcl:"args"`
|
|
}
|
|
|
|
// Merge is used to merge two Sentinel configs together. The settings from the input always take precedence.
|
|
func (a *SentinelConfig) Merge(b *SentinelConfig) *SentinelConfig {
|
|
result := *a
|
|
if len(b.Imports) > 0 {
|
|
result.Imports = append(result.Imports, b.Imports...)
|
|
}
|
|
return &result
|
|
}
|