provider

package
v0.1.0-alpha.1 Latest Latest
Warning

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

Go to latest
Published: Dec 18, 2024 License: MPL-2.0 Imports: 32 Imported by: 0

Documentation

Overview

Package provider implements the bare metal infra provider.

Index

Constants

This section is empty.

Variables

View Source
var DefaultOptions = Options{
	Name:                             "Bare Metal",
	Description:                      "Bare metal infrastructure provider",
	ImageFactoryBaseURL:              "https://factory.talos.dev",
	ImageFactoryPXEBaseURL:           "https://pxe.factory.talos.dev",
	AgentModeTalosVersion:            "v1.9.0",
	BootFromDiskMethod:               string(ipxe.BootIPXEExit),
	IPMIPXEBootMode:                  string(pxe.BootModeUEFI),
	APIPort:                          50042,
	MinRebootInterval:                5 * time.Minute,
	RedfishSetBootSourceOverrideMode: true,
}

DefaultOptions returns the default provider options.

Functions

This section is empty.

Types

type Options

type Options struct {
	Name                   string
	Description            string
	OmniAPIEndpoint        string
	ImageFactoryBaseURL    string
	ImageFactoryPXEBaseURL string
	AgentModeTalosVersion  string // todo: get this from Omni. Warning: needs to be Talos 1.9 with agent code inside
	APIListenAddress       string
	APIAdvertiseAddress    string
	APIPowerMgmtStateDir   string
	DHCPProxyIfaceOrIP     string
	BootFromDiskMethod     string
	IPMIPXEBootMode        string
	MachineLabels          []string
	APIPort                int

	EnableResourceCache              bool
	AgentTestMode                    bool
	InsecureSkipTLSVerify            bool
	UseLocalBootAssets               bool
	ClearState                       bool
	WipeWithZeroes                   bool
	ExperimentalUseRedfish           bool
	RedfishSetBootSourceOverrideMode bool

	MinRebootInterval time.Duration
}

Options contains the provider options.

type Provider

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

Provider implements the bare metal infra provider.

func New

func New(options Options, logger *zap.Logger) *Provider

New creates a new Provider.

func (*Provider) Run

func (p *Provider) Run(ctx context.Context) error

Run runs the provider.

Directories

Path Synopsis
Package agent implements the metal agent service.
Package agent implements the metal agent service.
Package baremetal contains bare-metal related resources.
Package baremetal contains bare-metal related resources.
Package boot provides boot mode determination.
Package boot provides boot mode determination.
Package config serves machine configuration to the machines that request it via talos.config kernel argument.
Package config serves machine configuration to the machines that request it via talos.config kernel argument.
Package constants provides constants for the provider package.
Package constants provides constants for the provider package.
Package controllers implements COSI controllers for the bare metal provider.
Package controllers implements COSI controllers for the bare metal provider.
Package debug provides a way to check if the build is a debug build.
Package debug provides a way to check if the build is a debug build.
Package dhcp implements DHCP proxy and other DHCP related functionality.
Package dhcp implements DHCP proxy and other DHCP related functionality.
Package imagefactory provides an abstraction to the image factory for the bare metal infra provider.
Package imagefactory provides an abstraction to the image factory for the bare metal infra provider.
Package ip provides IP address related functionality.
Package ip provides IP address related functionality.
Package ipxe provides iPXE functionality.
Package ipxe provides iPXE functionality.
Package machinestatus provides functionality to poll the state of machines, i.e., power, connectivity, etc.
Package machinestatus provides functionality to poll the state of machines, i.e., power, connectivity, etc.
Package meta contains meta information about the provider.
Package meta contains meta information about the provider.
Package omni provides Omni-related functionality.
Package omni provides Omni-related functionality.
tunnel
Package tunnel provides the reverse GRPC tunnel to Omni.
Package tunnel provides the reverse GRPC tunnel to Omni.
Package power provides power management functionality for machines.
Package power provides power management functionality for machines.
api
Package api provides power management functionality using an HTTP API, e.g., the HTTP API run by 'talosctl cluster create'.
Package api provides power management functionality using an HTTP API, e.g., the HTTP API run by 'talosctl cluster create'.
ipmi
Package ipmi provides power management functionality using IPMI.
Package ipmi provides power management functionality using IPMI.
pxe
Package pxe contains types related to PXE booting.
Package pxe contains types related to PXE booting.
redfish
Package redfish provides power management functionality using Redfish.
Package redfish provides power management functionality using Redfish.
Package server implements the HTTP and GRPC servers.
Package server implements the HTTP and GRPC servers.
Package service implements the bare metal infra provider GRPC service server.
Package service implements the bare metal infra provider GRPC service server.
Package tftp implements a TFTP server.
Package tftp implements a TFTP server.

Jump to

Keyboard shortcuts

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