models

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Dec 14, 2024 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const (
	NOT_ASSIGNED = iota
	IN_PROGRESS
	COMPLETED
	TERMINATED
)
View Source
const (
	FIL_C2_CPU512 = 1
	FIL_C2_CPU32G = 2
	FIL_C2_GPU512 = 3
	FIL_C2_GPU32G = 4
	Mining        = 5
)
View Source
const (
	TASK_RECEIVED_STATUS = iota + 1
	TASK_RUNNING_STATUS
	TASK_SUBMITTED_STATUS
	TASK_FAILED_STATUS
	TASK_VERIFIED_STATUS
	TASK_INVALID_STATUS
	TASK_VERIFYFAILED_STATUS
	TASK_REWARDED_STATUS
	TASK_TIMEOUT_STATUS
	TASK_REPEATED_STATUS
	TASK_NSC_STATUS
	TASK_UNKNOWN_STATUS
)
View Source
const (
	RESOURCE_TYPE_CPU = 0
	RESOURCE_TYPE_GPU = 1
)
View Source
const (
	All_FLAG         = -1
	UN_DELETEED_FLAG = 0
	DELETED_FLAG     = 1
)
View Source
const (
	POD_UNKNOWN_STATUS = 0
	POD_RUNNING_STATUS = 1
	POD_DELETE_STATUS  = 2
)
View Source
const (
	JOB_RECEIVED_STATUS   = 0
	JOB_DEPLOY_STATUS     = 1
	JOB_RUNNING_STATUS    = 2
	JOB_TERMINATED_STATUS = 3
	JOB_COMPLETED_STATUS  = 4
)
View Source
const (
	DEPLOY_RECEIVE_JOB = iota + 1
	DEPLOY_DOWNLOAD_SOURCE
	DEPLOY_UPLOAD_RESULT
	DEPLOY_BUILD_IMAGE
	DEPLOY_PUSH_IMAGE
	DEPLOY_PULL_IMAGE
	DEPLOY_TO_K8S
)
View Source
const (
	Task_TYPE_FIL_C2 = iota + 1
	Task_TYPE_MINING
	Task_TYPE_AI
	Task_TYPE_INFERENCE
	Task_TYPE_NODE_PORT
)
View Source
const (
	NetworkNetset               = "netset-2300e518e9ad45"
	NetworkGlobalSubnet         = "global-e59cad59af9c65"
	NetworkGlobalOutAccess      = "global-pd6sdo8cjd61yd"
	NetworkGlobalInAccess       = "global-01kls78xh7dk4n"
	NetworkGlobalNamespace      = "global-ao9kq72mjc0sl3"
	NetworkGlobalDns            = "global-s92ms87dl3j6do"
	NetworkGlobalPodInNamespace = "global-pod1namespace1"
)
View Source
const (
	MiningJobType    = 1
	InferenceJobType = 2
)
View Source
const (
	CreatedStatus    = "created"
	RunningStatus    = "running"
	TerminatedStatus = "terminated"
)
View Source
const (
	ScannerTaskPaymentId    = 1
	ScannerFcpTaskManagerId = 2
)
View Source
const (
	TaskSequencer = 1
)

Variables

This section is empty.

Functions

func ExistResource added in v0.7.0

func ExistResource(name string) bool

func GetDeployStatusStr added in v0.5.0

func GetDeployStatusStr(deployStatus int) string

func GetJobStatus added in v0.6.2

func GetJobStatus(status int) string

func GetResourceTypeStr added in v0.6.2

func GetResourceTypeStr(resourceType int) string

func JobOnChainStatus added in v0.6.4

func JobOnChainStatus(status int) string

func TaskStatusStr added in v0.5.0

func TaskStatusStr(status int) string

func TaskTypeStr added in v0.5.0

func TaskTypeStr(taskType int) string

func UbiTaskTypeStr added in v0.5.0

func UbiTaskTypeStr(typeInt int) string

Types

type Account

type Account struct {
	OwnerAddress   string
	NodeId         string
	MultiAddresses []string
	TaskTypes      []uint8 // 1:Fil-C2-512M, 2:mining, 3: AI, 4:Fil-C2-32G
	Beneficiary    string
	WorkerAddress  string
	Version        string
	Contract       string
}

type ClusterResource

