Documentation
¶
Overview ¶
Package release contains APIs for interacting with a particular "release". Avoid this unless you are sure you need it. It's expected that CoreOS users interact with streams instead.
Index ¶
- type Arch
- type Artifact
- type CloudImage
- type ContainerImage
- type GcpImage
- type IBMCloudImage
- type ImageFormat
- type Index
- type IndexRelease
- type IndexReleaseCommit
- type IndexReleaseOciImage
- type Media
- type Metadata
- type PlatformAliyun
- type PlatformAws
- type PlatformBase
- type PlatformGcp
- type PlatformIBMCloud
- type PlatformKubeVirt
- type Release
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Arch ¶
type Arch struct {
Commit string `json:"commit,omitempty"`
OciImage *ContainerImage `json:"oci-image,omitempty"`
Media Media `json:"media"`
RHELCoreOSExtensions *relrhcos.Extensions `json:"rhel-coreos-extensions,omitempty"`
}
Arch release details
type Artifact ¶
type Artifact struct {
Location string `json:"location"`
Signature string `json:"signature"`
Sha256 string `json:"sha256"`
UncompressedSha256 string `json:"uncompressed-sha256,omitempty"`
}
Artifact represents one image file, plus its metadata
type CloudImage ¶
type CloudImage struct {
Image string `json:"image"`
}
CloudImage generic image detail
type ContainerImage ¶ added in v0.3.0
type ContainerImage struct {
// Preferred way to reference the image, which might be by tag or digest
Image string `json:"image"`
DigestRef string `json:"digest-ref"`
}
ContainerImage represents a tagged container image
type GcpImage ¶
type GcpImage struct {
Project string `json:"project"`
Family string `json:"family,omitempty"`
Name string `json:"name"`
}
GcpImage represents a GCP cloud image
type IBMCloudImage ¶ added in v0.1.5
type IBMCloudImage struct {
Object string `json:"object"`
Bucket string `json:"bucket"`
Url string `json:"url"`
}
IBMCloudImage represents an IBMCloud/PowerVS cloud object - which is an ova image for PowerVS and a qcow for IBMCloud in the cloud object storage bucket
type ImageFormat ¶
type ImageFormat struct {
Disk *Artifact `json:"disk,omitempty"`
Kernel *Artifact `json:"kernel,omitempty"`
Initramfs *Artifact `json:"initramfs,omitempty"`
Rootfs *Artifact `json:"rootfs,omitempty"`
}
ImageFormat contains all artifacts for a single OS image
type Index ¶
type Index struct {
Note string `json:"note"` // used to note to users not to consume the release metadata index
Releases []IndexRelease `json:"releases"`
Metadata Metadata `json:"metadata"`
Stream string `json:"stream"`
}
Index models the release index: https://github.com/coreos/fedora-coreos-tracker/tree/main/metadata/release-index
type IndexRelease ¶
type IndexRelease struct {
Commits []IndexReleaseCommit `json:"commits,omitempty"`
OciImages []IndexReleaseOciImage `json:"oci-images,omitempty"`
Version string `json:"version"`
MetadataURL string `json:"metadata"`
}
IndexRelease is a "release pointer" from a release index
type IndexReleaseCommit ¶
type IndexReleaseCommit struct {
Architecture string `json:"architecture"`
Checksum string `json:"checksum"`
}
IndexReleaseCommit describes an ostree commit plus architecture
type IndexReleaseOciImage ¶ added in v0.4.5
type IndexReleaseOciImage struct {
ContainerImage
Architecture string `json:"architecture"`
}
IndexReleaseOciImages describes a pullspec plus architecture
type Media ¶
type Media struct {
Aliyun *PlatformAliyun `json:"aliyun"`
AppleHV *PlatformBase `json:"applehv"`
Aws *PlatformAws `json:"aws"`
Azure *PlatformBase `json:"azure"`
AzureStack *PlatformBase `json:"azurestack"`
Digitalocean *PlatformBase `json:"digitalocean"`
Exoscale *PlatformBase `json:"exoscale"`
Gcp *PlatformGcp `json:"gcp"`
Hetzner *PlatformBase `json:"hetzner"`
HyperV *PlatformBase `json:"hyperv"`
Ibmcloud *PlatformIBMCloud `json:"ibmcloud"`
KubeVirt *PlatformKubeVirt `json:"kubevirt"`
Metal *PlatformBase `json:"metal"`
Nutanix *PlatformBase `json:"nutanix"`
Openstack *PlatformBase `json:"openstack"`
OracleCloud *PlatformBase `json:"oraclecloud"`
PowerVS *PlatformIBMCloud `json:"powervs"`
ProxmoxVE *PlatformBase `json:"proxmoxve"`
Qemu *PlatformBase `json:"qemu"`
QemuSecex *PlatformBase `json:"qemu-secex"`
VirtualBox *PlatformBase `json:"virtualbox"`
Vmware *PlatformBase `json:"vmware"`
Vultr *PlatformBase `json:"vultr"`
}
Media contains release details for various platforms
type Metadata ¶
type Metadata struct {
LastModified string `json:"last-modified"`
}
Metadata is common metadata that contains last-modified
type PlatformAliyun ¶ added in v0.1.2
type PlatformAliyun struct {
PlatformBase
Images map[string]CloudImage `json:"images"`
}
PlatformAliyun contains Aliyun image information
type PlatformAws ¶
type PlatformAws struct {
PlatformBase
Images map[string]CloudImage `json:"images"`
}
PlatformAws contains AWS image information
type PlatformBase ¶
type PlatformBase struct {
Artifacts map[string]ImageFormat `json:"artifacts"`
}
PlatformBase with no cloud images
type PlatformGcp ¶
type PlatformGcp struct {
PlatformBase
Image *GcpImage `json:"image"`
}
PlatformGcp GCP image detail
type PlatformIBMCloud ¶ added in v0.1.5
type PlatformIBMCloud struct {
PlatformBase
Images map[string]IBMCloudImage `json:"images"`
}
PlatformIBMCloud IBMCloud/PowerVS image detail
type PlatformKubeVirt ¶ added in v0.1.8
type PlatformKubeVirt struct {
PlatformBase
Image *ContainerImage `json:"image"`
}
PlatformKubeVirt containerDisk metadata