controllers

package
v0.0.0-...-27a102d Latest Latest
Warning

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

Go to latest
Published: Aug 31, 2023 License: Apache-2.0 Imports: 35 Imported by: 0

Documentation

Overview

Package controllers ...

Package controllers ...

Package controllers ...

Package controllers ...

Package controllers ...

Package controllers ...

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PollDetails

func PollDetails(mgr manager.Manager)

PollDetails is used to get data a some time interval

func ProcessOdimEvent

func ProcessOdimEvent(ctx context.Context, client client.Client,
	Scheme *runtime.Scheme, eventName string, event OdimEvent)

ProcessOdimEvent receives the event from ODIM, validate it and trigger appropriate reconciler to sync the changes to server operator

Types

type Link struct {
	Oid string `json:"@odata.id"`
}

Link property shall contain a link to the resource or object that originated the condition that caused the event to be generated

type OdimEvent

type OdimEvent struct {
	EventType         string `json:"EventType"`
	EventID           string `json:"EventId"`
	Severity          string `json:"Severity"`
	EventTimestamp    string `json:"EventTimestamp"`
	Message           string `json:"Message"`
	MessageID         string `json:"MessageId"`
	OriginOfCondition *Link  `json:"OriginOfCondition,omitempty"`
}

OdimEvent contains the details of the event subscribed from PMB

type OdimEventMessage

type OdimEventMessage struct {
	OdataType string      `json:"@odata.type"`
	Name      string      `json:"Name"`
	Context   string      `json:"@odata.context"`
	Events    []OdimEvent `json:"Events"`
}

OdimEventMessage contains information of Events and message details including arguments

type PollingReconciler

type PollingReconciler struct {
	client.Client
	Scheme *runtime.Scheme
	// contains filtered or unexported fields
}

PollingReconciler defines a struct of object and interfaces

func GetPollingReconciler

func GetPollingReconciler(ctx context.Context, client client.Client, Scheme *runtime.Scheme) (*PollingReconciler, error)

func (PollingReconciler) AccommodateBMCInfo

func (r PollingReconciler) AccommodateBMCInfo(ctx context.Context, restClient restclient.RestClientInterface,
	urlpath string, bmcState common.BmcState)

AccommodateBMCInfo will accommodate information for a single BMC

func (PollingReconciler) AccommodateBiosDetails

func (r PollingReconciler) AccommodateBiosDetails(ctx context.Context, restClient restclient.RestClientInterface, mapOfSystems map[string]bool)

AccommodateBiosDetails functions accommodates bios setting in object as per the changes in ODIM

func (PollingReconciler) AccommodateBiosInfo

func (r PollingReconciler) AccommodateBiosInfo(ctx context.Context, biosUtil bios.BiosInterface, systemID string)

func (PollingReconciler) AccommodateEventSubscriptionDetails

func (r PollingReconciler) AccommodateEventSubscriptionDetails(ctx context.Context, restClient restclient.RestClientInterface, defaultEventsubscriptionDestination string)

AccommodateEventSubscriptionDetails will accomodate the newly created event subscriptions on ODIM into BMC operator

func (PollingReconciler) AccommodatePollingDetails

func (r PollingReconciler) AccommodatePollingDetails(ctx context.Context, restClient restclient.RestClientInterface, mapOfBmc map[string]common.BmcState)

AccommodatePollingDetails will get bmc details and update information accordingly

func (*PollingReconciler) AccommodateState

func (pr *PollingReconciler) AccommodateState()

func (PollingReconciler) AccommodateVolumeDetails

func (pr PollingReconciler) AccommodateVolumeDetails()

-------------------------------ACCOMMODATE/REVERT GO FUNCS------------------------------------------------- AccommodateVolumeDetails will accommodate volumes created/deleted as part of Restclient ODIM's state is given priority over Operator volumeObjectsForStorageControllerInOperator : Existing volume objects in operator volumeObjectsForStorageControllerFromODIM : all volume objects present in ODIM

func (PollingReconciler) AddEventSubscription

