Skip to content

Commit 8407d6f

Browse files
committed
temp: disable config scanning
1 parent affe108 commit 8407d6f

File tree

31 files changed

+68
-1037
lines changed

31 files changed

+68
-1037
lines changed

pkg/commands/app.go

Lines changed: 2 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,9 @@ import (
1818
"github.com/aquasecurity/trivy/pkg/commands/plugin"
1919
"github.com/aquasecurity/trivy/pkg/commands/server"
2020
tdb "github.com/aquasecurity/trivy/pkg/db"
21-
"github.com/aquasecurity/trivy/pkg/result"
2221
"github.com/aquasecurity/trivy/pkg/types"
2322
"github.com/aquasecurity/trivy/pkg/utils"
23+
"github.com/aquasecurity/trivy/pkg/vulnerability"
2424
)
2525

2626
// VersionInfo holds the trivy DB version Info
@@ -163,7 +163,7 @@ var (
163163

164164
ignoreFileFlag = cli.StringFlag{
165165
Name: "ignorefile",
166-
Value: result.DefaultIgnoreFile,
166+
Value: vulnerability.DefaultIgnoreFile,
167167
Usage: "specify .trivyignore file",
168168
EnvVars: []string{"TRIVY_IGNOREFILE"},
169169
}
@@ -218,40 +218,6 @@ var (
218218
EnvVars: []string{"TRIVY_SKIP_DIRS"},
219219
}
220220

221-
configPolicy = cli.StringSliceFlag{
222-
Name: "config-policy",
223-
Usage: "specify paths to the Rego policy files directory, applying config files",
224-
EnvVars: []string{"TRIVY_CONFIG_POLICY"},
225-
}
226-
227-
configPolicyAlias = cli.StringSliceFlag{
228-
Name: "policy",
229-
Aliases: []string{"config-policy"},
230-
Usage: "specify paths to the Rego policy files directory, applying config files",
231-
EnvVars: []string{"TRIVY_POLICY"},
232-
}
233-
234-
filePatterns = cli.StringSliceFlag{
235-
Name: "file-patterns",
236-
Usage: "specify file patterns",
237-
EnvVars: []string{"TRIVY_FILE_PATTERNS"},
238-
}
239-
240-
policyNamespaces = cli.StringSliceFlag{
241-
Name: "policy-namespaces",
242-
Aliases: []string{"namespaces"},
243-
Usage: "Rego namespaces",
244-
Value: cli.NewStringSlice("users"),
245-
EnvVars: []string{"TRIVY_POLICY_NAMESPACES"},
246-
}
247-
248-
showSuccesses = cli.BoolFlag{
249-
Name: "show-successes",
250-
Usage: "show successes",
251-
Value: false,
252-
EnvVars: []string{"TRIVY_SHOW_SUCCESSES"},
253-
}
254-
255221
globalFlags = []cli.Flag{
256222
&quietFlag,
257223
&debugFlag,
@@ -282,8 +248,6 @@ var (
282248
&skipFiles,
283249
&skipDirs,
284250
&cacheBackendFlag,
285-
&configPolicy,
286-
&policyNamespaces,
287251
}
288252

289253
// deprecated options
@@ -329,7 +293,6 @@ func NewApp(version string) *cli.App {
329293
NewRepositoryCommand(),
330294
NewClientCommand(),
331295
NewServerCommand(),
332-
NewConfigCommand(),
333296
NewPluginCommand(),
334297
}
335298
app.Commands = append(app.Commands, plugin.LoadCommands()...)
@@ -460,7 +423,6 @@ func NewFilesystemCommand() *cli.Command {
460423
&listAllPackages,
461424
&skipFiles,
462425
&skipDirs,
463-
&configPolicy,
464426
},
465427
}
466428
}
@@ -521,7 +483,6 @@ func NewClientCommand() *cli.Command {
521483
&ignoreFileFlag,
522484
&timeoutFlag,
523485
&ignorePolicy,
524-
&configPolicy,
525486

526487
// original flags
527488
&token,
@@ -567,38 +528,6 @@ func NewServerCommand() *cli.Command {
567528
}
568529
}
569530