type ClusterResource struct {
	NodeId           string          `json:"node_id,omitempty"`
	CpAccountAddress string          `json:"cpAccount_address"`
	Region           string          `json:"region,omitempty"`
	ClusterInfo      []*NodeResource `json:"cluster_info"`
	NodeName         string          `json:"node_name,omitempty"`
	Runtime          string          `json:"runtime,omitempty"`
	ClientType       string          `json:"client_type"`
}

type CollateralContractInfoForECP added in v0.6.2

type CollateralContractInfoForECP struct {
	CollateralToken string
	WithdrawDelay   int64
}

type CollectNodeInfo

type CollectNodeInfo struct {
	Gpu     Gpu    `json:"gpu"`
	CpuName string `json:"cpu_name"`
}

type Commit1Task

type Commit1Task struct {
	SectorNum  int64      `json:"SectorNum"`
	Phase1Out  string     `json:"Phase1Out"`
	SectorSize uint64     `json:"SectorSize"`
	Sid        SectorRef  `json:"Sid"`
	Ticket     string     `json:"Ticket"`
	Cids       SectorCids `json:"Cids"`
	Seed       Seed       `json:"seed"`
}

type Commit2Proof

type Commit2Proof struct {
	TaskUuid  string `json:"task_uuid"`
	CpAddress string `json:"cp_address"`
	NodeId    string `json:"node_id"`
	TaskId    string `json:"task_id"`
	TaskType  string `json:"task_type"`
	Proof     string `json:"proof"`
}

type Common

type Common struct {
	Total        string `json:"total"`
	Used         string `json:"used"`
	Free         string `json:"free"`
	RemainderNum int64  `json:"-"`
}

type CpCollateralInfoForECP added in v0.6.2

type CpCollateralInfoForECP struct {
	CpAddress         string
	CollateralBalance string
	FrozenBalance     string
	Status            string
}

type CpCollateralInfoForFCP added in v0.6.2

type CpCollateralInfoForFCP struct {
	CpAddress        string
	AvailableBalance string
	LockedCollateral string
	Status           string
}

type CpInfoEntity added in v0.5.0

type CpInfoEntity struct {
	Id                 int64    `json:"id" gorm:"primaryKey;autoIncrement"`
	NodeId             string   `json:"node_id" gorm:"node_id"`
	OwnerAddress       string   `json:"owner_address" gorm:"owner_address"`
	Beneficiary        string   `json:"beneficiary" gorm:"beneficiary"`
	WorkerAddress      string   `json:"worker_address" gorm:"worker_address"`
	Version            string   `json:"version" gorm:"version"`
	ContractAddress    string   `json:"contract_address" gorm:"contract_address"`
	MultiAddressesJSON string   `gorm:"multi_addresses_json;type:text" json:"-"`
	TaskTypesJSON      string   `gorm:"task_types_json; type:text" json:"-"`
	CreateAt           string   `json:"create_at" gorm:"create_at"`
	UpdateAt           string   `json:"update_at" gorm:"update_at"`
	MultiAddresses     []string `json:"multi_addresses" gorm:"-"`
	TaskTypes          []uint8  `json:"task_types" gorm:"-"` // 1:Fil-C2-512M, 2:mining, 3: AI, 4:Fil-C2-32G

}

func (*CpInfoEntity) AfterFind added in v0.5.0

func (c *CpInfoEntity) AfterFind(tx *gorm.DB) (err error)

func (*CpInfoEntity) BeforeSave added in v0.5.0

func (c *CpInfoEntity) BeforeSave(tx *gorm.DB) (err error)

func (*CpInfoEntity) TableName added in v0.5.0

func (*CpInfoEntity) TableName() string

type CpuQuota

type CpuQuota struct {
	Quota int64 `json:"quota"`
}

type DeployConfig added in v1.0.0

type DeployConfig struct {
	Image       string            `json:"image"`
	HealthPath  string            `json:"health_path"`
	Envs        map[string]string `json:"envs"`
	Cmd         []string          `json:"cmd"`
	RunCommands []string          `json:"run_commands"`
	Ports       map[string][]int  `json:"ports"`
	WorkDir     string            `json:"work_dir"`
}

type DeployJobParam added in v1.0.0

type DeployJobParam struct {
	JobType      int // 1 mining; 2: inference
	Uuid         string
	Name         string
	Image        string
	Cmd          []string
	Ports        []int
	HealthPath   string
	Envs         []string
	NeedResource container.Resources

	BuildImagePath string
	BuildImageName string
}

type DeployResource added in v1.0.0

type DeployResource struct {
	Cpu      int    `json:"cpu"`
	Gpu      int    `json:"gpu"`
	GpuModel string `json:"gpu_model"`
	Memory   int    `json:"memory"`
	Storage  int    `json:"storage"`
}

