v1alpha1

package
v0.12.1 Latest Latest
Warning

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

Go to latest
Published: Oct 23, 2024 License: Apache-2.0 Imports: 7 Imported by: 16

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the Tinkerbell v1alpha1 API group

Index

Constants

View Source
const (
	// HardwareError represents hardware that is in an error state.
	HardwareError = HardwareState("Error")

	// HardwareReady represents hardware that is in a ready state.
	HardwareReady = HardwareState("Ready")
)
View Source
const (
	// TemplateError represents a template that is in an error state.
	TemplateError = TemplateState("Error")

	// TemplateReady represents a template that is in a ready state.
	TemplateReady = TemplateState("Ready")
)
View Source
const (
	WorkflowStatePreparing = WorkflowState("STATE_PREPARING")
	WorkflowStatePending   = WorkflowState("STATE_PENDING")
	WorkflowStateRunning   = WorkflowState("STATE_RUNNING")
	WorkflowStatePost      = WorkflowState("STATE_POST")
	WorkflowStateSuccess   = WorkflowState("STATE_SUCCESS")
	WorkflowStateFailed    = WorkflowState("STATE_FAILED")
	WorkflowStateTimeout   = WorkflowState("STATE_TIMEOUT")

	NetbootJobFailed        WorkflowConditionType = "NetbootJobFailed"
	NetbootJobComplete      WorkflowConditionType = "NetbootJobComplete"
	NetbootJobRunning       WorkflowConditionType = "NetbootJobRunning"
	NetbootJobSetupFailed   WorkflowConditionType = "NetbootJobSetupFailed"
	NetbootJobSetupComplete WorkflowConditionType = "NetbootJobSetupComplete"
	ToggleAllowNetbootTrue  WorkflowConditionType = "AllowNetbootTrue"
	ToggleAllowNetbootFalse WorkflowConditionType = "AllowNetbootFalse"
	TemplateRenderedSuccess WorkflowConditionType = "TemplateRenderedSuccess"

	TemplateRenderingSuccessful TemplateRendering = "successful"
	TemplateRenderingFailed     TemplateRendering = "failed"

	BootModeNetboot BootMode = "netboot"
	BootModeISO     BootMode = "iso"
)
View Source
const (
	// HardwareIDAnnotation is used by the controller to store the
	// ID assigned to the hardware by Tinkerbell for migrated hardware.
	HardwareIDAnnotation = "hardware.tinkerbell.org/id"
)
View Source
const (
	// TemplateIDAnnotation is used by the controller to store the
	// ID assigned to the template by Tinkerbell for migrated templates.
	TemplateIDAnnotation = "template.tinkerbell.org/id"
)
View Source
const (
	// WorkflowIDAnnotation is used by the controller to store the
	// ID assigned to the workflow by Tinkerbell for migrated workflows.
	WorkflowIDAnnotation = "workflow.tinkerbell.org/id"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects.
	GroupVersion = schema.GroupVersion{Group: "tinkerbell.org", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme.
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type Action

type Action struct {
	Name        string            `json:"name,omitempty"`
	Image       string            `json:"image,omitempty"`
	Timeout     int64             `json:"timeout,omitempty"`
	Command     []string          `json:"command,omitempty"`
	Volumes     []string          `json:"volumes,omitempty"`
	Pid         string            `json:"pid,omitempty"`
	Environment map[string]string `json:"environment,omitempty"`
	Status      WorkflowState     `json:"status,omitempty"`
	StartedAt   *metav1.Time      `json:"startedAt,omitempty"`
	Seconds     int64             `json:"seconds,omitempty"`
	Message     string            `json:"message,omitempty"`
}

Action represents a workflow action.

func (*Action) DeepCopy

func (in *Action) DeepCopy() *Action

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Action.

func (*Action) DeepCopyInto

func (in *Action) DeepCopyInto(out *Action)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AllowNetbootStatus added in v0.11.0

type AllowNetbootStatus struct {
	ToggledTrue  bool `json:"toggledTrue,omitempty"`
	ToggledFalse bool `json:"toggledFalse,omitempty"`
}

func (*AllowNetbootStatus) DeepCopy added in v0.11.0

func (in *AllowNetbootStatus) DeepCopy() *AllowNetbootStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AllowNetbootStatus.

func (*AllowNetbootStatus) DeepCopyInto added in v0.11.0

func (in *AllowNetbootStatus) DeepCopyInto(out *AllowNetbootStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BootMode added in v0.11.0

type BootMode string

type BootOptions added in v0.11.0

type BootOptions struct {
	// ToggleAllowNetboot indicates whether the controller should toggle the field in the associated hardware for allowing PXE booting.
	// This will be enabled before a Workflow is executed and disabled after the Workflow has completed successfully.
	// A HardwareRef must be provided.
	// +optional
	ToggleAllowNetboot bool `json:"toggleAllowNetboot,omitempty"`

	// ISOURL is the URL of the ISO that will be one-time booted. When this field is set, the controller will create a job.bmc.tinkerbell.org object
	// for getting the associated hardware into a CDROM booting state.
	// A HardwareRef that contains a spec.BmcRef must be provided.
	// +optional
	// +kubebuilder:validation:Format=url
	ISOURL string `json:"isoURL,omitempty"`

	// BootMode is the type of booting that will be done.
	// +optional
	// +kubebuilder:validation:Enum=netboot;iso
	BootMode BootMode `json:"bootMode,omitempty"`
}

BootOptions are options that control the booting of Hardware.

func (*BootOptions) DeepCopy added in v0.11.0

func (in *BootOptions) DeepCopy() *BootOptions

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BootOptions.

func (*BootOptions) DeepCopyInto added in v0.11.0

func (in *BootOptions) DeepCopyInto(out *BootOptions)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BootOptionsStatus added in v0.11.0

type BootOptionsStatus struct {
	// AllowNetboot holds the state of the the controller's interactions with the allowPXE field in a Hardware object.
	AllowNetboot AllowNetbootStatus `json:"allowNetboot,omitempty"`
	// Jobs holds the state of any job.bmc.tinkerbell.org objects created.
	Jobs map[string]JobStatus `json:"jobs,omitempty"`
}

BootOptionsStatus holds the state of any boot options.

func (*BootOptionsStatus) DeepCopy added in v0.11.0

func (in *BootOptionsStatus) DeepCopy() *BootOptionsStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BootOptionsStatus.

func (*BootOptionsStatus) DeepCopyInto added in v0.11.0

func (in *BootOptionsStatus) DeepCopyInto(out *BootOptionsStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DHCP

type DHCP struct {
	// +kubebuilder:validation:Pattern="([0-9a-f]{2}[:]){5}([0-9a-f]{2})"
	MAC         string   `json:"mac,omitempty"`
	Hostname    string   `json:"hostname,omitempty"`
	LeaseTime   int64    `json:"lease_time,omitempty"`
	NameServers []string `json:"name_servers,omitempty"`
	TimeServers []string `json:"time_servers,omitempty"`
	Arch        string   `json:"arch,omitempty"`
	UEFI        bool     `json:"uefi,omitempty"`
	IfaceName   string   `json:"iface_name,omitempty"`
	IP          *IP      `json:"ip,omitempty"`
	// validation pattern for VLANDID is a string number between 0-4096
	// +kubebuilder:validation:Pattern="^(([0-9][0-9]{0,2}|[1-3][0-9][0-9][0-9]|40([0-8][0-9]|9[0-6]))(,[1-9][0-9]{0,2}|[1-3][0-9][0-9][0-9]|40([0-8][0-9]|9[0-6]))*)$"
	VLANID string `json:"vlan_id,omitempty"`
}

DHCP configuration.

func (*DHCP) DeepCopy

func (in *DHCP) DeepCopy() *DHCP

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DHCP.

func (*DHCP) DeepCopyInto

func (in *DHCP) DeepCopyInto(out *DHCP)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Disk

type Disk struct {
	//+optional
	Device string `json:"device,omitempty"`
}

Disk represents a disk device for Tinkerbell Hardware.

func (*Disk) DeepCopy

func (in *Disk) DeepCopy() *Disk

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Disk.

func (*Disk) DeepCopyInto

func (in *Disk) DeepCopyInto(out *Disk)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Hardware

type Hardware struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   HardwareSpec   `json:"spec,omitempty"`
	Status HardwareStatus `json:"status,omitempty"`
}

Hardware is the Schema for the Hardware API.

func (*Hardware) DeepCopy

func (in *Hardware) DeepCopy() *Hardware

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Hardware.

func (*Hardware) DeepCopyInto

func (in *Hardware) DeepCopyInto(out *Hardware)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Hardware) DeepCopyObject

func (in *Hardware) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Hardware) SetTinkID

func (h *Hardware) SetTinkID(id string)

SetTinkID sets the Tinkerbell ID associated with this Hardware.

func (*Hardware) TinkID

func (h *Hardware) TinkID() string

TinkID returns the Tinkerbell ID associated with this Hardware.

type HardwareList

type HardwareList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Hardware `json:"items"`
}

