chore: update tests & naming conventions

Signed-off-by: Keith Zantow <kzantow@gmail.com>
This commit is contained in:
Keith Zantow 2025-10-23 14:14:23 -04:00
parent 319bb12627
commit 7c644ea3d1
No known key found for this signature in database
GPG Key ID: 735988DA57708682
4 changed files with 12 additions and 17 deletions

View File

@ -61,7 +61,7 @@ func DefaultPackageTaskFactories() Factories {
newSimplePackageTaskFactory(alpine.NewDBCataloger, pkgcataloging.DirectoryTag, pkgcataloging.InstalledTag, pkgcataloging.ImageTag, pkgcataloging.OSTag, "linux", "apk", "alpine"), newSimplePackageTaskFactory(alpine.NewDBCataloger, pkgcataloging.DirectoryTag, pkgcataloging.InstalledTag, pkgcataloging.ImageTag, pkgcataloging.OSTag, "linux", "apk", "alpine"),
newPackageTaskFactory( newPackageTaskFactory(
func(cfg CatalogingFactoryConfig) pkg.Cataloger { func(cfg CatalogingFactoryConfig) pkg.Cataloger {
return debian.NewDBCatalogerWithOpts(cfg.PackagesConfig.Debian) return debian.NewDpkgDBCataloger(cfg.PackagesConfig.Debian)
}, },
pkgcataloging.DirectoryTag, pkgcataloging.InstalledTag, pkgcataloging.ImageTag, pkgcataloging.OSTag, "linux", "dpkg", "debian", pkgcataloging.DirectoryTag, pkgcataloging.InstalledTag, pkgcataloging.ImageTag, pkgcataloging.OSTag, "linux", "dpkg", "debian",
), ),
@ -72,7 +72,7 @@ func DefaultPackageTaskFactories() Factories {
newSimplePackageTaskFactory(redhat.NewArchiveCataloger, pkgcataloging.DeclaredTag, pkgcataloging.DirectoryTag, pkgcataloging.OSTag, "linux", "rpm", "redhat"), newSimplePackageTaskFactory(redhat.NewArchiveCataloger, pkgcataloging.DeclaredTag, pkgcataloging.DirectoryTag, pkgcataloging.OSTag, "linux", "rpm", "redhat"),
newPackageTaskFactory( newPackageTaskFactory(
func(cfg CatalogingFactoryConfig) pkg.Cataloger { func(cfg CatalogingFactoryConfig) pkg.Cataloger {
return debian.NewArchiveCatalogerWithOpts(cfg.PackagesConfig.Debian) return debian.NewDpkgArchiveCataloger(cfg.PackagesConfig.Debian)
}, },
pkgcataloging.DeclaredTag, pkgcataloging.DirectoryTag, pkgcataloging.OSTag, "linux", "deb", "debian", pkgcataloging.DeclaredTag, pkgcataloging.DirectoryTag, pkgcataloging.OSTag, "linux", "deb", "debian",
), ),

View File

@ -11,15 +11,11 @@ import (
// NewDBCataloger returns a new Deb package cataloger capable of parsing DPKG status DB flat-file stores. // NewDBCataloger returns a new Deb package cataloger capable of parsing DPKG status DB flat-file stores.
func NewDBCataloger() pkg.Cataloger { func NewDBCataloger() pkg.Cataloger {
return generic.NewCataloger("dpkg-db-cataloger"). return NewDpkgDBCataloger(DefaultCatalogerConfig())
// note: these globs have been intentionally split up in order to improve search performance,
// please do NOT combine into: "**/var/lib/dpkg/{status,status.d/*}"
WithParserByGlobs(parseDpkgDB(CatalogerConfig{IncludeDeInstalled: true}), "**/lib/dpkg/status", "**/lib/dpkg/status.d/*", "**/lib/opkg/info/*.control", "**/lib/opkg/status").
WithProcessors(dependency.Processor(dbEntryDependencySpecifier))
} }
// NewDBCatalogerWithOpts returns a new Deb package cataloger capable of parsing DPKG status DB flat-file stores with syft configuration. // NewDpkgDBCataloger returns a new Deb package cataloger capable of parsing DPKG status DB flat-file stores with syft configuration.
func NewDBCatalogerWithOpts(cfg CatalogerConfig) pkg.Cataloger { func NewDpkgDBCataloger(cfg CatalogerConfig) pkg.Cataloger {
return generic.NewCataloger("dpkg-db-cataloger"). return generic.NewCataloger("dpkg-db-cataloger").
// note: these globs have been intentionally split up in order to improve search performance, // note: these globs have been intentionally split up in order to improve search performance,
// please do NOT combine into: "**/var/lib/dpkg/{status,status.d/*}" // please do NOT combine into: "**/var/lib/dpkg/{status,status.d/*}"
@ -29,12 +25,11 @@ func NewDBCatalogerWithOpts(cfg CatalogerConfig) pkg.Cataloger {
// NewArchiveCataloger returns a new Debian package cataloger object capable of parsing .deb archive files // NewArchiveCataloger returns a new Debian package cataloger object capable of parsing .deb archive files
func NewArchiveCataloger() pkg.Cataloger { func NewArchiveCataloger() pkg.Cataloger {
return generic.NewCataloger("deb-archive-cataloger"). return NewDpkgDBCataloger(DefaultCatalogerConfig())
WithParserByGlobs(parseDebArchive(CatalogerConfig{IncludeDeInstalled: true}), "**/*.deb")
} }
// NewArchiveCatalogerWithOpts returns a new Debian package cataloger object capable of parsing .deb archive files with syft configuration. // NewDpkgArchiveCataloger returns a new Debian package cataloger object capable of parsing .deb archive files with syft configuration.
func NewArchiveCatalogerWithOpts(cfg CatalogerConfig) pkg.Cataloger { func NewDpkgArchiveCataloger(cfg CatalogerConfig) pkg.Cataloger {
return generic.NewCataloger("deb-archive-cataloger"). return generic.NewCataloger("deb-archive-cataloger").
WithParserByGlobs(parseDebArchive(cfg), "**/*.deb") WithParserByGlobs(parseDebArchive(cfg), "**/*.deb")
} }

View File

@ -127,7 +127,7 @@ Description: This is a test package
And even more details And even more details
` `
metadata, err := parseControlFile(controlContent) metadata, err := parseControlFile(controlContent, CatalogerConfig{})
require.NoError(t, err) require.NoError(t, err)
assert.Equal(t, "test-package", metadata.Package) assert.Equal(t, "test-package", metadata.Package)

View File

@ -278,7 +278,7 @@ func Test_parseDpkgStatus(t *testing.T) {
reader := bufio.NewReader(f) reader := bufio.NewReader(f)
entries, err := parseDpkgStatus(reader) entries, err := parseDpkgStatus(reader, CatalogerConfig{})
require.NoError(t, err) require.NoError(t, err)
if diff := cmp.Diff(test.expected, entries); diff != "" { if diff := cmp.Diff(test.expected, entries); diff != "" {
@ -295,7 +295,7 @@ func Test_corruptEntry(t *testing.T) {
reader := bufio.NewReader(f) reader := bufio.NewReader(f)
_, err = parseDpkgStatus(reader) _, err = parseDpkgStatus(reader, CatalogerConfig{})
require.Error(t, err) require.Error(t, err)
} }
@ -523,7 +523,7 @@ func Test_parseDpkgStatus_deinstall(t *testing.T) {
IncludeDeInstalled: tt.includeDeinstall, IncludeDeInstalled: tt.includeDeinstall,
} }
entries, err := parseDpkgStatusWithConfig(fixture, cfg) entries, err := parseDpkgStatus(fixture, cfg)
require.NoError(t, err) require.NoError(t, err)
assert.Len(t, entries, tt.expectedCount, "expected %d entries", tt.expectedCount) assert.Len(t, entries, tt.expectedCount, "expected %d entries", tt.expectedCount)