type EcpImageJobReq added in v1.0.0

type EcpImageJobReq struct {
	Uuid          string            `json:"uuid,omitempty"`
	Name          string            `json:"name,omitempty"`
	Price         string            `json:"price,omitempty"`
	Duration      int               `json:"duration,omitempty"`
	JobType       int               `json:"job_type,omitempty"`
	HealthPath    string            `json:"health_path,omitempty"`
	Sign          string            `json:"sign,omitempty"`
	WalletAddress string            `json:"wallet_address,omitempty"`
	Resource      *HardwareResource `json:"resource,omitempty"`
	Image         string            `json:"image,omitempty"`
	Cmd           []string          `json:"cmd,omitempty"`
	Ports         map[string][]int  `json:"ports,omitempty"`
	Envs          map[string]string `json:"envs,omitempty"`
	RunCommands   []string          `json:"run_commands,omitempty"`
	ResourceUrl   string            `json:"resource_url,omitempty"`
	WorkDir       string            `json:"work_dir,omitempty"`
}

type EcpImageResp added in v1.0.0

type EcpImageResp struct {
	UUID               string    `json:"uuid,omitempty"`
	ServiceUrl         string    `json:"service_url,omitempty"`
	HealthPath         string    `json:"health_path,omitempty"`
	Price              float64   `json:"price"`
	ServicePortMapping []PortMap `json:"service_port_mapping,omitempty"`
	LogUrl             string    `json:"log_url"`
}

type EcpJobEntity added in v0.7.0

type EcpJobEntity struct {
	Id              int64   `json:"id" gorm:"primaryKey;autoIncrement"`
	Uuid            string  `json:"uuid" gorm:"uuid"`
	Name            string  `json:"name" gorm:"name"`
	Image           string  `json:"image" gorm:"image"`
	Env             string  `json:"env" gorm:"env"`
	Cmd             string  `json:"cmd" gorm:"type:json"`
	Status          string  `json:"status"` // created|restarting|running|removing|paused|exited|dead
	Message         string  `json:"message"`
	Reward          float64 `json:"reward"`
	Cpu             int64   `json:"cpu"`
	JobType         int     `json:"job_type"`
	Memory          int64   `json:"memory"`
	Storage         int64   `json:"storage"`
	GpuName         string  `json:"gpu_name"`
	GpuIndex        string  `json:"gpu_index"  gorm:"type:json"`
	ContainerName   string  `json:"container_name" gorm:"container_name"`
	HealthUrlPath   string  `json:"health_url_path"`
	ServiceUrl      string  `json:"service_url" gorm:"service_url"`
	PortMap         string  `json:"port_map" gorm:"port_map"`
	LastBlockNumber int64   `json:"last_block_number" gorm:"last_block_number"`
	CreateTime      int64   `json:"create_time" gorm:"create_time"`
	DeleteAt        int     `json:"delete_at" gorm:"delete_at; default:0"` // 1 deleted
}

func (*EcpJobEntity) TableName added in v0.7.0

func (*EcpJobEntity) TableName() string

type EcpJobStatusResp added in v0.7.0

type EcpJobStatusResp struct {
	Uuid               string    `json:"uuid"`
	Status             string    `json:"status"`
	ServiceUrl         string    `json:"service_url,omitempty"`
	HealthPath         string    `json:"health_path,omitempty"`
	Price              float64   `json:"price"`
	ServicePortMapping []PortMap `json:"service_port_mapping,omitempty"`
	Message            string    `json:"message,omitempty"`
}

type EcpTaskInfo added in v0.6.2

type EcpTaskInfo struct {
	TaskID               *big.Int
	TaskType             *big.Int
	ResourceType         *big.Int
	InputParam           string
	VerifyParam          string
	CpAccount            common.Address
	Proof                string
	Deadline             *big.Int
	TaskRegistryContract common.Address
	CheckCode            string
	Owner                common.Address
	Version              string
}

type FcpDeployImageReq added in v1.0.0

type FcpDeployImageReq struct {
	Uuid          string         `json:"uuid"`
	Name          string         `json:"name"`
	InstanceName  string         `json:"instance_name"`
	Duration      int            `json:"duration"`
	Sign          string         `json:"sign"`
	WalletAddress string         `json:"wallet_address"`
	IpWhitelist   []string       `json:"ip_whitelist"`
	DeployConfig  DeployConfig   `json:"deploy_config"`
	Resource      DeployResource `json:"resource"`
	JobType       int            `json:"job_type"`
	ResourceUrl   string         `json:"resource_url"`
	IpWhiteList   []string       `json:"ip_white_list"`
	BidPrice      string         `json:"bid_price"` // Amount users are willing to pay
}