HardwareList contains a list of Hardware.

func (*HardwareList) DeepCopy

func (in *HardwareList) DeepCopy() *HardwareList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HardwareList.

func (*HardwareList) DeepCopyInto

func (in *HardwareList) DeepCopyInto(out *HardwareList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*HardwareList) DeepCopyObject

func (in *HardwareList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type HardwareMetadata

type HardwareMetadata struct {
	State        string                `json:"state,omitempty"`
	BondingMode  int64                 `json:"bonding_mode,omitempty"`
	Manufacturer *MetadataManufacturer `json:"manufacturer,omitempty"`
	Instance     *MetadataInstance     `json:"instance,omitempty"`
	Custom       *MetadataCustom       `json:"custom,omitempty"`
	Facility     *MetadataFacility     `json:"facility,omitempty"`
}

func (*HardwareMetadata) DeepCopy

func (in *HardwareMetadata) DeepCopy() *HardwareMetadata

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HardwareMetadata.

func (*HardwareMetadata) DeepCopyInto

func (in *HardwareMetadata) DeepCopyInto(out *HardwareMetadata)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HardwareSpec

type HardwareSpec struct {
	// BMCRef contains a relation to a BMC state management type in the same
	// namespace as the Hardware. This may be used for BMC management by
	// orchestrators.
	//+optional
	BMCRef *corev1.TypedLocalObjectReference `json:"bmcRef,omitempty"`

	//+optional
	Interfaces []Interface `json:"interfaces,omitempty"`

	//+optional
	Metadata *HardwareMetadata `json:"metadata,omitempty"`

	//+optional
	TinkVersion int64 `json:"tinkVersion,omitempty"`

	//+optional
	Disks []Disk `json:"disks,omitempty"`

	// Resources represents known resources that are available on a machine.
	// Resources may be used for scheduling by orchestrators.
	//+optional
	Resources map[string]resource.Quantity `json:"resources,omitempty"`

	// UserData is the user data to configure in the hardware's
	// metadata
	//+optional
	UserData *string `json:"userData,omitempty"`

	// VendorData is the vendor data to configure in the hardware's
	// metadata
	//+optional
	VendorData *string `json:"vendorData,omitempty"`
}

HardwareSpec defines the desired state of Hardware.

func (*HardwareSpec) DeepCopy

func (in *HardwareSpec) DeepCopy() *HardwareSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HardwareSpec.

func (*HardwareSpec) DeepCopyInto

func (in *HardwareSpec) DeepCopyInto(out *HardwareSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HardwareState

type HardwareState string

HardwareState represents the hardware state.

type HardwareStatus

type HardwareStatus struct {
	//+optional
	State HardwareState `json:"state,omitempty"`
}

HardwareStatus defines the observed state of Hardware.

func (*HardwareStatus) DeepCopy

func (in *HardwareStatus) DeepCopy() *HardwareStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HardwareStatus.

func (*HardwareStatus) DeepCopyInto

func (in *HardwareStatus) DeepCopyInto(out *HardwareStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type IP

type IP struct {
	Address string `json:"address,omitempty"`
	Netmask string `json:"netmask,omitempty"`
	Gateway string `json:"gateway,omitempty"`
	Family  int64  `json:"family,omitempty"`
}

IP configuration.

func (*IP) DeepCopy

func (in *IP) DeepCopy() *IP

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IP.

func (*IP) DeepCopyInto

func (in *IP) DeepCopyInto(out *IP)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type IPXE

type IPXE struct {
	URL      string `json:"url,omitempty"`
	Contents string `json:"contents,omitempty"`
}

IPXE configuration.

func (*IPXE) DeepCopy

func (in *IPXE) DeepCopy() *IPXE

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPXE.

func (*IPXE) DeepCopyInto

func (in *IPXE) DeepCopyInto(out *IPXE)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Interface

type Interface struct {
	//+optional
	Netboot *Netboot `json:"netboot,omitempty"`

	//+optional
	DHCP *DHCP `json:"dhcp,omitempty"`

	// DisableDHCP disables DHCP for this interface.
	// +kubebuilder:default=false
	// +optional
	DisableDHCP bool `json:"disableDhcp,omitempty"`
}

Interface represents a network interface configuration for Hardware.

func (*Interface) DeepCopy

func (in *Interface) DeepCopy() *Interface

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Interface.

func (*Interface) DeepCopyInto

func (in *Interface) DeepCopyInto(out *Interface)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type JobStatus added in v0.11.0

type JobStatus struct {
	// UID is the UID of the job.bmc.tinkerbell.org object associated with this workflow.
	// This is used to uniquely identify the job.bmc.tinkerbell.org object, as
	// all objects for a specific Hardware/Machine.bmc.tinkerbell.org are created with the same name.
	UID types.UID `json:"uid,omitempty"`

	// Complete indicates whether the created job.bmc.tinkerbell.org has reported its conditions as complete.
	Complete bool `json:"complete,omitempty"`

	// ExistingJobDeleted indicates whether any existing job.bmc.tinkerbell.org was deleted.
	// The name of each job.bmc.tinkerbell.org object created by the controller is the same, so only one can exist at a time.
	// Using the same name was chosen so that there is only ever 1 job.bmc.tinkerbell.org per Hardware/Machine.bmc.tinkerbell.org.
	// This makes clean up easier and we dont just orphan jobs every time.
	ExistingJobDeleted bool `json:"existingJobDeleted,omitempty"`
}

JobStatus holds the state of a specific job.bmc.tinkerbell.org object created.

func (*JobStatus) DeepCopy added in v0.11.0

func (in *JobStatus) DeepCopy() *JobStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobStatus.

func (*JobStatus) DeepCopyInto added in v0.11.0

func (in *JobStatus) DeepCopyInto(out *JobStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MetadataCustom

type MetadataCustom struct {
	PreinstalledOperatingSystemVersion *MetadataInstanceOperatingSystem `json:"preinstalled_operating_system_version,omitempty"`
	PrivateSubnets                     []string                         `json:"private_subnets,omitempty"`
}

func (*MetadataCustom) DeepCopy

func (in *MetadataCustom) DeepCopy() *MetadataCustom

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataCustom.

func (*MetadataCustom) DeepCopyInto

func (in *MetadataCustom) DeepCopyInto(out *MetadataCustom)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MetadataFacility

type MetadataFacility struct {
	PlanSlug        string `json:"plan_slug,omitempty"`
	PlanVersionSlug string `json:"plan_version_slug,omitempty"`
	FacilityCode    string `json:"facility_code,omitempty"`
}

func (*MetadataFacility) DeepCopy

func (in *MetadataFacility) DeepCopy() *MetadataFacility

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataFacility.

func (*MetadataFacility) DeepCopyInto

func (in *MetadataFacility) DeepCopyInto(out *MetadataFacility)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MetadataInstance

type MetadataInstance struct {
	ID                  string                           `json:"id,omitempty"`
	State               string                           `json:"state,omitempty"`
	Hostname            string                           `json:"hostname,omitempty"`
	AllowPxe            bool                             `json:"allow_pxe,omitempty"`
	Rescue              bool                             `json:"rescue,omitempty"`
	OperatingSystem     *MetadataInstanceOperatingSystem `json:"operating_system,omitempty"`
	AlwaysPxe           bool                             `json:"always_pxe,omitempty"`
	IpxeScriptURL       string                           `json:"ipxe_script_url,omitempty"`
	Ips                 []*MetadataInstanceIP            `json:"ips,omitempty"`
	Userdata            string                           `json:"userdata,omitempty"`
	CryptedRootPassword string                           `json:"crypted_root_password,omitempty"`
	Tags                []string                         `json:"tags,omitempty"`
	Storage             *MetadataInstanceStorage         `json:"storage,omitempty"`
	SSHKeys             []string                         `json:"ssh_keys,omitempty"`
	NetworkReady        bool                             `json:"network_ready,omitempty"`
}

func (*MetadataInstance) DeepCopy

func (in *MetadataInstance) DeepCopy() *MetadataInstance

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataInstance.

func (*MetadataInstance) DeepCopyInto

func (in *MetadataInstance) DeepCopyInto(out *MetadataInstance)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MetadataInstanceIP

type MetadataInstanceIP struct {
	Address    string `json:"address,omitempty"`
	Netmask    string `json:"netmask,omitempty"`
	Gateway    string `json:"gateway,omitempty"`
	Family     int64  `json:"family,omitempty"`
	Public     bool   `json:"public,omitempty"`
	Management bool   `json:"management,omitempty"`
}

func (*MetadataInstanceIP) DeepCopy

func (in *MetadataInstanceIP) DeepCopy() *MetadataInstanceIP

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataInstanceIP.

func (*MetadataInstanceIP) DeepCopyInto

func (in *MetadataInstanceIP) DeepCopyInto(out *MetadataInstanceIP)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MetadataInstanceOperatingSystem

type MetadataInstanceOperatingSystem struct {
	Slug     string `json:"slug,omitempty"`
	Distro   string `json:"distro,omitempty"`
	Version  string `json:"version,omitempty"`
	ImageTag string `json:"image_tag,omitempty"`
	OsSlug   string `json:"os_slug,omitempty"`
}

func (*MetadataInstanceOperatingSystem) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataInstanceOperatingSystem.

func (*MetadataInstanceOperatingSystem) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MetadataInstanceStorage

type MetadataInstanceStorage struct {
	Disks       []*MetadataInstanceStorageDisk       `json:"disks,omitempty"`
	Raid        []*MetadataInstanceStorageRAID       `json:"raid,omitempty"`
	Filesystems []*MetadataInstanceStorageFilesystem `json:"filesystems,omitempty"`
}

func (*MetadataInstanceStorage) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataInstanceStorage.

func (*MetadataInstanceStorage) DeepCopyInto

func (in *MetadataInstanceStorage) DeepCopyInto(out *MetadataInstanceStorage)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MetadataInstanceStorageDisk

type MetadataInstanceStorageDisk struct {
	Device     string                                  `json:"device,omitempty"`
	WipeTable  bool                                    `json:"wipe_table,omitempty"`
	Partitions []*MetadataInstanceStorageDiskPartition `json:"partitions,omitempty"`
}

func (*MetadataInstanceStorageDisk) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataInstanceStorageDisk.

func (*MetadataInstanceStorageDisk) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MetadataInstanceStorageDiskPartition

type MetadataInstanceStorageDiskPartition struct {
	Label    string `json:"label,omitempty"`
	Number   int64  `json:"number,omitempty"`
	Size     int64  `json:"size,omitempty"`
	Start    int64  `json:"start,omitempty"`
	TypeGUID string `json:"type_guid,omitempty"`
}

func (*MetadataInstanceStorageDiskPartition) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataInstanceStorageDiskPartition.

func (*MetadataInstanceStorageDiskPartition) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MetadataInstanceStorageFile

type MetadataInstanceStorageFile struct {
	Path     string `json:"path,omitempty"`
	Contents string `json:"contents,omitempty"`
	Mode     int64  `json:"mode,omitempty"`
	UID      int64  `json:"uid,omitempty"`
	GID      int64  `json:"gid,omitempty"`
}

func (*MetadataInstanceStorageFile) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataInstanceStorageFile.

func (*MetadataInstanceStorageFile) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MetadataInstanceStorageFilesystem

type MetadataInstanceStorageFilesystem struct {
	Mount *MetadataInstanceStorageMount `json:"mount,omitempty"`
}

func (*MetadataInstanceStorageFilesystem) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataInstanceStorageFilesystem.

func (*MetadataInstanceStorageFilesystem) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MetadataInstanceStorageMount

type MetadataInstanceStorageMount struct {
	Device string                                         `json:"device,omitempty"`
	Format string                                         `json:"format,omitempty"`
	Files  []*MetadataInstanceStorageFile                 `json:"files,omitempty"`
	Create *MetadataInstanceStorageMountFilesystemOptions `json:"create,omitempty"`
	Point  string                                         `json:"point,omitempty"`
}

func (*MetadataInstanceStorageMount) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataInstanceStorageMount.

func (*MetadataInstanceStorageMount) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MetadataInstanceStorageMountFilesystemOptions

type MetadataInstanceStorageMountFilesystemOptions struct {
	Force   bool     `json:"force,omitempty"`
	Options []string `json:"options,omitempty"`
}

func (*MetadataInstanceStorageMountFilesystemOptions) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataInstanceStorageMountFilesystemOptions.

func (*MetadataInstanceStorageMountFilesystemOptions) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MetadataInstanceStorageRAID

type MetadataInstanceStorageRAID struct {
	Name    string   `json:"name,omitempty"`
	Level   string   `json:"level,omitempty"`
	Devices []string `json:"devices,omitempty"`
	Spare   int64    `json:"spare,omitempty"`
}

func (*MetadataInstanceStorageRAID) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataInstanceStorageRAID.

func (*MetadataInstanceStorageRAID) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MetadataManufacturer

type MetadataManufacturer struct {
	ID   string `json:"id,omitempty"`
	Slug string `json:"slug,omitempty"`
}

func (*MetadataManufacturer) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataManufacturer.

func (*MetadataManufacturer) DeepCopyInto

func (in *MetadataManufacturer) DeepCopyInto(out *MetadataManufacturer)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Netboot

type Netboot struct {
	//+optional
	AllowPXE *bool `json:"allowPXE,omitempty"`

	//+optional
	AllowWorkflow *bool `json:"allowWorkflow,omitempty"`

	//+optional
	IPXE *IPXE `json:"ipxe,omitempty"`

	//+optional
	OSIE *OSIE `json:"osie,omitempty"`
}

Netboot configuration.

func (*Netboot) DeepCopy

func (in *Netboot) DeepCopy() *Netboot

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Netboot.

func (*Netboot) DeepCopyInto

func (in *Netboot) DeepCopyInto(out *Netboot)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OSIE

type OSIE struct {
	BaseURL string `json:"baseURL,omitempty"`
	Kernel  string `json:"kernel,omitempty"`
	Initrd  string `json:"initrd,omitempty"`
}

OSIE configuration.

func (*OSIE) DeepCopy

func (in *OSIE) DeepCopy() *OSIE

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OSIE.

func (*OSIE) DeepCopyInto

func (in *OSIE) DeepCopyInto(out *OSIE)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Task

type Task struct {
	Name        string            `json:"name"`
	WorkerAddr  string            `json:"worker"`
	Actions     []Action          `json:"actions"`
	Volumes     []string          `json:"volumes,omitempty"`
	Environment map[string]string `json:"environment,omitempty"`
}

Task represents a series of actions to be completed by a worker.

func (*Task) DeepCopy

func (in *Task) DeepCopy() *Task

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Task.

func (*Task) DeepCopyInto

func (in *Task) DeepCopyInto(out *Task)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Template

type Template struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   TemplateSpec   `json:"spec,omitempty"`
	Status TemplateStatus `json:"status,omitempty"`
}

Template is the Schema for the Templates API.

func (*Template) DeepCopy

func (in *Template) DeepCopy() *Template

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Template.

func (*Template) DeepCopyInto

func (in *Template) DeepCopyInto(out *Template)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Template) DeepCopyObject

func (in *Template) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Template) SetTinkID

func (t *Template) SetTinkID(id string)

SetTinkID sets the Tinkerbell ID associated with this Template.

func (*Template) TinkID

func (t *Template) TinkID() string

TinkID returns the Tinkerbell ID associated with this Template.

type TemplateList

type TemplateList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Template `json:"items"`
}

