Help us shape the future of Go! Take the 2026 Go Developer Survey

extension

package
v0.4.18 Latest Latest
Warning

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

Go to latest
Published: Oct 1, 2026 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

View Source
const DescriptorVersion = "baseharbor.extension/v1"
View Source
const JSONSchema202012 = "https://json-schema.org/draft/2020-12/schema"

Variables

This section is empty.

Functions

This section is empty.

Types

type Artifact

type Artifact struct {
	OCIReference string `json:"oci_reference,omitempty"`
	Digest       string `json:"digest,omitempty"`
	MediaType    string `json:"media_type,omitempty"`
}

func (Artifact) Validate

func (a Artifact) Validate() error

type Catalog

type Catalog struct {
	// contains filtered or unexported fields
}

func NewCatalog

func NewCatalog(entries ...Metadata) (Catalog, error)

func (Catalog) Resolve

func (c Catalog) Resolve(request ResolveRequest, policy TrustPolicy) (Resolution, error)

type Compatibility

type Compatibility struct {
	BaseHarbor string     `json:"baseharbor,omitempty"`
	Contracts  []string   `json:"contracts,omitempty"`
	Platforms  []Platform `json:"platforms,omitempty"`
}

func (Compatibility) Validate

func (c Compatibility) Validate() error

type Family

type Family string
const (
	FamilyProvider    Family = "provider"
	FamilyDevelopment Family = "development"
)

type Metadata

type Metadata struct {
	SchemaVersion       string          `json:"schema_version"`
	ID                  string          `json:"id"`
	Family              Family          `json:"family"`
	Version             string          `json:"version"`
	Compatibility       Compatibility   `json:"compatibility,omitempty"`
	Artifact            Artifact        `json:"artifact,omitempty"`
	ConfigurationSchema SchemaReference `json:"configuration_schema,omitempty"`
	Provenance          Provenance      `json:"provenance,omitempty"`
}

func (Metadata) Validate

func (m Metadata) Validate() error

type Platform

type Platform struct {
	OS   string `json:"os"`
	Arch string `json:"arch"`
}

type Provenance

type Provenance struct {
	SignatureRef   string `json:"signature_ref,omitempty"`
	SBOMRef        string `json:"sbom_ref,omitempty"`
	AttestationRef string `json:"attestation_ref,omitempty"`
}

type Resolution

type Resolution struct {
	Metadata Metadata `json:"metadata"`
	Trusted  bool     `json:"trusted"`
}

type ResolveRequest

type ResolveRequest struct {
	ID      string `json:"id"`
	Version string `json:"version,omitempty"`
	Digest  string `json:"digest,omitempty"`
}

type SchemaReference

type SchemaReference struct {
	Dialect string `json:"dialect,omitempty"`
	URI     string `json:"uri,omitempty"`
}

func (SchemaReference) Validate

func (s SchemaReference) Validate() error

type TrustPolicy

type TrustPolicy struct {
	RequireDigest      bool `json:"require_digest,omitempty"`
	RequireSignature   bool `json:"require_signature,omitempty"`
	RequireSBOM        bool `json:"require_sbom,omitempty"`
	RequireAttestation bool `json:"require_attestation,omitempty"`
}

func (TrustPolicy) Validate

func (p TrustPolicy) Validate(metadata Metadata) error

Jump to

Keyboard shortcuts

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