type FcpDeployImageResp added in v1.0.0

type FcpDeployImageResp struct {
	UUID               string    `json:"uuid,omitempty"`
	ServiceUrl         string    `json:"service_url,omitempty"`
	HealthPath         string    `json:"health_path,omitempty"`
	Price              float64   `json:"price"`
	ServicePortMapping []PortMap `json:"service_port_mapping,omitempty"`
	ContainerLog       string    `json:"container_log"`
	BuildLog           string    `json:"build_log"`
}

type Gpu

type Gpu struct {
	DriverVersion string      `json:"driver_version"`
	CudaVersion   string      `json:"cuda_version"`
	AttachedGpus  int         `json:"attached_gpus"`
	Details       []GpuDetail `json:"details"`
}

type GpuDetail

type GpuDetail struct {
	ProductName   string    `json:"product_name"`
	Status        GpuStatus `json:"status"`
	FbMemoryUsage Common    `json:"fb_memory_usage"`
	OriginalName  string    `json:"original_name"`
	Index         string    `json:"index"`
}

type GpuQuota

type GpuQuota struct {
	Name  string `json:"name"`
	Quota int64  `json:"quota"`
}

type GpuStatus

type GpuStatus string
const (
	Occupied  GpuStatus = "occupied"
	Available GpuStatus = "available"
)

type HardwareResource added in v0.7.0

type HardwareResource struct {
	CPU      int64  `json:"cpu"`
	Memory   int64  `json:"memory"`
	Storage  int64  `json:"storage"`
	GPU      int    `json:"gpu"`
	GPUModel string `json:"gpu_model"`
}

type HostInfo

type HostInfo struct {
	SwanProviderVersion string `json:"swan_miner_version"`
	OperatingSystem     string `json:"operating_system"`
	Architecture        string `json:"architecture"`
	CPUCores            int    `json:"cpu_cores"`
}

type Job

type Job struct {
	Uuid   string
	Status int
	Url    string
}

type JobData

type JobData struct {
	UUID                        string   `json:"uuid"`
	Name                        string   `json:"name"`
	Duration                    int      `json:"duration"`
	JobSourceURI                string   `json:"job_source_uri"`
	JobResultURI                string   `json:"job_result_uri,omitempty"`
	StorageSource               string   `json:"storage_source,omitempty"`
	TaskUUID                    string   `json:"task_uuid"`
	BuildLog                    string   `json:"build_log,omitempty"`
	ContainerLog                string   `json:"container_log"`
	NodeIdJobSourceUriSignature string   `json:"node_id_job_source_uri_signature,omitempty"`
	JobRealUri                  string   `json:"job_real_uri,omitempty"`
	JobType                     int      `json:"job_type"`  // 0: Standard job; 1: Custom job
	BidPrice                    string   `json:"bid_price"` // Amount users are willing to pay
	IpWhiteList                 []string `json:"ip_white_list"`
}

type JobEntity added in v0.5.0

