Documentation ¶
Overview ¶
Package extensions contains Talos extensions specific API.
Index ¶
Constants ¶
This section is empty.
Variables ¶
var AllowedPaths = []string{
"/etc/cri/conf.d",
"/lib/firmware",
"/lib/modules",
"/lib64/ld-linux-x86-64.so.2",
"/usr/etc/udev/rules.d",
"/usr/local",
"/usr/share/glvnd",
"/usr/share/egl",
"/etc/vulkan",
}
AllowedPaths lists paths allowed in the extension images.
Functions ¶
This section is empty.
Types ¶
type Compatibility ¶
type Compatibility struct {
Talos Constraint `yaml:"talos" protobuf:"1"`
}
Compatibility describes extension compatibility.
type Config ¶
type Config struct {
Layers []*Layer `yaml:"layers"`
}
Config specifies Talos installer extensions configuration.
type Constraint ¶
type Constraint struct {
Version string `yaml:"version" protobuf:"1"`
}
Constraint describes compatibility constraint.
type Extension ¶ added in v1.8.0
type Extension struct { Manifest Manifest // contains filtered or unexported fields }
Extension represents unpacked extension in the filesystem.
func Load ¶ added in v1.8.0
Load extension from the filesystem.
This performs initial validation of the extension file structure.
func New ¶ added in v1.8.0
New creates a new extension from the rootfs path, directory name and manifest.
func (*Extension) Directory ¶ added in v1.8.0
Directory returns the directory name of the extension.
func (*Extension) RootfsPath ¶ added in v1.8.0
RootfsPath returns the path to the rootfs directory.
type Layer ¶
type Layer struct { Image string `yaml:"image" protobuf:"1"` Metadata Metadata `yaml:"metadata" protobuf:"2"` }
Layer defines overlay mount layer.
type Metadata ¶
type Metadata struct { Name string `yaml:"name" protobuf:"1"` Version string `yaml:"version" protobuf:"2"` Author string `yaml:"author" protobuf:"3"` Description string `yaml:"description" protobuf:"4"` Compatibility Compatibility `yaml:"compatibility" protobuf:"5"` ExtraInfo string `yaml:"extraInfo,omitempty" protobuf:"6"` }
Metadata describes base extension metadata.