Documentation
¶
Index ¶
- type Container
- type ContainerCapacity
- type ContainerMount
- type DiskTypeEnum
- type K8S
- type Logs
- type LogsRedis
- type Network
- type NetworkConnection
- type NetworkNetResource
- type NextActionEnum
- type Reservation
- type ReservationData
- type ReservationWorkload
- type Result
- type ResultCategoryEnum
- type ResultStateEnum
- type SigningRequest
- type SigningSignature
- type StatsAggregator
- type Volume
- type VolumeTypeEnum
- type WireguardPeer
- type WorkloadTypeEnum
- type ZDB
- type ZDBModeEnum
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Container ¶
type Container struct {
WorkloadId int64 `bson:"workload_id" json:"workload_id"`
NodeId string `bson:"node_id" json:"node_id"`
Flist string `bson:"flist" json:"flist"`
HubUrl string `bson:"hub_url" json:"hub_url"`
Environment map[string]string `bson:"environment" json:"environment"`
SecretEnvironment map[string]string `bson:"secret_environment" json:"secret_environment"`
Entrypoint string `bson:"entrypoint" json:"entrypoint"`
Interactive bool `bson:"interactive" json:"interactive"`
Volumes []ContainerMount `bson:"volumes" json:"volumes"`
NetworkConnection []NetworkConnection `bson:"network_connection" json:"network_connection"`
StatsAggregator []StatsAggregator `bson:"stats_aggregator" json:"stats_aggregator"`
Logs []Logs `bson:"logs" json:"logs"`
FarmerTid int64 `bson:"farmer_tid" json:"farmer_tid"`
Capacity ContainerCapacity `bson:"capcity" json:"capacity"`
}
func NewContainer ¶
type ContainerCapacity ¶
type ContainerMount ¶
type ContainerMount struct {
VolumeId string `bson:"volume_id" json:"volume_id"`
Mountpoint string `bson:"mountpoint" json:"mountpoint"`
}
func NewTfgridWorkloadsReservationContainerMount1 ¶
func NewTfgridWorkloadsReservationContainerMount1() (ContainerMount, error)
type DiskTypeEnum ¶
type DiskTypeEnum uint8
const ( DiskTypeHDD DiskTypeEnum = iota DiskTypeSSD )
func (DiskTypeEnum) String ¶
func (e DiskTypeEnum) String() string
type K8S ¶
type K8S struct {
WorkloadId int64 `bson:"workload_id" json:"workload_id"`
NodeId string `bson:"node_id" json:"node_id"`
Size int64 `bson:"size" json:"size"`
NetworkId string `bson:"network_id" json:"network_id"`
Ipaddress net.IP `bson:"ipaddress" json:"ipaddress"`
ClusterSecret string `bson:"cluster_secret" json:"cluster_secret"`
MasterIps []net.IP `bson:"master_ips" json:"master_ips"`
SshKeys []string `bson:"ssh_keys" json:"ssh_keys"`
StatsAggregator []StatsAggregator `bson:"stats_aggregator" json:"stats_aggregator"`
FarmerTid int64 `bson:"farmer_tid" json:"farmer_tid"`
}
type Network ¶
type Network struct {
Name string `bson:"name" json:"name"`
WorkloadId int64 `bson:"workload_id" json:"workload_id"`
Iprange schema.IPRange `bson:"iprange" json:"iprange"`
StatsAggregator []StatsAggregator `bson:"stats_aggregator" json:"stats_aggregator"`
NetworkResources []NetworkNetResource `bson:"network_resources" json:"network_resources"`
FarmerTid int64 `bson:"farmer_tid" json:"farmer_tid"`
}
func NewNetwork ¶
type NetworkConnection ¶
type NetworkConnection struct {
NetworkId string `bson:"network_id" json:"network_id"`
Ipaddress net.IP `bson:"ipaddress" json:"ipaddress"`
PublicIp6 bool `bson:"public_ip6" json:"public_ip6"`
}
func NewNetworkConnection ¶
func NewNetworkConnection() (NetworkConnection, error)
type NetworkNetResource ¶
type NetworkNetResource struct {
NodeId string `bson:"node_id" json:"node_id"`
WireguardPrivateKeyEncrypted string `bson:"wireguard_private_key_encrypted" json:"wireguard_private_key_encrypted"`
WireguardPublicKey string `bson:"wireguard_public_key" json:"wireguard_public_key"`
WireguardListenPort int64 `bson:"wireguard_listen_port" json:"wireguard_listen_port"`
Iprange schema.IPRange `bson:"iprange" json:"iprange"`
Peers []WireguardPeer `bson:"peers" json:"peers"`
}
func NewNetworkNetResource ¶
func NewNetworkNetResource() (NetworkNetResource, error)
type NextActionEnum ¶
type NextActionEnum uint8
const ( NextActionCreate NextActionEnum = iota NextActionSign NextActionPay NextActionDeploy NextActionDelete NextActionInvalid NextActionDeleted )
func (NextActionEnum) String ¶
func (e NextActionEnum) String() string
type Reservation ¶
type Reservation struct {
ID schema.ID `bson:"_id" json:"id"`
Json string `bson:"json" json:"json"`
DataReservation ReservationData `bson:"data_reservation" json:"data_reservation"`
CustomerTid int64 `bson:"customer_tid" json:"customer_tid"`
CustomerSignature string `bson:"customer_signature" json:"customer_signature"`
NextAction NextActionEnum `bson:"next_action" json:"next_action"`
SignaturesProvision []SigningSignature `bson:"signatures_provision" json:"signatures_provision"`
SignaturesFarmer []SigningSignature `bson:"signatures_farmer" json:"signatures_farmer"`
SignaturesDelete []SigningSignature `bson:"signatures_delete" json:"signatures_delete"`
Epoch schema.Date `bson:"epoch" json:"epoch"`
Results []Result `bson:"results" json:"results"`
}
func NewReservation ¶
func NewReservation() (Reservation, error)
type ReservationData ¶
type ReservationData struct {
Description string `bson:"description" json:"description"`
SigningRequestProvision SigningRequest `bson:"signing_request_provision" json:"signing_request_provision"`
SigningRequestDelete SigningRequest `bson:"signing_request_delete" json:"signing_request_delete"`
Containers []Container `bson:"containers" json:"containers"`
Volumes []Volume `bson:"volumes" json:"volumes"`
Zdbs []ZDB `bson:"zdbs" json:"zdbs"`
Networks []Network `bson:"networks" json:"networks"`
Kubernetes []K8S `bson:"kubernetes" json:"kubernetes"`
ExpirationProvisioning schema.Date `bson:"expiration_provisioning" json:"expiration_provisioning"`
ExpirationReservation schema.Date `bson:"expiration_reservation" json:"expiration_reservation"`
}
func NewReservationData ¶
func NewReservationData() (ReservationData, error)
type ReservationWorkload ¶
type ReservationWorkload struct {
WorkloadId string `bson:"workload_id" json:"workload_id"`
User string `bson:"user" json:"user"`
Type WorkloadTypeEnum `bson:"type" json:"type"`
Content interface{} `bson:"content" json:"content"`
Created schema.Date `bson:"created" json:"created"`
Duration int64 `bson:"duration" json:"duration"`
Signature string `bson:"signature" json:"signature"`
ToDelete bool `bson:"to_delete" json:"to_delete"`
}
NOTE: this type has some manual changes that need to be preserved between regenerations.
func NewReservationWorkload ¶
func NewReservationWorkload() (ReservationWorkload, error)
type Result ¶
type Result struct {
Category ResultCategoryEnum `bson:"category" json:"category"`
WorkloadId string `bson:"workload_id" json:"workload_id"`
DataJson json.RawMessage `bson:"data_json" json:"data_json"`
Signature string `bson:"signature" json:"signature"`
State ResultStateEnum `bson:"state" json:"state"`
Message string `bson:"message" json:"message"`
Epoch schema.Date `bson:"epoch" json:"epoch"`
NodeId string `bson:"node_id" json:"node_id"`
}
type ResultCategoryEnum ¶
type ResultCategoryEnum uint8
const ( ResultCategoryZDB ResultCategoryEnum = iota ResultCategoryContainer ResultCategoryNetwork ResultCategoryVolume ResultCategoryK8S )
func (ResultCategoryEnum) String ¶
func (e ResultCategoryEnum) String() string
type ResultStateEnum ¶
type ResultStateEnum uint8
const ( ResultStateError ResultStateEnum = iota ResultStateOK ResultStateDeleted )
func (ResultStateEnum) String ¶
func (e ResultStateEnum) String() string
type SigningRequest ¶
type SigningRequest struct {
Signers []int64 `bson:"signers" json:"signers"`
QuorumMin int64 `bson:"quorum_min" json:"quorum_min"`
}
func NewSigningRequest ¶
func NewSigningRequest() (SigningRequest, error)
type SigningSignature ¶
type SigningSignature struct {
Tid int64 `bson:"tid" json:"tid"`
Signature string `bson:"signature" json:"signature"`
Epoch schema.Date `bson:"epoch" json:"epoch"`
}
func NewSigningSignature ¶
func NewSigningSignature() (SigningSignature, error)
type StatsAggregator ¶
type StatsAggregator struct {
Addr string `bson:"addr" json:"addr"`
Port int64 `bson:"port" json:"port"`
Secret string `bson:"secret" json:"secret"`
}
func NewStatsAggregator ¶
func NewStatsAggregator() (StatsAggregator, error)
type Volume ¶
type Volume struct {
WorkloadId int64 `bson:"workload_id" json:"workload_id"`
NodeId string `bson:"node_id" json:"node_id"`
Size int64 `bson:"size" json:"size"`
Type VolumeTypeEnum `bson:"type" json:"type"`
StatsAggregator []StatsAggregator `bson:"stats_aggregator" json:"stats_aggregator"`
FarmerTid int64 `bson:"farmer_tid" json:"farmer_tid"`
}
type VolumeTypeEnum ¶
type VolumeTypeEnum uint8
const ( VolumeTypeHDD VolumeTypeEnum = iota VolumeTypeSSD )
func (VolumeTypeEnum) String ¶
func (e VolumeTypeEnum) String() string
type WireguardPeer ¶
type WireguardPeer struct {
PublicKey string `bson:"public_key" json:"public_key"`
AllowedIprange []schema.IPRange `bson:"allowed_iprange" json:"allowed_iprange"`
Endpoint string `bson:"endpoint" json:"endpoint"`
Iprange schema.IPRange `bson:"iprange" json:"iprange"`
}
func NewPeer ¶
func NewPeer() (WireguardPeer, error)
type WorkloadTypeEnum ¶
type WorkloadTypeEnum uint8
const ( WorkloadTypeZDB WorkloadTypeEnum = iota WorkloadTypeContainer WorkloadTypeVolume WorkloadTypeNetwork WorkloadTypeKubernetes )
func (WorkloadTypeEnum) String ¶
func (e WorkloadTypeEnum) String() string
type ZDB ¶
type ZDB struct {
WorkloadId int64 `bson:"workload_id" json:"workload_id"`
NodeId string `bson:"node_id" json:"node_id"`
Size int64 `bson:"size" json:"size"`
Mode ZDBModeEnum `bson:"mode" json:"mode"`
Password string `bson:"password" json:"password"`
DiskType DiskTypeEnum `bson:"disk_type" json:"disk_type"`
Public bool `bson:"public" json:"public"`
StatsAggregator []StatsAggregator `bson:"stats_aggregator" json:"stats_aggregator"`
FarmerTid int64 `bson:"farmer_tid" json:"farmer_tid"`
}
type ZDBModeEnum ¶
type ZDBModeEnum uint8
const ( ZDBModeSeq ZDBModeEnum = iota ZDBModeUser )
func (ZDBModeEnum) String ¶
func (e ZDBModeEnum) String() string
Click to show internal directories.
Click to hide internal directories.