type JobEntity struct {
	Id              int64  `json:"id" gorm:"primaryKey;autoIncrement"`
	Source          string `json:"source" gorm:"source"` // market name
	Name            string `json:"name" gorm:"name"`
	SpaceUuid       string `json:"space_uuid" gorm:"space_uuid"`
	JobUuid         string `json:"job_uuid" gorm:"job_uuid"`
	TaskUuid        string `json:"task_uuid" gorm:"task_uuid"`
	ResourceType    string `json:"resource_type"  gorm:"resource_type"`
	SpaceType       int    `json:"space_type" gorm:"space_type"` // 0: public; 1: private
	SourceUrl       string `json:"source_url" gorm:"source_url"`
	Hardware        string `json:"hardware" gorm:"hardware"`
	Duration        int    `json:"duration" gorm:"duration"`
	DeployStatus    int    `json:"deploy_status" gorm:"deploy_status"`
	WalletAddress   string `json:"wallet_address"  gorm:"wallet_address"`
	ResultUrl       string `json:"result_url" gorm:"result_url"`
	RealUrl         string `json:"real_url" gorm:"real_url"`
	K8sDeployName   string `json:"k8s_deploy_name" gorm:"k8s_deploy_name"`
	K8sResourceType string `json:"k8s_resource_type" gorm:"k8s_resource_type"`
	NameSpace       string `json:"name_space" gorm:"name_space"`
	ImageName       string `json:"image_name" gorm:"image_name"`
	BuildLog        string `json:"build_log" gorm:"build_log"`
	BuildLogPath    string `json:"build_log_path"`
	ContainerLog    string `json:"container_log" gorm:"container_log"`
	Reward          string `json:"reward" gorm:"reward"`
	ExpireTime      int64  `json:"expire_time" gorm:"expire_time"`
	CreateTime      int64  `json:"create_time" gorm:"create_time"`
	Error           string `json:"error" gorm:"error"`
	DeleteAt        int    `json:"delete_at" gorm:"delete_at; default:0"` // 1 deleted
	IpWhiteList     string `json:"ip_white_list"`
	PodStatus       int    `json:"pod_status"`
	Status          int    `json:"status"`
	StartedBlock    uint64 `json:"started_block" gorm:"column:started_block;not null;default:0"`
	ScannedBlock    uint64 `json:"scanned_block" gorm:"column:scanned_block;not null;default:0"`
	EndedBlock      uint64 `json:"ended_block" gorm:"column:ended_block;not null;default:0"`
}

func (*JobEntity) TableName added in v0.5.0

func (*JobEntity) TableName() string

type NodeResource

type NodeResource struct {
	MachineId string `json:"machine_id"`
	CpuName   string `json:"cpu_name"`
	Cpu       Common `json:"cpu"`
	Vcpu      Common `json:"vcpu"`
	Memory    Common `json:"memory"`
	Gpu       Gpu    `json:"gpu"`
	Storage   Common `json:"storage"`
}

type PortMap added in v1.0.0

type PortMap struct {
	ContainerPort int `json:"container_port"`
	ExternalPort  int `json:"external_port"`
}

type Quota

type Quota struct {
	Quota int64  `json:"quota"`
	Unit  string `json:"unit"`
}

type Resource

type Resource struct {
	Cpu     Specification
	Memory  Specification
	Gpu     Specification
	Storage Specification
}

type ResourcePolicy

type ResourcePolicy struct {
	Cpu     CpuQuota   `json:"cpu"`
	Gpu     []GpuQuota `json:"gpu"`
	Memory  Quota      `json:"memory"`
	Storage Quota      `json:"storage"`
}

type ResourcePrice added in v0.6.5

type ResourcePrice struct {
	CpuPrice         string            `json:"cpu_price"`
	MemoryPrice      string            `json:"memory_price"`
	HdEphemeralPrice string            `json:"hd_ephemeral_price"`
	HdPersHddPrice   string            `json:"hd_pers_hdd_price,omitempty"`
	HdPersSsdPrice   string            `json:"hd_pers_ssd_price,omitempty"`
	HdPersNvmePrice  string            `json:"hd_pers_nvme_price,omitempty"`
	GpuDefaultPrice  string            `json:"gpu_default_price"`
	GpusPrice        map[string]string `json:"gpus_price"`
	Pricing          bool              `json:"pricing"`
}

type ResourceStatus

type ResourceStatus struct {
	Request  int64
	Capacity int64
}

type ScanChainEntity added in v0.7.1

type ScanChainEntity struct {
	Id          int64  `json:"id" gorm:"primaryKey"`
	BlockNumber int64  `json:"block_number" gorm:"block_number"`
	UpdateTime  string `json:"update_time" gorm:"update_time"`
}

func (*ScanChainEntity) TableName added in v0.7.1

func (*ScanChainEntity) TableName() string

type SectorCids

type SectorCids struct {
	Unsealed struct {
		Field1 string `json:"/"`
	} `json:"Unsealed"`
	Sealed struct {
		Field1 string `json:"/"`
	} `json:"Sealed"`
}

type SectorRef

type SectorRef struct {
	ID struct {
		Miner  uint64 `json:"Miner"`
		Number uint64 `json:"Number"`
	} `json:"ID"`
	ProofType int64 `json:"ProofType"`
}

type Seed

type Seed struct {
	Value string `json:"Value"`
	Epoch int    `json:"Epoch"`
}

type SpaceFile

type SpaceFile struct {
	Name         string `json:"name"`
	URL          string `json:"url"`
	SymmetricKey string `json:"symmetric_key"`
	Iv           string `json:"iv"`
}

type SpaceHardware

