Skip to content

Commit 9a7d384

Browse files
aqua-botowenrumney
andauthored
fix(cli): Add more non-sensitive flags to telemetry [backport: release/v0.64] (#9124)
Co-authored-by: Owen Rumney <[email protected]>
1 parent 53adfba commit 9a7d384

File tree

10 files changed

+104
-62
lines changed

10 files changed

+104
-62
lines changed
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,40 @@
11
```
2+
--clear-cache
23
--debug
4+
--dependency-tree
35
--detection-priority
6+
--distro
7+
--exit-code
8+
--exit-on-eol
49
--format
510
--ignore-status
11+
--ignore-unfixed
12+
--image-config-scanners
13+
--include-deprecated-checks
614
--include-dev-deps
15+
--include-non-failures
716
--insecure
17+
--license-full
818
--list-all-pkgs
919
--misconfig-scanners
20+
--offline-scan
21+
--parallel
22+
--password-stdin
1023
--pkg-relationships
1124
--pkg-types
1225
--quiet
26+
--redis-tls
27+
--removed-pkgs
1328
--report
1429
--scanners
1530
--severity
1631
--show-suppressed
32+
--skip-check-update
33+
--skip-version-check
34+
--skip-vex-repo-update
35+
--slow
36+
--tf-exclude-downloaded-modules
1737
--timeout
38+
--trace
1839
--vuln-severity-source
1940
```

pkg/flag/cache_flags.go

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,11 @@ import (
1616
var (
1717
// Deprecated
1818
ClearCacheFlag = Flag[bool]{
19-
Name: "clear-cache",
20-
ConfigName: "cache.clear",
21-
Usage: "clear image caches without scanning",
22-
Removed: `Use "trivy clean --scan-cache" instead`,
19+
Name: "clear-cache",
20+
ConfigName: "cache.clear",
21+
Usage: "clear image caches without scanning",
22+
Removed: `Use "trivy clean --scan-cache" instead`,
23+
TelemetrySafe: true,
2324
}
2425
CacheBackendFlag = Flag[string]{
2526
Name: "cache-backend",
@@ -33,9 +34,10 @@ var (
3334
Usage: "cache TTL when using redis as cache backend",
3435
}
3536
RedisTLSFlag = Flag[bool]{
36-
Name: "redis-tls",
37-
ConfigName: "cache.redis.tls",
38-
Usage: "enable redis TLS with public certificates, if using redis as cache backend",
37+
Name: "redis-tls",
38+
ConfigName: "cache.redis.tls",
39+
Usage: "enable redis TLS with public certificates, if using redis as cache backend",
40+
TelemetrySafe: true,
3941
}
4042
RedisCACertFlag = Flag[string]{
4143
Name: "redis-ca",

pkg/flag/image_flags.go

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,14 @@ var (
2323
types.MisconfigScanner,
2424
types.SecretScanner,
2525
}),
26-
Usage: "comma-separated list of what security issues to detect on container image configurations",
26+
Usage: "comma-separated list of what security issues to detect on container image configurations",
27+
TelemetrySafe: true,
2728
}
2829
ScanRemovedPkgsFlag = Flag[bool]{
29-
Name: "removed-pkgs",
30-
ConfigName: "image.removed-pkgs",
31-
Usage: "detect vulnerabilities of removed packages (only for Alpine)",
30+
Name: "removed-pkgs",
31+
ConfigName: "image.removed-pkgs",
32+
Usage: "detect vulnerabilities of removed packages (only for Alpine)",
33+
TelemetrySafe: true,
3234
}
3335
InputFlag = Flag[string]{
3436
Name: "input",

pkg/flag/license_flags.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,10 @@ import (
77

88
var (
99
LicenseFull = Flag[bool]{
10-
Name: "license-full",
11-
ConfigName: "license.full",
12-
Usage: "eagerly look for licenses in source code headers and license files",
10+
Name: "license-full",
11+
ConfigName: "license.full",
12+
Usage: "eagerly look for licenses in source code headers and license files",
13+
TelemetrySafe: true,
1314
}
1415
IgnoredLicenses = Flag[[]string]{
1516
Name: "ignored-licenses",

pkg/flag/misconf_flags.go

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,10 @@ var (
3333
},
3434
}
3535
IncludeNonFailuresFlag = Flag[bool]{
36-
Name: "include-non-failures",
37-
ConfigName: "misconfiguration.include-non-failures",
38-
Usage: "include successes, available with '--scanners misconfig'",
36+
Name: "include-non-failures",
37+
ConfigName: "misconfiguration.include-non-failures",
38+
Usage: "include successes, available with '--scanners misconfig'",
39+
TelemetrySafe: true,
3940
}
4041
HelmValuesFileFlag = Flag[[]string]{
4142
Name: "helm-values",
@@ -79,9 +80,10 @@ var (
7980
Usage: "specify paths to override the CloudFormation parameters files",
8081
}
8182
TerraformExcludeDownloaded = Flag[bool]{
82-
Name: "tf-exclude-downloaded-modules",
83-
ConfigName: "misconfiguration.terraform.exclude-downloaded-modules",
84-
Usage: "exclude misconfigurations for downloaded terraform modules",
83+
Name: "tf-exclude-downloaded-modules",
84+
ConfigName: "misconfiguration.terraform.exclude-downloaded-modules",
85+
Usage: "exclude misconfigurations for downloaded terraform modules",
86+
TelemetrySafe: true,
8587
}
8688
ChecksBundleRepositoryFlag = Flag[string]{
8789
Name: "checks-bundle-repository",

pkg/flag/registry_flags.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,10 @@ var (
2222
Usage: "password. Comma-separated passwords allowed. TRIVY_PASSWORD should be used for security reasons.",
2323
}
2424
PasswordStdinFlag = Flag[bool]{
25-
Name: "password-stdin",
26-
ConfigName: "registry.password-stdin",
27-
Usage: "password from stdin. Comma-separated passwords are not supported.",
25+
Name: "password-stdin",
26+
ConfigName: "registry.password-stdin",
27+
Usage: "password from stdin. Comma-separated passwords are not supported.",
28+
TelemetrySafe: true,
2829
}
2930
RegistryTokenFlag = Flag[string]{
3031
Name: "registry-token",

pkg/flag/rego_flags.go

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,10 @@ package flag
88
// policy-namespaces: "user"
99
var (
1010
IncludeDeprecatedChecksFlag = Flag[bool]{
11-
Name: "include-deprecated-checks",
12-
ConfigName: "rego.include-deprecated-checks",
13-
Usage: "include deprecated checks",
11+
Name: "include-deprecated-checks",
12+
ConfigName: "rego.include-deprecated-checks",
13+
Usage: "include deprecated checks",
14+
TelemetrySafe: true,
1415
}
1516
SkipCheckUpdateFlag = Flag[bool]{
1617
Name: "skip-check-update",
@@ -23,11 +24,13 @@ var (
2324
Deprecated: true,
2425
},
2526
},
27+
TelemetrySafe: true,
2628
}
2729
TraceFlag = Flag[bool]{
28-
Name: "trace",
29-
ConfigName: "rego.trace",
30-
Usage: "enable more verbose trace output for custom queries",
30+
Name: "trace",
31+
ConfigName: "rego.trace",
32+
Usage: "enable more verbose trace output for custom queries",
33+
TelemetrySafe: true,
3134
}
3235
ConfigCheckFlag = Flag[[]string]{
3336
Name: "config-check",

pkg/flag/report_flags.go

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -52,9 +52,10 @@ var (
5252
Usage: "output template",
5353
}
5454
DependencyTreeFlag = Flag[bool]{
55-
Name: "dependency-tree",
56-
ConfigName: "dependency-tree",
57-
Usage: "[EXPERIMENTAL] show dependency origin tree of vulnerable packages",
55+
Name: "dependency-tree",
56+
ConfigName: "dependency-tree",
57+
Usage: "[EXPERIMENTAL] show dependency origin tree of vulnerable packages",
58+
TelemetrySafe: true,
5859
}
5960
ListAllPkgsFlag = Flag[bool]{
6061
Name: "list-all-pkgs",
@@ -74,14 +75,16 @@ var (
7475
Usage: "specify the Rego file path to evaluate each vulnerability",
7576
}
7677
ExitCodeFlag = Flag[int]{
77-
Name: "exit-code",
78-
ConfigName: "exit-code",
79-
Usage: "specify exit code when any security issues are found",
78+
Name: "exit-code",
79+
ConfigName: "exit-code",
80+
Usage: "specify exit code when any security issues are found",
81+
TelemetrySafe: true,
8082
}
8183
ExitOnEOLFlag = Flag[int]{
82-
Name: "exit-on-eol",
83-
ConfigName: "exit-on-eol",
84-
Usage: "exit with the specified code when the OS reaches end of service/life",
84+
Name: "exit-on-eol",
85+
ConfigName: "exit-on-eol",
86+
Usage: "exit with the specified code when the OS reaches end of service/life",
87+
TelemetrySafe: true,
8588
}
8689
OutputFlag = Flag[string]{
8790
Name: "output",

pkg/flag/scan_flags.go

Lines changed: 23 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,10 @@ var (
2727
Usage: "specify the files or glob patterns to skip",
2828
}
2929
OfflineScanFlag = Flag[bool]{
30-
Name: "offline-scan",
31-
ConfigName: "scan.offline",
32-
Usage: "do not issue API requests to identify dependencies",
30+
Name: "offline-scan",
31+
ConfigName: "scan.offline",
32+
Usage: "do not issue API requests to identify dependencies",
33+
TelemetrySafe: true,
3334
}
3435
ScannersFlag = Flag[[]string]{
3536
Name: "scanners",
@@ -74,17 +75,19 @@ var (
7475
Usage: "specify config file patterns",
7576
}
7677
SlowFlag = Flag[bool]{
77-
Name: "slow",
78-
ConfigName: "scan.slow",
79-
Default: false,
80-
Usage: "scan over time with lower CPU and memory utilization",
81-
Deprecated: `Use "--parallel 1" instead.`,
78+
Name: "slow",
79+
ConfigName: "scan.slow",
80+
Default: false,
81+
Usage: "scan over time with lower CPU and memory utilization",
82+
Deprecated: `Use "--parallel 1" instead.`,
83+
TelemetrySafe: true,
8284
}
8385
ParallelFlag = Flag[int]{
84-
Name: "parallel",
85-
ConfigName: "scan.parallel",
86-
Default: 5,
87-
Usage: "number of goroutines enabled for parallel scanning, set 0 to auto-detect parallelism",
86+
Name: "parallel",
87+
ConfigName: "scan.parallel",
88+
Default: 5,
89+
Usage: "number of goroutines enabled for parallel scanning, set 0 to auto-detect parallelism",
90+
TelemetrySafe: true,
8891
}
8992
SBOMSourcesFlag = Flag[[]string]{
9093
Name: "sbom-sources",
@@ -116,14 +119,16 @@ var (
116119
TelemetrySafe: true,
117120
}
118121
DistroFlag = Flag[string]{
119-
Name: "distro",
120-
ConfigName: "scan.distro",
121-
Usage: "[EXPERIMENTAL] specify a distribution, <family>/<version>",
122+
Name: "distro",
123+
ConfigName: "scan.distro",
124+
Usage: "[EXPERIMENTAL] specify a distribution, <family>/<version>",
125+
TelemetrySafe: true,
122126
}
123127
SkipVersionCheckFlag = Flag[bool]{
124-
Name: "skip-version-check",
125-
ConfigName: "scan.skip-version-check",
126-
Usage: "suppress notices about version updates and Trivy announcements",
128+
Name: "skip-version-check",
129+
ConfigName: "scan.skip-version-check",
130+
Usage: "suppress notices about version updates and Trivy announcements",
131+
TelemetrySafe: true,
127132
}
128133
DisableTelemetryFlag = Flag[bool]{
129134
Name: "disable-telemetry",

pkg/flag/vulnerability_flags.go

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,10 @@ import (
1212

1313
var (
1414
IgnoreUnfixedFlag = Flag[bool]{
15-
Name: "ignore-unfixed",
16-
ConfigName: "vulnerability.ignore-unfixed",
17-
Usage: "display only fixed vulnerabilities",
15+
Name: "ignore-unfixed",
16+
ConfigName: "vulnerability.ignore-unfixed",
17+
Usage: "display only fixed vulnerabilities",
18+
TelemetrySafe: true,
1819
}
1920
IgnoreStatusFlag = Flag[[]string]{
2021
Name: "ignore-status",
@@ -29,9 +30,10 @@ var (
2930
Usage: `[EXPERIMENTAL] VEX sources ("repo", "oci" or file path)`,
3031
}
3132
SkipVEXRepoUpdateFlag = Flag[bool]{
32-
Name: "skip-vex-repo-update",
33-
ConfigName: "vulnerability.skip-vex-repo-update",
34-
Usage: `[EXPERIMENTAL] Skip VEX Repository update`,
33+
Name: "skip-vex-repo-update",
34+
ConfigName: "vulnerability.skip-vex-repo-update",
35+
Usage: `[EXPERIMENTAL] Skip VEX Repository update`,
36+
TelemetrySafe: true,
3537
}
3638
VulnSeveritySourceFlag = Flag[[]string]{
3739
Name: "vuln-severity-source",

0 commit comments

Comments
 (0)