570-
// NewConfigCommand adds config command
571-
func NewConfigCommand() *cli.Command {
572-
return &cli.Command{
573-
Name: "config",
574-
Aliases: []string{"conf"},
575-
ArgsUsage: "dir",
576-
Usage: "scan config files",
577-
Action: artifact.ConfigRun,
578-
Flags: []cli.Flag{
579-
&templateFlag,
580-
&formatFlag,
581-
&severityFlag,
582-
&outputFlag,
583-
&exitCodeFlag,
584-
&skipUpdateFlag,
585-
&clearCacheFlag,
586-
&ignoreUnfixedFlag,
587-
&ignoreFileFlag,
588-
&cacheBackendFlag,
589-
&timeoutFlag,
590-
&noProgressFlag,
591-
&ignorePolicy,
592-
&skipFiles,
593-
&skipDirs,
594-
&configPolicyAlias,
595-
&filePatterns,
596-
&policyNamespaces,
597-
&showSuccesses,
598-
},
599-
}
600-
}
601-
602531
// NewPluginCommand is the factory method to add plugin command
603532
func NewPluginCommand() *cli.Command {
604533
return &cli.Command{

pkg/commands/artifact/config.go

Lines changed: 0 additions & 31 deletions
This file was deleted.

pkg/commands/artifact/inject.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ import (
1111
"github.com/aquasecurity/fanal/analyzer"
1212
"github.com/aquasecurity/fanal/analyzer/config"
1313
"github.com/aquasecurity/fanal/cache"
14-
"github.com/aquasecurity/trivy/pkg/result"
1514
"github.com/aquasecurity/trivy/pkg/scanner"
15+
"github.com/aquasecurity/trivy/pkg/vulnerability"
1616
)
1717

1818
func initializeDockerScanner(ctx context.Context, imageName string, artifactCache cache.ArtifactCache,
@@ -43,7 +43,7 @@ func initializeRepositoryScanner(ctx context.Context, url string, artifactCache
4343
return scanner.Scanner{}, nil, nil
4444
}
4545

46-
func initializeResultClient() result.Client {
47-
wire.Build(result.SuperSet)
48-
return result.Client{}
46+
func initializeResultClient() vulnerability.Client {
47+
wire.Build(vulnerability.SuperSet)
48+
return vulnerability.Client{}
4949
}

pkg/commands/artifact/option.go

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ type Option struct {
1515
option.ImageOption
1616
option.ReportOption
1717
option.CacheOption
18-
option.ConfigOption
1918

2019
// deprecated
2120
onlyUpdate string
@@ -39,7 +38,6 @@ func NewOption(c *cli.Context) (Option, error) {
3938
ImageOption: option.NewImageOption(c),
4039
ReportOption: option.NewReportOption(c),
4140
CacheOption: option.NewCacheOption(c),
42-
ConfigOption: option.NewConfigOption(c),
4341

4442
onlyUpdate: c.String("only-update"),
4543
refresh: c.Bool("refresh"),

pkg/commands/artifact/option_test.go

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -42,24 +42,6 @@ func TestOption_Init(t *testing.T) {
4242
},
4343
},
4444
},
45-
{
46-
name: "config scanning",
47-
args: []string{"--severity", "CRITICAL", "--security-checks", "config", "--quiet", "alpine:3.10"},
48-
want: Option{
49-
GlobalOption: option.GlobalOption{
50-
Quiet: true,
51-
},
52-
ArtifactOption: option.ArtifactOption{
53-
Target: "alpine:3.10",
54-
},
55-
ReportOption: option.ReportOption{
56-
Severities: []dbTypes.Severity{dbTypes.SeverityCritical},
57-
VulnType: []string{types.VulnTypeOS, types.VulnTypeLibrary},
58-
SecurityChecks: []string{types.SecurityCheckConfig},
59-
Output: os.Stdout,
60-
},
61-
},
62-
},
6345
{
6446
name: "happy path: reset",
6547
args: []string{"--reset"},

pkg/commands/artifact/run.go

Lines changed: 7 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -148,21 +148,10 @@ func scan(ctx context.Context, opt Option, initializeScanner InitializeScanner,
148148
disabledAnalyzers = []analyzer.Type{}
149149
}
150150

151-
// ScannerOptions is filled only when config scanning is enabled.
152-
var configScannerOptions config.ScannerOption
153-
if utils.StringInSlice(types.SecurityCheckConfig, opt.SecurityChecks) {
154-
defaultPolicyPaths, err := operation.InitDefaultPolicies(ctx)
155-
if err != nil {
156-
return nil, xerrors.Errorf("failed to initialize default policies: %w", err)
157-
}
158-
159-
configScannerOptions = config.ScannerOption{
160-
Namespaces: append(opt.PolicyNamespaces, defaultPolicyNamespace),
161-
PolicyPaths: append(opt.PolicyPaths, defaultPolicyPaths...),
162-
DataPaths: opt.DataPaths,
163-
FilePatterns: opt.FilePatterns,
164-
}
165-
}
151+
// TODO: fix the scanner option and enable config analyzers once we finalize the specification of config scanning.
152+
configScannerOptions := config.ScannerOption{}
153+
disabledAnalyzers = append(disabledAnalyzers, analyzer.TypeYaml, analyzer.TypeTOML, analyzer.TypeJSON,
154+
analyzer.TypeDockerfile, analyzer.TypeHCL)
166155

167156
s, cleanup, err := initializeScanner(ctx, target, cacheClient, cacheClient, opt.Timeout,
168157
disabledAnalyzers, configScannerOptions)
@@ -181,14 +170,13 @@ func scan(ctx context.Context, opt Option, initializeScanner InitializeScanner,
181170
func filter(ctx context.Context, opt Option, results report.Results) (report.Results, error) {
182171
resultClient := initializeResultClient()
183172
for i := range results {
184-
resultClient.FillVulnerabilityInfo(results[i].Vulnerabilities, results[i].Type)
185-
vulns, misconfs, err := resultClient.Filter(ctx, results[i].Vulnerabilities, results[i].Misconfigurations,
186-
opt.Severities, opt.IgnoreUnfixed, opt.ShowSuccesses, opt.IgnoreFile, opt.IgnorePolicy)
173+
resultClient.FillInfo(results[i].Vulnerabilities, results[i].Type)
174+
vulns, err := resultClient.Filter(ctx, results[i].Vulnerabilities,
175+
opt.Severities, opt.IgnoreUnfixed, opt.IgnoreFile, opt.IgnorePolicy)
187176
if err != nil {
188177
return nil, xerrors.Errorf("unable to filter vulnerabilities: %w", err)
189178
}
190179
results[i].Vulnerabilities = vulns
191-
results[i].Misconfigurations = misconfs
192180
}
193181
return results, nil
194182
}

pkg/commands/artifact/wire_gen.go

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/commands/client/inject.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ import (
1111
"github.com/aquasecurity/fanal/analyzer"
1212
"github.com/aquasecurity/fanal/analyzer/config"
1313
"github.com/aquasecurity/fanal/cache"
14-
"github.com/aquasecurity/trivy/pkg/result"
1514
"github.com/aquasecurity/trivy/pkg/rpc/client"
1615
"github.com/aquasecurity/trivy/pkg/scanner"
16+
"github.com/aquasecurity/trivy/pkg/vulnerability"
1717
)
1818

1919
func initializeDockerScanner(ctx context.Context, imageName string, artifactCache cache.ArtifactCache, customHeaders client.CustomHeaders,
@@ -30,7 +30,7 @@ func initializeArchiveScanner(ctx context.Context, filePath string, artifactCach
3030
return scanner.Scanner{}, nil
3131
}
3232

33-
func initializeResultClient() result.Client {
34-
wire.Build(result.SuperSet)
35-
return result.Client{}
33+
func initializeResultClient() vulnerability.Client {
34+
wire.Build(vulnerability.SuperSet)
35+
return vulnerability.Client{}
3636
}
Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ type Option struct {
1616
option.ArtifactOption
1717
option.ImageOption
1818
option.ReportOption
19-
option.ConfigOption
2019

2120
RemoteAddr string
2221
token string
@@ -39,7 +38,6 @@ func NewOption(c *cli.Context) (Option, error) {
3938
ArtifactOption: option.NewArtifactOption(c),
4039
ImageOption: option.NewImageOption(c),
4140
ReportOption: option.NewReportOption(c),
42-
ConfigOption: option.NewConfigOption(c),
4341
RemoteAddr: c.String("remote"),
4442
token: c.String("token"),
4543
tokenHeader: c.String("token-header"),
Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -44,25 +44,6 @@ func TestConfig_Init(t *testing.T) {
4444
CustomHeaders: http.Header{},
4545
},
4646
},
47-
{
48-
name: "config scanning",
49-
args: []string{"--severity", "CRITICAL", "--security-checks", "config", "--quiet", "alpine:3.10"},
50-
want: Option{
51-
GlobalOption: option.GlobalOption{
52-
Quiet: true,
53-
},
54-
ArtifactOption: option.ArtifactOption{
55-
Target: "alpine:3.10",
56-
},
57-
ReportOption: option.ReportOption{
58-
Severities: []dbTypes.Severity{dbTypes.SeverityCritical},
59-
VulnType: []string{types.VulnTypeOS, types.VulnTypeLibrary},
60-
SecurityChecks: []string{types.SecurityCheckConfig},
61-
Output: os.Stdout,
62-
},
63-
CustomHeaders: http.Header{},
64-
},
65-
},
6647
{
6748
name: "happy path with token and token header",
6849
args: []string{"--token", "secret", "--token-header", "X-Trivy-Token", "alpine:3.11"},

0 commit comments

Comments
 (0)