type SpaceHardware struct {
	Description  string `json:"description"`
	HardwareType string `json:"hardware_type"`
	Hardware     string `json:"hardware"` // Nvidia 3080  CPU only
	Memory       int64  `json:"memory"`   // unit bytes
	Name         string `json:"name"`
	Vcpu         int64  `json:"vcpu"`
	Storage      int64  `json:"storage"` // unit bytes
	Gpu          int64  `json:"gpu"`
}

type SpaceJSON

type SpaceJSON struct {
	Data    SpaceJsonWithNoData `json:"data"`
	Message string              `json:"message"`
	Status  string              `json:"status"`
}

type SpaceJsonWithNoData added in v0.6.4

type SpaceJsonWithNoData struct {
	Files []SpaceFile `json:"files"`
	Owner struct {
		PublicAddress string `json:"public_address"`
	} `json:"owner"`
	Space struct {
		Uuid        string `json:"uuid"`
		Name        string `json:"name"`
		ActiveOrder struct {
			Config SpaceHardware `json:"config"`
		} `json:"activeOrder"`
	} `json:"space"`
}

type Specification

type Specification struct {
	Quantity int64
	Unit     string
}

type TaskEntity added in v0.5.0

type TaskEntity struct {
	Id                 int64  `json:"id" gorm:"primaryKey;id"`
	Uuid               string `json:"uuid"`
	Type               int    `json:"type" gorm:"type"`
	Name               string `json:"name" gorm:"name"`
	Contract           string `json:"contract" gorm:"contract"`
	ResourceType       int    `json:"resource_type" gorm:"resource_type"` // 1
	InputParam         string `json:"input_param" gorm:"input_param"`
	VerifyParam        string `json:"verify_param" gorm:"verify_param"`
	TxHash             string `json:"tx_hash" gorm:"tx_hash"`
	Status             int    `json:"status" gorm:"status"`
	CreateTime         int64  `json:"create_time" gorm:"create_time"`
	EndTime            int64  `json:"end_time" gorm:"end_time"`
	Error              string `json:"error" gorm:"error"`
	Deadline           int64  `json:"deadline"`
	CheckCode          string `json:"check_code"`
	BlockHash          string `json:"block_hash"`
	Sign               string `json:"sign"`
	Reward             string `json:"reward"`
	SequenceCid        string `json:"sequence_cid"`
	SettlementCid      string `json:"settlement_cid"`
	SequenceTaskAddr   string `json:"sequence_task_addr"`
	SettlementTaskAddr string `json:"settlement_task_addr"`
	Sequencer          int    `json:"sequencer" gorm:"default:-1"`
	Proof              string
}

func (*TaskEntity) TableName added in v0.5.0

func (task *TaskEntity) TableName() string

type TaskInfoOnChain added in v0.6.2

type TaskInfoOnChain struct {
	TaskUuid           string
	CpList             []string
	OwnerAddress       string
	Reward             *big.Int
	Collateral         *big.Int
	StartTimestamp     int64
	TerminateTimestamp int64
	Duration           int64
	TaskStatus         int
	CollateralStatus   int
}

type TaskResource

type TaskResource struct {
	CPU       string `json:"cpu"`
	Gpu       string `json:"gpu"`
	GpuDetail struct {
		ProductName string `json:"product_name"`
		Count       string `json:"count"`
	} `json:"gpu_detail"`
	Memory  string `json:"memory"`
	Storage string `json:"storage"`
}

type UBITaskReq

type UBITaskReq struct {
	ID           int           `json:"id"`
	Name         string        `json:"name,omitempty"`
	Type         int           `json:"type"`
	InputParam   string        `json:"input_param"`
	VerifyParam  string        `json:"verify_param"`
	Signature    string        `json:"signature"`
	Resource     *TaskResource `json:"resource"`
	ResourceType int           `json:"resource_type"`
	DeadLine     int64         `json:"deadline"`
	CheckCode    string        `json:"check_code"`
}

type UbiC2Proof added in v0.4.6

type UbiC2Proof struct {
	TaskId    string `json:"task_id,omitempty"`
	TaskType  string `json:"task_type,omitempty"`
	Proof     string `json:"proof,omitempty"`
	ZkType    string `json:"zk_type,omitempty"`
	NameSpace string `json:"name_space,omitempty"`
}

type WithdrawRequest added in v0.6.2

type WithdrawRequest struct {
	Amount        string
	RequestBlock  int64
	WithdrawDelay int64
}

Jump to

Keyboard shortcuts

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