TemplateList contains a list of Templates.

func (*TemplateList) DeepCopy

func (in *TemplateList) DeepCopy() *TemplateList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TemplateList.

func (*TemplateList) DeepCopyInto

func (in *TemplateList) DeepCopyInto(out *TemplateList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TemplateList) DeepCopyObject

func (in *TemplateList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TemplateRendering added in v0.11.0

type TemplateRendering string

type TemplateSpec

type TemplateSpec struct {
	// +optional
	Data *string `json:"data,omitempty"`
}

TemplateSpec defines the desired state of Template.

func (*TemplateSpec) DeepCopy

func (in *TemplateSpec) DeepCopy() *TemplateSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TemplateSpec.

func (*TemplateSpec) DeepCopyInto

func (in *TemplateSpec) DeepCopyInto(out *TemplateSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TemplateState

type TemplateState string

TemplateState represents the template state.

type TemplateStatus

type TemplateStatus struct {
	State TemplateState `json:"state,omitempty"`
}

TemplateStatus defines the observed state of Template.

func (*TemplateStatus) DeepCopy

func (in *TemplateStatus) DeepCopy() *TemplateStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TemplateStatus.

func (*TemplateStatus) DeepCopyInto

func (in *TemplateStatus) DeepCopyInto(out *TemplateStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Workflow

type Workflow struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   WorkflowSpec   `json:"spec,omitempty"`
	Status WorkflowStatus `json:"status,omitempty"`
}

Workflow is the Schema for the Workflows API.

func (*Workflow) DeepCopy

func (in *Workflow) DeepCopy() *Workflow

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Workflow.

func (*Workflow) DeepCopyInto

func (in *Workflow) DeepCopyInto(out *Workflow)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Workflow) DeepCopyObject

func (in *Workflow) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Workflow) GetCurrentAction

