replication

package
v0.0.0-...-e417875 Latest Latest
Warning

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

Go to latest
Published: Dec 17, 2024 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

Ctl is a global replication controller instance

Functions

This section is empty.

Types

type Controller

type Controller interface {
	// PolicyCount returns the total count of policies according to the query
	PolicyCount(ctx context.Context, query *q.Query) (count int64, err error)
	// ListPolicies lists the policies according to the query
	ListPolicies(ctx context.Context, query *q.Query) (policies []*replicationmodel.Policy, err error)
	// GetPolicy gets the specific policy
	GetPolicy(ctx context.Context, id int64) (policy *replicationmodel.Policy, err error)
	// CreatePolicy creates a policy
	CreatePolicy(ctx context.Context, policy *replicationmodel.Policy) (id int64, err error)
	// UpdatePolicy updates the specific policy
	UpdatePolicy(ctx context.Context, policy *replicationmodel.Policy, props ...string) (err error)
	// DeletePolicy deletes the specific policy
	DeletePolicy(ctx context.Context, id int64) (err error)
	// Start the replication according to the policy
	Start(ctx context.Context, policy *replicationmodel.Policy, resource *model.Resource, trigger string) (executionID int64, err error)
	// Stop the replication specified by the execution ID
	Stop(ctx context.Context, executionID int64) (err error)
	// ExecutionCount returns the total count of executions according to the query
	ExecutionCount(ctx context.Context, query *q.Query) (count int64, err error)
	// ListExecutions lists the executions according to the query
	ListExecutions(ctx context.Context, query *q.Query) (executions []*Execution, err error)
	// GetExecution gets the specific execution
	GetExecution(ctx context.Context, executionID int64) (execution *Execution, err error)
	// TaskCount returns the total count of tasks according to the query
	TaskCount(ctx context.Context, query *q.Query) (count int64, err error)
	// ListTasks lists the tasks according to the query
	ListTasks(ctx context.Context, query *q.Query) (tasks []*Task, err error)
	// GetTask gets the specific task
	GetTask(ctx context.Context, taskID int64) (task *Task, err error)
	// GetTaskLog gets the log of the specific task
	GetTaskLog(ctx context.Context, taskID int64) (log []byte, err error)
}

Controller defines the operations related with replication

func NewController

func NewController() Controller

NewController creates a new instance of the replication controller

type Execution

type Execution struct {
	ID            int64
	PolicyID      int64
	Status        string
	StatusMessage string
	Metrics       *dao.Metrics
	Trigger       string
	Operator      string
	StartTime     time.Time
	EndTime       time.Time
}

Execution model for replication

type Task

type Task struct {
	ID                  int64
	ExecutionID         int64
	Status              string
	StatusMessage       string
	RunCount            int32
	ResourceType        string
	SourceResource      string
	DestinationResource string
	References          string
	Operation           string
	JobID               string
	CreationTime        time.Time
	StartTime           time.Time
	UpdateTime          time.Time
	EndTime             time.Time
}

Task model for replication

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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