Documentation ¶
Index ¶
- Variables
- func AddAllMessages(at *models.AuditBench, match bool) []*models.AuditBench
- func AddFailedMessages(at *models.AuditBench, match bool) []*models.AuditBench
- func FilterAuditTests(predicates []filters.Predicate, predicateParams []string, ...) *models.SubCategory
- func RunPredicateChain(predicates []filters.Predicate, predicateParams []string, size int, ...) *models.SubCategory
- type AuditTestLoader
- type CmdEvaluator
- type K8sAudit
- type ResultProcessor
- type TestLoader
Constants ¶
This section is empty.
Variables ¶
var ConsoleOutputGenerator ui.OutputGenerator = func(at []*models.SubCategory, log *logger.BLogger) { grandTotal := make([]models.AuditTestTotals, 0) for _, a := range at { log.Console(fmt.Sprintf("%s %s\n", "[Category]", a.Name)) categoryTotal := printTestResults(a.AuditTests, log) grandTotal = append(grandTotal, categoryTotal) } log.Console(printFinalResults(grandTotal)) }
ConsoleOutputGenerator print audit tests to stdout
var ReportOutputGenerator ui.OutputGenerator = func(at []*models.SubCategory, log *logger.BLogger) { for _, a := range at { log.Table(reports.GenerateAuditReport(a.AuditTests)) } }
ReportOutputGenerator print failed audit test to human report
Functions ¶
func AddAllMessages ¶
func AddAllMessages(at *models.AuditBench, match bool) []*models.AuditBench
AddAllMessages add all audit test to report data
func AddFailedMessages ¶
func AddFailedMessages(at *models.AuditBench, match bool) []*models.AuditBench
AddFailedMessages add failed audit test to report data
func FilterAuditTests ¶
func FilterAuditTests(predicates []filters.Predicate, predicateParams []string, at *models.SubCategory) *models.SubCategory
FilterAuditTests filter audit tests by predicate chain
func RunPredicateChain ¶
func RunPredicateChain(predicates []filters.Predicate, predicateParams []string, size int, at *models.SubCategory) *models.SubCategory
RunPredicateChain call every predicate in chain and filter tests
Types ¶
type AuditTestLoader ¶
type AuditTestLoader struct { }
AuditTestLoader object
func (AuditTestLoader) LoadAuditTests ¶
func (tl AuditTestLoader) LoadAuditTests(auditFiles []utils.FilesInfo) []*models.SubCategory
LoadAuditTests load audit test from benchmark folder
type CmdEvaluator ¶ added in v0.2.0
type CmdEvaluator interface {
EvalCommand(commands []string, evalExpr string) eval.CmdEvalResult
}
CmdEvaluator interface expose one method to evaluate command with evalExpr k8s-audit.go
type K8sAudit ¶
type K8sAudit struct { ResultProcessor ResultProcessor OutputGenerator ui.OutputGenerator FileLoader TestLoader PredicateChain []filters.Predicate PredicateParams []string PlChan chan m2.KubeAuditResults CompletedChan chan bool FilesInfo []utils.FilesInfo Evaluator eval.CmdEvaluator Log *logger.BLogger }
K8sAudit k8s benchmark object
func NewK8sAudit ¶
func NewK8sAudit(filters []string, plChan chan m2.KubeAuditResults, completedChan chan bool, fi []utils.FilesInfo, log *logger.BLogger, evaluator CmdEvaluator) *K8sAudit
NewK8sAudit new audit object
type ResultProcessor ¶
type ResultProcessor func(at *models.AuditBench, match bool) []*models.AuditBench
ResultProcessor process audit results
func GetResultProcessingFunction ¶
func GetResultProcessingFunction(args []string) ResultProcessor
GetResultProcessingFunction return processing function by specificTests
type TestLoader ¶
type TestLoader interface {
LoadAuditTests(fi []utils.FilesInfo) []*models.SubCategory
}
TestLoader load tests from filesystem command-helper.go