dynamic-resource-allocationk8s.io/dynamic-resource-allocation/structured/internal Index | Files | Directories

package internal

import "k8s.io/dynamic-resource-allocation/structured/internal"

Index

Variables

var FeaturesAll = Features{
	AdminAccess:          true,
	DeviceTaints:         true,
	PartitionableDevices: true,
	PrioritizedList:      true,
}

Types

type Allocator

type Allocator interface {
	ClaimsToAllocate() []*resourceapi.ResourceClaim
	Allocate(ctx context.Context, node *v1.Node) (finalResult []resourceapi.AllocationResult, finalErr error)
}

Allocator is intentionally not documented here. See the main package for docs.

type DeviceClassLister

type DeviceClassLister interface {
	// List returns a list of all DeviceClasses.
	List() ([]*resourceapi.DeviceClass, error)
	// Get returns the DeviceClass with the given className.
	Get(className string) (*resourceapi.DeviceClass, error)
}

type DeviceID

type DeviceID struct {
	Driver, Pool, Device draapi.UniqueString
}

func MakeDeviceID

func MakeDeviceID(driver, pool, device string) DeviceID

func (DeviceID) String

func (d DeviceID) String() string

type Features

type Features struct {
	AdminAccess          bool
	DeviceTaints         bool
	PartitionableDevices bool
	PrioritizedList      bool
}

Features contains all feature gates that may influence the behavior of ResourceClaim allocation.

func (Features) Set

func (f Features) Set() sets.Set[string]

Set returns all features which are set to true. The names of the features happen to match the Kubernetes feature gates where applicable. Plain strings are used because not all allocator features necessarily have to be Kubernetes feature gates and this package must not depend on those definitions.

Source Files

types.go

Directories

PathSynopsis
structured/internal/allocatortesting
structured/internal/incubating
structured/internal/stable
Version
v0.34.0-beta.0
Published
Jul 16, 2025
Platform
linux/amd64
Imports
5 packages
Last checked
8 seconds ago

Tools for package owners.