Documentation
¶
Index ¶
- type BaseConfig
- type BasicContainerTemplate
- type CdcConfig
- type CdcModel
- type CliStepEnum
- type ConflictPolicyEnum
- type DBObjectExpress
- type DBTypeEnum
- type DBTypeSupport
- type DCLOpEnum
- type DDLOpEnum
- type DMLOpEnum
- type DxlOpConfig
- type Endpoint
- type EndpointTypeEnum
- type FieldObjectExpress
- type InitializationConfig
- type InitializationModel
- type IntOrStringMap
- type Metrics
- type MigrationObjectExpress
- type MigrationObjects
- type MigrationTask
- type MigrationTaskList
- type MigrationTaskSpec
- type MigrationTaskStatus
- type MigrationTemplate
- type MigrationTemplateList
- type MigrationTemplateSpec
- type MigrationTemplateStatus
- type Phase
- type RunTimeStatus
- type StepEnum
- type StepModel
- type TableObjectExpress
- type TaskStatus
- type TaskTypeEnum
- type UserPswSecret
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BaseConfig ¶
type BaseConfig struct {
// +optional
Resource v1.ResourceRequirements `json:"resource,omitempty"`
// +optional
Tolerations []v1.Toleration `json:"tolerations,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
Param IntOrStringMap `json:"param"`
// +optional
PersistentVolumeClaimName string `json:"persistentVolumeClaimName"`
// +optional
Metrics Metrics `json:"metrics,omitempty"`
}
type BasicContainerTemplate ¶
type CdcConfig ¶
type CdcConfig struct {
// +optional
Config BaseConfig `json:"config"`
}
type CdcModel ¶
type CdcModel struct {
Container BasicContainerTemplate `json:"container"`
// +optional
Replicas *int32 `json:"replicas,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
Param IntOrStringMap `json:"param"`
}
type CliStepEnum ¶
type CliStepEnum string
const ( CliStepGlobal CliStepEnum = "global" CliStepPreCheck CliStepEnum = "precheck" CliStepInitStruct CliStepEnum = "init-struct" CliStepInitData CliStepEnum = "init-data" CliStepCdc CliStepEnum = "cdc" )
func (CliStepEnum) String ¶
func (s CliStepEnum) String() string
type ConflictPolicyEnum ¶
type ConflictPolicyEnum string
const ( Ignore ConflictPolicyEnum = "ignore" // default in FullLoad Override ConflictPolicyEnum = "override" // default in CDC )
type DBObjectExpress ¶
type DBObjectExpress struct {
SchemaName string `json:"schemaName"`
// +optional
SchemaMappingName string `json:"schemaMappingName"`
// +optional
IsAll bool `json:"isAll"`
// +optional
TableList []TableObjectExpress `json:"tableList"`
DxlOpConfig `json:""`
}
func (*DBObjectExpress) String ¶
func (d *DBObjectExpress) String() []string
type DBTypeEnum ¶
type DBTypeEnum string
DBTypeEnum defines the MigrationTemplate CR .spec.Source.DbType or .spec.Sink.DbType +enum +kubebuilder:validation:Enum={MySQL, PostgreSQL}
const ( MigrationDBTypeMySQL DBTypeEnum = "MySQL" // default value MigrationDBTypePostgreSQL DBTypeEnum = "PostgreSQL" )
func (DBTypeEnum) String ¶
func (d DBTypeEnum) String() string
type DBTypeSupport ¶
type DBTypeSupport struct {
DBType DBTypeEnum `json:"dbType"`
DBVersion string `json:"dbVersion"`
}
type DCLOpEnum ¶
type DCLOpEnum string
DCLOpEnum defines the MigrationTask CR .spec.migrationObj +enum +kubebuilder:validation:Enum={all,none}
type DDLOpEnum ¶
type DDLOpEnum string
DDLOpEnum defines the MigrationTask CR .spec.migrationObj +enum +kubebuilder:validation:Enum={all,none}
type DMLOpEnum ¶
type DMLOpEnum string
DMLOpEnum defines the MigrationTask CR .spec.migrationObj +enum +kubebuilder:validation:Enum={all,none,insert,update,delete}
type DxlOpConfig ¶
type DxlOpConfig struct {
// +optional
DmlOp []DMLOpEnum `json:"dmlOp"`
// +optional
DdlOp []DDLOpEnum `json:"ddlOp"`
// +optional
DclOp []DCLOpEnum `json:"dclOp"`
}
func (*DxlOpConfig) IsEmpty ¶
func (op *DxlOpConfig) IsEmpty() bool
type Endpoint ¶
type Endpoint struct {
// +optional
EndpointType EndpointTypeEnum `json:"endpointType,omitempty"`
Address string `json:"address"`
// +optional
DatabaseName string `json:"databaseName,omitempty"`
// +optional
UserName string `json:"userName"`
// +optional
Password string `json:"password"`
// +optional
Secret UserPswSecret `json:"secret"`
}
type EndpointTypeEnum ¶
type EndpointTypeEnum string
EndpointTypeEnum defines the MigrationTask CR .spec.source.endpointType and .spec.sink.endpointType +enum +kubebuilder:validation:Enum={address}
const (
AddressDirectConnect EndpointTypeEnum = "address" // default value
)
type FieldObjectExpress ¶
type InitializationConfig ¶
type InitializationConfig struct {
// +optional
Steps []StepEnum `json:"steps,omitempty"`
// +optional
Config map[StepEnum]BaseConfig `json:"config,omitempty"`
}
type InitializationModel ¶
type IntOrStringMap ¶
type IntOrStringMap map[string]interface{}
func (*IntOrStringMap) DeepCopy ¶
func (in *IntOrStringMap) DeepCopy() *IntOrStringMap
func (*IntOrStringMap) DeepCopyInto ¶
func (in *IntOrStringMap) DeepCopyInto(out *IntOrStringMap)
type MigrationObjectExpress ¶
type MigrationObjectExpress struct {
WhiteList []DBObjectExpress `json:"whiteList"`
// +optional
BlackList []DBObjectExpress `json:"blackList"`
}
func (*MigrationObjectExpress) String ¶
func (m *MigrationObjectExpress) String(isWhite bool) string
type MigrationObjects ¶
type MigrationObjects struct {
Task *MigrationTask
Template *MigrationTemplate
Jobs *batchv1.JobList
Pods *v1.PodList
StatefulSets *appv1.StatefulSetList
}
type MigrationTask ¶
type MigrationTask struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec MigrationTaskSpec `json:"spec,omitempty"`
Status MigrationTaskStatus `json:"status,omitempty"`
}
MigrationTask is the Schema for the migrationTasks API
type MigrationTaskList ¶
type MigrationTaskList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []MigrationTask `json:"items"`
}
MigrationTaskList contains a list of MigrationTask
type MigrationTaskSpec ¶
type MigrationTaskSpec struct {
TaskType TaskTypeEnum `json:"taskType,omitempty"`
Template string `json:"template"`
SourceEndpoint Endpoint `json:"sourceEndpoint,omitempty"`
SinkEndpoint Endpoint `json:"sinkEndpoint,omitempty"`
// +optional
Cdc CdcConfig `json:"cdc,omitempty"`
// +optional
Initialization InitializationConfig `json:"initialization,omitempty"`
MigrationObj MigrationObjectExpress `json:"migrationObj,omitempty"`
// +optional
IsForceDelete bool `json:"isForceDelete,omitempty"`
// +optional
GlobalTolerations []v1.Toleration `json:"globalTolerations,omitempty"`
// +optional
GlobalResources v1.ResourceRequirements `json:"globalResources,omitempty"`
}
MigrationTaskSpec defines the desired state of MigrationTask
type MigrationTaskStatus ¶
type MigrationTaskStatus struct {
// +optional
TaskStatus TaskStatus `json:"taskStatus"`
// +optional
StartTime *metav1.Time `json:"startTime"`
// +optional
FinishTime *metav1.Time `json:"finishTime"`
// +optional
Cdc RunTimeStatus `json:"cdc"`
// +optional
Initialization RunTimeStatus `json:"initialization"`
}
MigrationTaskStatus defines the observed state of MigrationTask
type MigrationTemplate ¶
type MigrationTemplate struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec MigrationTemplateSpec `json:"spec,omitempty"`
Status MigrationTemplateStatus `json:"status,omitempty"`
}
MigrationTemplate is the Schema for the migrationtemplates API
type MigrationTemplateList ¶
type MigrationTemplateList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []MigrationTemplate `json:"items"`
}
MigrationTemplateList contains a list of MigrationTemplate
type MigrationTemplateSpec ¶
type MigrationTemplateSpec struct {
TaskType []TaskTypeEnum `json:"taskType,omitempty"`
Source DBTypeSupport `json:"source"`
Sink DBTypeSupport `json:"target"`
Initialization InitializationModel `json:"initialization,omitempty"`
Cdc CdcModel `json:"cdc,omitempty"`
// +optional
Description string `json:"description,omitempty"`
// +optional
Decorator string `json:"decorator,omitempty"`
}
MigrationTemplateSpec defines the desired state of MigrationTemplate
type MigrationTemplateStatus ¶
type MigrationTemplateStatus struct {
Phase Phase `json:"phase,omitempty"`
}
MigrationTemplateStatus defines the observed state of MigrationTemplate
type Phase ¶
type Phase string
Phase defines the MigrationTemplate CR .status.phase +enum +kubebuilder:validation:Enum={Available,Unavailable}
const ( AvailablePhase Phase = "Available" )
type RunTimeStatus ¶
type RunTimeStatus struct {
// +optional
StartTime *metav1.Time `json:"startTime"`
// +optional
FinishTime *metav1.Time `json:"finishTime"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
RunTimeParam IntOrStringMap `json:"runTimeParam,omitempty"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
Metrics IntOrStringMap `json:"metrics,omitempty"`
// +optional
FailedReason string `json:"failedReason,omitempty"`
}
type StepEnum ¶
type StepEnum string
StepEnum defines the MigrationTask CR .spec.steps +enum +kubebuilder:validation:Enum={preCheck,initStruct,initData,initStructLater}
func (StepEnum) LowerCaseString ¶
type StepModel ¶
type StepModel struct {
Step StepEnum `json:"step"`
Container BasicContainerTemplate `json:"container"`
// +optional
// +kubebuilder:pruning:PreserveUnknownFields
// +kubebuilder:validation:Schemaless
Param IntOrStringMap `json:"param"`
}
type TableObjectExpress ¶
type TableObjectExpress struct {
TableName string `json:"tableName"`
// +optional
TableMappingName string `json:"tableMappingName"`
// +optional
IsAll bool `json:"isAll"`
// +optional
FieldList []FieldObjectExpress `json:"fieldList"`
DxlOpConfig `json:""`
}
type TaskStatus ¶
type TaskStatus string
TaskStatus defines the MigrationTask CR .status.taskStatus +enum +kubebuilder:validation:Enum={Prepare,InitPrepared,Init,InitFinished,Running,Cached,Pause,Done}
const ( PrepareStatus TaskStatus = "Prepare" InitPrepared TaskStatus = "InitPrepared" InitStatus TaskStatus = "Init" InitFinished TaskStatus = "InitFinished" RunningStatus TaskStatus = "Running" CachedStatus TaskStatus = "Cached" PauseStatus TaskStatus = "Pause" DoneStatus TaskStatus = "Done" )
type TaskTypeEnum ¶
type TaskTypeEnum string
TaskTypeEnum defines the MigrationTask CR .spec.taskType +enum +kubebuilder:validation:Enum={initialization,cdc,initialization-and-cdc,initialization-and-twoway-cdc}
const ( Initialization TaskTypeEnum = "initialization" CDC TaskTypeEnum = "cdc" InitializationAndCdc TaskTypeEnum = "initialization-and-cdc" // default value )