Versions in this module Expand all Collapse all v1 v1.5.1 May 14, 2026 v1.5.0 May 13, 2026 Changes in this version + const ActionBringUpControl + const ActionFirmwareControl + const ActionGetPowerStatus + const ActionInjectExpectation + const ActionPowerControl + const ActionSleep + const ActionVerifyFirmwareConsistency + const ActionVerifyFirmwareVersion + const ActionVerifyPowerStatus + const ActionVerifyReachability + const ActionWaitBringUp + const CurrentRuleDefinitionVersion + const ParamComponentTypes + const ParamDuration + const ParamExpectedStatus + const ParamOperation + const ParamPollInterval + const ParamPollTimeout + const ParamRequireAll + const SequenceBringUp + const SequenceColdReset + const SequenceDowngrade + const SequenceForcePowerOff + const SequenceForcePowerOn + const SequenceForceRestart + const SequenceIngest + const SequencePowerOff + const SequencePowerOn + const SequenceRestart + const SequenceRollback + const SequenceUpgrade + const SequenceWarmReset + var RequiredOperations = map[common.TaskType][]string + var ValidOperations = map[common.TaskType][]string + func GetSequenceNameForOperation(operationType common.TaskType, operation any) string + func IsValidOperation(opType common.TaskType, operation string) bool + func MarshalRuleDefinition(rd RuleDefinition) (json.RawMessage, error) + func ParseDuration(s string, name string) (time.Duration, error) + func ValidateRequiredOperations(opType common.TaskType, rules map[string]*OperationRule) error + func ValidateStageSequence(steps []SequenceStep) error + type ActionConfig struct + Name string + Parameters map[string]any + PollInterval time.Duration + Timeout time.Duration + func (ac *ActionConfig) UnmarshalJSON(data []byte) error + func (ac *ActionConfig) Validate() error + func (ac ActionConfig) MarshalJSON() ([]byte, error) + type OperationRule struct + CreatedAt time.Time + Description string + ID uuid.UUID + IsDefault bool + Name string + OperationCode string + OperationType common.TaskType + RuleDefinition RuleDefinition + UpdatedAt time.Time + func (rule *OperationRule) SuggestOptimizations() []string + func (rule *OperationRule) Validate() error + type RackRuleAssociation struct + CreatedAt time.Time + OperationCode string + OperationType common.TaskType + RackID uuid.UUID + RuleID uuid.UUID + UpdatedAt time.Time + type Resolver struct + func NewResolver(store RuleStore) *Resolver + func (r *Resolver) ResolveRule(ctx context.Context, operationType common.TaskType, operation string, ...) (*OperationRule, error) + type RetryPolicy struct + BackoffCoefficient float64 + InitialInterval time.Duration + MaxAttempts int + MaxInterval time.Duration + func (rp *RetryPolicy) UnmarshalJSON(data []byte) error + func (rp *RetryPolicy) Validate() error + func (rp RetryPolicy) MarshalJSON() ([]byte, error) + type RuleDefinition struct + Steps []SequenceStep + Version string + func UnmarshalRuleDefinition(data json.RawMessage) (*RuleDefinition, error) + func (rd *RuleDefinition) CalculateWorkflowTimeout() time.Duration + func (rd *RuleDefinition) GetMaxStage() int + func (rd *RuleDefinition) GroupStepsByStage() map[int][]SequenceStep + func (rd *RuleDefinition) Validate() error + type RuleLoader interface + Load func() (map[common.TaskType]map[string]*OperationRule, error) + func NewYAMLRuleLoader(path string) (RuleLoader, error) + type RuleStore interface + GetRule func(ctx context.Context, id uuid.UUID) (*OperationRule, error) + GetRuleByOperationAndRack func(ctx context.Context, opType common.TaskType, operation string, ...) (*OperationRule, error) + type SequenceStep struct + ComponentType devicetypes.ComponentType + DelayAfter time.Duration + MainOperation ActionConfig + MaxParallel int + PostOperation []ActionConfig + PreOperation []ActionConfig + RetryPolicy *RetryPolicy + Stage int + Timeout time.Duration + func (s *SequenceStep) UnmarshalJSON(data []byte) error + func (s SequenceStep) MarshalJSON() ([]byte, error) + func (step *SequenceStep) DoMainOperation() (bool, ActionConfig) + func (step *SequenceStep) DoPostOperations() (bool, []ActionConfig) + func (step *SequenceStep) DoPreOperations() (bool, []ActionConfig) + func (step *SequenceStep) Validate() error + type Stage struct + Number int + Steps []SequenceStep + type StageIterator struct + func NewStageIterator(ruleDef *RuleDefinition) *StageIterator + func (si *StageIterator) HasNext() bool + func (si *StageIterator) Next() *Stage + func (si *StageIterator) Reset() + type YAMLActionConfig struct + Name string + Parameters map[string]any + PollInterval string + Timeout string + type YAMLConfig struct + Rules []YAMLRule + Version string + type YAMLRetryPolicy struct + BackoffCoefficient float64 + InitialInterval string + MaxAttempts int + MaxInterval string + type YAMLRule struct + Description string + Name string + Operation string + OperationType string + Steps []YAMLStep + type YAMLRuleLoader struct + func (l *YAMLRuleLoader) Load() (map[common.TaskType]map[string]*OperationRule, error) + type YAMLStep struct + ComponentType string + DelayAfter string + MainOperation YAMLActionConfig + MaxParallel int + PostOperation []YAMLActionConfig + PreOperation []YAMLActionConfig + Retry *YAMLRetryPolicy + Stage int + Timeout string