mirror of
https://github.com/aquasecurity/trivy.git
synced 2025-12-21 23:00:42 -08:00
feat: k8s resouces scan (#2395)
Signed-off-by: Jose Donizetti <jdbjunior@gmail.com>
This commit is contained in:
@@ -22,6 +22,20 @@ func resourceRun(cliCtx *cli.Context, opt cmd.Option, cluster k8s.Cluster) error
|
||||
|
||||
trivyk8s := trivyk8s.New(cluster, log.Logger).Namespace(getNamespace(opt, cluster.GetCurrentNamespace()))
|
||||
|
||||
if len(name) == 0 { // pods or configmaps etc
|
||||
if err := validateReportArguments(cliCtx); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
targets, err := trivyk8s.Resources(kind).ListArtifacts(cliCtx.Context)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return run(cliCtx.Context, opt, cluster.GetCurrentContext(), targets)
|
||||
}
|
||||
|
||||
// pod/NAME or pod NAME etc
|
||||
artifact, err := trivyk8s.GetArtifact(cliCtx.Context, kind, name)
|
||||
if err != nil {
|
||||
return err
|
||||
@@ -35,7 +49,7 @@ func extractKindAndName(args []string) (string, string, error) {
|
||||
case 1:
|
||||
s := strings.Split(args[0], "/")
|
||||
if len(s) != 2 {
|
||||
return "", "", xerrors.Errorf("can't parse arguments %v. Please run `trivy k8s` for usage.", args)
|
||||
return args[0], "", nil
|
||||
}
|
||||
|
||||
return s[0], s[1], nil
|
||||
|
||||
Reference in New Issue
Block a user