func (r PollingReconciler) AddEventSubscription(subscriptionID string)

AddEventSubscription sends create request to ODIM for creating event subscription

func (PollingReconciler) CheckAndAccommodateBoot

func (r PollingReconciler) CheckAndAccommodateBoot(ctx context.Context, client restclient.RestClientInterface)

CheckAndAccommodateBoot is used to check, and update the boot object as per the changes made on bmc

func (PollingReconciler) CheckAndAccomodateFirmware

func (r PollingReconciler) CheckAndAccomodateFirmware(ctx context.Context, client restclient.RestClientInterface)

CheckAndAccomodateFirmware is used to check, update firmware version in bmc & firmware object

func (PollingReconciler) CheckAndRevertBios

func (r PollingReconciler) CheckAndRevertBios(ctx context.Context, bmc infraiov1.Bmc, restClient restclient.RestClientInterface)

func (PollingReconciler) CheckAndRevertBoot

func (r PollingReconciler) CheckAndRevertBoot(ctx context.Context, bmc v1.Bmc, client restclient.RestClientInterface)

CheckAndRevertBoot is used to check and revert boot details as per the details present in boot object

func (PollingReconciler) CheckAndRevertFirmwareVersion

func (r PollingReconciler) CheckAndRevertFirmwareVersion(ctx context.Context, bmc v1.Bmc, client restclient.RestClientInterface)

CheckAndRevertFirmwareVersion function verify the firmwareversion and update it as per the version present in object

func (PollingReconciler) CreateEventsubscriptionObject

func (r PollingReconciler) CreateEventsubscriptionObject(ctx context.Context, eventsubscriptionResp map[string]interface{}, ns string, eventsubUtils eventsubscription.EventSubscriptionInterface) bool

CreateEventsubscriptionObject will create a new event subscription object in BMC operator

func (PollingReconciler) DeleteEventsubscriptionFromODIM

func (r PollingReconciler) DeleteEventsubscriptionFromODIM(ctx context.Context, subscriptionID string, restClient restclient.RestClientInterface) bool

DeleteEventsubscriptionFromODIM will delete the event subscription from ODIM

func (PollingReconciler) RemoveSubscriptions

func (r PollingReconciler) RemoveSubscriptions(mapOfEventSubscriptions map[string]bool)

RemoveSubscriptions deletes eventsubscription object which are not present on ODIM from operator

func (PollingReconciler) RevertBiosDetails

func (r PollingReconciler) RevertBiosDetails(ctx context.Context, restClient restclient.RestClientInterface)

RevertBiosDetails function reverts back bios setting as per the object present in operator

func (PollingReconciler) RevertEventSubscriptionDetails

func (r PollingReconciler) RevertEventSubscriptionDetails(ctx context.Context, restClient restclient.RestClientInterface, defaultEventsubscriptionDestination string)

RevertEventSubscriptionDetails will revert the event subscriptions on ODIM which does not exist in BMC operator

func (PollingReconciler) RevertPollingDetails

func (r PollingReconciler) RevertPollingDetails(ctx context.Context, restClient restclient.RestClientInterface, mapOfSystems map[string]bool)

func (*PollingReconciler) RevertResourceAdded

func (r *PollingReconciler) RevertResourceAdded(ctx context.Context, systemUrl string)

RevertResourceAdded is called when event resource removed is arrived

func (*PollingReconciler) RevertResourceRemoved

func (r *PollingReconciler) RevertResourceRemoved(ctx context.Context, systemUrl string)

RevertResourceRemoved is called when event resource removed is arrived

func (*PollingReconciler) RevertState

func (pr *PollingReconciler) RevertState()

func (PollingReconciler) RevertVolumeDetails

func (pr PollingReconciler) RevertVolumeDetails()

AccommodateVolumeDetails will accommodate volumes created/deleted as part of Restclient Operator's state is given priority over ODIM volumeObjectsForStorageControllerInOperator : Existing volume objects in operator volumeObjectsForStorageControllerFromODIM : all volume objects present in ODIM

Jump to

Keyboard shortcuts

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