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  }