Documentation
¶
Index ¶
- type ManageInstance
- func (mi ManageInstance) CreateInstanceViaSiteAgent(ctx context.Context, instanceID uuid.UUID) error
- func (mi ManageInstance) DeleteInstanceViaSiteAgent(ctx context.Context, instanceID uuid.UUID) error
- func (mi ManageInstance) OnCreateInstanceError(ctx context.Context, instanceID uuid.UUID, errMessage *string) error
- func (mi ManageInstance) RebootInstanceViaSiteAgent(ctx context.Context, instanceID uuid.UUID, rebootWithCustomIpxe bool, ...) error
- func (mi ManageInstance) UpdateInstanceInDB(ctx context.Context, transactionID *cwsv1.TransactionID, ...) error
- func (mi ManageInstance) UpdateInstanceMetadata(ctx context.Context, siteID uuid.UUID, tc client.Client, instanceID uuid.UUID, ...) error
- func (mi ManageInstance) UpdateInstancesInDB(ctx context.Context, siteID uuid.UUID, ...) ([]cwm.InventoryObjectLifecycleEvent, error)
- func (mi ManageInstance) UpdateRebootInstanceInDB(ctx context.Context, transactionID *cwsv1.TransactionID, ...) error
- type ManageInstanceLifecycleMetrics
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ManageInstance ¶
type ManageInstance struct {
// contains filtered or unexported fields
}
ManageInstance is an activity wrapper for managing Instance lifecycle that allows injecting DB access
func NewManageInstance ¶
func NewManageInstance(dbSession *cdb.Session, siteClientPool *sc.ClientPool, tc client.Client, cfg *config.Config) ManageInstance
NewManageInstance returns a new ManageInstance activity
func (ManageInstance) CreateInstanceViaSiteAgent ¶
func (mi ManageInstance) CreateInstanceViaSiteAgent(ctx context.Context, instanceID uuid.UUID) error
CreateInstanceViaSiteAgent is a Temporal activity that create an Instance in Site Controller via Site agent
func (ManageInstance) DeleteInstanceViaSiteAgent ¶
func (mi ManageInstance) DeleteInstanceViaSiteAgent(ctx context.Context, instanceID uuid.UUID) error
DeleteInstanceViaSiteAgent is a Temporal activity that delete an Instance in Site Controller via Site agent
func (ManageInstance) OnCreateInstanceError ¶
func (mi ManageInstance) OnCreateInstanceError(ctx context.Context, instanceID uuid.UUID, errMessage *string) error
OnCreateInstanceError is a Temporal activity that is invoked when the activity CreateInstanceViaSiteAgent has errored it sets the instance status to error, and releases the machine associated with it
func (ManageInstance) RebootInstanceViaSiteAgent ¶
func (mi ManageInstance) RebootInstanceViaSiteAgent(ctx context.Context, instanceID uuid.UUID, rebootWithCustomIpxe bool, applyUpdatesOnReboot bool) error
RebootInstanceViaSiteAgent is a Temporal activity that reboot a machine which is associated with Instance in Site Controller via Site agent
func (ManageInstance) UpdateInstanceInDB ¶
func (mi ManageInstance) UpdateInstanceInDB(ctx context.Context, transactionID *cwsv1.TransactionID, instanceInfo *cwsv1.InstanceInfo) error
UpdateInstanceInDB is a temporal activity which updates the Instance in the DB from data pushed by Site Controller
func (ManageInstance) UpdateInstanceMetadata ¶
func (mi ManageInstance) UpdateInstanceMetadata(ctx context.Context, siteID uuid.UUID, tc client.Client, instanceID uuid.UUID, controllerInstance *cwsv1.Instance) error
UpdateInstanceMetadata is a Temporal activity that will trigger an update of an instance's metadata if they are found out of sync with the cloud.
func (ManageInstance) UpdateInstancesInDB ¶
func (mi ManageInstance) UpdateInstancesInDB(ctx context.Context, siteID uuid.UUID, instanceInventory *cwsv1.InstanceInventory) ([]cwm.InventoryObjectLifecycleEvent, error)
UpdateInstancesInDB is a Temporal activity that takes a collection of Instance data pushed by Site Agent and updates the DB
func (ManageInstance) UpdateRebootInstanceInDB ¶
func (mi ManageInstance) UpdateRebootInstanceInDB(ctx context.Context, transactionID *cwsv1.TransactionID, instanceRebootInfo *cwsv1.InstanceRebootInfo) error
UpdateRebootInstanceInDB is a temporal activity which updates the reboot Instance status in the DB from data pushed by Site Controller
type ManageInstanceLifecycleMetrics ¶
type ManageInstanceLifecycleMetrics struct {
// contains filtered or unexported fields
}
ManageInstanceLifecycleMetrics is an activity wrapper for managing Instance lifecycle metrics
func NewManageInstanceLifecycleMetrics ¶
func NewManageInstanceLifecycleMetrics(reg prometheus.Registerer, dbSession *cdb.Session) ManageInstanceLifecycleMetrics
NewManageInstanceLifecycleMetrics returns a new ManageInstanceLifecycleMetrics activity
func (ManageInstanceLifecycleMetrics) RecordInstanceStatusTransitionMetrics ¶
func (milm ManageInstanceLifecycleMetrics) RecordInstanceStatusTransitionMetrics(ctx context.Context, siteID uuid.UUID, instanceLifecycleEvents []cwm.InventoryObjectLifecycleEvent) error
RecordInstanceStatusTransitionMetrics is a Temporal activity that records duration of important status transitions for Instances