Documentation
¶
Overview ¶
Package providerrelease is the typed reading of config/provider-derivative.yaml, the one statement of which Incus provider this tree builds and admits.
It exists because the provider version was written down four times and bound to nothing, so two production hosts ran different binaries that both reported v0.1.5-nddev.30 -- one built from ad8efaa, the other from cae2d18, which is a tenancy enforcement change. Issue #263 records the observation.
The GARM derivative already had this shape. This is the same one, applied to the other in-tree derivative.
Index ¶
Constants ¶
const DefaultManifestPath = "config/provider-derivative.yaml"
DefaultManifestPath is where the manifest lives relative to the repository root.
const DevelopmentVersion = "v0.0.0-unknown"
DevelopmentVersion is what a binary reports when it was built without the release stamp. It is deliberately not a version any host config can name, so an unstamped binary refuses every real platform policy instead of claiming to be the release it was built beside.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Build ¶
type Build struct {
SourceCommit string `json:"source_commit" yaml:"source_commit"`
BinarySHA256 string `json:"binary_sha256" yaml:"binary_sha256"`
GoVersion string `json:"go_version" yaml:"go_version"`
CGOEnabled bool `json:"cgo_enabled" yaml:"cgo_enabled"`
TargetOS string `json:"target_os" yaml:"target_os"`
TargetArch string `json:"target_arch" yaml:"target_arch"`
Trimpath bool `json:"trimpath" yaml:"trimpath"`
EmptyBuildID bool `json:"empty_build_id" yaml:"empty_build_id"`
VCSMetadata string `json:"vcs_metadata" yaml:"vcs_metadata"`
ReproducibleRebuilds int `json:"reproducible_rebuilds" yaml:"reproducible_rebuilds"`
}
type Manifest ¶
type Manifest struct {
SchemaVersion int `json:"schema_version" yaml:"schema_version"`
Artifact string `json:"artifact" yaml:"artifact"`
DerivativeVersion string `json:"derivative_version" yaml:"derivative_version"`
InterfaceVersion string `json:"interface_version" yaml:"interface_version"`
Upstream Upstream `json:"upstream" yaml:"upstream"`
Runtime Runtime `json:"runtime" yaml:"runtime"`
Build Build `json:"build" yaml:"build"`
}
Manifest is config/provider-derivative.yaml.