rpc

package
v2.6.0 Latest Latest
Warning

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

Go to latest
Published: Jun 13, 2024 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

View Source
const (
	LogEntryStdout int = iota
	LogEntryStderr
	LogEntryExitCode
	LogEntryMetadata
	LogEntryProgress
)

Identifies the type of line in the logs.

Variables

This section is empty.

Functions

This section is empty.

Types

type Filter

type Filter struct {
	Labels map[string]string `json:"labels"`
}

Filter defines filters for fetching items from the queue.

type LogEntry

type LogEntry struct {
	StepUUID string `json:"step_uuid,omitempty"`
	Time     int64  `json:"time,omitempty"`
	Type     int    `json:"type,omitempty"`
	Line     int    `json:"line,omitempty"`
	Data     []byte `json:"data,omitempty"`
}

Line is a line of console output.

func (*LogEntry) String

func (l *LogEntry) String() string

type Peer

type Peer interface {
	// Version returns the server- & grpc-version
	Version(c context.Context) (*Version, error)

	// Next returns the next workflow in the queue
	Next(c context.Context, f Filter) (*Workflow, error)

	// Wait blocks until the workflow is complete
	Wait(c context.Context, id string) error

	// Init signals the step is initialized
	Init(c context.Context, id string, state State) error

	// Done signals the step is complete
	Done(c context.Context, id string, state State) error

	// Extend extends the workflow deadline
	Extend(c context.Context, id string) error

	// Update updates the step state
	Update(c context.Context, id string, state State) error

	// Log writes the workflow log entry
	Log(c context.Context, logEntry *LogEntry) error

	// RegisterAgent register our agent to the server
	RegisterAgent(ctx context.Context, platform, backend, version string, capacity int) (int64, error)

	// UnregisterAgent unregister our agent from the server
	UnregisterAgent(ctx context.Context) error

	// ReportHealth reports health status of the agent to the server
	ReportHealth(c context.Context) error
}

Peer defines a peer-to-peer connection.

type State

type State struct {
	StepUUID string `json:"step_uuid"`
	Exited   bool   `json:"exited"`
	ExitCode int    `json:"exit_code"`
	Started  int64  `json:"started"`
	Finished int64  `json:"finished"`
	Error    string `json:"error"`
}

State defines the step state.

type Version

type Version struct {
	GrpcVersion   int32  `json:"grpc_version,omitempty"`
	ServerVersion string `json:"server_version,omitempty"`
}

type Workflow

type Workflow struct {
	ID      string          `json:"id"`
	Config  *backend.Config `json:"config"`
	Timeout int64           `json:"timeout"`
}

Workflow defines the workflow execution details.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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