spdx

package
v0.6.0 Latest Latest
Warning

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

Go to latest
Published: Dec 6, 2022 License: Apache-2.0 Imports: 12 Imported by: 1

Documentation

Index

Constants

View Source
const NOASSERTION = "NOASSERTION"

Variables

This section is empty.

Functions

This section is empty.

Types

type Checksum

type Checksum struct {
	Algorithm string `json:"algorithm"`
	Value     string `json:"checksumValue"`
}

type CreationInfo

type CreationInfo struct {
	Created            string   `json:"created"` // Date
	Creators           []string `json:"creators"`
	LicenseListVersion string   `json:"licenseListVersion"`
}

type Document

type Document struct {
	ID                   string                `json:"SPDXID"`
	Name                 string                `json:"name"`
	Version              string                `json:"spdxVersion"`
	CreationInfo         CreationInfo          `json:"creationInfo"`
	DataLicense          string                `json:"dataLicense"`
	Namespace            string                `json:"documentNamespace"`
	DocumentDescribes    []string              `json:"documentDescribes"`
	Files                []File                `json:"files,omitempty"`
	Packages             []Package             `json:"packages"`
	Relationships        []Relationship        `json:"relationships"`
	ExternalDocumentRefs []ExternalDocumentRef `json:"externalDocumentRefs,omitempty"`
}

type ExternalDocumentRef added in v0.5.0

type ExternalDocumentRef struct {
	Checksum           Checksum `json:"checksum"`
	ExternalDocumentID string   `json:"externalDocumentId"`
	SPDXDocument       string   `json:"spdxDocument"`
}

type ExternalRef

type ExternalRef struct {
	Category string `json:"referenceCategory"`
	Locator  string `json:"referenceLocator"`
	Type     string `json:"referenceType"`
}

type File added in v0.6.0

type File struct {
	ID                string     `json:"SPDXID"`
	Name              string     `json:"fileName"`
	CopyrightText     string     `json:"copyrightText"`
	NoticeText        string     `json:"noticeText,omitempty"`
	LicenseConcluded  string     `json:"licenseConcluded"`
	Description       string     `json:"description,omitempty"`
	FileTypes         []string   `json:"fileTypes,omitempty"`
	LicenseInfoInFile []string   `json:"licenseInfoInFiles"` // List of licenses
	Checksums         []Checksum `json:"checksums"`
}

type Package

type Package struct {
	ID                   string                  `json:"SPDXID"`
	Name                 string                  `json:"name"`
	Version              string                  `json:"versionInfo,omitempty"`
	FilesAnalyzed        bool                    `json:"filesAnalyzed"`
	HasFiles             []string                `json:"hasFiles,omitempty"`
	LicenseInfoFromFiles []string                `json:"licenseInfoFromFiles,omitempty"`
	LicenseConcluded     string                  `json:"licenseConcluded"`
	LicenseDeclared      string                  `json:"licenseDeclared"`
	Description          string                  `json:"description,omitempty"`
	DownloadLocation     string                  `json:"downloadLocation,omitempty"`
	Originator           string                  `json:"originator,omitempty"`
	SourceInfo           string                  `json:"sourceInfo,omitempty"`
	CopyrightText        string                  `json:"copyrightText"`
	PrimaryPurpose       string                  `json:"primaryPackagePurpose,omitempty"`
	Checksums            []Checksum              `json:"checksums"`
	ExternalRefs         []ExternalRef           `json:"externalRefs,omitempty"`
	VerificationCode     PackageVerificationCode `json:"packageVerificationCode,omitempty"`
}

type PackageVerificationCode added in v0.6.0

type PackageVerificationCode struct {
	Value         string   `json:"packageVerificationCodeValue"`
	ExcludedFiles []string `json:"packageVerificationCodeExcludedFiles,omitempty"`
}

type Relationship

type Relationship struct {
	Element string `json:"spdxElementId"`
	Type    string `json:"relationshipType"`
	Related string `json:"relatedSpdxElement"`
}

type SPDX

type SPDX struct{}

func New

func New() SPDX

func (*SPDX) Ext

func (sx *SPDX) Ext() string

func (*SPDX) Generate

func (sx *SPDX) Generate(opts *options.Options, path string) error

Generate writes an SPDX SBOM in path

func (*SPDX) GenerateIndex added in v0.5.0

func (sx *SPDX) GenerateIndex(opts *options.Options, path string) error

func (*SPDX) Key

func (sx *SPDX) Key() string

Jump to

Keyboard shortcuts

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