Documentation
¶
Index ¶
Constants ¶
View Source
const ( LockSuccess = 0 LockBusy = 1 LockDbErr = 2 )
View Source
const ( TriggerTypeManual = "manual" TriggerTypeAuto = "auto" )
View Source
const (
ScheduleTypeCron = "cron"
)
Variables ¶
View Source
var ( STOR_TYPE_OPENSDS = "opensds-obj" STOR_TYPE_AWS_S3 = "aws-s3" STOR_TYPE_AZURE_BLOB = "azure-blob" STOR_TYPE_HW_OBS = "hw-obs" STOR_TYPE_HW_FUSIONSTORAGE = "hw-fusionstorage" STOR_TYPE_HW_FUSIONCLOUD = "hw-fusioncloud" )
View Source
var ( JOB_STATUS_PENDING = "pending" JOB_STATUS_RUNNING = "running" JOB_STATUS_SUCCEED = "succeed" JOB_STATUS_FAILED = "failed" )
View Source
var ( //ERR_NOT_USED ErrCode = iota //ERR_OK = errors.New("succeed") ERR_INNER_ERR = errors.New("inner error") ERR_DB_ERR = errors.New("database error") ERR_INVALID_POLICY_NAME = errors.New("invalid policy name") ERR_POLICY_NOT_EXIST = errors.New("policy does not exist") ERR_INVALID_CONN_NAME = errors.New("invalid connector name") ERR_CONN_NOT_EXIST = errors.New("connector does not esit") ERR_PLAN_NOT_EXIST = errors.New("plan does not exist") ERR_INVALID_PLAN_NAME = errors.New("invalid plan name") ERR_DEST_SRC_CONN_EQUAL = errors.New("source is the same as destination") ERR_DEST_CONN_NOT_EXIST = errors.New("invalid destination connector") ERR_SRC_CONN_NOT_EXIST = errors.New("invalid source connector") ERR_IS_USED_BY_PLAN = errors.New("is used by plan") //Connector or policy is used by plan ERR_RUN_PLAN_BUSY = errors.New("is scheduling") //Plan is being scheduled ERR_JOB_NOT_EXIST = errors.New("job not exist") ERR_PLAN_NOT_IN_TRIGGER = errors.New("specified plan is not in trigger") )
View Source
var ( DefaultLimit = 1000 DefaultOffset = 0 )
Functions ¶
This section is empty.
Types ¶
type Job ¶
type Job struct {
Id bson.ObjectId `json:"-" bson:"_id"` //make index on id, it cnanot be duplicate
TriggerType string `json:"triggerType" bson:"triggerType"`
Type string `json:"type" bson:"type"` //migration
PlanName string `json:"planName" bson:"planName"`
PlanId string `json:"planId" bson:"planId"`
TotalCount int64 `json:"totalCount" bson:"totalCount"`
PassedCount int64 `json:"passedCount" bson:"passedCount"`
TotalCapacity int64 `json:"totalCapacity" bson:"totalCapacity"`
PassedCapacity int64 `json:"passedCapacity" bson:"passedCapacity"`
//when the plan related connector type is OPENSDS, then location should be bucket name
SourceLocation string `json:"sourceLocation" bson:"sourceLocation"`
DestLocation string `json:"destLocation" bson:"destLocation"`
CreateTime time.Time `json:"createTime" bson:"createTime"`
StartTime time.Time `json:"startTime" bson:"startTime"`
EndTime time.Time `json:"endTime" bson:"endTime"`
RemainSource bool `json:"remainSource" bson:"remainSource"`
Status string `json:"status" bson:"status"` //queueing,
Tenant string `json:"tenant" bson:"tenant"`
Progress int64 `json:"progress" bson:"progress"`
}
type Plan ¶
type Plan struct {
Id bson.ObjectId `json:"-" bson:"_id,omitempty"`
Name string `json:"name" bson:"name"`
Description string `json:"description" bson:"description"`
//IsSched bool `json:"is_sched" bson:"is_sched"`
//SchedServer string `json:"sched_server" bson:"sched_server"`
Type string `json:"type" bson:"type"` //migration
SourceConn Connector `json:"srcConn" bson:"srcConn"`
DestConn Connector `json:"destConn" bson:"destConn"`
Filter Filter `json:"sourceDir" bson:"sourceDir"`
RemainSource bool `json:"remainSource" bson:"remainSource"`
LastSchedTime int64 `json:"lastSchedTime" bson:"lastSchedTime"`
PolicyId string `json:"policyId" bson:"policyId"`
PolicyRef mgo.DBRef `json:"policyRef" bson:"policyRef"`
PolicyName string `json:"policyName" bson:"policyName"`
PolicyEnabled bool `json:"policyEnabled" bson:"policyEnabled"`
TenantId string `json:"tenantId" bson:"tenantId"`
UserId string `json:"userId" bson:"userId"`
}
Click to show internal directories.
Click to hide internal directories.