jobservices

package
v0.0.0-...-498d591 Latest Latest
Warning

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

Go to latest
Published: Nov 11, 2023 License: Unlicense Imports: 22 Imported by: 0

Documentation

Overview

Package jobservices handles services necessary WRT handling jobs from SDKs. Nominally this is the entry point for most users, and a job's external interactions outside of pipeline execution.

This includes handling receiving, staging, and provisioning artifacts, and orchestrating external workers, such as for loopback mode.

Execution of jobs is abstracted away to an execute function specified at server construction time.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Job

type Job struct {
	Pipeline *pipepb.Pipeline

	// Context used to terminate this job.
	RootCtx  context.Context
	CancelFn context.CancelFunc
	// contains filtered or unexported fields
}

Job is an interface to the job services for executing pipelines. It allows the executor to communicate status, messages, and metrics back to callers of the Job Management API.

func (*Job) ContributeMetrics

func (j *Job) ContributeMetrics(payloads *fnpb.ProcessBundleResponse)

func (*Job) Done

func (j *Job) Done()

Done indicates that the job completed successfully.

func (*Job) Failed

func (j *Job) Failed()

Failed indicates that the job completed unsuccessfully.

func (*Job) LogValue

func (j *Job) LogValue() slog.Value

func (*Job) Running

func (j *Job) Running()

Running indicates that the job is executing.

func (*Job) SendMsg

func (j *Job) SendMsg(msg string)

func (*Job) Start

func (j *Job) Start()

Start indicates that the job is preparing to execute.

func (*Job) String

func (j *Job) String() string

type Server

type Server struct {
	jobpb.UnimplementedJobServiceServer
	jobpb.UnimplementedArtifactStagingServiceServer
	// contains filtered or unexported fields
}

func NewServer

func NewServer(port int, execute func(*Job)) *Server

NewServer acquires the indicated port.

func (*Server) Endpoint

func (s *Server) Endpoint() string

func (*Server) GetJobMetrics

GetJobMetrics Fetch metrics for a given job.

func (*Server) GetMessageStream

func (s *Server) GetMessageStream(req *jobpb.JobMessagesRequest, stream jobpb.JobService_GetMessageStreamServer) error

Subscribe to a stream of state changes and messages from the job

func (*Server) Prepare

func (*Server) Run

func (*Server) Serve

func (s *Server) Serve()

Serve serves on the started listener. Blocks.

func (*Server) Stop

func (s *Server) Stop()

Stop the GRPC server.

Jump to

Keyboard shortcuts

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