cataloging

package
v1.31.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 13, 2025 License: Apache-2.0 Imports: 3 Imported by: 19

Documentation

Index

Constants

View Source
const ExecutorCPU = "cpu"

ExecutorCPU is the name to use when executing parallel functions which are CPU-intensive, such as hashing full files

View Source
const ExecutorFile = "file"

ExecutorFile is the name to use when executing parallel file reading functions, such as cataloging

View Source
const UnknownStubValue = "UNKNOWN"

Variables

This section is empty.

Functions

This section is empty.

Types

type ArchiveSearchConfig

type ArchiveSearchConfig struct {
	IncludeIndexedArchives   bool `yaml:"include-indexed-archives" json:"include-indexed-archives" mapstructure:"include-indexed-archives"`
	IncludeUnindexedArchives bool `yaml:"include-unindexed-archives" json:"include-unindexed-archives" mapstructure:"include-unindexed-archives"`
}

func DefaultArchiveSearchConfig added in v0.99.0

func DefaultArchiveSearchConfig() ArchiveSearchConfig

func (ArchiveSearchConfig) WithIncludeIndexedArchives added in v0.101.0

func (c ArchiveSearchConfig) WithIncludeIndexedArchives(include bool) ArchiveSearchConfig

func (ArchiveSearchConfig) WithIncludeUnindexedArchives added in v0.101.0

func (c ArchiveSearchConfig) WithIncludeUnindexedArchives(include bool) ArchiveSearchConfig

type ComplianceAction added in v1.13.0

type ComplianceAction string
const (
	ComplianceActionKeep ComplianceAction = "keep"
	ComplianceActionDrop ComplianceAction = "drop"
	ComplianceActionStub ComplianceAction = "stub"
)

func (ComplianceAction) Parse added in v1.13.0

type ComplianceConfig added in v1.13.0

type ComplianceConfig struct {
	MissingName    ComplianceAction `yaml:"missing-name" json:"missing-name" mapstructure:"missing-name"`
	MissingVersion ComplianceAction `yaml:"missing-version" json:"missing-version" mapstructure:"missing-version"`
}

func DefaultComplianceConfig added in v1.13.0

func DefaultComplianceConfig() ComplianceConfig

func (ComplianceConfig) Parse added in v1.13.0

type DataGenerationConfig added in v0.101.0

type DataGenerationConfig struct {
	GenerateCPEs bool `yaml:"generate-cpes" json:"generate-cpes" mapstructure:"generate-cpes"`
}

func DefaultDataGenerationConfig added in v0.101.0

func DefaultDataGenerationConfig() DataGenerationConfig

func (DataGenerationConfig) WithGenerateCPEs added in v0.101.0

func (c DataGenerationConfig) WithGenerateCPEs(generate bool) DataGenerationConfig

type LicenseConfig added in v1.20.0

type LicenseConfig struct {
	// IncludeContent controls whether license copy discovered should be included in the SBOM.
	IncludeContent LicenseContent `json:"include-content" yaml:"include-content" mapstructure:"include-content"`

	// Coverage is the percentage of text that must match a license for it to be considered a match.
	Coverage float64 `json:"coverage" yaml:"coverage" mapstructure:"coverage"`
}

func DefaultLicenseConfig added in v1.20.0

func DefaultLicenseConfig() LicenseConfig

type LicenseContent added in v1.24.0

type LicenseContent string

LicenseContent controls when license content should be included in the SBOM.

const (
	LicenseContentIncludeAll     LicenseContent = "all"
	LicenseContentIncludeUnknown LicenseContent = "unknown"
	LicenseContentExcludeAll     LicenseContent = "none"
)

type RelationshipsConfig added in v0.101.0

