Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Event ¶
type Event struct { // Name of this event. Name string `gorm:"type:varchar(128);column:name" json:"name"` // Kind of object involved by event. Kind string `gorm:"type:varchar(32);column:kind" json:"kind"` // Type of this event. Type string `gorm:"type:varchar(32);column:type" json:"type"` // Involved Object Namespace. ObjNamespace string `gorm:"type:varchar(64);column:obj_namespace" json:"obj_namespace"` // Involved Object Name. ObjName string `gorm:"type:varchar(64);column:obj_name" json:"obj_name"` // Involved Object UID. ObjUID string `gorm:"type:varchar(64);column:obj_uid" json:"obj_uid"` // Reason(short, machine understandable string) of this event. Reason string `gorm:"type:varchar(128);column:reason" json:"reason"` // Message(long, human understandable description) of this event. Message string `gorm:"type:text;column:message" json:"message"` // Number of times this event has occurred. Count int32 `gorm:"type:integer(32);column:reason" json:"count"` // Region indicates the physical region(IDC) this job located in. Region *string `gorm:"type:varchar(64);column:region" json:"region,omitempty"` // The time at which the event was first recorded. FirstTimestamp time.Time `gorm:"type:datetime;column:first_timestamp" json:"first_timestamp"` // The time at which the most recent occurrence of this event was recorded. LastTimestamp time.Time `gorm:"type:datetime;column:last_timestamp" json:"last_timestamp"` }
Event contains fields collected from original Event object, they will be persisted by storage backend.
type Job ¶
type Job struct { // Primary ID auto incremented by underlying database. ID uint64 `gorm:"column:id;not null;AUTO_INCREMENT;primary_key" json:"id"` // Metadata we concerned aggregated from job object. Name string `gorm:"type:varchar(128);column:name" json:"name"` Namespace string `gorm:"type:varchar(128);column:namespace" json:"namespace"` JobID string `gorm:"type:varchar(64);column:job_id" json:"job_id"` Version string `gorm:"type:varchar(32);column:version" json:"version"` Status apiv1.JobConditionType `gorm:"type:varchar(32);column:status" json:"status"` // Kind of this job: TFJob, PytorchJob... Kind string `gorm:"type:varchar(32);column:kind" json:"kind"` // Resources this job requested, including replicas and resources of each type, // it's formatted as follows: // { // "PS": { // "replicas": 1, // "resources": {"cpu":2, "memory": "10Gi"} // }, // "Worker": { // "replicas": 2, // "resources": {"cpu":2, "memory": "10Gi"} // } // } Resources string `gorm:"type:text;column:resources" json:"resources"` // DeployRegion indicates the physical region(IDC) this job located in, // reserved for jobs running in across-region-clusters. DeployRegion *string `gorm:"type:varchar(64);column:deploy_region" json:"deploy_region,omitempty"` // Fields reserved for multi-tenancy job management scenarios, indicating // which tenant this job belongs to and who's the owner(user). Tenant *string `gorm:"type:varchar(255);column:tenant" json:"tenant,omitempty"` Owner *string `gorm:"type:varchar(255);column:owner" json:"owner,omitempty"` // Deleted indicates that whether this job has been deleted or not. Deleted *int `gorm:"type:tinyint(4);column:deleted" json:"deleted,omitempty"` // IsInEtcd indicates that whether record of this job has been removed from etcd. // Deleted job could stay up in etcd due to different runtime policies. IsInEtcd *int `gorm:"type:tinyint(4);column:is_in_etcd" json:"is_in_etcd,omitempty"` // Optional remark text reserved. Remark *string `gorm:"type:text;column:remark" json:"remark,omitempty"` // Timestamps of different job phases and status transitions. GmtCreated time.Time `gorm:"type:datetime;column:gmt_created" json:"gmt_created"` GmtModified time.Time `gorm:"type:datetime;column:gmt_modified" json:"gmt_modified"` GmtJobRunning *time.Time `gorm:"type:datetime;column:gmt_job_running" json:"gmt_job_running,omitempty"` GmtJobFinished *time.Time `gorm:"type:datetime;column:gmt_job_finished" json:"gmt_job_finished,omitempty"` }
Job contains fields collected from original Job object and extra info that we concerned about, they will be persisted by storage backend.
func (*Job) BeforeCreate ¶
BeforeUpdate update gmt_modified timestamp.
func (*Job) BeforeUpdate ¶
BeforeUpdate update gmt_modified timestamp.
type Notebook ¶ added in v0.4.2
type Notebook struct { // Primary ID auto incremented by underlying database. ID uint64 `gorm:"column:id;not null;AUTO_INCREMENT;primary_key" json:"id"` // Metadata we concerned aggregated from notebook object. Name string `gorm:"type:varchar(128);column:name" json:"name"` Namespace string `gorm:"type:varchar(128);column:namespace" json:"namespace"` NotebookID string `gorm:"type:varchar(64);column:notebook_id" json:"notebook_id"` Version string `gorm:"type:varchar(32);column:version" json:"version"` Status string `gorm:"type:varchar(32);column:status" json:"status"` Url string `gorm:"type:text;column:url" json:"url,omitempty"` Resources string `gorm:"type:text;column:resources" json:"resources"` // DeployRegion indicates the physical region(IDC) this notebook located in, // reserved for notebooks running in across-region-clusters. DeployRegion *string `gorm:"type:varchar(64);column:deploy_region" json:"deploy_region,omitempty"` // Fields reserved for multi-tenancy management scenarios, indicating // which tenant this notebook belongs to and who's the owner(user). Tenant *string `gorm:"type:varchar(255);column:tenant" json:"tenant,omitempty"` Owner *string `gorm:"type:varchar(255);column:owner" json:"owner,omitempty"` // Deleted indicates that whether this notebook has been deleted or not. Deleted *int `gorm:"type:tinyint(4);column:deleted" json:"deleted,omitempty"` // IsInEtcd indicates that whether record of this notebook has been removed from etcd. // Deleted notebook could stay up in etcd due to different runtime policies. IsInEtcd *int `gorm:"type:tinyint(4);column:is_in_etcd" json:"is_in_etcd,omitempty"` // Optional remark text reserved. Remark *string `gorm:"type:text;column:remark" json:"remark,omitempty"` // Timestamps of different notebook phases and status transitions. GmtCreated time.Time `gorm:"type:datetime;column:gmt_created" json:"gmt_created"` GmtModified time.Time `gorm:"type:datetime;column:gmt_modified" json:"gmt_modified"` GmtRunning *time.Time `gorm:"type:datetime;column:gmt_running" json:"gmt_running,omitempty"` GmtTerminated *time.Time `gorm:"type:datetime;column:gmt_finished" json:"gmt_terminated,omitempty"` }
Notebook contains fields collected from original Notebook object and extra info that we concerned about, they will be persisted by storage backend.
type Pod ¶
type Pod struct { // Primary ID auto incremented by underlying database. ID uint64 `gorm:"column:id;not null;AUTO_INCREMENT;primary_key" json:"id"` // Metadata we concerned aggregated from pod object. Name string `gorm:"type:varchar(128);column:name" json:"name"` Namespace string `gorm:"type:varchar(128);column:namespace" json:"namespace"` PodID string `gorm:"type:varchar(64);column:pod_id" json:"pod_id"` Version string `gorm:"type:varchar(32);column:version" json:"version"` Status v1.PodPhase `gorm:"type:varchar(32);column:status" json:"status"` Image string `gorm:"type:varchar(255);column:image" json:"image"` // Job ID of this pod controlled by. JobID string `gorm:"type:varchar(64);column:job_id" json:"job_id"` // Replica type of this pod figured in training job. ReplicaType string `gorm:"type:varchar(32);column:replica_type" json:"replica_type"` // Resources this pod requested, marshaled from a ResourceRequirements object. Resources string `gorm:"type:varchar(1024);column:resources" json:"resources"` // IP information allocated for this pod. HostIP *string `gorm:"type:varchar(64);column:host_ip" json:"host_ip,omitempty"` PodIP *string `gorm:"type:varchar(64);column:pod_ip" json:"pod_ip,omitempty"` // DeployRegion indicates the physical region(IDC) this pod located in, DeployRegion *string `gorm:"type:varchar(64);column:deploy_region" json:"deploy_region,omitempty"` // Deleted indicates that whether this pod has been deleted or not. Deleted *int `gorm:"type:tinyint(4);column:deleted" json:"is_del,omitempty"` // IsInEtcd indicates that whether record of this pod has been removed from etcd. // Deleted pod could stay up in etcd due to different runtime policies. IsInEtcd *int `gorm:"type:tinyint(4);column:is_in_etcd" json:"is_in_etcd,omitempty"` // Optional remark text reserved. Remark *string `gorm:"type:text;column:remark" json:"remark,omitempty"` // Timestamps of different pod phases and status transitions. GmtCreated time.Time `gorm:"type:datetime;column:gmt_created" json:"gmt_created"` GmtModified time.Time `gorm:"type:datetime;column:gmt_modified" json:"gmt_modified"` GmtStarted *time.Time `gorm:"type:datetime;column:gmt_started" json:"gmt_started,omitempty"` GmtFinished *time.Time `gorm:"type:datetime;column:gmt_finished" json:"gmt_finished,omitempty"` }
Pod contains fields collected from original Pod object and extra info that we concerned about, they will be persisted by storage backend.
func (*Pod) BeforeCreate ¶
BeforeCreate update gmt_modified timestamp.
func (*Pod) BeforeUpdate ¶
BeforeUpdate update gmt_modified timestamp.