func (w *Workflow) GetCurrentAction() string

func (*Workflow) GetCurrentActionIndex

func (w *Workflow) GetCurrentActionIndex() int

func (*Workflow) GetCurrentActionState

func (w *Workflow) GetCurrentActionState() WorkflowState

func (*Workflow) GetCurrentTask

func (w *Workflow) GetCurrentTask() string

func (*Workflow) GetCurrentTaskIndex

func (w *Workflow) GetCurrentTaskIndex() int

func (*Workflow) GetCurrentWorker

func (w *Workflow) GetCurrentWorker() string

func (*Workflow) GetStartTime

func (w *Workflow) GetStartTime() *metav1.Time

GetStartTime returns the start time, for the first action of the first task.

func (*Workflow) GetTotalNumberOfActions

func (w *Workflow) GetTotalNumberOfActions() int

func (*Workflow) SetTinkID

func (w *Workflow) SetTinkID(id string)

SetTinkID sets the Tinkerbell ID associated with this Workflow.

func (*Workflow) TinkID

func (w *Workflow) TinkID() string

TinkID returns the Tinkerbell ID associated with this Workflow.

type WorkflowCondition added in v0.11.0

type WorkflowCondition struct {
	// Type of job condition, Complete or Failed.
	Type WorkflowConditionType `json:"type" protobuf:"bytes,1,opt,name=type,casttype=WorkflowConditionType"`
	// Status of the condition, one of True, False, Unknown.
	Status metav1.ConditionStatus `json:"status" protobuf:"bytes,2,opt,name=status,casttype=k8s.io/api/core/v1.ConditionStatus"`
	// Reason is a (brief) reason for the condition's last transition.
	// +optional
	Reason string `json:"reason,omitempty" protobuf:"bytes,5,opt,name=reason"`
	// Message is a human readable message indicating details about last transition.
	// +optional
	Message string `json:"message,omitempty" protobuf:"bytes,6,opt,name=message"`
	// Time when the condition was created.
	// +optional
	Time *metav1.Time `json:"time,omitempty" protobuf:"bytes,7,opt,name=time"`
}