type RelationshipsConfig struct {
	// PackageFileOwnership will include package-to-file relationships that indicate which files are owned by which packages.
	PackageFileOwnership bool `yaml:"package-file-ownership" json:"package-file-ownership" mapstructure:"package-file-ownership"`

	// PackageFileOwnershipOverlap will include package-to-package relationships that indicate one package is owned by another due to files claimed to be owned by one package are also evidence of another package's existence.
	// For example, if an RPM package is installed and claims to own /etc/app/package.lock and a separate NPM package was discovered by cataloging /etc/app/package.lock, then the two packages will
	// have ownership overlap relationship.
	PackageFileOwnershipOverlap bool `yaml:"package-file-ownership-overlap" json:"package-file-ownership-overlap" mapstructure:"package-file-ownership-overlap"`

	// ExcludeBinaryPackagesWithFileOwnershipOverlap will exclude binary packages from the package catalog that are evident by files also owned by another package.
	// For example, if a binary package representing the /bin/python binary is discovered and there is a python RPM package installed which claims to
	// orn /bin/python, then the binary package will be excluded from the catalog altogether if this configuration is set to true.
	ExcludeBinaryPackagesWithFileOwnershipOverlap bool `` /* 184-byte string literal not displayed */
}

func DefaultRelationshipsConfig added in v0.101.0

func DefaultRelationshipsConfig() RelationshipsConfig

func (RelationshipsConfig) WithExcludeBinaryPackagesWithFileOwnershipOverlap added in v0.101.0

func (c RelationshipsConfig) WithExcludeBinaryPackagesWithFileOwnershipOverlap(exclude bool) RelationshipsConfig

func (RelationshipsConfig) WithPackageFileOwnership added in v0.101.0

func (c RelationshipsConfig) WithPackageFileOwnership(ownership bool) RelationshipsConfig

func (RelationshipsConfig) WithPackageFileOwnershipOverlap added in v0.101.0

func (c RelationshipsConfig) WithPackageFileOwnershipOverlap(overlap bool) RelationshipsConfig

type SearchConfig added in v0.101.0

type SearchConfig struct {
	Scope source.Scope `yaml:"scope" json:"scope" mapstructure:"scope"`
}

func DefaultSearchConfig added in v0.101.0

func DefaultSearchConfig() SearchConfig

func (SearchConfig) WithScope added in v0.101.0

func (c SearchConfig) WithScope(scope source.Scope) SearchConfig

type SelectionRequest added in v1.20.0

type SelectionRequest struct {
	DefaultNamesOrTags []string `json:"default,omitempty"`
	SubSelectTags      []string `json:"selection,omitempty"`
	AddNames           []string `json:"addition,omitempty"`
	RemoveNamesOrTags  []string `json:"removal,omitempty"`
}

func NewSelectionRequest added in v1.20.0

func NewSelectionRequest() SelectionRequest

func (SelectionRequest) IsEmpty added in v1.20.0

func (s SelectionRequest) IsEmpty() bool

func (SelectionRequest) WithAdditions added in v1.20.0

func (s SelectionRequest) WithAdditions(names ...string) SelectionRequest

func (SelectionRequest) WithDefaults added in v1.20.0

func (s SelectionRequest) WithDefaults(nameOrTags ...string) SelectionRequest

func (SelectionRequest) WithExpression added in v1.20.0

func (s SelectionRequest) WithExpression(expressions ...string) SelectionRequest

func (SelectionRequest) WithRemovals added in v1.20.0

func (s SelectionRequest) WithRemovals(nameOrTags ...string) SelectionRequest

func (SelectionRequest) WithSubSelections added in v1.20.0

func (s SelectionRequest) WithSubSelections(tags ...string) SelectionRequest

type UnknownsConfig added in v1.14.0

type UnknownsConfig struct {
	RemoveWhenPackagesDefined         bool
	IncludeExecutablesWithoutPackages bool
	IncludeUnexpandedArchives         bool
}

func DefaultUnknownsConfig added in v1.14.0

func DefaultUnknownsConfig() UnknownsConfig

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL