ironic

package
v0.2.0 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DatabaseDNSName

func DatabaseDNSName(db *metal3api.IronicDatabase, domain string) string

func GenerateSecret

func GenerateSecret(owner *metav1.ObjectMeta, name string, extraFields bool) (*corev1.Secret, error)

func RemoveDatabase

func RemoveDatabase(cctx ControllerContext, db *metal3api.IronicDatabase) error

RemoveDatabase removes the MariaDB database.

func RemoveIronic

func RemoveIronic(cctx ControllerContext, ironic *metal3api.Ironic) error

RemoveIronic removes all bits of the Ironic deployment.

func UpdateSecret

func UpdateSecret(secret *corev1.Secret, logger logr.Logger) (bool, error)

Types

type ControllerContext

type ControllerContext struct {
	Context     context.Context
	Client      client.Client
	KubeClient  kubernetes.Interface
	Scheme      *runtime.Scheme
	Logger      logr.Logger
	Domain      string
	VersionInfo VersionInfo
}

type Status

type Status struct {
	// Object is reconciled and all resources are ready.
	Ready bool
	// Fatal error, further reconciliation is not possible.
	Fatal error
	// Message explaining what is not ready.
	Message string
}

func EnsureDatabase

func EnsureDatabase(cctx ControllerContext, db *metal3api.IronicDatabase) (status Status, err error)

EnsureDatabase ensures MariaDB is running with the current configuration.

func EnsureIronic

func EnsureIronic(cctx ControllerContext, ironic *metal3api.Ironic, db *metal3api.IronicDatabase, apiSecret *corev1.Secret) (status Status, err error)

EnsureIronic deploys Ironic either as a Deployment or as a DaemonSet.

func (Status) IsError

func (status Status) IsError() bool

func (Status) IsReady

func (status Status) IsReady() bool

func (Status) String

func (status Status) String() string

type VersionInfo

type VersionInfo struct {
	InstalledVersion       string
	IronicImage            string
	MariaDBImage           string
	RamdiskDownloaderImage string
	AgentBranch            string
	AgentDownloadURL       string
	KeepalivedImage        string
}

func (VersionInfo) WithIronicDatabaseOverrides

func (versionInfo VersionInfo) WithIronicDatabaseOverrides(db *metal3api.IronicDatabase) VersionInfo

Takes VersionInfo with defaults from the configuration and applies any overrides from the IronicDatabase object.

func (VersionInfo) WithIronicOverrides

func (versionInfo VersionInfo) WithIronicOverrides(ironic *metal3api.Ironic) (VersionInfo, error)

Takes VersionInfo with defaults from the configuration and applies any overrides from the Ironic object. Explicit images from the Images object take priority. Otherwise, the defaults are taken from the hardcoded defaults for the given version.

Jump to

Keyboard shortcuts

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