github.com/aquasecurity/trivy-iac@v0.8.1-0.20240127024015-3d8e412cf0ab/pkg/scanners/helm/options.go (about) 1 package helm 2 3 import ( 4 "github.com/aquasecurity/defsec/pkg/scanners/options" 5 "github.com/aquasecurity/trivy-iac/pkg/scanners/helm/parser" 6 ) 7 8 type ConfigurableHelmScanner interface { 9 options.ConfigurableScanner 10 AddParserOptions(options ...options.ParserOption) 11 } 12 13 func ScannerWithValuesFile(paths ...string) options.ScannerOption { 14 return func(s options.ConfigurableScanner) { 15 if helmScanner, ok := s.(ConfigurableHelmScanner); ok { 16 helmScanner.AddParserOptions(parser.OptionWithValuesFile(paths...)) 17 } 18 } 19 } 20 21 func ScannerWithValues(values ...string) options.ScannerOption { 22 return func(s options.ConfigurableScanner) { 23 if helmScanner, ok := s.(ConfigurableHelmScanner); ok { 24 helmScanner.AddParserOptions(parser.OptionWithValues(values...)) 25 } 26 } 27 } 28 29 func ScannerWithFileValues(values ...string) options.ScannerOption { 30 return func(s options.ConfigurableScanner) { 31 if helmScanner, ok := s.(ConfigurableHelmScanner); ok { 32 helmScanner.AddParserOptions(parser.OptionWithFileValues(values...)) 33 } 34 } 35 } 36 37 func ScannerWithStringValues(values ...string) options.ScannerOption { 38 return func(s options.ConfigurableScanner) { 39 if helmScanner, ok := s.(ConfigurableHelmScanner); ok { 40 helmScanner.AddParserOptions(parser.OptionWithStringValues(values...)) 41 } 42 } 43 } 44 45 func ScannerWithAPIVersions(values ...string) options.ScannerOption { 46 return func(s options.ConfigurableScanner) { 47 if helmScanner, ok := s.(ConfigurableHelmScanner); ok { 48 helmScanner.AddParserOptions(parser.OptionWithAPIVersions(values...)) 49 } 50 } 51 }