Documentation
¶
Index ¶
- Constants
- Variables
- func PeerIDsToStr(ids []peer.ID) []string
- func RuntimeCLI() string
- type BaseMessage
- type Deployment
- type Executor
- type Function
- type FunctionManifest
- type FunctionRecord
- type FunctionStore
- type Message
- type Methods
- type NodeRole
- type Parameter
- type Peer
- type PeerStore
- type Runtime
- type Store
- type TraceableMessage
Constants ¶
View Source
const ( MessageHealthCheck = "MsgHealthCheck" MessageInstallFunction = "MsgInstallFunction" MessageInstallFunctionResponse = "MsgInstallFunctionResponse" MessageRollCall = "MsgRollCall" MessageRollCallResponse = "MsgRollCallResponse" MessageExecute = "MsgExecute" // MessageExecute is the execution request, as expected by the head node. MessageExecuteResponse = "MsgExecuteResponse" MessageWorkOrder = "MsgWorkOrder" // MessageWorkOrder is the execution request, as expected by the worker node. MessageWorkOrderResponse = "MsgWorkOrderResponse" MessageFormCluster = "MsgFormCluster" MessageFormClusterResponse = "MsgFormClusterResponse" MessageDisbandCluster = "MsgDisbandCluster" )
Message types in the bls protocol.
View Source
const ( ProtocolID protocol.ID = "/b7s/work/1.0.0" EnvPrefix string = "B7S_" DefaultTopic = "blockless/b7s/general" DefaultHealthInterval = 1 * time.Minute DefaultConcurrency = 10 )
View Source
const ( HeadNodeLabel = "head" WorkerNodeLabel = "worker" )
The following are labels for the node roles, used when parsing the node role as a string.
Variables ¶
View Source
var ( ErrNotFound = errors.New("not found") ErrRollCallTimeout = errors.New("roll call timed out - not enough nodes responded") ErrExecutionNotEnoughNodes = errors.New("not enough execution results received") )
Sentinel errors.
Functions ¶
func PeerIDsToStr ¶
PeerIDsToStr will convert a list of peer.IDs to strings.
func RuntimeCLI ¶
func RuntimeCLI() string
RuntimeCLI returns the name of the Bless Runtime executable.
Types ¶
type BaseMessage ¶
func (*BaseMessage) SaveTraceContext ¶
func (m *BaseMessage) SaveTraceContext(t tracing.TraceInfo)
type Deployment ¶
type Deployment struct {
CID string `json:"cid,omitempty"`
Checksum string `json:"checksum,omitempty"`
URI string `json:"uri,omitempty"`
Methods []Methods `json:"methods,omitempty"`
Aggregation string `json:"aggregation,omitempty"`
Nodes int `json:"nodes,omitempty"`
File string `json:"file,omitempty"`
}
type Function ¶
type Function struct {
ID string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Version string `json:"version,omitempty"`
Runtime string `json:"runtime,omitempty"`
Extensions []string `json:"extensions,omitempty"`
}
Function represents a Bless function that can be executed.
type FunctionManifest ¶
type FunctionManifest struct {
ID string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Description string `json:"description,omitempty"`
Function Function `json:"function,omitempty"`
Deployment Deployment `json:"deployment,omitempty"`
Runtime Runtime `json:"runtime,omitempty"`
Cached bool `json:"cached,omitempty"`
Hooks []interface{} `json:"hooks,omitempty"`
FSRootPath string `json:"fs_root_path,omitempty"`
Entry string `json:"entry,omitempty"`
ContentType string `json:"contentType,omitempty"`
Permissions []string `json:"permissions,omitempty"`
DriversRootPath string `json:"drivers_root_path,omitempty"`
LimitedFuel uint `json:"limited_fuel,omitempty"`
LimitedMemory uint `json:"limited_memory,omitempty"`
}
FunctionManifest describes some important configuration options for a Bless function.
type FunctionRecord ¶
type FunctionStore ¶
type NodeRole ¶
type NodeRole uint8
NodeRole is a representation of the node's role.
type Peer ¶
type Peer struct {
ID peer.ID `json:"id,omitempty"`
MultiAddr string `json:"multiaddress,omitempty"`
AddrInfo peer.AddrInfo `json:"addrinfo,omitempty"`
}
Peer identifies another node in the Bless network.
type Runtime ¶
type Runtime struct {
Checksum string `json:"checksum,omitempty"`
URL string `json:"url,omitempty"`
}
Runtime is here to support legacy manifests.
type Store ¶
type Store interface {
PeerStore
FunctionStore
}
type TraceableMessage ¶
Click to show internal directories.
Click to hide internal directories.