Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Descriptor ¶
type Descriptor struct { Name string `json:"name"` Version string `json:"version"` Configuration interface{} `json:"configuration,omitempty"` }
Descriptor describes what created the document as well as surrounding metadata
type Distro ¶
type Distro struct { Name string `json:"name"` // Name of the Linux distribution Version string `json:"version"` // Version of the Linux distribution (major or major.minor version) IDLike string `json:"idLike"` // the ID_LIKE field found within the /etc/os-release file }
Distro provides information about a detected Linux Distro.
type Document ¶
type Document struct { Artifacts []Package `json:"artifacts"` // Artifacts is the list of packages discovered and placed into the catalog ArtifactRelationships []Relationship `json:"artifactRelationships"` Files []File `json:"files,omitempty"` // note: must have omitempty Secrets []Secrets `json:"secrets,omitempty"` // note: must have omitempty Source Source `json:"source"` // Source represents the original object that was cataloged Distro Distro `json:"distro"` // Distro represents the Linux distribution that was detected from the source Descriptor Descriptor `json:"descriptor"` // Descriptor is a block containing self-describing information about syft Schema Schema `json:"schema"` // Schema is a block reserved for defining the version for the shape of this JSON document and where to find the schema document to validate the shape }
Document represents the syft cataloging findings as a JSON document
type File ¶
type File struct { ID string `json:"id"` Location source.Coordinates `json:"location"` Metadata *FileMetadataEntry `json:"metadata,omitempty"` Contents string `json:"contents,omitempty"` Digests []file.Digest `json:"digests,omitempty"` Classifications []file.Classification `json:"classifications,omitempty"` }
type FileMetadataEntry ¶
type Package ¶
type Package struct { PackageBasicData PackageCustomData }
Package represents a pkg.Package object specialized for JSON marshaling and unmarshalling.
func (*Package) UnmarshalJSON ¶
UnmarshalJSON is a custom unmarshaller for handling basic values and values with ambiguous types. nolint:funlen
type PackageBasicData ¶
type PackageBasicData struct { ID string `json:"id"` Name string `json:"name"` Version string `json:"version"` Type pkg.Type `json:"type"` FoundBy string `json:"foundBy"` Locations []source.Coordinates `json:"locations"` Licenses []string `json:"licenses"` Language pkg.Language `json:"language"` CPEs []string `json:"cpes"` PURL string `json:"purl"` }
PackageBasicData contains non-ambiguous values (type-wise) from pkg.Package.
type PackageCustomData ¶
type PackageCustomData struct { MetadataType pkg.MetadataType `json:"metadataType"` Metadata interface{} `json:"metadata"` }
PackageCustomData contains ambiguous values (type-wise) from pkg.Package.
type Relationship ¶
type Secrets ¶
type Secrets struct { Location source.Coordinates `json:"location"` Secrets []file.SearchResult `json:"secrets"` }
Click to show internal directories.
Click to hide internal directories.