Skip to content

Commit 4a32152

Browse files
committed
Reregister apk/dpkgs/rpm analyzers
1 parent b2d681d commit 4a32152

File tree

8 files changed

+88
-40
lines changed

8 files changed

+88
-40
lines changed

README.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# image-analyzer
22
OCI images analyzer
33

4-
This repository exists for 2 reasons:
4+
This repository exists for 3 reasons:
55
- `github.com/castai/image-analyzer/image/daemon.Image` interface.
6-
- Having various analyzers bundled in a single module.
6+
- Having various analyzers bundled in a single module. [This didn't exist at the time of the fork](https://github.com/aquasecurity/trivy/blob/v0.50.1/pkg/fanal/analyzer/all/import.go)
7+
- `https://github.com/aquasecurity/trivy/tree/v0.50.1/pkg/fanal/analyzer/pkg/apk` analyzer not scanning installed binaries.

apk/apk.go

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,18 +9,20 @@ import (
99
"sort"
1010
"strings"
1111

12-
"github.com/castai/image-analyzer/pathutil"
13-
apkVersion "github.com/knqyf263/go-apk-version"
14-
"github.com/samber/lo"
15-
"golang.org/x/exp/slices"
16-
1712
"github.com/aquasecurity/trivy/pkg/fanal/analyzer"
1813
"github.com/aquasecurity/trivy/pkg/fanal/types"
1914
"github.com/aquasecurity/trivy/pkg/licensing"
2015
"github.com/aquasecurity/trivy/pkg/log"
16+
apkVersion "github.com/knqyf263/go-apk-version"
17+
"github.com/samber/lo"
18+
"golang.org/x/exp/slices"
19+
20+
"github.com/castai/image-analyzer/pathutil"
2121
)
2222

23+
// https://github.com/aquasecurity/trivy/blob/v0.50.1/pkg/fanal/analyzer/all/import.go
2324
func init() {
25+
analyzer.DeregisterAnalyzer(analyzer.TypeApk) // prevents registering analyzer twice
2426
analyzer.RegisterAnalyzer(&alpinePkgAnalyzer{})
2527
}
2628

artifact.go

Lines changed: 1 addition & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -29,38 +29,7 @@ import (
2929
"golang.org/x/exp/slices"
3030
"golang.org/x/sync/semaphore"
3131

32-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/buildinfo"
33-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/executable"
34-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/imgconf/apk"
35-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/c/conan"
36-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/dotnet/deps"
37-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/dotnet/nuget"
38-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/golang/binary"
39-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/golang/mod"
40-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/java/gradle"
41-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/java/jar"
42-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/java/pom"
43-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/nodejs/npm"
44-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/nodejs/pkg"
45-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/nodejs/pnpm"
46-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/nodejs/yarn"
47-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/php/composer"
48-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/python/packaging"
49-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/python/pip"
50-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/python/pipenv"
51-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/python/poetry"
52-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/ruby/bundler"
53-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/ruby/gemspec"
54-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/rust/binary"
55-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/language/rust/cargo"
56-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/licensing"
57-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/os/alpine"
58-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/os/amazonlinux"
59-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/os/debian"
60-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/os/mariner"
61-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/os/redhatbase"
62-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/os/release"
63-
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/os/ubuntu"
32+
_ "github.com/aquasecurity/trivy/pkg/fanal/analyzer/all"
6433

6534
_ "github.com/castai/image-analyzer/apk"
6635
_ "github.com/castai/image-analyzer/dpkg"

dpkg/copyright.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,9 @@ import (
1818
"golang.org/x/xerrors"
1919
)
2020

21+
// https://github.com/aquasecurity/trivy/blob/v0.50.1/pkg/fanal/analyzer/all/import.go
2122
func init() {
23+
analyzer.DeregisterAnalyzer(analyzer.TypeDpkgLicense) // prevents registering analyzer twice
2224
analyzer.RegisterAnalyzer(&dpkgLicenseAnalyzer{})
2325
}
2426

go.mod

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ require (
4444
github.com/Azure/go-autorest/tracing v0.6.0 // indirect
4545
github.com/AzureAD/microsoft-authentication-library-for-go v1.1.1 // indirect
4646
github.com/BurntSushi/toml v1.3.2 // indirect
47+
github.com/CycloneDX/cyclonedx-go v0.8.0 // indirect
4748
github.com/GoogleCloudPlatform/docker-credential-gcr v2.0.5+incompatible // indirect
4849
github.com/MakeNowJust/heredoc v1.0.0 // indirect
4950
github.com/Masterminds/goutils v1.1.1 // indirect
@@ -58,6 +59,7 @@ require (
5859
github.com/agext/levenshtein v1.2.3 // indirect
5960
github.com/agnivade/levenshtein v1.1.1 // indirect
6061
github.com/alecthomas/chroma v0.10.0 // indirect
62+
github.com/anchore/go-struct-converter v0.0.0-20221118182256-c68fdcfa2092 // indirect
6163
github.com/apparentlymart/go-cidr v1.1.0 // indirect
6264
github.com/apparentlymart/go-textseg/v15 v15.0.0 // indirect
6365
github.com/aquasecurity/go-npm-version v0.0.0-20201110091526-0b796d180798 // indirect
@@ -155,6 +157,7 @@ require (
155157
github.com/hashicorp/hcl/v2 v2.19.1 // indirect
156158
github.com/huandu/xstrings v1.4.0 // indirect
157159
github.com/imdario/mergo v0.3.15 // indirect
160+
github.com/in-toto/in-toto-golang v0.9.0 // indirect
158161
github.com/inconshreveable/mousetrap v1.1.0 // indirect
159162
github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect
160163
github.com/jmespath/go-jmespath v0.4.0 // indirect
@@ -163,6 +166,7 @@ require (
163166
github.com/json-iterator/go v1.1.12 // indirect
164167
github.com/kevinburke/ssh_config v1.2.0 // indirect
165168
github.com/klauspost/compress v1.17.2 // indirect
169+
github.com/knqyf263/go-rpm-version v0.0.0-20220614171824-631e686d1075 // indirect
166170
github.com/kylelemons/godebug v1.1.0 // indirect
167171
github.com/lann/builder v0.0.0-20180802200727-47ae307949d0 // indirect
168172
github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0 // indirect
@@ -184,6 +188,7 @@ require (
184188
github.com/mitchellh/go-homedir v1.1.0 // indirect
185189
github.com/mitchellh/go-testing-interface v1.14.1 // indirect
186190
github.com/mitchellh/go-wordwrap v1.0.1 // indirect
191+
github.com/mitchellh/hashstructure/v2 v2.0.2 // indirect
187192
github.com/mitchellh/mapstructure v1.5.0 // indirect
188193
github.com/mitchellh/reflectwalk v1.0.2 // indirect
189194
github.com/moby/buildkit v0.12.5 // indirect
@@ -219,9 +224,12 @@ require (
219224
github.com/rubenv/sql-migrate v1.5.2 // indirect
220225
github.com/russross/blackfriday/v2 v2.1.0 // indirect
221226
github.com/saracen/walker v0.1.3 // indirect
227+
github.com/secure-systems-lab/go-securesystemslib v0.8.0 // indirect
222228
github.com/sergi/go-diff v1.3.1 // indirect
229+
github.com/shibumi/go-pathspec v1.3.0 // indirect
223230
github.com/shopspring/decimal v1.3.1 // indirect
224231
github.com/skeema/knownhosts v1.2.1 // indirect
232+
github.com/spdx/tools-golang v0.5.4-0.20231108154018-0c0f394b5e1a // indirect
225233
github.com/spf13/cast v1.6.0 // indirect
226234
github.com/spf13/cobra v1.8.0 // indirect
227235
github.com/spf13/pflag v1.0.5 // indirect
@@ -237,6 +245,7 @@ require (
237245
github.com/yashtewari/glob-intersection v0.2.0 // indirect
238246
github.com/zclconf/go-cty v1.14.1 // indirect
239247
github.com/zclconf/go-cty-yaml v1.0.3 // indirect
248+
go.etcd.io/bbolt v1.3.8 // indirect
240249
go.opencensus.io v0.24.0 // indirect
241250
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.46.1 // indirect
242251
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.46.1 // indirect

0 commit comments

Comments
 (0)