Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var HOST_MODIFY_FIELD_NUM int = 19
type HOST_FIELD string const (
HOST_ID HOST_FIELD = "id" HOST_VENDOR HOST_FIELD = "vendor"
)
Functions ¶
This section is empty.
Types ¶
type Describe ¶
type Describe struct {
CPU int `json:"cpu"` // 核数
Memory int `json:"memory"` // 内存
GPUAmount int `json:"gpu_amount"` // GPU数量
GPUSpec string `json:"gpu_spec"` // GPU类型
OSType string `json:"os_type"` // 操作系统类型,分为Windows和Linux
OSName string `json:"os_name"` // 操作系统名称
SerialNumber string `json:"serial_number"` // 序列号
}
Describe - Host私有属性
type DescribeHostRequest ¶
type DescribeHostRequest struct {
Id string
}
DescribeHostRequest code
func NewDescribeHostRequestWithId ¶
func NewDescribeHostRequestWithId(id string) *DescribeHostRequest
type HostService ¶
type HostService interface {
// 创建
Create(context.Context, *Host) (*Host, error)
// 查询列表, 这里使用HostSet来对Host进行拓展以及整体统筹
Query(context.Context, *QueryHostRequest) (*HostSet, error)
//查询详情
Describe(context.Context, *DescribeHostRequest) (*Host, error)
//更新或者删除的话,如果需要打印出来该操作的结果的话,也是需要Host对象的,所以输出它
Update(context.Context, *UpdateHostRequest) (*Host, error)
Delete(context.Context, *DeleteHostRequest) (*Host, error)
ServiceName() string
}
type HostSet ¶
func NewHostSet ¶
func NewHostSet() *HostSet
type QueryHostRequest ¶
type QueryHostRequest struct {
PageSize int `json:"page_size"` // 大小
PageNumber int `json:"page_number"` // 第几页
KeyWords string `json:"keywords"`
}
QueryHostRequest code
func NewQueryHostRequest ¶
func NewQueryHostRequest() *QueryHostRequest
func QueryHostFromHTTP ¶
func QueryHostFromHTTP(r *http.Request) *QueryHostRequest
QueryHostFromHTTP - 从GET请求中获取请求内需要的参数 http://127.0.0.1:8080/host/query/?page_size=20&page_number=1&keyword=Resource
func (*QueryHostRequest) Offset ¶
func (q *QueryHostRequest) Offset() int64
func (*QueryHostRequest) PageSize2uint ¶
func (q *QueryHostRequest) PageSize2uint() uint
type Resource ¶
type Resource struct {
Id string `json:"id" validate:"required"` // 全局唯一Id
Vendor Vendor `json:"vendor"` // 厂商
Region string `json:"region"` // 地域
CreateAt int64 `json:"create_at"` // 创建时间
ExpireAt int64 `json:"expire_at"` // 过期时间
Type string `json:"type"` // 规格
Name string `json:"name"` // 名称
Description string `json:"description"` // 描述
Status string `json:"status"` // 服务商中的状态
//Tags map[string]string `json:"tags"` // 标签
UpdateAt int64 `json:"update_at"` // 更新时间
SyncAt int64 `json:"sync_at"` // 同步时间
Account string `json:"account"` // 资源的所属账号
PublicIP string `json:"public_ip"` // 公网IP
PrivateIP string `json:"private_ip"` // 内网IP
}
type UPDATE_MODE ¶
type UPDATE_MODE string
UpdateHostRequest code
const ( UPDATE_PUT UPDATE_MODE = "put" // 全量更新 UPDATE_PATCH UPDATE_MODE = "patch" //局部更新 )
type UpdateHostRequest ¶
type UpdateHostRequest struct {
UpdateMode UPDATE_MODE `json:"update_mode"` // 强制规范字段可选在可控范围内
Id string `json:"id"` // 更新数据的id
/* describe *Describe
resource *Resource*/
//UpdateFields map[string]interface{} `json:"updateFields"`
Ins *Host `json:"host"` // 增量ins 通过body获取
/* FieldName []string `json:"fieldName"`
Value []interface{} `json:"value"`*/
ResourceUpdates map[string]interface{} `json:"resource_updates"`
DescribeUpdates map[string]interface{} `json:"describe_updates"`
}
func NewUpdateHostRequest ¶
func NewUpdateHostRequest(id string) *UpdateHostRequest
Click to show internal directories.
Click to hide internal directories.