Documentation ¶
Overview ¶
Package extensions provides function to manage system extensions.
Package extensions provides function to manage system extensions.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Extension ¶
type Extension struct { Manifest extensions.Manifest // contains filtered or unexported fields }
Extension represents unpacked extension in the filesystem.
func GenerateKernelModuleDependencyTreeExtension ¶
func GenerateKernelModuleDependencyTreeExtension(extensionPathsWithKernelModules []string, initramfsPath, scratchPath string, printFunc func(format string, v ...any)) (*Extension, error)
GenerateKernelModuleDependencyTreeExtension generates a kernel module dependency tree extension.
func Load ¶
Load extension from the filesystem.
This performs initial validation of the extension file structure.
func (*Extension) Compress ¶
Compress builds the squashfs image in the specified destination folder.
Components which should be placed to the initramfs are moved to the initramfsPath. Ucode components are moved into a separate designated location.
func (*Extension) KernelModuleDirectory ¶
KernelModuleDirectory returns the path to the kernel modules directory.
func (*Extension) ProvidesKernelModules ¶
ProvidesKernelModules returns true if the extension provides kernel modules.
type Puller ¶
type Puller struct {
// contains filtered or unexported fields
}
Puller pulls, unpacks and mounts extensions images.
func NewPuller ¶
func NewPuller(client *containerd.Client) (*Puller, error)
NewPuller creates a new instance of system extensions puller helper.
func (*Puller) PullAndMount ¶
func (puller *Puller) PullAndMount(ctx context.Context, registryConfig config.Registries, extensions []config.Extension) error
PullAndMount pulls the system extension images, unpacks them and mounts under well known path (constants.SystemExtensionsPath).