storage

package
v0.0.0-...-fad4c49 Latest Latest
Warning

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

Go to latest
Published: Feb 28, 2025 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

View Source
const (
	EnvsDisk = "/mnt/disks/fc-envs/v1"

	KernelsDir     = "/fc-kernels"
	KernelMountDir = "/fc-vm"
	KernelName     = "vmlinux.bin"

	HostOldEnvdPath  = "/fc-envd/envd-v0.0.1"
	HostEnvdPath     = "/fc-envd/envd"
	GuestOldEnvdPath = "/usr/bin/envd-v0.0.1"
	GuestEnvdPath    = "/usr/bin/envd"

	EnvdVersionKey = "envd_version"
	RootfsSizeKey  = "rootfs_size"

	FirecrackerVersionsDir = "/fc-versions"
	FirecrackerBinaryName  = "firecracker"

	MemfileName  = "memfile"
	RootfsName   = "rootfs.ext4"
	SnapfileName = "snapfile"

	HeaderSuffix = ".header"
)

Variables

View Source
var KernelMountedPath = filepath.Join(KernelMountDir, KernelName)

Path to the directory where the kernel can be accessed inside when the dirs are mounted.

Functions

This section is empty.

Types

type SandboxFiles

type SandboxFiles struct {
	*TemplateCacheFiles
	SandboxID string
	// contains filtered or unexported fields
}

func (*SandboxFiles) SandboxCacheRootfsLinkPath

func (s *SandboxFiles) SandboxCacheRootfsLinkPath() string

func (*SandboxFiles) SandboxCacheRootfsPath

func (s *SandboxFiles) SandboxCacheRootfsPath() string

func (*SandboxFiles) SandboxFirecrackerSocketPath

func (s *SandboxFiles) SandboxFirecrackerSocketPath() string

func (*SandboxFiles) SandboxUffdSocketPath

func (s *SandboxFiles) SandboxUffdSocketPath() string

type TemplateBuild

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

func NewTemplateBuild

func NewTemplateBuild(
	memfileHeader *header.Header,
	rootfsHeader *header.Header,
	files *TemplateFiles,
) *TemplateBuild

func (*TemplateBuild) Remove

func (t *TemplateBuild) Remove(ctx context.Context) error

func (*TemplateBuild) Upload

func (t *TemplateBuild) Upload(
	ctx context.Context,
	snapfilePath string,
	memfilePath *string,
	rootfsPath *string,
) chan error

type TemplateCacheFiles

type TemplateCacheFiles struct {
	*TemplateFiles
	// CacheIdentifier is used to distinguish between each entry in the cache to prevent deleting the cache files when the template cache entry is being closed and a new one is being created.
	CacheIdentifier string
}

func (*TemplateCacheFiles) CacheDir

func (c *TemplateCacheFiles) CacheDir() string

func (*TemplateCacheFiles) CacheMemfileFullSnapshotPath

func (c *TemplateCacheFiles) CacheMemfileFullSnapshotPath() string

func (*TemplateCacheFiles) CacheSnapfilePath

func (c *TemplateCacheFiles) CacheSnapfilePath() string

func (*TemplateCacheFiles) NewSandboxFiles

func (c *TemplateCacheFiles) NewSandboxFiles(sandboxID string) *SandboxFiles

type TemplateFiles

type TemplateFiles struct {
	TemplateId         string
	BuildId            string
	KernelVersion      string
	FirecrackerVersion string
	// contains filtered or unexported fields
}

func NewTemplateFiles

func NewTemplateFiles(
	templateId,
	buildId,
	kernelVersion,
	firecrackerVersion string,
	hugePages bool,
) *TemplateFiles

func (*TemplateFiles) BuildDir

func (t *TemplateFiles) BuildDir() string

func (*TemplateFiles) BuildKernelDir

func (t *TemplateFiles) BuildKernelDir() string

func (*TemplateFiles) BuildKernelPath

func (t *TemplateFiles) BuildKernelPath() string

func (*TemplateFiles) BuildMemfilePath

func (t *TemplateFiles) BuildMemfilePath() string

func (*TemplateFiles) BuildRootfsPath

func (t *TemplateFiles) BuildRootfsPath() string

func (*TemplateFiles) BuildSnapfilePath

func (t *TemplateFiles) BuildSnapfilePath() string

func (*TemplateFiles) CacheKernelDir

func (t *TemplateFiles) CacheKernelDir() string

func (*TemplateFiles) CacheKernelPath

func (t *TemplateFiles) CacheKernelPath() string

func (*TemplateFiles) CacheKey

func (t *TemplateFiles) CacheKey() string

Key for the cache. Unique for template-build pair.

func (*TemplateFiles) FirecrackerPath

func (t *TemplateFiles) FirecrackerPath() string

func (*TemplateFiles) Hugepages

func (t *TemplateFiles) Hugepages() bool

func (*TemplateFiles) MemfilePageSize

func (t *TemplateFiles) MemfilePageSize() int64

func (*TemplateFiles) NewTemplateCacheFiles

func (f *TemplateFiles) NewTemplateCacheFiles() (*TemplateCacheFiles, error)

func (*TemplateFiles) RootfsBlockSize

func (t *TemplateFiles) RootfsBlockSize() int64

func (*TemplateFiles) StorageDir

func (t *TemplateFiles) StorageDir() string

func (*TemplateFiles) StorageMemfileHeaderPath

func (t *TemplateFiles) StorageMemfileHeaderPath() string

func (*TemplateFiles) StorageMemfilePath

func (t *TemplateFiles) StorageMemfilePath() string

func (*TemplateFiles) StorageRootfsHeaderPath

func (t *TemplateFiles) StorageRootfsHeaderPath() string

func (*TemplateFiles) StorageRootfsPath

func (t *TemplateFiles) StorageRootfsPath() string

func (*TemplateFiles) StorageSnapfilePath

func (t *TemplateFiles) StorageSnapfilePath() string

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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