JobCondition describes current state of a job.

func (*WorkflowCondition) DeepCopy added in v0.11.0

func (in *WorkflowCondition) DeepCopy() *WorkflowCondition

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkflowCondition.

func (*WorkflowCondition) DeepCopyInto added in v0.11.0

func (in *WorkflowCondition) DeepCopyInto(out *WorkflowCondition)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WorkflowConditionType added in v0.11.0

type WorkflowConditionType string

type WorkflowList

type WorkflowList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Workflow `json:"items"`
}

WorkflowList contains a list of Workflows.

func (*WorkflowList) DeepCopy

func (in *WorkflowList) DeepCopy() *WorkflowList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkflowList.

func (*WorkflowList) DeepCopyInto

func (in *WorkflowList) DeepCopyInto(out *WorkflowList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*WorkflowList) DeepCopyObject

func (in *WorkflowList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type WorkflowSpec

type WorkflowSpec struct {
	// Name of the Template associated with this workflow.
	TemplateRef string `json:"templateRef,omitempty"`

	// Name of the Hardware associated with this workflow.
	// +optional
	HardwareRef string `json:"hardwareRef,omitempty"`

	// A mapping of template devices to hadware mac addresses.
	HardwareMap map[string]string `json:"hardwareMap,omitempty"`

	// BootOptions are options that control the booting of Hardware.
	BootOptions BootOptions `json:"bootOptions,omitempty"`
}

WorkflowSpec defines the desired state of Workflow.

func (*WorkflowSpec) DeepCopy

func (in *WorkflowSpec) DeepCopy() *WorkflowSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkflowSpec.

func (*WorkflowSpec) DeepCopyInto

func (in *WorkflowSpec) DeepCopyInto(out *WorkflowSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WorkflowState

type WorkflowState string

type WorkflowStatus

type WorkflowStatus struct {
	// State is the current overall state of the Workflow.
	State WorkflowState `json:"state,omitempty"`

	// CurrentAction is the action that is currently in the running state.
	CurrentAction string `json:"currentAction,omitempty"`

	// BootOptions holds the state of any boot options.
	BootOptions BootOptionsStatus `json:"bootOptions,omitempty"`

	// TemplateRendering indicates whether the template was rendered successfully.
	// Possible values are "successful" or "failed" or "unknown".
	TemplateRendering TemplateRendering `json:"templateRending,omitempty"`

	// GlobalTimeout represents the max execution time.
	GlobalTimeout int64 `json:"globalTimeout,omitempty"`

	// Tasks are the tasks to be run by the worker(s).
	Tasks []Task `json:"tasks,omitempty"`

	// Conditions are the latest available observations of an object's current state.
	//
	// +optional
	// +patchMergeKey=type
	// +patchStrategy=merge
	// +listType=atomic
	Conditions []WorkflowCondition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
}

WorkflowStatus defines the observed state of a Workflow.

func (*WorkflowStatus) DeepCopy

func (in *WorkflowStatus) DeepCopy() *WorkflowStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkflowStatus.

func (*WorkflowStatus) DeepCopyInto

func (in *WorkflowStatus) DeepCopyInto(out *WorkflowStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*WorkflowStatus) HasCondition added in v0.11.0

HasCondition checks if the cType condition is present with status cStatus on a bmj.

func (*WorkflowStatus) SetCondition added in v0.11.0

func (w *WorkflowStatus) SetCondition(wc WorkflowCondition)

SetCondition updates conditions. If the condition already exists, it updates it. If the condition doesn't exist then it appends the new one (wc).

Jump to

Keyboard shortcuts

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